If the information is available through SNMP, you could create UnDP(s) to retrieve it.
There is a list of supported MIB by the AS/400 SNMP agent in the below document, chapter 9:
I do not have an AS/400 to test it. Usually applications are listed in the following MIB table:
HOST-RESOURCES-V2-MIB:hrSWInstalledTable - 22.214.171.124.126.96.36.199.3
You should run a MIB Walk and see what is returned.
If you have Network Configuration Manager, it inventory applications installed by using this OID and provide out of the box reports. If this mib is supported and that it returns you the version of the apps, then this could the best way to do it.
Once created the UnDP(s), you can create a report to analyze the information returned by the AS/400's :
If the information is not available by default, through SNMP, the AS/400 SNMP agent might have the same features of the open-source Net-SNMP agent which allows you to run scripts when and OID is polled and return the values gathered in the SNMP response. Not sure if a feature like this exists on the AS/400 agent.
Feel free to ask if you have any question.
Thank you very very much!!!