The
CorrectCoder Component is a .DLL (dynamic link library) that provides an interface
into the CorrectCoder for Edits database for CPT edit checking. The calling program passes the component a
set of comma delimited CPTs for checking, and the result is:
1.
A numeric return code representing a specific result
2.
If an edit is found, the edit type, rule date, and a note
will also be returned
As the calling application formats each set of CPTs for
input into the component, the checking method can be called in the same
step. This allows the calling
application to loop thru multiple sets of CPTs while checking for edits, all in
one pass thru the data.
$499 for an annual subscription (four CCI quarterly releases) plus $999 for the CCI COM object. The COM Object will work indefinitely on the four quarter subscription. Contact Customer Support at info@correctcoder.com or call 800 669-3337.
1)
The CCObject.dll file (component file) and the CC.mdb
(database file) must reside in the same directory. If the databasefile cannot be found, a return code of 4 will be
returned from the component file.
2)
The CCObject.dll file use ADO (2.5 and up) as its data
access method which is built in to Windows 2000 and XP. For this and other
compatibly reasons we do not recommend nor support Windows 98 or 95.
3)
Windows 2000 and XP operating systems have ADO included.
4)
The Driver used to access the data is the generic
“Microsoft Access Driver (*mdb)”,
system file ODBCJT32.DLL version 4.00.6019.00 or better. This driver will need to be registered in
the system directory on the computer running the CCObject.dll file if not
present already. Any earlier version
has not been verified to work properly with the component file.

Working with the Component file (CCObject.dll)
Parameters
The CCObject.dll file has only one
input parameter, a 1 dimensional character (or byte) array. This array should
contain a single entry that includes :
·
Two valid comma delimited 5 character CPT codes
Example : "0009T,36000"
The string should be defined as
176 bytes in length
·
CPT 1 5
bytes
·
Comma 1 byte
·
CPT 2 5
bytes
·
Additional 165 bytes
(see sample VB code).
There
is no explicit validation on the CPT code passed to the component. If
the CPT is invalid, a normal return code of 0 (No edit found) will
be returned.
Methods
The
CCObject.dll has only one method called CorrectCheck which takes as
input the byte array described
above (see sample VB code).
Returned
Information
The
CCObject.dll will always return a string with minimum a return code in the
first character position. The return code definitions are as follows:
0
= No edits found for the CPTs
1
= Component edit found
2
= Comprehensive Edit found
3
= Mutually exclusive Edit found
4
= Unable to connect to database
5
= The year use for the object has expired
If an edit is found (return code 1 or
2), the following information is also returned in
in the return string:
* Return code (noted above) (followed
by comma)
* The CPT
to reimburse (followed
by comma)
* The CPT not to reimburse (followed by comma)
* The edit
type (followed
by comma)
* A
truncated note (followed
by comma)
* The rule
date
If no edit
is found, return code 0 will be returned only in the return string.
If the CCObject.dll was unable to
connect to the db, return code 4 will be
returned only in the return
string.
If the current year is different than
the year of purchase of the CCObject.dll, a
return code of 5 will be returned.
Component
Updates
This
component was written in C as a standalone DLL, meaning there are
no registration requirements. For updates or bug fixes, a newly compiled
DLL
can replace an older version just
by dropping it in the same directory.
Database
Update
The
database can be updated also by simply replacing the existing
database in the appropriate
directory. The database is a secured
Microsoft
access database.
If you are interested in testing the
CCI COM Object to see if it meets your business needs, you will need to understand
the following Visual Basic sample code which illustrates the fundamental
concepts of referencing a dll. If you
need additional support or modifications, we offer customized programming
services.
1.
Review system requirements. (You need Windows 2000/XP)
2.
Download the CCObjectDemo.zip
file to your local directory.
3.
Unzip the CCObjectDemo.zip to your local directory, saving
the dll (CCObject.dll), the demo program (CCObject_Sample_Prj_DEMO.exe) and
database (ccdemo.mdb) to the same directory. (*Note: the demo program is a
Visual Basic program that requires Visual Basic to be locally installed.)
4.
Run the demo program.
5.
View the sample code to see how the demo program references
the CC COM object.
Visual Basic Sample Code
'Declare the component in the declarations or in a module.
'The declaration below has no explicit directory specified,
so the default
'directory is the directory of this executable.
Option Explicit
Private Declare Sub
CorrectCheck Lib "CCObject.dll" (ByVal sMyString As String)
Private Sub Command1_Click()
Dim sFillTest As
String
Dim ResultArray As
Variant
'Clear the
textboxes on the form
ClearFields
'Populate the
string sFillTest with the 2 CPT codes for the
'input form
and add an additional 165 bytes for buffer
sFillTest =
Text1.Text & "," & Text2.Text & Space$(165)
'Call the CC
object with the two CPTs to do the check on
CorrectCheck sFillTest
'Check for
Year Expiration
If
Mid(sFillTest, 1, 1) = "5" Then
MsgBox
Mid(sFillTest, 3, (Len(sFillTest) - 2))
Exit Sub
End If
'Check for
Database error
If
Mid(sFillTest, 1, 1) = "4" Then
MsgBox
"Unable to connect to database"
Exit Sub
End If
'If no edit
was found, display message
If
Mid(sFillTest, 1, 1) = "0" Then
MsgBox "No edits found. Both are reimburseable"
Exit Sub
End If
'If an edit
was found, display the info on the form
'Tokenize is
a function to split the delimited string into an
'array of values
ResultArray
= Tokenize(sFillTest, ",")
Text3.Text =
ResultArray(0)
Text4.Text =
ResultArray(1)
Text5.Text =
ResultArray(2)
Text7.Text =
ResultArray(3)
Text6.Text =
ResultArray(4)
Text8.Text = ResultArray(5)
'Show labels
that both are mutually exclusive
If
Text3.Text = "3" Then
Label9.Visible = True
Label10.Visible = True
End If
End Sub
‘***********************************************
‘Function for Demo purposes to clear fields
‘***********************************************
Public Sub ClearFields()
Label9.Visible = False
Label10.Visible = False
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text7.Text = ""
Text6.Text = ""
Text8.Text = ""
End Sub
‘**********************************************************************
‘Function for Demo splitting a delimited
string to store as an array
‘**********************************************************************
Public Function Tokenize(sList As String,
sDelimiter As String) As Variant
'Tokenize a comma delimited string, store as string array, and return it
Dim LocalArray() As String
Dim iLoc As Integer
Dim Bound As Integer
sList = Trim$(sList)
If
Right$(sList, 1) <> sDelimiter Then sList = sList + sDelimiter
iLoc = InStr(sList, sDelimiter)
Do
Until iLoc = 0
Bound = Bound + 1
ReDim Preserve LocalArray(Bound)
LocalArray(Bound - 1) = Trim$(Left$(sList, iLoc - 1))
sList = Right$(sList, Len(sList) - iLoc)
iLoc = InStr(sList, sDelimiter)
Loop
ReDim Preserve LocalArray(Bound - 1)
Tokenize = LocalArray
End Function