7

Application Job does not working with Check Exit -...

 1 month ago
source link: https://community.sap.com/t5/technology-q-a/application-job-does-not-working-with-check-exit-btp-abap-environment/qaq-p/13654023
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Application Job does not working with Check Exit - BTP ABAP Environment

Muthuraja

Active Participant

2 hours ago

Hello Experts,

I was trying to Create an Application job in the BTP ABAP Environment. When I add Check Exit for my Job Catalog Entry, it is giving an syntax error like below

Screenshot 2024-03-31 at 10.56.22 AM.png

Error Details:

An internal error occurred during: "Checking object...".

Execution of request "POST /sap/bc/adt/checkruns" for destination SystemName (system url )

failed: HTTP/1.1 500 Internal Server Error

How to Repro the issue:

  • Create new class for the Application job logic
  • Create new Applicaton Job Catalog Entry on top of above class
  • Create new Application Job Template on top of above Application Job Catalog Entry
  • Create new class for the Check Exit (Interface if_apj_jt_check_20)
  • Add the new check exit class to the Job Catalog Entry above
  • After done, In the Job Template sytax error occurs
  • If I remove the check exit class from the Catalog Entry then Syntax Error goes off

 Application Job Implementation

CLASS zcl_application_job_check_test DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.

    INTERFACES if_apj_dt_exec_object .
    INTERFACES if_apj_rt_exec_object .
  PROTECTED SECTION.
  PRIVATE SECTION.
ENDCLASS.



CLASS zcl_application_job_check_test IMPLEMENTATION.


  METHOD if_apj_dt_exec_object~get_parameters.

    et_parameter_def = VALUE #( ( selname        = 'P_ORDR'
                                  kind           = if_apj_dt_exec_object=>parameter
                                  datatype       = 'C'
                                  length         = '10'
                                  param_text     = 'Order Id'
                                  changeable_ind = abap_true ) ).

  ENDMETHOD.


  METHOD if_apj_rt_exec_object~execute.
  ENDMETHOD.
ENDCLASS.

 Check Exit Class Implementation

CLASS zcl_appl_job_check_test DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.

    INTERFACES if_apj_jt_check_20 .
  PROTECTED SECTION.
  PRIVATE SECTION.
ENDCLASS.



CLASS zcl_appl_job_check_test IMPLEMENTATION.


  METHOD if_apj_jt_check_20~adjust_hidden.
  ENDMETHOD.


  METHOD if_apj_jt_check_20~adjust_read_only.
  ENDMETHOD.


  METHOD if_apj_jt_check_20~check_and_adjust.

    DATA(lv_order) = ct_value[ KEY param parameter_name = 'P_ORDR' ]-low.

    IF lv_order IS NOT INITIAL.
      INSERT VALUE #( id = 'ZMSG_HTTP' type = 'E' number = '012' ) INTO TABLE et_msg.
    ELSE.
      ev_successful = abap_true.
    ENDIF.

  ENDMETHOD.


  METHOD if_apj_jt_check_20~check_and_adjust_parameter.
  ENDMETHOD.


  METHOD if_apj_jt_check_20~check_authorizations.
  ENDMETHOD.


  METHOD if_apj_jt_check_20~check_start_condition.
  ENDMETHOD.


  METHOD if_apj_jt_check_20~get_dynamic_properties.
  ENDMETHOD.


  METHOD if_apj_jt_check_20~initialize.
  ENDMETHOD.
ENDCLASS.​

 Application Job Template

Screenshot 2024-03-31 at 11.07.12 AM.png

Application Job Catalog Entry

Screenshot 2024-03-31 at 11.03.56 AM.png

@michael_szardenings  - Do you aware of this issue ?

Thanks a lot.

Best Regards,

Muthu


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK