메뉴 건너뛰기

SAP 한국 커뮤니티

[요청]bdc 첨부파일로했네요 다시올려요~

CoolGuy 2008.06.30 22:21 조회 수 : 1459 추천:3

DATA: BEGIN OF bdc_tab OCCURS 0.
        INCLUDE STRUCTURE bdcdata.
DATA: END OF bdc_tab.


DATA : type LIKE rlgrap-filetype VALUE 'DAT',
       length(5),
       file LIKE rlgrap-filename VALUE 'D:TEMPWBS_GEN.TXT'.


DATA : BEGIN OF s_field,
         stufe(40),
         ident(40),
         post1(40),
         plakz(40),  " 계획요소
         fakkz(40),  " 원가(Acct)
         belkz(40),  " 청구(Billing)
       END OF s_field.


DATA : n_line(2)  TYPE n.


DATA : BEGIN OF it_data OCCURS 0,
          chk(1)         ,                " Flag
          pspid(24)      ,                " 현장 코드
          stufe(10)      ,                " 레벨
          wbs(40)        ,                " WBS코드
          post1(40)      ,                " WBS명
          accounting(10) ,                " 원가투입
          billing(10)    ,                " 대금청구
          planning(10)   ,                " 계획요소
       END OF it_data.


************************
*  Start-of-Selection  *
************************
START-OF-SELECTION.


  CALL FUNCTION 'UPLOAD'
    EXPORTING
      filename = file
      filetype = type
    IMPORTING
      filesize = length
    TABLES
      data_tab = it_data.


  DELETE it_data WHERE chk = '@'.
  DELETE it_data WHERE pspid IS INITIAL.


  LOOP AT it_data.
    AT NEW pspid.
      CLEAR bdc_tab.
      REFRESH bdc_tab.


      PERFORM dynpro_bdc_tab USING :
         'X'  'SAPLCJTR'          '0108',
         ' '  'BDC_OKCODE'        '/00',
         ' '  'PROJ-PSPID'        it_data-pspid,
         ' '  'PRPS-POSID'        ' ',


         'X'  'SAPLCJTR'          '0230',
         ' '  'BDC_OKCODE'        '=TBPG'.


      PERFORM dynpro_bdc_tab USING :
     'X'  'SAPLCJWB'          '0901',
     ' '  'BDC_OKCODE'        '=BU'.


      n_line = 0.
    ENDAT.


    n_line = n_line + 1.
    CONCATENATE 'PRPS-STUFE(' n_line ')'  INTO s_field-stufe.
    CONCATENATE 'RCWBS-IDENT(' n_line ')' INTO s_field-ident.
    CONCATENATE 'PRPS-POST1(' n_line ')'  INTO s_field-post1.
    CONCATENATE 'PRPS-PLAKZ(' n_line ')'  INTO s_field-plakz.
    CONCATENATE 'PRPS-FAKKZ(' n_line ')'  INTO s_field-fakkz.
    CONCATENATE 'PRPS-BELKZ(' n_line ')'  INTO s_field-belkz.


    PERFORM dynpro_bdc_tab USING :
       ' '  s_field-stufe       it_data-stufe,
       ' '  s_field-ident       it_data-wbs,
       ' '  s_field-post1       it_data-post1,
       ' '  s_field-plakz        it_data-planning,
       ' '  s_field-belkz       it_data-accounting,
       ' '  s_field-fakkz       it_data-billing.


    AT END OF pspid.


      CALL TRANSACTION 'CJ20'
           USING  bdc_tab
*           MODE   'A'
           MODE   'E'
           UPDATE 'S'.
    ENDAT.
  ENDLOOP.


*-- 정산규칙 설정...
  LOOP AT it_data.
    AT NEW pspid.
      CLEAR bdc_tab.
      REFRESH bdc_tab.


      PERFORM dynpro_bdc_tab USING :
         'X'  'SAPLCJTR'          '0108',
         ' '  'BDC_OKCODE'        '=STTR',
         ' '  'PROJ-PSPID'        it_data-pspid,
         ' '  'PRPS-POSID'        ' ',


         'X'  'SAPLCJTR'          '0230',
         ' '  'BDC_OKCODE'        '=TBPG',


         'X'  'SAPLCJWB'          '0901',
         ' '  'BDC_OKCODE'        '=MRKA',


         'X'  'SAPLCJWB'          '0901',
         ' '  'BDC_OKCODE'        '=ABRV'.


      n_line = 0.
    ENDAT.


    n_line = n_line + 1.


    PERFORM dynpro_bdc_tab USING :
       'X'  'SAPLKOBS'          '0130',
       ' '  'BDC_OKCODE'        '/00',
       ' '  'COBRB-KONTY(01)'   'PSG',


       'X'  'SAPLKEAK'          '0300',
       ' '  'BDC_OKCODE'        '=WEIT',


       'X'  'SAPLKOBS'          '0130',
       ' '  'BDC_OKCODE'        '=KOAP',
       ' '  'COBRB-PERBZ(01)'   'FUL',


       'X'  'SAPLSPO4'          '0300',
       ' '  'BDC_OKCODE'        '=FURT',
       ' '  'SVALD-VALUE(01)'   '10',


       'X'  'SAPLKOBS'          '0130',
       ' '  'BDC_OKCODE'        '/00',
       ' '  'COBRB-KONTY(01)'   'PSG',


       'X'  'SAPLKEAK'          '0300',
       ' '  'BDC_OKCODE'        '=WEIT',


       'X'  'SAPLKOBS'          '0130',
       ' '  'BDC_OKCODE'        '=KOAO',


       'X'  'SAPLKOBS'          '0130',
       ' '  'BDC_OKCODE'        '=NOBJ'.


    AT END OF pspid.


      PERFORM dynpro_bdc_tab USING :
         'X'  'SAPLCJWB'          '0901',
         ' '  'BDC_OKCODE'        '=BU'.


      CALL TRANSACTION 'CJ20'
           USING  bdc_tab
*           MODE   'A'
           MODE   'E'
           UPDATE 'S'.
    ENDAT.
  ENDLOOP.


END-OF-SELECTION.


*&---------------------------------------------------------------------*
*&      Form  dynpro_bdc_tab
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_0010   text
*      -->P_0011   text
*      -->P_0012   text
*----------------------------------------------------------------------*
FORM dynpro_bdc_tab  USING  dynbegin
                           name
                           value.
  IF dynbegin = 'X'.
    CLEAR bdc_tab.
    MOVE:   dynbegin      TO      bdc_tab-dynbegin,
            name          TO      bdc_tab-program,
            value         TO      bdc_tab-dynpro.
    APPEND  bdc_tab.
  ELSE.
    CLEAR bdc_tab.
    MOVE:   name          TO      bdc_tab-fnam,
            value         TO      bdc_tab-fval.
    APPEND  bdc_tab.
  ENDIF.


ENDFORM.                    " dynpro_bdc_tab

번호 제목 글쓴이 날짜 조회 수
1899 [요청]필드에 수를 입력하면 아래 필드에 평균값 자동입력.. file Diem 2008.07.01 1285
1898 <b>[완료]</b>관계연산자의 의미를 알고싶습니다. [3] 다급 2008.06.30 11510
» [요청]bdc 첨부파일로했네요 다시올려요~ CoolGuy 2008.06.30 1459
1896 <b>[완료]</b>잠금확인 enqueue에 관해 문의드립니다. [2] 풍뎅이 2008.06.30 1835
1895 [요청]BDC소스인데요 이해가 잘안되네요~ [4] file CoolGuy 2008.06.30 1362
1894 <b>[완료]</b>export/import 관련해서 질문 드립니다.! [4] 수갬 2008.06.30 2018
1893 <b>[완료]</b>스마트폼에서 테두리선 굵기 조절 [2] mean 2008.06.30 2722
1892 [요청]클래스 ALV에서 이기능 들어간 소스좀 알려주세요.. [1] 피크민 2008.06.30 1266
1891 <b>[완료]</b>라디오 버튼를 클릭하면 해당 screen 화면을 호출하고 싶습니다. [2] file SAP아가씨 2008.06.30 1384
1890 [요청]릴리즈 하는데 무엇때문에 안돼는지.... [1] 냐옹이 2008.06.30 1197
1889 [요청]ALV GRID에서 EDIT기능 이용시 질문요~! [1] 풍운사랑 2008.06.30 3892
1888 [re] [요청]ALV GRID에서 EDIT기능 이용시 질문요~! 올리브 2009.12.03 3976
1887 <b>[완료]</b>헤더를 가진 내부테이블과 헤더가 없는 내부테이블 [3] 의환 2008.06.28 1307
1886 [요청]화면 MP910400 2000 : 생성오류입니다.. [2] file 무한반복 2008.06.28 1079
1885 [요청][SDMM] Data type 문의 드립니다. [4] 김지성 2008.06.28 1312
1884 <b>[완료]</b>message 질문입니다. 에러메세지에 변수값을 보여주려면 어떻게 해야되는지요~ [5] 랑랑이 2008.06.27 2714
1883 [요청]ALV 합계 관련 해서 질문 드립니다.(원하는 CELL에 값 넣기..정도? ㅋㅋ) [3] Lee Hyun 2008.06.26 2051
1882 [요청]엑셀파일 업로드시 날짜 부분이 깨지네요.. [3] 관람객 2008.06.26 2336
1881 <b>[완료]</b>BDC 레코딩시 트랜잭션의 화면 차이가 발생합니다. SPRO를 레코딩 시. [5] file 삐러 2008.06.26 1658
1880 [요청]인터널테이블 세부로직에관해서... CoolGuy 2008.06.26 1367