How can I retrieve, in a trigger program, the name of the program (RPG,CLP,DFU...) that is trying to make a change on a database file?
There's no data on the invoking program that's passed to a trigger program. Thus, it requires additional programming on your behalf. Many customers have done this by using the OS/400 message-handling APIs: QMHSNDPM (Send Program Message) and QMHRCVPM (Receive Program Message). First, the trigger program uses API QMHSNDPM to send a message to the message queue of the changing program's call-stack entry. API QMHRCVPM then retrieves the message from the message queue, obtaining the name of the program associated with that entry in the process.
MORE INFORMATION ON THIS TOPIC
Search400.com's targeted search engine: Get relevant information on DB2/400.
The Best Web Links: tips, tutorials and more.
Check out this online event, Getting the Most out of SQL & DB2 UDB for the iSeries.
Dig Deeper on DB2 UDB (universal databases)
Related Q&A from Kent Milligan
To monitor members stuck within a physical file on AS/400, you can periodically use the display file description (DSPFD) command to create an output ...continue reading
Create a host variable of the where in statement on the fly with dynamic SQL.continue reading
To solve the SQL error -321 on IBM i6.1, use the new values statement to overcome the error. If you are using an older release, declare a cursor ...continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.