SAP for Utilities Discussions
Connect with fellow SAP users to share best practices, troubleshoot challenges, and collaborate on building a sustainable energy future. Join the discussion.
cancel
Showing results for 
Search instead for 
Did you mean: 

Error logged in Mass Billing

murtuza_chhatariya
Active Participant
0 Kudos

Hi,

When we schedule mass billing by EA26, error gets logged for few installations in application log as below

Internal error in form check_input (function module isu_output_ioper_process)

Billing was terminated for installation &

When we do manual bill by EASIBI, then it runs successfully. Even when we run that batch job again, the failed cases of installations are also gets done.

I am not able to track the problem why this error gets generated. If its data issue then it should be coming everytime. Surprisingly it comes only once and that also in batch job.

Please suggest on this.

Thanks

6 REPLIES 6

Former Member
0 Kudos

Your error is coming from the FORM CHECK_INPUT in that function module. In the message it should also show you a number 1, 2 or 3 after the word 'error'. Based on that you can see what error you are getting. Something in your operand is incorrect and probably due to any custom code somewhere before this call.

0 Kudos

Internal error in form check_input (function module isu_output_ioper_process)

Message no. AJ026

Diagnosis

An internal error has occurred in form check_input in function module isu_output_ioper_process. This is probably a programming error which you cannot resolve.

Note: the field error has the value 2

System Response

The processing of the function module must be canceled

Procedure

Contact SAP.

The above is the error. I guess the field you are talking about is 2 in this case. What is the significance of that?

Also can you suggest what ways I can check custom code in EA26?

0 Kudos

Not sure if you already found out what the issue is but looking at the code below you can see the you will a 2 when both the table out_ioper and the structure out_oper are filled in which probably means your operand has multiple and single values at the same time.

* 2. Check which import parameters are filled
  if p_out_ioper[] is initial.
    if p_out_oper is initial.
*     There are no values for output, exit
      exit.
    else.
*     Fill temporaryly table p_out_ioper with field p_out_oper.
*     From now on always use p_out_ioper
      append p_out_oper to p_out_ioper.
    endif.
  else.
    if not p_out_oper is initial.
*     Both table out_ioper and structure out_oper are filled.
      error = '2'.
    endif.
    if p_op-optyp <> co_amount.
      read table p_ioutsteps into woutsteps
        with key csno_from = p_csno_from.
      if     sy-subrc = 0
         and woutsteps-abha_created is initial.
*         No ABHA has been created. In that case only one value
*         for output is allowed because proration cannot be handeled.
*         Therefore p_out_ioper may not be used
        error = '3'.
      endif.
    endif.
  endif.

0 Kudos

When I do where used list of this FM, it shows long list of includes.

But when dig more into the includes and find where used of that include, it shows that include is not used anywhere. This has happned for all the entries found above.

If this FM is not being shown in where used, how can I track if that is called in EA38 transaction or not.

Moreover EA38 runs in background and its not possible to debug it.

murtuza_chhatariya
Active Participant
0 Kudos

I debugged the EAMABI process with erronous installations.

That the list of installations is put in EAMABI, some installations fails, first installation has error u201CError during update of operand E_GRTPUCAu201D, the following installations give error u201CInternal error in form check_input (function module isu_output_ioper_process)u201D.

First installation gives error in FM ISU_OUTPUT_IOPER_PROCESS, then itu2019s not clearing internal table OUT_IOPER. In the processing of next installation, OUT_OPER is getting filled but here OUT_IOPER of previous installation becomes visible again and gives error that both OUT_OPER and OUT_IOPER are filled. Only one from these (OUT_OPER, OUT_IOPER) should be filled. Custom function module ISU_ZGRT is calling that FM for both the installations but OUT_OPER and OUT_IOPER are not in scope of ISU_ZGRT so we can not add custom code to clear them after error.

This is the root cause of the issue.

0 Kudos

Could you please share with me how did you solve this.  We have the same problem.