zoukankan      html  css  js  c++  java
  • SAP设置每天自动切换背景图片

    SMW0上传图片

     然后主要是通过设置SSM_CUST这张表来控制的,

    主要通过行 START_IMAGE   图片的对象名称

    例如:

     效果

    通过程序控制该行值,在SM36设置后台作业,就可以做到每天更换背景图了。

     附代码:

    REPORT ZIT0004.
    
    INCLUDE zit0004_head.
    INCLUDE zit0004_screen.
    INCLUDE zit0004_form.
    
    START-OF-SELECTION.
      PERFORM frm_get_data.
    View Code

    包含文件ZIT0004_HEAD:

    *&---------------------------------------------------------------------*
    *& 包含               ZIT0004_HEAD
    *&---------------------------------------------------------------------*
    DATA: gt_wwwparams LIKE TABLE OF wwwparams,
          gt_ssm_cust  LIKE TABLE OF ssm_cust.
    View Code

    包含文件ZIT0004_SCREEN:

    *&---------------------------------------------------------------------*
    *& 包含               ZIT0004_SCREEN
    *&---------------------------------------------------------------------*
    PARAMETERS: p_objid TYPE wwwparams-objid DEFAULT 'ZTYH001'.
    View Code

    包含文件ZIT0004_FORM:

    *&---------------------------------------------------------------------*
    *& 包含               ZIT0004_FORM
    *&---------------------------------------------------------------------*
    *&---------------------------------------------------------------------*
    *& Form FRM_GET_DATA
    *&---------------------------------------------------------------------*
    *& text
    *&---------------------------------------------------------------------*
    *& -->  p1        text
    *& <--  p2        text
    *&---------------------------------------------------------------------*
    FORM frm_get_data .
    *BREAK-POINT.
      DATA: lv_lines     TYPE sy-tabix,
            lv_lines2    TYPE sy-tabix,
            lv_lens      TYPE sy-tabix,
            lt_ssm_cust  LIKE TABLE OF ssm_cust,
            lt_ssm_cust2 LIKE TABLE OF ssm_cust.
      SELECT *
        INTO TABLE gt_wwwparams
        FROM wwwparams
       WHERE objid LIKE 'ZTYH%'
         AND name EQ 'mimetype'
         AND value IN ('jpg','JPG','png','PNG').
    
      SELECT *
        INTO TABLE gt_ssm_cust
        FROM ssm_cust
       WHERE id EQ 'START_IMAGE'.
    
      DESCRIBE TABLE gt_wwwparams LINES lv_lines2.
      READ TABLE gt_ssm_cust INTO DATA(ls_ssm_cust) INDEX 1.
      IF sy-subrc EQ 0.
        lv_lens = strlen( ls_ssm_cust-path ).
        lv_lens = lv_lens - 4.
        lv_lines = ls_ssm_cust-path+4(lv_lens).
        ADD 1 TO lv_lines.
      ENDIF.
      IF lv_lines > lv_lines2.
        lv_lines = 1.
      ENDIF.
      SORT gt_wwwparams[] BY objid.
      READ TABLE gt_wwwparams INTO DATA(ls_wwwparams) INDEX lv_lines.
      IF sy-subrc EQ 0.
        ls_ssm_cust-id = 'START_IMAGE'.
        ls_ssm_cust-path = ls_wwwparams-objid.
        APPEND ls_ssm_cust TO lt_ssm_cust.
      ENDIF.
    
      IF NOT p_objid IS INITIAL.
        SELECT *
          INTO TABLE @DATA(lt_wwwparams2)
          FROM wwwparams
         WHERE objid EQ @p_objid
           AND name EQ 'mimetype'
           AND value IN ('jpg','JPG','png','PNG').
        IF NOT lt_wwwparams2 IS INITIAL.
          ls_ssm_cust-id = 'START_IMAGE'.
          ls_ssm_cust-path = p_objid.
          APPEND ls_ssm_cust TO lt_ssm_cust2.
        ENDIF.
      ENDIF.
      IF NOT lt_ssm_cust2[] IS INITIAL.
        MODIFY ssm_cust FROM TABLE lt_ssm_cust.
        IF sy-subrc EQ 0.
          COMMIT WORK AND WAIT.
        ELSE.
          ROLLBACK WORK.
        ENDIF.
      ELSEIF NOT lt_ssm_cust[] IS INITIAL.
        MODIFY ssm_cust FROM TABLE lt_ssm_cust.
        IF sy-subrc EQ 0.
          COMMIT WORK AND WAIT.
        ELSE.
          ROLLBACK WORK.
        ENDIF.
      ENDIF.
    
    *  BREAK-POINT.
    ENDFORM.
    View Code



  • 相关阅读:
    模板元编程实现素数判定
    JDBC开发
    4.9 当相应行存在时更新
    QT5中如何使用QFtp类(这个类虽然没有被收录,但一直在更新)
    gcc和g++的区别
    Awesome C/C++(图像部分)
    Ubuntu更新源
    GO的GDB调试
    内核探测工具systemtap简介
    列举一下项目中使用的产品和技术
  • 原文地址:https://www.cnblogs.com/chaguoguo/p/14168733.html
Copyright © 2011-2022 走看看