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.
Related Q&A from Kent Milligan
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
When working with DB2 files with columns that have both short and long names, there is no option choose which column names are returned via ODBC ...continue reading
When developing tables in a parent-child relationship, use a primary key and a foreign key along with a unique ID to make your database easier to ...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.