Showing posts with label COBOL. Show all posts
Showing posts with label COBOL. Show all posts

Friday, February 13, 2009

COBOL - Configuring instance specific CBLBINs - Contd...

In continuation to previous blog: COBOL - Configuring instance specific CBLBINs, I would like to state an interesting problem I encountered with the configuration of instance specific CBLBINs. The problem was with a RemoteCall made to a COBOL program from an App Engine.


Payroll Interface app engine program PI_INRUN was going into "No Success" with message of COBOL program PIPINRUN abort. To dig out the problem further, I generated the log file by setting RCCBL Redirect=1 in psprcs.cfg. The file PIPINRUN_xxxxxx.err shows that the RemoteCall is looking for the desired cobol in wrong directory ($PS_HOME/cblbin) - not in the correct directory (which is the customized one) $PS_HOME/CBLBIN_INS.


The problem was because of one Remote Call paramter RCCBL PRDBIN which was missing from the psprcs.cfg (I am not sure, but it looks like that - the process scheduler config file in UNIX platform does not include this parameter by default). After entering this paramter (RCCBL PRDBIN=$PS_HOME/CBLBIN_INS) in Remote Call section of psprcs.cfg file and reconfiguring the process scheduler file - problem resolved. This parameter is used only when a Remote Call is made to a COBOL program from AE... for normal COBOL SQL programs, this parameter is not necessary.

Friday, November 21, 2008

COBOL - Configuring instance specific CBLBINs

Sharing a file server to multiple instances is a common practice in may PeopleSoft Infrastructures... Many a times scenerio occurs where we want to have applied some bundles or Maintenance Packs to few of these instances... In such cases many of the external objects like SQRs, CRYSTALs, COBOLs etc would be different for bundled and non-bundled environemtns. For such cases, we would require to have a separate directory for COBOL executable other than the shared one or default one.

Here are the setting required to be done for such scenerio:

1) Create new CBLBIN directory for each instance INS1, INS2, INS3, etc under $PS_HOME (or any other prefered location) like $PS_HOME/CBLBIN_INS1, $PS_HOME/CBLBIN_INS2, $PS_HOME/CBLBIN_INS3 etc.

2) ## Copy the compiled COBOLs into new CBLBIN directory i.e., to $PS_HOME/CBLBIN_INS1, $PS_HOME/CBLBIN_INS2, $PS_HOME/CBLBIN_INS3 etc

3) Process Scheduler Settings for instance INS1:
Modify psprcsrv.ubx - COBPATH={$PS_HOME}/CBLBIN_INS1
Modify psprcsrv.env - COBPATH={$PS_HOME}/CBLBIN_INS1
Modify psprcsrv.cfg - in RemoteCall Section RCCBL PRDBIN=%PS_HOME%/CBLBIN_INS1


4) Application Server Settings for instance INS1:
Modify psappsrv.ubx - COBPATH={$PS_HOME}/CBLBIN_INS1
Modify psappsrv.env - COBPATH={$PS_HOME}/CBLBIN_INS1
Modify psappsrv.cfg - in RemoteCall Section RCCBL PRDBIN=%PS_HOME%/CBLBIN_INS1

##Besides this, you may also want to modify psrun.mak and pscbl.mak, so that while compiling the cobols - compiled files get copied, automatically at the time of compilation itself, to the newly created CBLBIN directories. For this, here are the required modifications:

1) Create directory INS1 under $PS_HOME/src/cbl and place all COBOL programs to be compiled for instance INS1 at location $PS_HOME/src/cbl/INS1

2) modify psrun.mak:
Replace $PS_HOME/src/cbl/ by $PS_HOME/src/cbl/INS1/

3) modify pscbl.mak: Update PS_CBLBIN parameter from old or default value $PS_HOME/cblbin TO new location of CBLBIN directory for instance INS1 $PS_HOME/CBLBIN_INS1:

PS_CBLBIN=$PS_HOME/CBLBIN_INS1

4) modify pscbl.mak:
Replace $PS_HOME/src/cbl/ by $PS_HOME/src/cbl/INS1/

Then compile and link the cobols.

OCI - Attach Block Volume to Windows VM

Tip: Although creating and attaching Block Storage to a Windows VM is pretty straightforward (OCI documentation is pretty good for that), th...