Array: Function Results Per Plan

Processing problems may occur if the number of active Function Results in a Plan Implementation exceeds 50.

Overview

The maximum number of active Function Results in a Plan Implementation is defined in a COBOL Array.

Error Experience

Periodic Process only processes the first 50 (array size) Function Results and does not return an error message.

The calculation returns an “Array overflow condition encountered” error message (16005,27009).

The calculation application trace output will include the following text:

Program VariableApplication Trace Output
S-MSG-PGM-NMPAPCRSQL
S-MSG-PGM-PARAGET-CALC-PROC
S-MSG-LUCID-MSG:
MSG-ERR-PROC-MAX
Calc Prc Lst Exceeds Tbl Max.

Estimate Array Size

Use the following SQL to estimate the required array size based on configuration:

 SELECT A.BENEFIT_PLAN, A.EFFDT, COUNT('X') AS ARRAY_MAX
   FROM PS_PA_PROC_USE A, PS_PA_FNC_RSLT_TBL B
  WHERE A.PROC_EXEC_ORD_NUM < 999
    AND B.BENEFIT_PLAN = A.BENEFIT_PLAN
    AND B.FUNCTN_RESULT_NM = A.PROC_NAME
    AND A.PROC_INSTALL_CD = 'I'
  GROUP BY A.BENEFIT_PLAN, A.EFFDT
  ORDER BY ARRAY_MAX DESC;
SQL

Set the array size to this SQL result plus an additional margin to accommodate future Function Result additions.

Solutions

Either decrease the number of Function Results included in the largest Plan Implementation by inactivating or deleting rows or increase the COBOL Array by updating the default values in these COBOL programs/copybooks:

ModuleTypeData ElementSize
PACCMAXSMAXCALC-PROC-MAX50
PACCMSGSMAXCALC-PROC-MAX50
PACCRSQLOCCURSCALC-PROC50
PACPRSQLOCCURSCALC-PROC50

Analysis

Almost all clients have required an increase to this array. Updated values range from 150 to 600.

Was this article helpful?

Related Articles

Leave a Reply