COBOL: Error Running Test – PTPDBTST

When running the Simple Connection Test Cobol you may encounter an error such as:

SUCCESSFUL DATABASE CONNECT AND DISCONNECT
PTPSQLRT – ERROR IN BIND SETUP/DATA
STATEMENT=PTPUSTAT_U_PRCRQSE
VARIABLE#=001
DATA TYPE=001
DATA LEN =00001
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.

Interestingly, your gut should be saying you have the wrong PeopleTools COBOL being ran, and you’d be right.  In my case I had all the compiles done correctly, but I was working in a decoupled home environment, but the source for the application came from an old system where the Application home still had the COBOL source combined with application and tools code.  Once I removed the PT* cobols from the source and recompiled and moved the files around correctly, everything worked like a charm!

COBOL – Runtime install fails psauto64

When installing the runtime license for Server Express 5.x, you will most likely encounter an error reporting that psauto64.int is in an unsupported format. This unsupported format error is caused by a failure to read the file from the nfs mounted file system. By explicitly setting the path in the psauto64 (or psauto32) script to a file reference the script will execute correctly.

Simply open the psauto64 or psauto32 script with vi and change the follwing:

From:  $COBDIR/bin/cobrun psauto64.int verbose
To:        $COBDIR/bin/cobrun ./psauto64.int verbose

Happy installing! 🙂

Cobol Server Express – License Manager

When doing the initial installation for most PeopleSoft environemnts you need to do several installations one of them being Cobol Server Express if you are running Cobol on a Unix environment.  Most PeopleSoft 9.1 applications support using version 5.1.

After you get the license installed, you need to ensure that the license manager is running.  Three commands will come in handy here:

1. Stopping License Manager, you need to be root to do this:

cd $COBDIR/lmf
lmfgetpv k

2. Show Status of License Manager: (If running it will return the version, if stopped it will report it is stopped)

cd $COBDIR/lmf
lmfgetpv

3. Staring License Manager, you need to be root to do this:

cd $COBDIR/lmf
sh ./mflmman

You can change the directory to {COBDIR}/aslmf and then run ./apptrack If this is the first time it will ask you to set a password or enter in 6 blank spaces to set the password to null. Once the password is set, you can select from the list of options to show a license summary. This should show your license you have installed, and if it doesn’t you can install your license from this menu.

If you are using a LMF Development License, you can install it by going to {COBDIR} and running the command:

sh mflmcmd

Enter I to install a license, enter in your Serial and License numbers you received from Oracle. You should now be able to go back into apptrack and see the installed license.

Installing Cobol Runtime on Linux

This is just one of those things that isn’t well documented and it is a little frustrating.  Most of the documentation seems to be based on the windows installs.

The first thing I would recommend is to send Oracle a license request, the email is:  licensecodes_ww@oracle.com and identify the client with their client support id.  They typically will respond with the licensing that the client is entitled to, and in this situation, I asked for the runtime install details.  Their response contains a link to download the runtime files.  If you are enterprising you can find them on your own: ftp://ftp.oracle.com

In this situation I am installing Micro Focus Server Express 5.1 on a virtual Redhat 5.5 Linux x86-64 server.  The install files for this are on the edelivery website.  I had the server administrator do the server express install, unfortunately the install was done in the wrong directory but as usual work with what you got.  The install was done to /root directory.

Make sure the variables COBDIR, COBPATH, and add $COBDIR/lib to the LD_LIBRARY_PATH, and add $COBDIR/bin to the PATH variable.   The COBPATH will be the directory where you install the runtime, in my case I set it to: /data/app/mfcbl

Untar the ps-sx-auto.tar  (tar -xvf ps-sx-auto.tar) into the /data/app/mfcbl directory, chmod +x p*, and run ./psauto64

It should tell you that the Unlimited RunTime License is installed and working. Now we need to get the process scheduler to run cobols, but first, we need to re-link the cobol.  Change the directory to your PS_HOME directory, and run the psconfig.sh and then change to the setup directory, and run psrun.mak  – It should tell you the files were successfully linked.  You should already have copied a freshly compiled cblbin directory from your compiling server to your run-time server (note: you can’t compile on a different OS platform and use the run-time on another – the platform must be the same).

Run psadmin, and go into your process scheduler configuration and re-configure the process scheduler, and restart it.  This will set the cobol directories into the environment files of the scheduler.

Go into the web front end, and go to:  PeopleTools > Process Scheduler > System Process Request and run the Simple COBOL test program. (PTPDBTST) and it should run to success.