Error: ORA-12899: Value Too Large For Column “CALC_NAME”

The Periodic Process run using a Group List fails and returns an “ORA-12899: value too large for column “SYSADM”.”PS_PA_CALC_RESTART”.”CALC_NAME” (actual: 23, maximum: 20)” message in the trace file.

Root Cause

During the COBOL Periodic Process, a long Run Control ID is not truncated to 20 characters when populating a Calculation Name variable. Insert statements that use the Calculation Name fail when the oversized value is passed.

The Insert statements that include the Calculation Name are used to update the Calculation Restart Table (PA_CALC_RESTART) and periodic process management table (PA_PRDIC_RSLT). These tables are used for Group List processing, so most likely, only periodic process requests for Group Lists with more than one Employee ID are impacted.

Request Process Page with Long Run Control Id

Solutions

The problem can be easily avoided by specifying a Run Control ID of 20 characters in length or less when creating a Periodic Process request.

This problem does not occur in all versions of the Application.

Details

Error Message has been returned when the PA_CALC_RESTART table is updated:

Application Program Failed
 Action Type     : SQL UPDATE                    
 In Pgm Section  : SQLRT: EXECUTE-STMT                                                                                                                                         
 With Return Code: 12899 
 Error Message   : ORA-12899: value too large for column "SYSADM"."PS_PA_CALC_RESTART"."CALC_NAME" (actual: 23, maximum: 20)
 Stored Stmt     : PAPPRSQL_I_RESTART
 SQL Statement   : INSERT INTO PS_PA_CALC_RESTART (CALC_NAME ,CALC_SEQ_NUM ,BEN                                                                                                                        
                   EFIT_PLAN ,EMPLID ,OPRID ,RUN_CNTL_ID) VALUES (:1 ,:2 ,:3 ,:                                                                                                                        
                   4 ,:5 ,:6)
Application Trace

Programs: PAPPRSQL

Section: JB000-INSERT-RESTART

Error Message has been returned when the PA_PRDIC_RSLT table is updated:

Application Program Failed
 Action Type     : SQL UPDATE                    
 In Pgm Section  : SQLRT: EXECUTE-STMT                                                                                                                                         
 With Return Code: 12899 
 Error Message   : ORA-12899: value too large for column "SYSADM"."PS_PA_PRDIC_RSLT"."CALC_NAME" (actual: 23, maximum: 20)
 Stored Stmt     : PAPPRSQL_I_PRDICR 
 SQL Statement   : INSERT INTO PS_PA_PRDIC_RSLT (RUN_CNTL_ID ,PROCESS_INSTANCE                                                                                                                         
                   ,RUN_DT ,CALC_NAME ,PRDIC_RUNSTAT ,EMPLID ,GROUP_NAME ,BENEF                                                                                                                        
                   IT_PLAN ,AS_OF_DATE ,PERIODIC_CYCLE ,CALC_ALL_PLANS_CD ,ACCT                                                                                                                        
                   _BAL_IND ,CASH_BAL_IND ,SERVICE_IND ,PARTIC_IND ,PAYROLL_HIS                                                                                                                        
                   T_IND ,EXT_EMP_DATA_IND ,CONS_HRS_IND ,CONS_EARN_IND ,CONS_C                                                                                                                        
                   ONTRIB_IND ,PENSION_ST_IND ,PROCESS_MODE) VALUES (:1,:2,:3,:                                                                                                                        
                   4,:5,:6,:7,:8,:9,:10,:11,:12 ,:13,:14,:15,:16,:17,:18,:19,:2                                                                                                                        
                   0,:21,:22)
Application Trace

Programs: PAPPRSQL

Section: TA000-INSERT-PRDIC-RESULTS

Conditions

The Run Control ID is greater than 20 characters in length

The error occurs when the 30 Character Run Control ID field is not truncated to fit the 20 Character Calculation Name field.

Was this article helpful?

Related Articles

Leave a Reply