Showing posts with label PS Cobol. Show all posts
Showing posts with label PS Cobol. Show all posts

GSC COBOL Documents (Solutions)

Below is a list of some important documents ( solutions) on Metalink.
This is not a complete list and this document will be updated periodically with corrected information.

Summary

E-COB: Net Express Cobol compiler - How to resolve the "license is not setup correctly" error (Doc ID 753692.1)
E-COB: Files\Micro was unexpected at this time error when compiling cobol (Doc ID 618022.1) 
E-COB: Unable to compile any COBOL Programs using the NetExpress compiler (Doc ID 610711.1)
E-COB: Net Express cobol compiler install fails with error "Error 1721. There is a problem with the Windows Installer package. A program required for this install to complete could not be found." (Doc ID 780015.1)
E-COB: Net Express 4.0 install- Failed to set Integrated Development Environment (Doc ID 654788.1)
E-COB : Error installing NetExpress 4.0 runtime license patch (ULP) (Doc ID 655099.1)
E-COB: Net Express compiler error "Your Net Express license has been corrupted" (Doc ID 664394.1)
E-COB: The License database for the Net Express application server has been moved from its original location or removed and recreated.Delete the database,which is mfasdb,and reinstall the license keys (Doc ID 778962.1)
E-COB: Net Express 3.1 SP1 Semaphore failure. ASLM : Errno 1000 and Errno 1002 (Doc ID 618345.1)

E-COB: Invalid Product Error when applying server express 4 SP2 cobol compiler fix pack 77 (SX40SP2-RedHat-32bit-Fixpack40
E-COB: Cobol processes fail with error No Application Server License Available: 5 system and 0 user license installed 5 in use (Doc ID 794766.1)
E-COB: Installing COBOL compiler license "This is a Development System license! (Doc ID 660056.1)
E-COB: COBOL Programs Error : No Application Server License available on Unix (Doc ID 611140.1)
E-COB: Linking cobol psrun.mak error -> cob64: can not execute as (Doc ID 662354.1) 
E-COB: Linking cobol psrun.mak gives error "ld: cannot find -lgcc" (Doc ID 660798.1)
E-COB: Disaster Recovery and cobol Server Express compiler on UNIX (Doc ID 662980.1)
E-COB: How to copy Server Express COBOL compiler from an existing UNIX machine to another/new UNIX machine ? (Doc ID 763968.1)
E-COB: Installing multiple Server Express cobol compiler releases on one machine (Doc ID 664113.1)
E-COB : How to Trace COBOL Process flow on UNIX (Doc ID 650869.1) 
E-COB: Cobol license manager. Unable to open License Key database (Doc ID 660113.1)
E-COBOL: Micro Focus LMF - 006: You are not licensed to use this product ... (Doc ID 618428.1)
E-COB: Load error : file 'psauto64.int' unsupported format when applying ULP (Doc ID 661674.1)
E-COB: PSRUN: error while loading shared libraries: libcobrts.so: cannot open shared object file: No such file or (Doc ID 786557.1)
Documents
E-COB: Tools 8.48 - error code: 211 Program not executable by Run-Time System (Doc ID 650863.1) 
E-COB: Micro Focus LMF-004: You have exceeded the license limit for this product (Doc ID 624132.1)
E-COB: Tools 8.48 -COBOL error Code: 00404 SQLRT: Unable to connect to database (Doc ID 650883.1) 
E-COB: Tools 8.49.14 All COBOL programs fail PTPSQLRT-ERROR IN BIND SETUP/DATA (Doc ID 664888.1)
E-COB: Compile warning message " Ignored - LINKCOUNT "1024" " (Doc ID 782851.1) 
Error messages


A : Issues of License Manager


1.         Micro Focus LMF - 002: The license database is corrupt.


The License Manager detected corruption in the license database. The license database may have been tampered with. Therefore, the License Management Facility terminated execution of the licensed product.
Follow the Instructions of  Doc ID 611140.1


2.         Micro Focus LMF - 005: You have exceeded the license limit for this product.

You will be getting this error message when multiple users are trying to compile the COBOL programs at the same time. Make sure you have enough licenses to cater all the users to compile or contact customer care to buy extra licenses.


3.         Micro Focus LMF - 006: You are not licensed to use this product or version.

If you have got the COBOL compiler from peoplesoft.
a.         You may have installed the COBOL compiler in 64-bit mode. To change the COBOL compiler mode use the following command
cobmode –s 32
b. Check license licenses through License Administration Services.



4.         Micro Focus LMF - 008: Maximum license database size exceeded.

The license database has too many licenses to be loaded by the License Manager. Therefore, the License Management Facility terminated execution of the licensed product. So uninstall the licenses that are not required through License Administration Services



5.         Micro Focus LMF - 010: Unable to contact License Manager.

This product has been unable to contact the License Manager.
Therefore, the License Management Facility terminated execution of the licensed product. Check the license manager is running.



B :  How to stop "The license database is corrupt" error.
Analysis:
When you try to start LMF the error message "The license database is corrupt" is issued. There may have been a system crash and reboot. You may also see this error when you try to start License Administration Services.
Solution: The simplest solution to this problem is to rebuild the LMF database files.

1. Make sure that no LMF functions are running.
a. Signed on as root, cd to the correct mflmf directory. (Where LMF was installed. The default is /usr/lib/mflmf or /opt/lib/mflmf.
b. Issue the command ./lmfgetpv. If license manager is running, issue ./lmfgetpv -k to kill it. Then issue ps -aef | grep mflm and kill any other license processes that might not be registered.

2. Delete all four of the license data bases > rm mflmfdb*
3. Start License Administration services with >sh ../mflmadm  and reinstall the serial number and license keys from the License Key Folder as described in the Micro Focus License Management Administrator's Guide.
Note: DO NOT enter any spaces into the license key even if there are spaces shown on the folder.
Exit to the UNIX command prompt.

4. Start license manager with >sh ./mflmman.
Summary:
Once the license management databases become corrupt, the quickest and simplest way to recover is to rebuild the database files.
Can we install two different version of ServerExpress on one machine


Two versions of COBOL compilers can be installed on the same machine as long as they run under different directories.  You can install on same machine but under different directories.  The license database for both of them should be served by only one license manager. The license manager version should be the version that came with the latest compiler.

You will just need to install the compiler on a different location & if the compiler is bought from peoplesoft, skip the license management facility.  They must be installed in separate $COBDIRs but one license daemon (mflm_manager) will serve both products.
How to Start and stop the license manager


1)  Must be logged in as  root

2)  Check status & stop
    cd $COBDIR/lmf
     lmfgetpv                      <<  Shows Status
     lmfgetpv k                   <<  Stops LMF

3)  To start
     cd /usr/lib/mflmf          ( on AIX  it would be /opt/lib/mflmf on other OS's )
     sh ./mflmman

>>>>>>> 
Verify the status that the License Manager is running
./lmfgetpv            If it is running this command will return the version number of the running License Manager & the path from where it was loaded.

Starting the License Manger
./mflmman [FORCE | WAIT] [TRACE]
            Force = The License Manager does not by default start up if there are still licensed tasks running that were started from a previous run.  When this happens, you can use FORCE to force the License Manager to first terminate the previously started tasks & then to start.     
            Wait = This suspends the License Manager until any outstanding licensed tasks from a previous License Manager have finished.  Use this when you do no want the existing licensed tasks to be terminated prematurely, and want to wait until they have finished naturally.
            Trace = Creates a log of the License Manager activity in MF-LMF.log
Stopping the License Manager
./lmfgetpv k      This will stop the License Manager

How to find The license Manager Directory - Cobol Peoplesoft

1. Change to $COBDIR/lmf
2. Run the command ./lmfgetpv
    License Manager version 121
    Loaded from /products/mf/svrexp-1.1/mflmf   
Check the output of three commands (login as root):

$PS_HOME/bin> cobrun
$PS_HOME/bin> cob -v   <---(small  "v")
$PS_HOME/bin> cob -V  <---(upper  "V")
 









If Output of  $ cob -V

version @(#)cob.c       1.310
PRN=RXCPR/AAM:9h.N3.40.03
PTI=SP1
PTI=Fixpack40.03_10
I see no work

Then compiler is Server Express 4.0 SP1 FixPack 10

Similarly below is the output of $ cob –V for ServerExpress 4.0 SP2
version @(#)cob.c       1.313
PRN=RXCTO/AAD:9i.T4.40.03
PTI=SP2
I see no work

To check  whether ServrExpress compiler is installed in 32 bit or 64 bit mode , check the output of

$ cob -v
and it should be like below for 32 bit mode.

cob32 -C nolist -v
I see no work

And for 64 bit , it will be like

Cob64 -C nolist -v
I see no work
Steps: 1  Log in PIA – SetUp HRMS – Installation Table


Steps:  2 Check dbcodes.hc in PS_HOME/setup

How to Compile and link cobols on unix

First make sure the basic is set properly.
On Digital Unix and Sun Solaris, the variable to check is LD_LIBRARY_PATH.
On HPUX, the variable is SHLIB_PATH.
On AIX, the variable is LIBPATH.
A typical LD_LIBRARY_PATH, SHLIB_PATH, or LIBPATH might be:

LD_LIBRARY_PATH=/usr/lib/cobol/coblib:/usr/sybase/lib
This can be set in the .profile or the psconfig.sh file in the $PS_HOME directory.
1)  COBDIR <== Should point to where the compiler is installed
2)  PATH <== Should have your $COBDIR/bin (which cob will tell you which one it is executing)
3)  LD_LIBRARY_PATH, LIBPATH, SHLIB_PATH <== Should have $COBDIR/lib (depending on flavour of unix)



Then at the prompt if you type  ' cob ‘, you should get a message to the effect saying I see no work.
Please follow the 'Compiling COBOL on UNIX' in PeopleTools installation guide to check the environment variables.

MicroFocus advises "unset COBPATH" when compiling, leaving
$COBPATH set when executing is okay!

To test a compile, set your env minus $COBPATH and create a temp directory:
# cp -p $ COBDIR/demo/debug/pi.cbl  /tmp/location
Change to your /tmp/location:
# cob pi.cbl
This should compile if all is well...

In Unix all you need to do to compile all the COBOL is from the $PS_HOME/install directory type:
pscbl.mak
Linking cobol
psrun.mak

Setting Environment Variables
On your UNIX system, you need to log in and ensure the following environment variables are set appropriately.  Alternatively, make sure the following environment variables are set in the .profile file in the user's home directory:

• $ORACLE_HOME must point to the correct Oracle installation; for example:
ORACLE_HOME=/products/oracle/8.1.7;export ORACLE_HOME
• $ORACLE_HOME/bin must be added to PATH; for example:
PATH=$PATH:$ORACLE_HOME/bin;export PATH
• $ORACLE_HOME/lib must be appended to LD_LIBRARY_PATH, LIBPATH, or SHLIB_PATH,
whichever is appropriate for your platform.
• $ORACLE_SID must be set to the correct Oracle instance; for example:
ORACLE_SID=hdmo;export ORACLE_SID

• $COBDIRmust be set to the Server Express installation; for example:
COBDIR=/cobol/prod/svrexp-2.2.SP1;export COBDIR
• $COBDIR/lib must be appended to LD_LIBRARY_PATH, LIBPATH, or SHLIB_PATH, whichever is appropriate for your platform.
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$COBDIR/lib;export LD_LIBRARY_PATH
LIBPATH=$LIBPATH:$COBDIR/lib;export LIBPATH
SHLIB_PATH=$SHLIB_PATH:$COBDIR/lib;export SHLIB_PATH
• $COBDIR/bin must be appended to the PATH; for example:
PATH=$PATH:$COBDIR/bin;export PATH
To set the required PeopleSoft environment variables, run psconfig.sh. Enter the following command:
cd
. ./psconfig.sh

ServerExpress COBOL Compiler

In this chapter we will cover useful information related to ServerExpress COBOL Compiler for UNIX.
There are 2 types License databases for ServerExpress COBOL Compiler

1.     Development license database.
2.     Runtime License Database.

Development license database: This license database is used when compiling the cobols. The license manager should be running to compile any COBOL program. This is installed when we install the product ServerExpress Development.  The license database files are mflmfdb, mflmfdb.idx, mflmfdbX, and mflmfdbX.idx.

Runtime license database:  While installing development license database, this get install under /var/mfaslmf directory. 
How to Trace COBOL in Peoplesoft

Step 1 - Sign in the PIA.

Step 2 - Navigate to the ‘Process Types ’ component and select the Process Type as ‘COBOL SQL’ and the Appropriate Operating System and Database Type.

Operating System:     should be the Process Scheduler Server where the Process is being run (let’s use ‘NT’ as an example).

Database Type:          should be the type of database where the process is run (let’s use ‘Microsoft’ as an example).

People Tools>> Process Scheduler >> Process Types



Step 3 - Copy the data from the ‘Parameter List’ field.

Here is an example:

%%DBTYPE%%/%%DBNAME%%/%%OPRID%%/%%OPRPSWD%%/%%RUNCNTLID%%/%%INSTANCE%%//%%DBFLAG%%


Step 4 - Navigate to the ‘Processes’ component and select the COBOL process that you would like to get a trace on.

Step 5 - Go to the ‘Override Options’ tab. Set the ‘Parameter List’ option to ‘Override’ and paste in the text field the data you copied at step 3. Add then the sum of all the Trace Options you want to use in between INSTANCE and DBFLAG as shown below and save.

%%/%%INSTANCE%%/3/%%DBFLAG%%

Here is the list of Trace Options and associated numbers for each option:

; 1 = SQL Statements
; 2 = SQL statement variables
; 4 = SQL connect, disconnect, commit and rollback
; 8 = Row Fetch (indicates that it occurred, not data)
; 16 = All other API calls except SSBs
; 32 = Set Select Buffers (identifies that attributes of columns to be selected.
; 64 = Database API specific calls
;128 = COBOL statement timings
;256 = Sybase Bind information
;512 = Sybase Fetch information

To turn traces on, sum all the options you want to use and enter the results in between INSTANCE and DBFLAG as shown above. For example, to enable tracing SQL statements (1), SQL statement variables (2) SQL connect, disconnect, commit and rollback (4), Row Fetch (8), and COBOL statement timings (128) you should use ‘255’ (1+2+4+8+16+32+64+128).

 Step 6 - Go ahead and run the COBOL process that you would like to get a trace on. Make sure to run the process on the Operating System you chose at step 2 (‘NT’ in the example).

Note down the Process Instance (252 in our example).



Step 7 - Get the trace file.

Location:
%%PS_HOME%%\appserv\prcs\\log_output\CBL__
Example:
\\Gsamas06\E\mss\e841g70n\appserv\prcs\e802f72a\log_output\CBL_INPSSTGE_544

File name:      cobsql_.trc
Example:       cobsql_252.trc

How to test COBOL configuration

In this post we will check our Cobol setup to run COBOL Processes.
After you have successfully compiled your source code, all executables should be in your \CBLBINX directory (this directory will be named CBLBINA, CBLBINU, or CBLBINE, depending on whether you are using ANSI, Unicode or EBCDIC).
Make sure that all of the .gnt or .int files are available correctly in this directory.

Now follow below steps to run COBOL test process to ensure that setup is fine.

      1.   Test COBOL’s are running successfully by Process Scheduler
1.     Remote call test is successful.

Compiling COBOL with CBLBLD.BAT


To compile COBOL with CBLBLD.BAT:

  1. Set up two environment variables, PS_HOME and COBROOT, on the machine from which you'll compile COBOL. (This should be either your file server or a machine that has access to your file server.) You can do this from a DOS command prompt window.
  1. Environment variable


    PS_HOME PeopleSoft home directory—that is, the drive letter and high-level PeopleSoft directory where you installed PeopleTools and the application.
    COBROOT Drive letter and root directory of the COBOL compiler.
    For example, you could enter the following at the DOS command prompt:

    set PS_HOME=C:\hr840
    set COBROOT=c:\netexpress\base

    2. Open a DOS command prompt window if you do not have one open already, and change directories to
    \Setup.

    3. Execute CBLBLD.BAT as follows
    cblbld
    where is the drive where the compile takes place, is the temp
    directory where the compile takes place

    The CBLBLD.BAT file will create the compile directory for you if it does not already exist.

    Note. Make sure to include a space between the and parameters; they are treated as two different parameters within the CBLBLD.BAT batch program. Also ensure that you have write permission to and as the compile process will take place there.

    For example, the following command will take the COBOL source from \src\cbl and do the compile process under c:\temp\compile:
    cblbld c: \temp\compile
    Make note of the information that is displayed on the screen while the process is running; it provides the locations of important files that you will need to examine.


    When compiled, the resulting optimized COBOL executables are written to the \cblbin directory as .gnt  or .int files depends upon our choice.

    .gnt =  .gnt are binary code, thus they execute very quickly but take longer time to compile. Generally, we are more concerned with modules executing quickly rather than compiling quickly, because we compile once, but we run more.
    .int = this is very quick to compile, but very slow to run.
    These COBOL copybook files are not compiled themselves.  (And since no .gnt executable modules are created for them, we never see any of these file names in the cblbin directory.)
    When we compile COBOL programs and if they fail, we check error.lis file and .lis file.   Error.lis file has name of all the COBOL programs those fail to compile while corresponding  .lis file of COBOL program has actual error message. 

    3 files of a COBOL process, for example:

    SFPGRPCL.cbl - the COBOL program itself
    SFPGRPCL.dms - Contains the script for loading the stored statements into a PeopleSoft table
    SFPGRPCL.gnt or SFPGRPCL.int - This is the actual compiled COBOL program
    .cbl gets compiled into .gnt
    .dms is run via Data Mover to store SQL statements into table – PS_SQLSTMT_TBL
    . gnt is executed and call SQL statements from PS_SQLSTMT_TBL


PeopleSoft COBOL: Naming Convention, Types of Files and Directories

This chapter will provide you understanding of naming convention of COBOL, different types of files and directories.

COBOL programs have eight-character names. 
The files that have a "P" in the 3rd position are COBOL source files. The file type is “. cbl ” and resides in \base directory
The files that have a "C" in the 3rd position are COBOL copybooks. The file type is “.cbl” and resides in \base directory

The module name for a program is   aaPnxxxx, where
aa identifies the application:
AP = Accounts Payable
AR = Accounts Receivable
GL = General Ledger
IN  = Inventory
PS = Payroll
PT = PeopleTools

P stands for Program,
nxxxx   identifies the specific module within application.
n identifies a sub-system within the application, e.g. A for Allocations, P for Posting. 
(Payroll was not developed with this convention, and there are no plans to rename Payroll modules.)

Here is a quick sheet for the modules, by two letter prefix, and a short description what they are used for:

  AD - Student Admin - Admissions
  AV - Student Admin
  BP - Benefits
  CC - Student Admin - Contact Information
  EG - Education and Government - Public Sector
  FA - Student Admin - Financials
  FE - Student Admin - ISIR
  FG - Federal Government
  FM - Student Admin - Federal Methodology
  FU - Student Admin - INAS Functions
  GL - Student Admin - Global Files
  GP - Global Payroll
  IM - Student Admin - IM Formulas
  IN - Student Admin - Interim Need Analysis
  PA - Pension Admin
  PI - Payroll Interface
  PL - Student Admin - Plus Work Area
  PR - Student Admin - CSS Data
  PS - North American Payroll
  PT - PeopleTools
  SF - Student Admin - Financials
  SR - Student Admin - Student Records
  TA - Student Admin - Tax Parameters

Similarly, COPY modules are named aaCnxxxx.
COBOL source file name must be unique because the extension is dropped on some target systems.
In COBOL Naming Convention, only initial three letters are important. Rest five depends upon the function of that program used for.
For example,
Cobol program  SFPREVAL,

SF -- indicated a manufacturing module Cobol (MFG includes CE, CM, CP, DP, EN, FI, FP, IN, PE, PO and SF)
P -- Program
REVAL -- short of its description 'Revalue Inventory and WIP'



Note:  There is no such master index or list for each Cobol job available.   However, you can get some information related to COBOL program in below two ways:
How to get Permanent Serial Number and License Key for ServerExpress


A COBOL Serial Number and License Key for your 'licensed number of users' are required to install Server Express. You can obtain these by emailing your company name, customer number, and CSI (Customer Support Identifier) number to Oracle E-Delivery Customer Service at:

licensecodes_ww@oracle.com

If you do not know your CSI number, please contact your Oracle Sales Representative.

How can we get a Peoplesoft COBOL Compiler 


You can download COBOL compiler from Oracle E-Delivery (http://edelivery.oracle.com).


OR
You may also contact our local customer care. 
List of Customer Care contacts at: 
URL:
http://www.oracle.com/support/contact.html
>>> 
On Oracle E-Delivery (http://edelivery.oracle.com), we have a PDF document “COBOL Quick Installation Guide”, refer it for more details.
A single user license is provided in this PDF document “COBOL Quick Installation Guide” for those customers wishing to immediately install and use the software. The software should ultimately be installed using the permanent license code.
How to Check Supported version of compiler -Peoplesoft Cobol

Step:  Login to Metalink
Go to Product certification page -- PeopleSoft Enterprise Certifications -- PeopleTools 8.4x Certifications -- CertificationPT84xThirdParty.xls
Refer CertificationPT84xThirdParty.xls file for your Operating System version.
It is always recommended to compile All the COBOL programs by supported version of COBOL compiler after:
1)     PeopleTools Upgrade
2)     Database Upgrade
3)     Operating System Upgrade
4)     Applying any patch and fixes
5)     Applying Tax Updates
understanding of COBOL Compilers for PeopleSoft.

In Peoplesoft following COBOL compilers can only be used:

For UNIX –                   MicroFocus Server Express COBOL compiler
For Windows --             MicroFocus Net Express COBOL compiler

Note: We cannot use any other COBOL compiler of any other vendor.  PeopleSoft routines in COBOL are specifically written for the Micro Focus Complier syntax and they will not work correctly with other COBOL compliers.

COBOL in Peoplesoft Overview

Common Business Oriented Language (COBOL) – A programming language for simple computations on large amount of data.  It is portable to multiple platforms and support for complex program structures.  As COBOL is suited to batch processing, some PeopleSoft applications uses routines written in Micro Focus COBOL. 

PeopleSoft applications use COBOL for the purpose of building and executing SQL with additional logic structures.


If PeopleSoft application uses COBOL routines then we require a COBOL compiler and if application does not use COBOL routines then we do not require a COBOL compiler.

Some products within PeopleSoft Human Resources Management (HRMS), Financial Management Solutions, and Supply Chain Management use Micro Focus COBOL routines. PeopleSoft Customer Relationship Management (CRM), Enterprise Performance Management, and Portal solutions do not use Micro Focus COBOL routines.
 
If you are licensed and using any of such modules in peoplesoft products, which use Micro Focus COBOL routines, then you must have to have Micro Focus COBOL compiler in order to initially compile the code, and to re-compile the code if any fixes are necessary.

Hence, if you are using a module, which has COBOL routines, you will require a COBOL compiler.

There is a complete list of PeopleSoft products that contain routines written in COBOL available in our COBOL and Module Chart available on Metalink.  In the COBOL spreadsheet, you can find a listing of PeopleSoft Enterprise products and an indication of whether COBOL is required for that product.


The criteria for determining whether COBOL is required for your product is based on the following:

1. COBOL code is in the product that is delivered on the CD; or,
2. There is a required dependency with another product that has COBOL delivered under their product on the CD. A "required dependency" means that a customer has to have this other product along with their product.

Examples include:

General Ledger has COBOL that is delivered on the CD, so the COBOL requirement is "yes".
Resource Management has No COBOL they deliver (and no required dependency on a product that has COBOL) so the requirement is "no".
Supply Planning has no COBOL they deliver, but they have a required dependency on Inventory (who does deliver COBOL), so the requirement is "yes".


So if our application has COBOL routines, then we have to compile all the cobols with PeopleSoft certify Cobol compiler after the installation of PeopleTools and Application.  We can run COBOL processes only after successful compilation of all the Cobol source files.  We cannot use any other COBOL compiler from any vendor because PeopleSoft routines in COBOL are specifically written for the Micro Focus Complier syntax. They will not work correctly with other COBOL compliers.