F.Y.I. Technologies offers an open integration with any Practice Management Software. Our software uses a COM object to receive patient data and images from your practice management software. Once the patient's cephalometric analysis has been completed and exported, it could then be pulled back in to your practice management software's imaging section. Contact the developer of your Practice Management Software to assure seamless integration.
Please note: Dr. Ceph must be "Run as an administrator" at least once to register and use the COM object properly. You can do this by right clicking on the desktop icon and selecting "Run as administrator". Depending on how your Practice Management Software is setup, it might also need to be run as an administrator.
We have custom versions of Dr. Ceph with integration for users of Cloud9Ortho and Oasys Crossfire. These custom versions have direct integration with their associated practice management software. Contact us directly at support@fyitek.com to learn more about any of our Dr. Ceph versions with direct integration.
Cloud9Ortho users: If you would like to schedule a demo of the Dr. Ceph program with Cloud9Ortho integration, please reach out to us. If you want to learn more about Cloud9Ortho, go here: https://cloud9.software/
Oasys Crossfire users: Contact us, or Oasys, to get the OasysCeph program. If you want to learn more about Oasys, go here: https://www.oasys.us/
Open Dental users: The Dr. Ceph integration in Open Dental was recently updated. This new integration prompts for patient race, X-Ray date, X-Ray location, Photo location, and treatment phase in addition to passing all of the existing information stored in Open Dental. If you would like to learn more, go here: https://www.opendental.com/manual/bridgedrceph.html
Integration is also currently being done with Ortho II, Ortho Chart, Orthoease, Ortho Exec, PerfectByte, Practice Works, Program Director, and Inn-Soft Office Manager.
Don't want to waste time tracing cephs yourself or training someone else to do it? Check out SpeedyCeph here: https://www.speedyceph.com/
Working with FYI Objects using Automation
Dr. Ceph
To control Dr. Ceph you need to run the program at least one time as an administrator. Here is a list of the methods available for use in Dr. Ceph:
- STDMETHOD(NewPat)(BSTR sID, BSTR sFirstName, BSTR sMidName, BSTR sLastName, BSTR sAddress1, BSTR sAddress2, BSTR sCity, BSTR sState, BSTR sZIP, BSTR sPhone, BSTR sSSN, BSTR sSex, BSTR sRace, BSTR sClass, BSTR sBirthDate, BSTR sRecordsDate, BSTR sReferringDr, BSTR sTreatingDr, BSTR sResponsibleName, BSTR sResponsibleAddress1, BSTR sResponsibleAddress2, BSTR sResponsibleCity, BSTR sResponsibleState, BSTR sResponsibleZIP, BSTR sResponsiblePhone, BSTR sResponsibleRelationship);
- STDMETHOD(get_MeldedImage)(BSTR sID, short nPhaseNum, /[out, retval]/ BSTR *pVal);
- STDMETHOD(get_IsMeldedImageAvailable)(BSTR sID, short nPhaseNum, /[out, retval]/ BOOL *pVal);
- STDMETHOD(get_ID)(/[out, retval]/ BSTR *pVal);
- STDMETHOD(put_ID)(/[in]/ BSTR newVal);
- STDMETHOD(get_XRayDate)(/[out, retval]/ DATE *pVal);
- STDMETHOD(put_XRayDate)(/[in]/ DATE newVal);
- STDMETHOD(get_XRay)(/[out, retval]/ BSTR *pVal);
- STDMETHOD(put_XRay)(/[in]/ BSTR newVal);
- STDMETHOD(get_Photo)(/[out, retval]/ BSTR *pVal);
- STDMETHOD(put_Photo)(/[in]/ BSTR newVal);
- STDMETHOD(put_TreatmentPhase)(/[in]/ short newVal);
- STDMETHOD(New)(BSTR sID, BSTR sFirstName, BSTR sMidName, BSTR sLastName, BSTR sAddress1, BSTR sAddress2, BSTR sCity, BSTR sState, BSTR sZIP, BSTR sPhone, BSTR sSSN, BSTR sSex, BSTR sRace, BSTR sClass, BSTR sBirthDate, BSTR sRecordsDate, BSTR sReferringDr, BSTR sTreatingDr, BSTR sResponsibleName, BSTR sResponsibleAddress1, BSTR sResponsibleAddress2, BSTR sResponsibleCity, BSTR sResponsibleState, BSTR sResponsibleZIP, BSTR sResponsiblePhone, BSTR sResponsibleRelationship);
- STDMETHOD(get_Exists)(BSTR sID, /[out, retval]/ BOOL *pVal);
- STDMETHOD(Open)(BSTR sID);
- Version 13.3 users can make use of the 2 new methods: DrCephPatient.StopAppWaiting and DrCephPatient.AllowAppShutdownOnDocClose = False
Here is a sample integration using Visual Basic. This sample only uses the 9 required pieces of information to start a ceph (ID, Last name, gender, race, birthday, treatment phase #0-4, X-Ray date, X-Ray file path, Photo file path). A full integration should use all possible fields in the NewPat method. You might need to rewrite the following code to fit with your application's programming language.
Dim DrCephPatient As Object
DrCephPatient = CreateObject("DrCeph.Patient")
If DrCephPatient.Exists(DrCephpatID) Then
DrCephPatient.TreatmentPhase = DrCephtxphase
DrCephPatient.Open(DrCephpatID)
Else
Call DrCephPatient.NewPat(DrCephpatID, "", "", DrCephlname, "", "",
"", "", "", "", "",
DrCephgender, DrCephrace, "", DrCephbday, "",
"", "", "", "",
"", "", "", "", "", "")
DrCephPatient.TreatmentPhase = DrCephtxphase
DrCephPatient.Open(DrCephpatID)
End If
If (DrCephxraylocation <> "") Then
DrCephPatient.XRayDate = DrCephxraydate
DrCephPatient.XRay = DrCephxraylocation
End If
If (DrCephphotolocation <> "") Then
DrCephPatient.Photo = DrCephphotolocation
End If
DrCephPatient.StopAppWaiting
DrCephPatient.AllowAppShutdownOnDocClose = False
Call System.Runtime.InteropServices.Marshal.ReleaseComObject(DrCephPatient)
DrCephPatient = Nothing
To create a New Patient record in DrCeph, use the same Automation method as in DrView.
Another way to create Automation object in Microsoft Visual Basic is to use References to type libraries. This gives the developer an advantage of using intellicode feature of the IDE. Both DrCeph and DrView executables register the type library on your system.
DrCeph | DrView | |
---|---|---|
type library | Cceph 1.0 Type Library | FYI DrView Library |
Object ProgID | DrCeph.Patient | DrView.PatientAutomation |
If your application is not written in Microsoft Visual Basic, you can still access DrCeph and DrView using the same Automation methods, but depending on your language, the way you use FYI objects will be different. In C++ you can use ClassWizard to import a type library for DrCeph or DrView. Alternatively, you can use #importprecompiler directives or component object API calls.
Dr. View
To control Dr. View you need to:
- install DrView version 5.0 or later
- run DrView at least one time
- add code to your application to create PatientAutomation object (see the code example for Visual Basic below)
- use methods of this object:
Dim obj As Object
Set obj = CreateObject("DrView.PatientAutomation")
If obj.Exists(ID) Then
obj.Open(ID)
End If
To create a New Patient record in DrView, use the following Automation method call:
obj.NewPat(ID, FirstName, MidName, LastName, Address1, Address2,
City, State, ZIP, Phone, SSN, Sex, Race, Class, BirthDate,
RecordsDate, ReferringDr, TreatingDr, ResponsibleName,
ResponsibleAddress1, ResponsibleAddress2, ResponsibleCity,
ResponsibleState, ResponsibleZIP, ResponsiblePhone,
ResponsibleRelationship)