ITPUB??ì3
ITPUB论坛 » SAP R/3 » 系统开发及跨应用设置 » 有关RFC作batch,多个asset及subasset时无法作unlock


您有 1 条公共消息
  • 来自: 公共消息 标题: 3-5月ITPUB数据库 ... 内容: ITPUB与3月和5月分别安排了Oracle 11g DBA和Oracle性能优化培训,以及 ...

    标题: 有关RFC作batch,多个asset及subasset时无法作unlock
    离线 torso_turtle



    精华贴数 0
    个人空间 0
    技术积分 10 (112191)
    社区积分 0 (1838636)
    注册日期 2008-5-15
    论坛徽章:0
          
          

    发表于 2008-5-15 12:15 
    有关RFC作batch,多个asset及subasset时无法作unlock

    原码如下,但目前实在找不出错误,还请高手帮忙
    若有冒犯,请见谅,谢谢

    *"  IMPORTING
    *"     VALUE(P_ANLN1) TYPE  ANLN1 OPTIONAL
    *"     VALUE(P_ANLN2) TYPE  ANLN2 OPTIONAL
    *"     VALUE(P_FUNC) TYPE  FUNC OPTIONAL
    *"  EXPORTING
    *"     VALUE(R_ANLN1) TYPE  ANLN1
    *"     VALUE(R_ANLN2) TYPE  ANLN2
    *"     VALUE(FLAG) TYPE  FLAG
    *"  TABLES
    *"      MESSAGE STRUCTURE  MESSAGE OPTIONAL
    *"      Z_ZTASS STRUCTURE  ZTASS OPTIONAL

    * TABLES: ANLA.
      CLEAR MESSAGE.
      DATA: P_MODE(1) TYPE C.
      P_MODE = 'N'.

      IF P_FUNC = 'Q'.
        Check ( P_ANLN1 EQ SPACE AND P_ANLN2 EQ SPACE ).
        SELECT * INTO CORRESPONDING FIELDS OF TABLE Z_ZTASS FROM ANLA
          WHERE BUKRS = '1234' AND XSPEB = 'X'.

        LOOP AT Z_ZTASS.
          SELECT SINGLE KOSTL FROM ANLZ INTO Z_ZTASS-KOS
            WHERE ANLN1 =  Z_ZTASS-ANLN1 AND ANLN2 =  Z_ZTASS-ANLN2
              AND BUKRS = '1234' AND BDATU >= SY-DATUM.
          SELECT SINGLE KTGRTX FROM T095T INTO Z_ZTASS-KTGRTX
            WHERE KTOGR = Z_ZTASS-ANLKL.
          SELECT SINGLE ANLUE_TXT FROM T087V INTO Z_ZTASS-ANLUE_TXT
            WHERE ANLUE = Z_ZTASS-ANLUE.
          SELECT SINGLE NAME1 FROM LFA1 INTO Z_ZTASS-LIEFE
            WHERE LIFNR = Z_ZTASS-LIFNR.
          MOVE 1 TO Z_ZTASS-MENGE.
          MODIFY Z_ZTASS. CLEAR Z_ZTASS.
        ENDLOOP.

      ELSEIF P_FUNC = 'B'.
        Check ( P_ANLN1 <> SPACE AND P_ANLN2 <> SPACE ).
    * SCREEN 100
        PERFORM BDC_DYNPRO USING 'SAPLAIST' '100'.
        PERFORM BDC_FIELD  USING 'ANLA-ANLN1' P_ANLN1.
        PERFORM BDC_FIELD  USING 'ANLA-ANLN2' P_ANLN2.
        PERFORM BDC_FIELD  USING 'ANLA-BUKRS' '1234'.
        PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'.
    * SCREEN 200
        PERFORM BDC_DYNPRO USING 'SAPLAIST' '200'.
        PERFORM BDC_FIELD  USING 'ANLA-XSPEB' 'X'.
        PERFORM BDC_FIELD USING 'BDC_OKCODE' '=BUCH'.
        CALL TRANSACTION 'AS05' USING BDCDATA MODE P_MODE UPDATE 'S'
                       MESSAGES INTO MESSTAB.
        IF SY-SUBRC = 0.
          SELECT SINGLE XSPEB INTO ANLA-XSPEB FROM ANLA
              WHERE ANLN1 = P_ANLN1 AND ANLN2 = P_ANLN2 AND BUKRS = '1234'.
          IF ANLA-XSPEB = 'X'.
            R_ANLN1 = P_ANLN1.
            R_ANLN2 = P_ANLN2.
            FLAG = ''.
          ELSE.
            R_ANLN1 = P_ANLN1.
            R_ANLN2 = P_ANLN2.
            FLAG = 'X'.
          ENDIF.
        ENDIF.

      ELSEIF P_FUNC = 'U'.
        Check ( P_ANLN1 <> SPACE AND P_ANLN2 <> SPACE ).
        PERFORM BDC_DYNPRO USING 'SAPLAIST' '100'.
        PERFORM BDC_FIELD  USING 'ANLA-ANLN1' P_ANLN1.
        PERFORM BDC_FIELD  USING 'ANLA-ANLN2' P_ANLN2.
        PERFORM BDC_FIELD  USING 'ANLA-BUKRS' '1234'.
        PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'.
    * SCREEN 200
        PERFORM BDC_DYNPRO USING 'SAPLAIST' '200'.
        PERFORM BDC_FIELD  USING 'NO_SELECTION' 'X'.
        PERFORM BDC_FIELD  USING 'ANLA-XSPEB' ''.
        PERFORM BDC_FIELD USING 'BDC_OKCODE' '=BUCH'.
        CALL TRANSACTION 'AS05' USING BDCDATA MODE P_MODE UPDATE 'S'
                        MESSAGES INTO MESSTAB.
        IF SY-SUBRC = 0.
          SELECT SINGLE XSPEB INTO ANLA-XSPEB FROM ANLA
              WHERE ANLN1 = P_ANLN1 AND ANLN2 = P_ANLN2 AND BUKRS = '1234'.
          IF ANLA-XSPEB = ''.
            R_ANLN1 = P_ANLN1.
            R_ANLN2 = P_ANLN2.
            FLAG = ''.
          ELSE.
            R_ANLN1 = P_ANLN1.
            R_ANLN2 = P_ANLN2.
            FLAG = 'X'.
          ENDIF.
        ENDIF.
      ENDIF.

    ENDFUNCTION.

    [ 本帖最后由 torso_turtle 于 2008-5-15 12:18 编辑 ]


    只看该作者    顶部
     
        

    相关内容


    CopyRight 1999-2006 itpub.net All Right Reserved.
    北京皓辰网域网络信息技术有限公司. 版权所有
    E-mail:Webmaster@itpub.net
    网站律师 隐私政策 知识产权声明
    京ICP证:060528号 联系我们