--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/be57df18-35ef-47ba-abc7-85da4d2e921an%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/CAC9MznKLebSNon_FWza%2BLRp5ZCaCJxNA4ZHfKSahmo6b%3DrBJVA%40mail.gmail.com.
On Jul 28, 2023, at 9:03 PM, Joe Goldthwaite <j...@goldthwaites.com> wrote:
The trigger will work if you know what files are being changed. If you don't have the source code but want a clue as to what files it might be opening you can examine the object code. This is easy to do with a Windows or Linux hex editor. Here's an example.
I have a program that opens these files
------- Original Message -------
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/CAKoH45BL6Fwp%2Bq6OJRjY4DaTctuj-ovA4fcBT7Be%2B6G4iwNxRg%40mail.gmail.com.
--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.
We are migrating data from Universe to SQL and also need to know changes for each record. We are using an index that writes the file / record id / date / time .. and any other information we need to a file we call Audit.Records. It may be very similar to audit logging
The ID of the records in this file are sequential numbers, but the records contain any data we wish;
Here is the globally catalog routine which is called by the index:
*Subroutine to demonstrate the use of using index subroutines to
*provide auditing of database updates.
*
*@idx.iotype = 0 - Not being used from an index;
* 1 - INSERT (new) record;
* 2 - DELETE record;
* 3 - Derive old index value;
* 4 - Derive new index value;
subroutine AuditSubr(returnValue, filename)
INCLUDE DMSKELCODE COMMON
common /auditing/ fileAuditTrail, flagOpen, dictAuditTrail ;*, lastEntry, lastTimeStamp
returnValue = ""
IOTYPE = 0
if not(flagOpen) then
open "AUDIT.TRAIL" to fileAuditTrail else
return ; * to caller.
end
open "DICT","AUDIT.TRAIL" to dictAuditTrail else
return ; * to caller.
end
flagOpen = 1
end
if @IDX.IOTYPE then
IOTYPE = TRIM("CD U"[@IDX.IOTYPE,1])
end
if IOTYPE and @ID then
* if lastEntry = filename:"*":@ID then
* if time()-lastTimeStamp < 100 then return
* end
readu dictrecAuditTrail from dictAuditTrail, "&NEXT.AVAILABLE&" else
dictrecAuditTrail = "X"
dictrecAuditTrail<2> = 1
end
idAuditTrail = dictrecAuditTrail<2>
dictrecAuditTrail<2> += 1
write dictrecAuditTrail on dictAuditTrail, "&NEXT.AVAILABLE&"
release
recAuditTrail = ""
recAuditTrail<1> = @logname
recAuditTrail<2> = filename
recAuditTrail<3> = @ID
recAuditTrail<4> = IOTYPE
recAuditTrail<5> = date()
recAuditTrail<6> = time()
recAuditTrail<7> = LOWER(PROC.NAME)
write recAuditTrail on fileAuditTrail, idAuditTrail
lastEntry = filename:"*":@ID
lastTimeStamp = recAuditTrail<6>
end
return
*--------------------------------------------------------------------
End
And we create an index using this definition:
LIST.ITEM DICT DATA.OI AUDIT.RECORDS
DICT DATA.OI 07:05:14pm 30 Jul 2023 Page 1
AUDIT.RECORDS
001 I
002 SUBR("AuditSubr","DATA.OI")
005 10L
006 S
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/586AF339-866A-4C0A-B41B-D78B346C2FE8%40paradigm-systems.us.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/ad6b87ce-e0e1-4d07-afac-d96b1682ee7fn%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/540946d8-dd33-45e5-a85d-e58a02402ba6n%40googlegroups.com.