cancel
Showing results for 
Search instead for 
Did you mean: 

Clipper Applications and Triggers

Former Member
0 Kudos

Hello Everyone,

We are running ADS 10.1. We have an in-house developed ERP that was built in Clipper 15+ years ago. The clipper applications that we use do not utilize SQL statements through an RDD, just navigational database changes.

This help page (What is a Trigger?) seems to state that triggers can be used with navigational database changes, but they don't seem to be working for us. I created a simple trigger in a data dictionary in the ARC utility, and tested both SQL statements and a function in our Clipper programs that update the same record. When I used a SQL command, the trigger successfully executes, when our Clipper program changes the record, the trigger does not execute.

What do we need to do to make triggers execute for non-SQL database procedures? Is what we're attempting to do even possible?

Thanks for your time!

- Jeffery Sarenpa

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Triggers can be used by both Navigational and SQL, However what is not specified explicitly is that triggers only work if the table is opened via the Data Dictionary since triggers can only be defined via the Data Dictionary.  Unfortunately if a table is opened as on a Free Table connection, the connection (and server) have no idea about the trigger and won't execute it..

Clipper is not able to access tables via a Data Dictionary.  It can only Authenticate (for AIS Purposes), but all table access is via Free Table access.

If by any chance your app is still clipper code but compiled with xBase or xHarbour you should be able to make a Data Dictionary connection and open the table via the connection which would allow the trigger to fire.