zoukankan      html  css  js  c++  java
  • ABAP 后台JOB布置例子

    DATA:gv_timestamp TYPE timestampl.
      DATA:gc_timestamp TYPE char27.
      DATA:gv_dat       TYPE d,
           gv_tim       TYPE t,
           gv_tz        TYPE ttzz-tzone,
           gv_dst       TYPE c LENGTH 1.
      DATA:gv_user      TYPE char12 VALUE 'DDIC'.
      DATA:jobname      TYPE tbtcjob-jobname,
           jobcount     TYPE tbtcjob-jobcount.
      DATA: lv_line TYPE sy-tabix.
      DATA: gv_line_c TYPE c LENGTH 3.
      DATA: lt_tbtco TYPE TABLE OF tbtco.
      DATA: lv_btcjob TYPE btcjob.

      RANGES:     r_vbeln   FOR gs_out-vbeln ,
                  r_route   FOR gs_out-route,
                  r_kunnr   FOR gs_out-kunnr,
                  r_street  FOR gs_out-street,
                  r_city    FOR gs_out-city,
                  r_remark  FOR gs_out-remark,
                  r_number  FOR gs_out-tel_number,
                  r_name1   FOR gs_out-name_a.
      LOOP AT pt_out INTO ls_addr.
        r_vbeln-low = ls_addr-vbeln_dn.
        r_vbeln-sign = 'I'.
        r_vbeln-option = 'EQ'.
        APPEND r_vbeln.

        r_route-low = ls_addr-route.
        r_route-sign = 'I'.
        r_route-option = 'EQ'.
        APPEND r_route.

        r_kunnr-low = ls_addr-kunnr.
        r_kunnr-sign = 'I'.
        r_kunnr-option = 'EQ'.
        APPEND r_kunnr.

        r_street-low = ls_addr-street.
        r_street-sign = 'I'.
        r_street-option = 'EQ'.
        APPEND r_street.

        r_city-low = ls_addr-city.
        r_city-sign = 'I'.
        r_city-option = 'EQ'.
        APPEND r_city.

        r_remark-low = ls_addr-remark.
        r_remark-sign = 'I'.
        r_remark-option = 'EQ'.
        APPEND r_remark.

        r_number-low = ls_addr-tel_number.
        r_number-sign = 'I'.
        r_number-option = 'EQ'.
        APPEND r_number.

        r_name1-low = ls_addr-name1.
        r_name1-sign = 'I'.
        r_name1-option = 'EQ'.
        APPEND r_name1.

      ENDLOOP.
      CONCATENATE 'ZSD1035_' sy-uname '_' '%' INTO lv_btcjob.
      DO 200 TIMES.
        CLEAR lt_tbtco.
        SELECT * INTO TABLE lt_tbtco FROM tbtco WHERE jobname LIKE lv_btcjob
          AND ( status = 'R' OR status = 'S' ).
        DESCRIBE TABLE lt_tbtco LINES lv_line.
        IF lv_line < 25.
          EXIT.
        ELSE.
          WAIT UP TO 3 SECONDS.
        ENDIF.
      ENDDO.
      gv_line = gv_line + 1.
      gv_line_c = gv_line.
    *  gv_tz = 'UTC+8'.
    *  GET TIME STAMP FIELD gv_timestamp.
    *  gc_timestamp = gv_timestamp.
    *  CONVERT TIME STAMP gv_timestamp TIME ZONE gv_tz
    *        INTO DATE gv_dat TIME gv_tim DAYLIGHT SAVING TIME gv_dst.

    *  CONDENSE gc_timestamp.
      CONCATENATE 'ZSD1035_' sy-uname '_' sy-datum sy-uzeit INTO jobname.
      CONDENSE jobname.
    *  jobname+15(6) = gv_tim.

    *   Job open
      CALL FUNCTION 'JOB_OPEN'
        EXPORTING
          delanfrep        = ' '
          jobgroup         = ' '
          jobname          = jobname
    *     sdlstrtdt        = sy-datum
    *     sdlstrttm        = sy-uzeit
        IMPORTING
          jobcount         = jobcount
        EXCEPTIONS
          cant_create_job  = 01
          invalid_job_data = 02
          jobname_missing  = 03.

      IF sy-subrc = 0.
        SUBMIT zsd_mass_change_dn_job
            WITH    s_vbeln  IN r_vbeln[]
            WITH    s_route  IN r_route[]
            WITH    s_kunnr  IN r_kunnr[]
            WITH    s_street IN r_street[]
            WITH    s_city   IN r_city[]
            WITH    s_remark IN r_remark[]
            WITH    s_number IN r_number[]
            WITH    s_name1  IN r_name1[]
            AND RETURN
            USER gv_user
            VIA JOB jobname
            NUMBER jobcount.

        IF sy-subrc = 0.

          CALL FUNCTION 'JOB_CLOSE'
              EXPORTING
                jobcount             = jobcount
                jobname              = jobname
    *下面两个字段可以设置后台作业的执行时间
    *           sdlstrtdt            = sy-datum
    *           sdlstrttm            = sy-uzeit
                strtimmed             = 'X' "立即执行
              EXCEPTIONS
                cant_start_immediate = 1
                invalid_startdate    = 2
                jobname_missing      = 3
                job_close_failed     = 4
                job_nosteps          = 5
                job_notex            = 6
                lock_failed          = 7
                OTHERS               = 8.

          IF sy-subrc = 0.
          ENDIF.
        ENDIF.
      ENDIF.

    闫默涵
  • 相关阅读:
    Linux centosVMware Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做
    Linux centosVMware Linux集群架构LVS DR模式搭建、keepalived + LVS
    Linux centosVMware 集群介绍、keepalived介绍、用keepalived配置高可用集群
    Linux centosVMware 配置Tomcat监听80端口、配置Tomcat虚拟主机、Tomcat日志
    Linux centosVMware Tomcat介绍、安装jdk、安装Tomcat
    Linux centosVMware xshell使用xftp传输文件、使用pure-ftpd搭建ftp服务
    Linux centosVMware NFS介绍、NFS服务端安装配置、NFS配置选项
    Linux centosVMware NFS exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp
    Linux centosVMware mysql用户管理、常用sql语句、mysql数据库备份恢复
    Linux centosVMware MySQL常用操作设置更改root密码、连接mysql、mysql常用命令
  • 原文地址:https://www.cnblogs.com/yanmohan/p/14549019.html
Copyright © 2011-2022 走看看