The members of the fixed portion of the notification queue message are set as follows:
The action member of the ctNOTBLK structure contains the particular opcode of the monitored event as follows:
Values |
Explanation |
---|---|
ctNT_ADDREC |
A new record was added to the data file |
ctNT_DELREC |
A record was deleted |
ctNT_RWTREC |
A record was modified |
ctNT_CLSOBJ |
The file was closed (no one has it open) |
ctNT_TOUCH |
The file was updated |
ctNT_PARTIAL |
A notification request was started in the middle of a transaction and not all the updates generated a notification. |
The actor member contains the thread ID of the user/client that performed the operation.
The tranhw and tranlw members contain the transaction number in which the operation occurred: tranhw is the high-word, tranlw the low-word
The opcode member is the opcode originally requested in the ctNotify() call. This may be different from the action member as the action is actual event that occurred, while opcode is the combination of events monitored. For instance if you call ctNotify(ctNT_ISMUPD | ctNT_PARTIAL,...) the action member can be ctNT_DELREC while the opcode is ctNT_ISMUPD | ctNT_PARTIAL.
The objhandle member contains the data file number on which the event occurred or, in case the notification request is for an index, the host index file number on which the event occurred.
The idxmemno member contains the index member number on which the event occurred. The actual index file number is given by objhandle + idxmemno.
The contents member is the actual contents of the variable-length part. This may be different from the contents parameter of the ctNotify() call. For example, when the action performed is ctNT_DELREC no record is returned in the optional full record image part even if it was requested by the ctNotify() call, and the contents value reflects this situation by not having ctNT_CON_RECBUF OR-ed in.
The controls member is reserved for future use.
The datahw and datalw members are the high word and low word of the record offset in the data file after modification (add, rewrite, delete).
The auxdhw and auxdlw members, in case of a record update, contain the original record offset in the data file (high word and low word) whether or not the record has been moved.
The varlen member of the ctNOTBLK structure indicates the length of the variable-length message portion.