Microsoft Visual C#
C# .NET is available from the MS website at no charge. The source code for Open Dental is available on the sourcecode page. You can look at the code in a text editor, or you can load the whole solution (OpenDental.sln) into Visual Studio or C# Standard Edition.
OpenDentalDocumentation51.xml (version 5.1)
OpenDentalDocumentation55.xml (version 5.5)
OpenDentalDocumentation56.xml (version 5.6)
OpenDentalDocumentation64.xml (version 6.4)
OpenDentalDocumentation67.xml (version 6.7)
OpenDentalDocumentation73.xml (version 7.3)
OpenDentalDocumentation75.xml (version 7.5)
OpenDentalDocumentation11_1.xml (version 11.1)
OpenDentalDocumentation12_2.xml (version 12.2)
OpenDentalDocumentation13_1.xml (version 13.1)
MySQL doesn't include a way to view and edit the data in your database.
They have a few tools on their downloads page, but they are inadequate.
We recommend SQLyog. It has a variety of useful tools for working with your raw database. Of course, it's not recommended to ever use it to change the data in your database.
Adding Functionality to Open Dental
See the Plug-in page for information
about how to add functionality with custom dlls. You can create plug-ins without involving us at all. If you make changes to the database, it might be a good idea to contact us to validate the queries to avoid data corruption. There are many data interactions which you may not be aware of or might be poorly documented. Making changes to the existing database tables is currently discouraged for that reason, but we will assist you if you really need to make changes.
The MySQL License
It can be difficult to interpret the GPL and to determine whether a proprietary plug-in is allowed. We have absolutely no problem with proprietary plug-ins, and our interpretation of the GPL is that it's allowed because it's a separate assembly. We think it's a very good idea and will even help promote your plug-in. However, be careful, because MySQL states on its website that if you distribute the MySQL program, and you also distribute a program that is proprietary, then that program cannot depend on the MySQL database to function. This creates a little bit of a problem, but not an insurmountable one. You could make your plug-in open source. Or, you could not distribute MySQL. If you do need to distribute MySQL, you could use the dual license of MySQL. Your customers will be covered if they pay an extra $500 to MySQL.
Sometimes, a developer ends up forking Open Dental, creating a version that cannot be upgraded through the ordinary upgrade process. We strongly discourage forking, since the users will miss out on all future enhancements. There are many good alternatives to forking. If a developer does decide to fork and to distribute the forked program, they absolutely must rename the program, because Open Dental is trademarked and the new program is no longer the same as the original. If users of such a program later decide to switch to Open Dental, a paid database conversion might be required unless the developer was very careful not to change the database in any way. Remember that any forked versions are still covered by the GPL and must have source code available. You must also leave the copyright and license attached to the source code.
Programming Assistance and Partnerships
We are absolutely NOT interested in paying anyone for programming assistance
in any form. We have our own programmers and have no interest in outsourcing
or paying for programmers.The only code we might be interested in paying
for is tools that help us convert user's data from other dental programs.
Using The Source Code
There is no included installation program with the source code (yet). You can
run Open Dental on your development computer without an installation program.
Play with the installer that comes with the trial version, and you will quickly
see what elements you need to make it function properly. In fact you can
use the trial version installer, and then just substitute your compiled version
for the trial exe and dll's. The Open Dental exe is simple to distribute.
Just copy it to another computer and put the required dlls in the same folder.
Then click on it and it will run.
If you plan to distribute Open Dental, you can either purchase the distribution
from us and then distribute that, or else you can create your own Setup.exe.
There are a few slightly different versions of Open Dental. It can be compiled
with the TRIALONLY conditional compilation constant (symbol) to limit the
number of patients that can be loaded. Be sure not to use the DEBUG
version in a production environment, since many of the printing features
There are many dll's that get installed. Install the trial version to see them all. The References page gives hints on how to handle broken references and missing dll's.
With major version changes, there used to be a text file include with the distribution that contained hundreds or even thousands of mySQL commands. It is not necessary to distribute those files for newer versions.
Bugs and Version Changes
The Previous Versions page shows all minor releases and the changes that were made with each. We generally only accept bug reports from existing customers on paid support.
If you are converting from another program, there are certain things you need
to do. To group family members, simply give them the same patient.Guarantor
number. To do this, you must have a way to uniquely identify each patient
and guarantor from the old system. If the export features of the old program
are inadequate, you might have to just use patient names. Each patient name
will have to be unique if you are using them to group families (you can add
periods to duplicate names to make them unique). To establish balances, add
an adjustment to each patient. Setting any of the fields in the patient table
will not work because those fields are recomputed every time the patient's
account is opened. Also you should run UPDATE patient SET
BillingType=40 which will set that column value for every patient in the
database. Finally, run the Database Maint tool.
We run servers to provide the Web Forms service to our paying customers at no extra charge. If you are not on paid support, or if you are a Reseller, you can set up a web forms server yourself as follows:
1. Make sure dot net framework 4.0 is installed on the server.
2. Install Mysql server
3. Inspect the source code of the web forms project to see what databases and tables are needed.
Manually set up the proper databases.
4. Install a certificate so that users won't get a security warning.
5. Create a folder containing the web forms dll as well as all the dependent dlls.
6. Setup a website in IIS pointing to that folder.
7. Forward port 443 from your router to the web forms server.
We will add more details as we are able.