Every web call to the middle tier will authenticate with the database first because that is the sole purpose of the middle tier layer (to talk to the database on your behalf). I instantly think that the config file for the Middle Tier might be missing / malformed OR we messed something up which I'll need to know what version of Open Dental you are using to verify.

The best thing about a boolean is even if you are wrong, you are only off by a bit.

Found the problem. The ConvertPluginDatabase.Begin() method is trying to execute locally which is designed to run a custom convert script for the plug-in developer. I need to spend some time hitting it with some Remoting Role magic.Added to the bug tracker: http://opendentalsoft.com:1942/ODBugTra ... sions.aspx

I will also correct the compile errors within the PluginExample project that we provide while I'm at it.

The best thing about a boolean is even if you are wrong, you are only off by a bit.

Ironically the bug was only present within our PluginExample project so I didn't have to change anything with our framework. I went ahead and gave the framework a quick update for thread safety purposes (now that it can be called form the middle tier which is a threaded environment). The code has been committed and you should be able to update to see the fixes that were necessary (mainly the remoting role check in the ConvertPluginDatabase class).FYI - the bug is still on the tracker but won't be visible until v18.1.1 is released.

The best thing about a boolean is even if you are wrong, you are only off by a bit.

Cool beans. Thanks again! The middle tier is really neat. I really wish I could actually have a client on the middle tier, I know an office with 4 locations that wants too, but one location has awful internet (inside of a mall) and the owner of the mall will only allow DSL, and it's flaky. To make matters worse, cell reception is bad inside as well. I have been playing with Mikrotik routers (routeros). Seems pretty cool so far, and Amazon just added for Mikrotik routers for the Amazon VPN.

Most offices with that type of scenario use replication. E.g. a van goes out to a school to do screening or something, does work on a full-fledged version of Open Dental and then replicates the data back to the "mother" database back at the office when they get back at the end of the day.

The best thing about a boolean is even if you are wrong, you are only off by a bit.

Oh they are always seeing patients at the 4 locations, so if they did the van thing they would have a... "fork" in the data, or what would be the best term for that? I knew a doc that went to old folks homes and that was interesting. He had 2 locations and would go around to do dentistry. He owned an optime phosphur plate scanner that uses ethernet instead of usb, and I called optime to make it work on a vpn, and they had never tried that before. They did want to upgrade the firmware to deal with latency, but after that it worked.

The sort of replication Jason is talking about would rectify the forks. Of course, if something was edited "in the field" then also "at home" then it'd need to be reconciled, but beyond that the replication mentioned works for spotty internet.

"To understand what recursion is, you must first understand recursion."