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