Another Middle Tier plugin question

This forum is for programmers who have questions about the source code.
Post Reply
User avatar
wjstarck
Posts: 949
Joined: Tue Jul 31, 2007 7:18 am
Location: Keller, TX
Contact:

Another Middle Tier plugin question

Post by wjstarck »

Always wondered this about Middle Tier and a third party plugin:
'
Do I need to have the same version in the Open Dental program folder on the server, the OpenDental\bin folder and the workstations?

It seems I asked something similar a few years back and was told that usually OD will use the workstation version, but in some circumstances will use the plugin on the server. If so, and it's the one on the server, which one? The one in the \bin folder or the one in the program folder? Does this apply only to OD dlls or plugins as well?

Also, is the \bin folder on the server only for .dlls? I have some third party apps that have to get launched occasionally (and updater and a licensing app). Do those need to be in the OD Program folder on the server, or just on the clients?

Hopefully we will be moving to the API soon and all this will be moot. But in the meantime... :mrgreen:
Cheers,

Bill Starck, DDS
Big Idea Software, LLC
Developer, EASy(Electronic Anesthesia System) for Open Dental
817-807-1709
TX, USA
User avatar
jsalmon
Posts: 1601
Joined: Tue Nov 30, 2010 12:33 pm
Contact:

Re: Another Middle Tier plugin question

Post by jsalmon »

wjstarck wrote: Sat Aug 16, 2025 3:27 pm Always wondered this about Middle Tier and a third party plugin:
'
Do I need to have the same version in the Open Dental program folder on the server, the OpenDental\bin folder and the workstations?
The most important directory for the Middle Tier server is the OpenDental\bin folder. It needs to be there for Middle Tier to use it when it answers web requests from clients.
You only need to have the plug-in dlls present within the installation directory on the Middle Tier server if you use Open Dental from that computer (since it would be acting like a client at that point).
Every computer, including the Middle Tier, should use the same version of the plug-ins. Open Dental doesn't enforce plug-in versions so this is just a strong suggestion from me. It will make your life easier when troubleshooting problems.
wjstarck wrote: Sat Aug 16, 2025 3:27 pm It seems I asked something similar a few years back and was told that usually OD will use the workstation version, but in some circumstances will use the plugin on the server. If so, and it's the one on the server, which one? The one in the \bin folder or the one in the program folder? Does this apply only to OD dlls or plugins as well?
My reply to your previous post still stands: https://www.opendentalsoft.com:8085/for ... php?t=8234
The \bin folder is used by the Middle Tier web service when replying to client requests. This is true for OD dlls and plug-in dlls.
wjstarck wrote: Sat Aug 16, 2025 3:27 pm Also, is the \bin folder on the server only for .dlls? I have some third party apps that have to get launched occasionally (and updater and a licensing app). Do those need to be in the OD Program folder on the server, or just on the clients?
You are now in the realm of my previous post; It depends. If you launch these 3rd party apps from behind a remoting role check, then it will be executing on the Middle Tier server and you'll need to figure out how to best handle that. The \bin folder would be necessary at that point. Also, the MT server doesn't have the ability to show UI so I highly recommend avoiding this paradigm in general.
Odds are you do not launch these 3rd party apps from behind a remoting role check and the apps need to be present within the installation directory on every workstation.
The best thing about a boolean is even if you are wrong, you are only off by a bit.

Jason Salmon
Open Dental Software
http://www.opendental.com
Post Reply