diff --git a/src/zabapgit_object_jobd.prog.abap b/src/zabapgit_object_jobd.prog.abap index 74502dac2..7109904f4 100644 --- a/src/zabapgit_object_jobd.prog.abap +++ b/src/zabapgit_object_jobd.prog.abap @@ -51,31 +51,51 @@ CLASS lcl_object_jobd IMPLEMENTATION. METHOD lif_object~serialize. - DATA: ls_job_definition TYPE cl_jr_job_definition=>ty_job_definition, + DATA: lr_job_definition TYPE REF TO data, lo_job_definition TYPE REF TO object, jd_name TYPE c LENGTH 32. + FIELD-SYMBOLS: TYPE any, + TYPE any. + jd_name = ms_item-obj_name. TRY. + CREATE DATA lr_job_definition TYPE ('CL_JR_JOB_DEFINITION=>TY_JOB_DEFINITION'). + ASSIGN lr_job_definition->* TO . + ASSERT sy-subrc = 0. + CREATE OBJECT lo_job_definition TYPE ('CL_JR_JOB_DEFINITION') EXPORTING im_jd_name = jd_name. CALL METHOD lo_job_definition->('GET_JD_ATTRIBUTES') IMPORTING - ex_jd_attributes = ls_job_definition. + ex_jd_attributes = . - CLEAR: ls_job_definition-jdpackage, - ls_job_definition-btcjob_user, - ls_job_definition-owner, - ls_job_definition-created_date, - ls_job_definition-created_time, - ls_job_definition-changed_date, - ls_job_definition-changed_time. + ASSIGN COMPONENT 'JDPACKAGE' OF STRUCTURE TO . + CLEAR . + + ASSIGN COMPONENT 'BTCJOB_USER' OF STRUCTURE TO . + CLEAR . + + ASSIGN COMPONENT 'OWNER' OF STRUCTURE TO . + CLEAR . + + ASSIGN COMPONENT 'CREATED_DATE' OF STRUCTURE TO . + CLEAR . + + ASSIGN COMPONENT 'CREATED_TIME' OF STRUCTURE TO . + CLEAR . + + ASSIGN COMPONENT 'CHANGED_DATE' OF STRUCTURE TO . + CLEAR . + + ASSIGN COMPONENT 'CHANGED_TIME' OF STRUCTURE TO . + CLEAR . io_xml->add( iv_name = 'JOBD' - ig_data = ls_job_definition ). + ig_data = ). CATCH cx_root. lcx_exception=>raise( |Error serializing JOBD| ). @@ -85,28 +105,38 @@ CLASS lcl_object_jobd IMPLEMENTATION. METHOD lif_object~deserialize. - DATA: ls_job_definition TYPE cl_jr_job_definition=>ty_job_definition, + DATA: lr_job_definition TYPE REF TO data, lo_job_definition TYPE REF TO object, jd_name TYPE c LENGTH 32. + FIELD-SYMBOLS: TYPE any, + TYPE any. + jd_name = ms_item-obj_name. TRY. + CREATE DATA lr_job_definition TYPE ('CL_JR_JOB_DEFINITION=>TY_JOB_DEFINITION'). + ASSIGN lr_job_definition->* TO . + ASSERT sy-subrc = 0. + io_xml->read( EXPORTING iv_name = 'JOBD' CHANGING - cg_data = ls_job_definition ). + cg_data = ). CREATE OBJECT lo_job_definition TYPE ('CL_JR_JOB_DEFINITION') EXPORTING im_jd_name = jd_name. - ls_job_definition-jdpackage = iv_package. + + ASSIGN COMPONENT 'JDPACKAGE' OF STRUCTURE TO . + + = iv_package. CALL METHOD lo_job_definition->('CREATE_JD') EXPORTING - im_jd_attributes = ls_job_definition. + im_jd_attributes = . CATCH cx_root. lcx_exception=>raise( |Error deserializing JOBD| ).