This feature currently has limited usefulness and is only for very advanced users.
Report Definition Language (RDL) is an XML report format heavily used by Microsoft. It happens to be a very good format. This is not for beginners. You need to have a basic understanding of SQL queries and XML.
RDL Project is a reporting program that has been integrated with Open Dental for a long time. Very advanced users can try it out. To use it, open RdlDesigner.exe, which is located in C:\Program Files\Open Dental\ or similar. Create your report, and save it. To later run your report, open the Rdl Designer again, open your report, and run it. To run reports directly from within Open Dental, save them to \\SERVER\OpenDentImages\Reports (or similar, your A-Z folder). RDL is similar to programs such as Crystal Reports, with the following exceptions:
RDL format is far more powerful and flexible, because everything is in nested heirarchical levels.
Here's the getting started page distributed by the RDL Project. The RDL Project, however, was abandoned in 2009. So as we move forward, we are likely to begin using the Microsoft equivalent tools instead.
Using Code In Reports
Code is used in reports for a number of purposes, including:
To use code in reports:
The file called ODR.dll is in the same folder as RdlDesigner.exe. ODR is short for Open Dental Reporting and is created by us. It contains a set of functions that can be used as explained below. It will be continually improved and added to, and the version number will always match or be similar to the version of Open Dental. To obtain the version number, right click on ODR.dll and select the version tab.
Here are some of the main classes within ODR: MakeReadable, Query, Format, Aggregate, and GetData. Each of the classes has (or will have) many functions for the specific column type you are working with.
If you are using any functions at all in your report, then you need to add ODR.dll as a code module. To do this, in the designer, right click in an empty area of the page, and select Properties.
In the Modules tab, add ODR.dll as shown above. This instructs the report to use ODR.dll for functions. The Classes portion of the above window is discussed below in the Instance Functions section.
A function will look similar to this, when used in a text box:
List of Functions, as examples
An instance function will look similar to this when used in a text box:
List of Instance Functions, with examples
The old complicated way of doing parameters was moved out to its own page Old RDL Parameters.
First you need to be aware that there are two types of parameters: report parameters and query parameters.
Report parameters are defined in the designer using the Report Properties dialog. Report parameters can be used just about anywhere an expression is allowed in the report.
Query parameters allow you to use pass arguments to a dataset most usually as a parameter in a SQL Select. Query parameters are defined in the Dataset property dialog. Your example select would look something like this:
For programmers, here's how we (will) use parameters in code. We will typically build our own user interface for setting the parameters. The code below was supplied as an example by the writer of RDL Project. Some adaptation of it will probably be used.
RDL reporting has some potential. Here is the approximate order in which improvements might be made:
Move from fyireporting to Microsoft products.
Implement improved parameters.
Support for more enumeration types in MakeReadable functions.
Option to set some parameters from outside the report and bypass the parameter dialog. For instance, Open Dental needs to print an Rx, so it would pass the RxNum to the report. The report should then not make the user pick from any options, but should just use some queries to get all the necessary data directly from the database. So one parameter is needed, but it should be suppressed somehow; silent.
Testing the use of programming logic within reports.
Users allowed to organize their reports and to pick which reports to use in various places in the program.
Ability to use images in reports. The images could be specified either through parameters, or as the result of queries.
Open Dental Software 1-503-363-5432