Running Component Interface Tester Outside App Designer
Getting Started
PeopleCode Component Interfaces are a powerful tool for interacting with PeopleSoft systems and many third-party integrations still use PeopleSoft Component Interfaces. Unfortunately this is sometimes through APIs that can be difficult to troubleshoot or that you have little control over, as a PeopleSoft developer.
I recently came across a situation where a vendor had a PeopleSoft interface already developed to call a PeopleSoft CI. The CI itself was built in our PeopleSoft environment, per the vendor specifications, but they were receiving Save errors. We wanted to confirm the CI was working properly, and that the service account had the appropriate security, but the feedback through their API was severly limited. The service account only had basic permissions to the Component Interface itself, which I was sure this was sufficient, but really wanted to test the CI as the user that would be running it.
I know I can use the Test Component Interface tool in App Designer, but as far as I was aware you had to have PeopleTools client permissions to login to App Designer to then launch the utility. However, the CI test utility opens in a new window, which I have always actually found annoying since it does not immediately gain focus, but that could suggest that it is a separate program. I knew other things, like Configuration Manager, can be accessed through App Designer, but are actually separate programs that can also be run independently.
To determine if the CI tester could run independently I started it through App Designer, using my standard account, then fired up SysInternals Process Explorer. With Process Explorer you can use the “target” (Find Process’s Windows) button to point to a window to find the process name.
There are other tools and methods available to find this information, such as Windows Task Manager, but the ability to target the window or frames you are interested in is much easier than trying to identify the process among the lists of all other processes.
Interestingly it pointed me to the process named psdbgprc.exe
. I would not have guessed that was my CI tester, but it is a debugging tool… that makes sense! Anyway, I still needed more than that, so I right-click the process name in Process Explorer to view the detailed Properties. Here I can see the Command Line which gives me all the information I need.
So for example, I saw something like…
D:\PT857\bin\client\winx86\psdbgprc.exe -CTORACLE -CS -CDFSTST1 -COUSER1 -DBGTYPE2 -DBGBCNAMEUSER_PROFILE_CI -DBGACCESSW
Making it Work
I don’t know what all of the parameters do, or if this process is used for other purposes, but the parameters below do allow the Component Interface Tester to launch, when passed the correct values…
- CT - Database Type
- CS - Server Name (only if using App Server connections)
- CD - Database Name
- CO - User ID
- DBGTYPE2 - Unknown (required)
- DBGBCNAME - Name of the Component Interface (required)
- DBGACCESSW - Unknown (required)
<PS_HOME>\bin\client\winx86\psdbgprc.exe -CT<DB_TYPE> -CS -CD<DB_NAME> -CO<USER> -DBGTYPE2 -DBGBCNAME<CI_NAME> -DBGACCESSW
Finally, I was able to open a command prompt, plug in my values and test my Component Interface, with the User ID I wanted! No additional App Designer permissions required.
Next, on to more troubleshooting of the API. If you want more details on actually using the Component Interface tester then definitely check out PeopleBooks!
Comments
Post a Comment