Here’s another problem that I ran into …
COBOL wouldn’t run. Even the simple test didn’t work.
In researching, I found this in my SCHDLR log file.
Server: PSNT checking status... Server action mode: Submitting request Number of New Process Request(s) To Start: 1 Process Instance: 1236 started Starting process: 1236 Process Name: PTPDBTST Process Type: COBOL SQL Command Line: C:\pshome\hcm89\CBLBINA\PTPDBTST.EXE Parm List: ORACLE/HCM89/PS/OPRPSWD/SCR/1236//0 Working Dir: E:\oracle\11.1.0\client Session Id: 2656 Server: PSNT checking status... Server action mode: Ok (looking for requests) Server: PSNT looking for work Checking Process cancels... =================================Error=============================== Process 1236 is marked 'Initiated' or 'Processing' but can not detect status of PID Updating process instance's status to Error. Process Name: PTPDBTST Process Type: COBOL SQL Session Id: 2656 ===================================================================== Number of requests removed from Task Active List: 1 Server: PSNT checking status...
So, I took the command line from the file, and I tried to run it in a command window. Here’s what happened:
E:\>cd \oracle\11.1.0\client E:\oracle\11.1.0\client> E:\oracle\11.1.0\client>C:\pshome\hcm89\CBLBINA\PTPDBTST.EXE ORACLE/HCM89/PS/PS/ SCR/1236//0 Application Program Failed Action Type : SQL CONNEC In Pgm Section : SQLRT:GG100 SQL-CONNECT With Return Code: 09989 Error Message : SQLRT: Operator ID not allowed to submit COBOL from client FAIL TO CONNECT PTPDBTST: Application Program Failed In Pgm Section : CONNECT FAILED With Return Code: 09989 Error Message : SQLRT: Operator ID not allowed to submit COBOL from client
On the PeopleSoft Wiki, I found that you are not supposed to have the bin directory from your PeopleSoft home on your path. Just to test, I adjusted the path for just the one command window, and tried it:
E:\oracle\11.1.0\client>echo %path% E:\oracle\11.1.0\client;E:\Java\jrockit-jdk1.6.0_24-R28.1.3-4.0.1\bin;C:\pshome\ hcm89\bin\client\winx86;E:\oracle\11.2.0\dbhome_1\BIN;C:\WINDOWS\system32;C:\WIN DOWS;C:\WINDOWS\System32\Wbem;c:\pshome\bea\tuxedo11gR1\bin;c:\pshome\bea\tuxedo 11gR1\jre\bin\server;c:\pshome\bea\tuxedo11gR1\jre\bin E:\oracle\11.1.0\client>set path=E:\oracle\11.1.0\client;E:\Java\jrockit-jdk1.6. 0_24-R28.1.3-4.0.1\bin;E:\oracle\11.2.0\dbhome_1\BIN;C:\WINDOWS\system32;C:\WIND OWS;C:\WINDOWS\System32\Wbem;c:\pshome\bea\tuxedo11gR1\bin;c:\pshome\bea\tuxedo1 1gR1\jre\bin\server;c:\pshome\bea\tuxedo11gR1\jre\bin E:\oracle\11.1.0\client>C:\pshome\hcm89\CBLBINA\PTPDBTST.EXE ORACLE/HCM89/PS/PS/ SCR/1236//0 Unable to load program: PSSQLORA_ANSI.DLL Application terminated.
So, I did a search for PSSQLORA_ANSI.DLL, and I found it in the server bin directory. When I put that on the path, I got a little further:
E:\oracle\11.1.0\client>set path=c:\pshome\hcm89\bin\server\winx86;%path% E:\oracle\11.1.0\client>C:\pshome\hcm89\CBLBINA\PTPDBTST.EXE ORACLE/HCM89/PS/PS psoracle/1237//0 SUCCESSFUL DATABASE CONNECTION PTPSQLRT - ERROR IN BIND SETUP/DATA STATEMENT=PTPUSTAT_U_PRCRQSE VARIABLE#=001 DATA TYPE=001 DATA LEN =0001 SCALE =000 Application Program Failed Action Type : SQL UPDATE In Pgm Section : SQLRT: PROCESS-SETUP(BIND) With Return Code: 08001 Error Message : Invalid bind variable number Stored Stmt : PTPUSTAT_U_PRCRQSE SQL Statement : UPDATE PSPRCSRQST SET RUNSTATUS = :1 ,PRCSRTNCD = :2 ,ENDDTT M = SYSDATE ,LASTUPDDTTM = SYSDATE ,CONTINUEJOB = :3 WHERE P RCSINSTANCE = :4 at pos 00028 PTPSQLRT - Error Encountered No longer have connection to DB due to an error from previous action: SQL UPDATE. Bypassing current action: SQL SELECT. Terminating Program.
Then, I found why I was getting the SQL error. My compile process was not completing properly:
Compile error for SRPCTEXT.obj Compile error for SRPCWD.obj The error list is in c:\temp\compile\ERROR.LIS . Aborting this process !!! EXEs/GNTs/INTs are not going to be copied/replaced... . Please fix the errors and rerun this batch file !!!!!!!
So, I looked in the c:\temp\compile\CBLBLD.log and I found a reference to the LIS files that contained the error messages:
********** COMPILE PTPWLGEN.GNT ********** ********** COMPILE SFP1098P.GNT ********** Creating error listing (SFP1098P.LIS) -------------------- ********** COMPILE SFPAPLPY.GNT ********** Creating error listing (SFPAPLPY.LIS) -------------------- ********** COMPILE SFPBCALC.GNT ********** Creating error listing (SFPBCALC.LIS) --------------------
Then, in the SFP1098P.LIS, I found a specific error message. The end of the file said that the last message was on page 153. There, I found this:
7223 END-IF 7224 7225 SET MSG-NBR-TOT-REC-INS OF LOGMS TO TRUE * 12-S****************************************** ( 68)** ** Operand MSG-NBR-TOT-REC-INS is not declared 7226 MOVE 4 TO PARM-COUNT OF LOGMS 7227 SET SEVERITY-INFO OF LOGMS TO TRUE
That didn’t help me too much, so I opened it up in GVim. Then, I could do a regex search to find the lines that start with two asterisks (**) — “/^\*\*”.
That turned up the answer. I was missing a copy file:
626****************************************************************** 627 * 628 COPY SFC1098P. * 8-S********************************************** ( 0)** ** Unknown COPY file SFC1098P specified