- REPORT zini_002.
- CLASS ZCl_MY_JOB DEFINITION.
- PUBLIC SECTION.
- TYPES: BEGIN OF ty_JOB,
- count TYPE tbtcjob-jobcount,
- name TYPE tbtcjob-jobname,
- start_now TYPE btch0000-char1,
- start_date TYPE tbtcjob-sdlstrtdt,
- start_time TYPE tbtcjob-sdlstrttm,
- error TYPE sysubrc,
- END OF ty_job.
- DATA: params TYPE ty_job.
- METHODS:
- constructor IMPORTING I_params TYPE ty_job OPTIONAL,
- job_open,
- job_close.
- ENDCLASS.
- CLASS ZCl_MY_JOB IMPLEMENTATION.
- METHOD constructor.
- IF I_params IS SUPPLIED.
- params = i_params.
- ENDIF.
- IF params-start_date IS INITIAL.
- CLEAR params-start_time.
- params-start_now = 'X'.
- ENDIF.
- ENDMETHOD.
- METHOD job_open.
- CLEAR params-error.
- CALL FUNCTION 'JOB_OPEN'
- EXPORTING
- * DELANFREP = ' '
- * JOBGROUP = ' '
- jobname = params-name
- * SDLSTRTDT = NO_DATE
- * SDLSTRTTM = NO_TIME
- * JOBCLASS =
- * CHECK_JOBCLASS =
- IMPORTING
- jobcount = params-count
- * INFO =
- * CHANGING
- * RET =
- EXCEPTIONS
- cant_create_job = 1
- invalid_job_data = 2
- jobname_missing = 3
- OTHERS = 4.
- params-error = sy-subrc.
- ENDMETHOD.
- METHOD job_close.
- CHECK params-error IS INITIAL.
- CALL FUNCTION 'JOB_CLOSE'
- EXPORTING
- * AT_OPMODE = ' '
- * AT_OPMODE_PERIODIC = ' '
- * CALENDAR_ID = ' '
- * EVENT_ID = ' '
- * EVENT_PARAM = ' '
- * EVENT_PERIODIC = ' '
- jobcount = params-count
- jobname = params-name
- * LASTSTRTDT = NO_DATE
- * LASTSTRTTM = NO_TIME
- * PRDDAYS = 0
- * PRDHOURS = 0
- * PRDMINS = 0
- * PRDMONTHS = 0
- * PRDWEEKS = 0
- * PREDJOB_CHECKSTAT = ' '
- * PRED_JOBCOUNT = ' '
- * PRED_JOBNAME = ' '
- * SDLSTRTDT = NO_DATE
- * SDLSTRTTM = NO_TIME
- * STARTDATE_RESTRICTION = BTC_PROCESS_ALWAYS
- strtimmed = params-start_now
- * TARGETSYSTEM = ' '
- * START_ON_WORKDAY_NOT_BEFORE = SY-DATUM
- * START_ON_WORKDAY_NR = 0
- * WORKDAY_COUNT_DIRECTION = 0
- * RECIPIENT_OBJ =
- * TARGETSERVER = ' '
- * DONT_RELEASE = ' '
- * TARGETGROUP = ' '
- * DIRECT_START =
- * INHERIT_RECIPIENT =
- * INHERIT_TARGET =
- * REGISTER_CHILD = ABAP_FALSE
- * TIME_ZONE =
- * EMAIL_NOTIFICATION =
- * IMPORTING
- * JOB_WAS_RELEASED =
- * CHANGING
- * RET =
- EXCEPTIONS
- cant_start_immediate = 1
- invalid_startdate = 2
- jobname_missing = 3
- job_close_failed = 4
- job_nosteps = 5
- job_notex = 6
- lock_failed = 7
- invalid_target = 8
- invalid_time_zone = 9
- OTHERS = 10.
- params-error = sy-subrc.
- ENDMETHOD.
- ENDCLASS.
- END-OF-SELECTION.
- DATA(g_my_job) = NEW ZCl_MY_JOB( i_params = VALUE #( name = |{ sy-repid }{ sy-uzeit }| ) ).
- g_my_job->job_open( ).
- IF g_my_job->params-error IS INITIAL.
- SUBMIT (sy-repid) AND RETURN " BOOOOOM
- USER sy-uname
- VIA JOB g_my_job->params-name
- NUMBER g_my_job->params-count.
- g_my_job->job_close( ).
- IF g_my_job->params-error EQ 0.
- MESSAGE s398(00) WITH TEXT-j03.
- ENDIF.
- ENDIF.
Última modificación de la página el 03 May 2026 a las 07h40
Powered by
PmWiki