While trying to run application TECA, we received APCI error. According to the manuals, this could be related to the language environment. Could someone give me any tips?
Thanks.
APCI
Explanation:
A request for a program which CICS as identified as an OS/PLI program cannot be executed because either Language Environment is not active in this address space or Language Environment cannot provide support for the PL/I language.
System action:
The transaction is abnormally terminated and the program is disabled.
User response:
Ensure that the correct Language Environment support is present. Refer to messages issued during CICS initialization to determine why PL/I support is not present.
Modules:
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
Hello Rodrigo and welcome to the forums,
I'd suggest you talk with your local CICS support. They will be completely familiar with your environment.
Quote:
Ensure that the correct Language Environment support is present. Refer to messages issued during CICS initialization to determine why PL/I support is not present.
This information is only available on your system.
I forgot to mention that we tried to alter definition for the related program to all languages available: Cobol, Assembler, PLI, etc, and also re-enable the program every time we ran the transaction, to no avail.
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
Perhaps this may help (or not)?
Code:
LEACTIVE CSECT
PRINT GEN ACTIVATE MACRO-EXPANSION
***********************************************************************
*---------------------------------------------------------------------*
* *
* THIS PROGRAM IS 'CALLED' WITHOUT ANY PARAMETERS. IT IS USED *
* TO INFORM THE CALLER WHETHER THE 'LANGUAGE ENVIRONMENT' IS *
* ACTIVE OR NOT. THE CALLER CAN TEST THE RESULT BY CHECKING *
* THE COBOL 'RETURN-CODE' SPECIAL-REGISTER, FOR ZERO (ACTIVE) *
* OR NON-ZERO (NOT ACTIVE). *
* *
* EXAMPLE COBOL SYNTAX: *
* *
* 03 WS-LE-ACTIVE-HWORD PIC S9(04) BINARY. *
* 88 WS-LE-IS-ACTIVE VALUE ZERO. *
* 03 WS-LEACTIVE PIC X(08) VALUE 'LEACTIVE'. *
* *
* CALL WS-LEACTIVE. *
* *
* MOVE RETURN-CODE TO WS-LE-ACTIVE-HWORD. *
* *
*---------------------------------------------------------------------*
***********************************************************************
USING *,R12 INFORM ASSEMBLER
SAVE (14,12) SAVE REGISTERS
LA R12,0(,R15) R12 IS BASE-REGISTER
B BEGIN BEGIN EXECUTION
LEACTIVE AMODE 31
LEACTIVE RMODE ANY
YREGS
EYECTCHR DS 0CL48
DC PL2'407'
DC CL10'EYECATCHER'
DC PL1'7'
DC CL6' ===>'
PROGNAME DC CL8'LEACTIVE'
DC CL2','
DC CL8'&SYSDATC'
DC CL2','
DC CL9'&SYSTIME..00 '
EJECT
CNOP 0,4 ENSURE ALIGNMENT
BEGIN EQU *
SLR R15,R15 PSA IS BASE-LOCATION ZERO
L R15,PSATOLD-PSA(,R15) TCB-ADDRESSABILITY
L R15,TCBCELAP-TCB(,R15) ANCHOR-POINTER ADDRESSABILITY
ICM R15,B'1111',0(R15) VALID LIBRARY ANCHOR-POINTER?
LA R15,16 LOAD WITH F'16'
BZ RTN2CLLR NO, LE IS 'INACTIVE', R15=16
SLR R15,R15 LE IS 'ACTIVE', R15=00
RTN2CLLR EQU *
RETURN (14,12),RC=(15) RESTORE AND RETURN
LTORG , BEGIN LITERAL POOL
IHAPSA DSECT=YES,LIST=YES PREFIXED-SAVE-AREA (PSA)
IKJTCB DSECT=YES,LIST=YES TASK-CONTROL-BLOCK (TCB)
END ,
I'm sure you can call this from PL/I and examine the return-code (I'm not that well versed in PL/I).