zoukankan      html  css  js  c++  java
  • 乱糟糟的笔记

    DEMO_CDS_JOIN

    1.显示/隐藏 选择屏幕

    *&---------------------------------------------------------------------*
    *& SELECT-OPTIONS
    *&---------------------------------------------------------------------*
    SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-000.
    PARAMETER: P1 RADIOBUTTON GROUP GRP DEFAULT 'X' MODIF ID BL0 USER-COMMAND RAD,
               P2 RADIOBUTTON GROUP GRP             MODIF ID BL0.
    SELECTION-SCREEN END OF BLOCK BLK1.
    SELECTION-SCREEN BEGIN OF BLOCK BLK WITH FRAME TITLE TEXT-001.
    PARAMETERS: P1100 RADIOBUTTON GROUP GRP1 DEFAULT 'X' MODIF ID B1 USER-COMMAND RAD2,
                P1200 RADIOBUTTON GROUP GRP1 MODIF ID B1,
                P1300 RADIOBUTTON GROUP GRP1 MODIF ID B1,
                P1020 RADIOBUTTON GROUP GRP1 MODIF ID B1,
                W1100 RADIOBUTTON GROUP GRP1 MODIF ID B1.
    SELECTION-SCREEN SKIP 1.
    SELECT-OPTIONS: S_MATNR FOR MSEG-MATNR MODIF ID B1.

    PARAMETERS : P_WERKS LIKE MSEG-WERKS DEFAULT '1000' MODIF ID B1,
                 P_LGORT LIKE MARD-LGORT DEFAULT '1100' MODIF ID B1A.
    SELECT-OPTIONS: S_LGORT FOR MARD-LGORT MODIF ID B1B.
    PARAMETERS:  P_DATUM LIKE SY-DATUM DEFAULT SY-DATUM MODIF ID B1,
                 P_MJAHR LIKE SER03-MJAHR DEFAULT SY-DATUM+0(4) MODIF ID BL2,
                 P2_LGORT LIKE MARD-LGORT DEFAULT '1000' MODIF ID BL2.

    SELECT-OPTIONS: S2_MATNR FOR MSEG-MATNR MODIF ID BL2,
                    S2_SERNR FOR OBJK-SERNR MODIF ID BL2,
                    S2_MBLNR FOR SER03-MBLNR MODIF ID BL2,
                    S2_DATUM FOR SER03-DATUM MODIF ID BL2.
    PARAMETERS : P2_DATUM LIKE SY-DATUM DEFAULT SY-DATUM MODIF ID BL2.
    SELECTION-SCREEN END OF BLOCK BLK.
      

    LOOP AT SCREEN.
        IF SCREEN-GROUP1 'BL0'.
          CONTINUE.
        ENDIF.
        IF P1 'X'.
          IF SCREEN-GROUP1+0(1'B' AND SCREEN-GROUP1+0(2) <> 'B1'.
            SCREEN-ACTIVE 0.
          ENDIF.
          IF W1100 'X'.
            IF SCREEN-GROUP1 'B1A'.
              SCREEN-ACTIVE 0.
            ENDIF.
          ELSE.
            IF SCREEN-GROUP1 'B1B'.
              SCREEN-ACTIVE 0.
            ENDIF.
          ENDIF.
        ELSE.
          IF SCREEN-GROUP1+0(1'B' AND SCREEN-GROUP1 <> 'BL2'.
            SCREEN-ACTIVE 0.
          ENDIF.
        ENDIF.
        MODIFY SCREEN.
      ENDLOOP.

    2.NUMBER_GET_NEXT的使用注意事项

    调用这个函数的时候要注意锁住对应的OBJECT,

    其中'00'是指T-COD:SNRO下面番号,

    IGNORE_BUFFER  = 'X'是防止跳号,设成'X‘就不会跳号了。

    具体使用方法见文章:

    *------锁住对应的OBJECT

    CALL FUNCTION 'NUMBER_RANGE_ENQUEUE'
          EXPORTING
            OBJECT                 = '<obj>'
          EXCEPTIONS
            FOREIGN_LOCK           = 1
            OBJECT_NOT_FOUND       = 2
            SYSTEM_FAILURE         = 3
            OTHERS                 = 4.

    *----- 
          CALL FUNCTION 'NUMBER_GET_NEXT'
            EXPORTING
              NR_RANGE_NR                   = '01'
              OBJECT                        = '<obj>'
              IGNORE_BUFFER                 = 'X'
            IMPORTING
              NUMBER                        = NO
            EXCEPTIONS
              INTERVAL_NOT_FOUND            = 1
              NUMBER_RANGE_NOT_INTERN       = 2
              OBJECT_NOT_FOUND              = 3
              QUANTITY_IS_0                 = 4
              QUANTITY_IS_NOT_1             = 5
              INTERVAL_OVERFLOW             = 6
              BUFFER_OVERFLOW               = 7
              OTHERS                        = 8.
    *----- 解锁
        CALL FUNCTION 'NUMBER_RANGE_DEQUEUE'
          EXPORTING
            OBJECT = '<obj>'.

    3.ABAP 报表搜索程序

            RPR_ABAP_SOURCE_SCAN

    4.ABAP 报表屏幕下拉菜单


    INITIALIZATION.

    DATA
    :list TYPE vrm_values, value LIKE LINE OF list. SELECT * INTO CORRESPONDING FIELDS OF TABLE <itb> FROM WHERE . CLEAR list. REFRESH list. LOOP AT <itb>. value-key = <itb>-<KEY>. CONCATENATE <itb>-matkl ' ' <itb>-zttxt INTO value-text. APPEND value TO list. ENDLOOP. CALL FUNCTION 'VRM_SET_VALUES' EXPORTING id = 'P_< >' values = list * EXCEPTIONS * ID_ILLEGAL_NAME = 1 * OTHERS = 2 . IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF.
  • 相关阅读:
    VScode 修改中文字体
    missing KW_END at ')' near '<EOF>'
    SQL inner join, join, left join, right join, full outer join
    SQL字符替换函数translater, replace
    SQL COOKBOOK SQL经典实例代码 笔记第一章代码
    sqlcook sql经典实例 emp dept 创建语句
    dateutil 2.5.0 is the minimum required version python
    安装postgresql后找不到服务 postgresql service
    Postgres psql: 致命错误: 角色 "postgres" 不存在
    【西北师大-2108Java】第十六次作业成绩汇总
  • 原文地址:https://www.cnblogs.com/mingdashu/p/5438096.html
Copyright © 2011-2022 走看看