Disables database triggers before you perform a dump or load procedure. You must have CAN-DUMP and CAN-LOAD permissions on the table for which you want to disable the triggers.
For more information on database replication, see the reference entry for the RAW-TRANSFER statement, and OpenEdge Data Management: Database Administration.
The following example lets you dump or load the contents of a database table. The procedure uses the DISABLE TRIGGERS statement to disable the appropriate triggers before each dump or load operation.
r-dstrig.p
DEFINE SUB-MENU file MENU-ITEM viewit LABEL "&View Data" MENU-ITEM dumpit LABEL "&Dump Data" MENU-ITEM loadit LABEL "&Load Data". MENU-ITEM exit LABEL "E&xit". DEFINE MENU mbar MENUBAR SUB-MENU file LABEL "&File". DEFINE BUTTON b_more LABEL "Next". DEFINE BUTTON b_exit LABEL "Cancel". DEFINE VARIABLE ix AS INTEGER NO-UNDO. DEFINE FRAME cust-frame Customer.CustNum SKIP Customer.Name SKIP Customer.Phone SKIP b_more b_exit WITH CENTERED SIDE-LABELS ROW 3. DEFINE STREAM cust. PAUSE 0 BEFORE-HIDE. ON CHOOSE OF b_exit IN FRAME cust-frame DO: HIDE FRAME cust-frame NO-PAUSE. DISABLE ALL WITH FRAME cust-frame. LEAVE. END. ON CHOOSE OF b_more IN FRAME cust-frame DO: FIND NEXT Customer NO-LOCK NO-ERROR. IF NOT AVAILABLE(Customer) THEN RETURN. DISPLAY Customer.CustNum Customer.Name Customer.Phone WITH FRAME cust-frame. END. ON CHOOSE OF MENU-ITEM viewit DO: ENABLE ALL WITH FRAME cust-frame. FIND FIRST Customer NO-LOCK NO-ERROR. DISPLAY Customer.CustNum Customer.Name Customer.Phone WITH FRAME cust-frame. END. ON CHOOSE OF MENU-ITEM dumpit DO: DISABLE TRIGGERS FOR DUMP OF Customer. ix = 1. SESSION:IMMEDIATE-DISPLAY = TRUE. OUTPUT STREAM cust TO "Customer.d". FOR EACH Customer NO-LOCK: EXPORT STREAM cust Customer. DISPLAY ix LABEL "Records Processed" WITH FRAME rec-info SIDE-LABELS ROW SCREEN-LINES / 2 CENTERED. ix = ix + 1. PROCESS EVENTS. END. SESSION:IMMEDIATE-DISPLAY = FALSE. OUTPUT STREAM cust CLOSE. /* APPLY "ENTRY" TO b_quit IN FRAME butt-frame. */ END. IF NOT RETRY THEN ASSIGN CURRENT-WINDOW:MENUBAR = MENU mbar:HANDLE CURRENT-WINDOW:VISIBLE = TRUE. WAIT-FOR CHOOSE OF MENU-ITEM exit. ON CHOOSE OF MENU-ITEM loadit DO: DISABLE TRIGGERS FOR LOAD OF Customer. INPUT FROM "Customer.d". SESSION:IMMEDIATE-DISPLAY = TRUE. REPEAT: CREATE Customer. IMPORT Customer. DISPLAY ix LABEL "Records Processed" WITH FRAME rec-info SIDE-LABELS ROW SCREEN-LINES / 2 CENTERED. ix = ix + 1. PROCESS EVENTS. END. INPUT CLOSE. SESSION:IMMEDIATE-DISPLAY = FALSE. END. |