ODBC – How to Export Data from CCURE 800/8000 System Using ODBC Data Sources

csvodbcprogress-database

I'm working on a security system called CCURE 800/8000 and trying to export some entrance / exit data from the Activity Monitor that logs when people use their badges to enter and exit the building. There are two ODBC DSNs listed on the machine that controls this…We'll call them DSNNAME and DSNNAME_TXT.

The DSNNAME uses a Progress OpenEdge 10.2A Driver and the DSNNAME_TXT uses a Microsoft Text Driver (*.txt, *.csv)

DSNNAME

The description on the DSNNAME DSN reads CCURE Journal Export DSN, so I am thinking that this connects to the CCURE 800/8000 progress database to pull the information out. It appears to work, as clicking the Test Connect button and entering the username and password result in a Connection Established! dialog box.

DSNNAME_TXT

The description on this DSN reads CCURE Journal Export DSN for Time & Attendance I think that this DSN is there to write the exported data to a couple of csv files.

The DNSNAME_TXT driver points to a directory in which there is a single file: Schema.ini
This file contains the following contents:

[timeok.txt]
ColNameHeader=False
Format=Delimited(;)
MaxScanRows=0
CharacterSet=OEM
Col1=ID Char Width 255
Col2=NAME Char Width 255
Col3=DATEIN Char Width 255
Col4=DATEOUT Char Width 255
Col5=HHDIFF Float
Col6=READERIN Char Width 255
Col7=RNAMEIN Char Width 255
Col8=READEROUT Char Width 255
Col9=RNAMEOUT Char Width 255
Col10=FLAG Integer
[timeerr.txt]
ColNameHeader=False
Format=Delimited(;)
MaxScanRows=0
CharacterSet=OEM
Col1=ID Char Width 255
Col2=NAME Char Width 255
Col3=ERRDATEIN Char Width 255
Col4=ERRDATEOUT Char Width 255
Col5=ERRHH Float
Col6=ERRIN Char Width 255
Col7=ERRNAMEIN Char Width 255
Col8=ERROUT Char Width 255
Col9=ERRNAMEOUT Char Width 255
Col10=ERRDESCR Char Width 255

[schema.ini]
ColNameHeader=False
Format=CSVDelimited
MaxScanRows=0
CharacterSet=OEM

The file mentions timeok.txt and timeerr.txt which don't appear anywhere on the machine (I searched the entire hdd), but according to this documentation they should be in the same directory with schema.ini when using the Microsoft Text Driver (*.txt, *.csv). In further detail about the DSN, the options >> button reveals that it's Extensions List is selecting *.*.

CCURE 800/800 Administration Client

Inside the Administration Client I'm trying to export a report; as I stated above, I believe that the report was meant to be exported into two files timeok.txt and timeerr.txt

To generate the report in the Administration Client:
1. from the menu I click Reports -> Personnel -> Time and Attendance...
1. I select a report called Access from the Select Report list.
1. I click the Run Report button
1. I select a Journal export database by double clicking that textbox
1. There's one called Cards which if I edit it, I can see that the ODBC tab has DSNNAME_TXT set as it's DSN (and that clicking the Test ODBC connection to the Database with the correct username and password) says that the connection was successful.
1. When I click the Progress tab, enter the username and password and click the Test Progress connection to Database I also get a message that it succeeded.
1. On the SQL tab I check off to enable logging, and the documentation states that a log file is generated in C:\CCURE800\4gl\Database\Log\DriverErr0.000001.log which appears to be the case….
1. Lastly I click the Setup tab and click Export Personnel data... or Export Object data... I get a message that reads Successfully completed Journal Export message but there is no output in either of the files (timeok.txt or timeerr.txt) as I would have expected to be the case in doing so….
1. If I actually try to run the report, I end up with an error about a missing .ocx file:

---------------------------
Error
---------------------------
Specified ActiveX control is not registered or the .ocx file was moved from where it was registered.
Error occurred in procedure: control_load source\rep_sho_excel.w (6087)
---------------------------
OK   
---------------------------

…followed by another dialog that reads:

---------------------------
Error
---------------------------
Microsoft Excel OCX control cannot be loaded. Some components are missing or not registered. (CC-2334)
---------------------------
OK   
---------------------------

(and again no output…though I did use procmon to see what the process was writing out…it looks like it's just a bunch of binary files with no extension (DBI2612a05112) and also a file called cf.lg

The error log C:\CCURE800\4gl\Database\Log\DriverErr0.000001.log yields some results, but no errors… like this:

[14/07/01@05:09:46.655-0400] P-001972 T-001976 1 4GL -- Log entry types activated: 4GLMessages
[14/07/10@05:01:34.542-0400] P-001972 T-001976 1 4GL -- Database CF was disconnected. (1015)
[14/07/10@05:02:55.627-0400] P-001148 T-001168 1 4GL -- Logging level set to = 2
[14/07/10@05:02:55.642-0400] P-001148 T-001168 1 4GL -- Log entry types activated: 4GLMessages

I've even tried to connect to the DSNNAME Progress ODBC driver using Squirrel SQL but it states that the connection is not open. So needless to say I'm pretty stumped at this point; does anyone have experience with any of these old systems to offer some insight into querying this system?

Best Answer

Based on my experience with ccure 800 in particular, you do need to have MS Excel and all of the supporting MS Office components installed on the same PC as the ccure Administration client. The OCX libraries are required to support the export function.