Monday, April 13, 2015

BDC for Mass Internal Order Creation - KO01

Make the file in txt format having the fields that are defined in the Structure below -
REPORT ZKO01 NO STANDARD PAGE HEADING LINE-SIZE 255.

*TYPES DECLARATION............................................*
DATAW_FILENAME TYPE STRING.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-500.
PARAMETERSP_FILENM LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK B1.

TABLESINVFO.

TYPES BEGIN OF ST,
          AUART(4),
          KTEXT(40),
          GSBER(4),
          WERKS(4),
          PRCTR(10),
          KOSTV(10),
          USER0(20),
          USER5(10),
          USER1(20),
          USER2(20),
          USER3(20),
          PRNAM(8),
          GJAHR(4),
          POSID(24),
        END OF ST.

*INTERNAL TABLE AND WORKAREA DECLARATION*
DATA IT TYPE TABLE OF ST.
DATA WA TYPE ST.

INCLUDE BDCRECX1.

START-OF-SELECTION.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILENM.

  CALL FUNCTION 'WS_FILENAME_GET'
       EXPORTING
            MASK             ',*.*,*.*.'
            MODE             '0'
            TITLE            'GET FILE NAME'
       IMPORTING
            FILENAME         P_FILENM
       EXCEPTIONS
            INV_WINSYS       1
            NO_BATCH         2
            SELECTION_CANCEL 3
            SELECTION_ERROR  4
            OTHERS           5.

** START OF CHANGE DCS05052003
START-OF-SELECTION.
 W_FILENAME P_FILENM.
CALL FUNCTION 'GUI_UPLOAD'
  EXPORTING
**   FILENAME                    = 'C:\BDC_XLS_ASSIGN.TXT'
   FILENAME                      W_FILENAME
   FILETYPE                      'ASC'
   HAS_FIELD_SEPARATOR           'X'
  TABLES
    DATA_TAB                     IT
 EXCEPTIONS
   FILE_OPEN_ERROR               1
   FILE_READ_ERROR               2
   NO_BATCH                      3
   GUI_REFUSE_FILETRANSFER       4
   INVALID_TYPE                  5
   NO_AUTHORITY                  6
   UNKNOWN_ERROR                 7
   BAD_DATA_FORMAT               8
   HEADER_NOT_ALLOWED            9
   SEPARATOR_NOT_ALLOWED         10
   HEADER_TOO_LONG               11
   UNKNOWN_DP_ERROR              12
   ACCESS_DENIED                 13
   DP_OUT_OF_MEMORY              14
   DISK_FULL                     15
   DP_TIMEOUT                    16
   OTHERS                        17.

          .
IF SY-SUBRC <> 0.
 MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO.
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

PERFORM OPEN_GROUP.

LOOP AT IT INTO WA.

PERFORM BDC_DYNPRO      USING 'SAPMKAUF' '0100'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'COAS-AUART'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '/00'.
PERFORM BDC_FIELD       USING 'COAS-AUART'
                              WA-AUART."'Z650'.
PERFORM BDC_DYNPRO  USING 'SAPMKAUF' '0600'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=BUT4'.
PERFORM BDC_FIELD       USING 'COAS-KTEXT'
                              WA-KTEXT."'NEW INTERNAL ORDER'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'COAS-KOSTV'.
PERFORM BDC_FIELD       USING 'COAS-BUKRS'
                              'XXXX'.
PERFORM BDC_FIELD       USING 'COAS-GSBER'
                              WA-GSBER."'1'.
PERFORM BDC_FIELD       USING 'COAS-WERKS'
                              WA-WERKS."'1000'.
PERFORM BDC_FIELD       USING 'COAS-SCOPE'
                              'INVST'.
PERFORM BDC_FIELD       USING 'COAS-PRCTR'
                              WA-PRCTR."'100'.
PERFORM BDC_FIELD       USING 'COAS-KOSTV'
                              WA-KOSTV."''.
PERFORM BDC_FIELD       USING 'COAS-ABUKR'
                              'XXXX'.
PERFORM BDC_DYNPRO      USING 'SAPMKAUF' '0600'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=BUT5'.
PERFORM BDC_FIELD       USING 'COAS-KTEXT'
                              WA-KTEXT."'NEW INTERNAL ORDER'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'COAS-USER5'.
PERFORM BDC_FIELD       USING 'COAS-USER0'
                              WA-USER0."''.
PERFORM BDC_FIELD       USING 'COAS-USER5'
                              WA-USER5."'08.04.2014'.
PERFORM BDC_FIELD       USING 'COAS-USER1'
                              WA-USER1."''.
PERFORM BDC_FIELD       USING 'COAS-USER2'
                              WA-USER2."''.
PERFORM BDC_FIELD       USING 'COAS-USER3'
                              WA-USER3."''.
PERFORM BDC_DYNPRO      USING 'SAPMKAUF' '0600'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=BUT2'.
PERFORM BDC_FIELD       USING 'COAS-KTEXT'
                              WA-KTEXT."'NEW INTERNAL ORDER'.
PERFORM BDC_FIELD       USING 'COAS-IVPRO'
                              'Z00003'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'RAIP1-POSID'.
PERFORM BDC_FIELD       USING 'RAIP1-PRNAM'
                              'XXXXX'.
PERFORM BDC_FIELD       USING 'RAIP1-GJAHR'
                              'XXXX'.
PERFORM BDC_FIELD       USING 'RAIP1-POSID'
                              WA-POSID." '.
PERFORM BDC_DYNPRO      USING 'SAPMKAUF' '0600'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=VARI'.
PERFORM BDC_FIELD       USING 'COAS-KTEXT'
                              WA-KTEXT."'NEW INTERNAL ORDER'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'COAS-WAERS'.
PERFORM BDC_FIELD       USING 'COAS-WAERS'
                              'INR'.
PERFORM BDC_DYNPRO      USING 'SAPMKAUF' '0600'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=SICH'.
PERFORM BDC_FIELD       USING 'COAS-KTEXT'
                              WA-KTEXT."'NEW INTERNAL ORDER'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'COAS-WAERS'.
PERFORM BDC_FIELD       USING 'COAS-WAERS'
                              'INR'.
PERFORM BDC_TRANSACTION USING 'KO01'.

ENDLOOP.

PERFORM CLOSE_GROUP.

Thursday, April 9, 2015

Reverse Cross Company Code Document - FBU8

Tocde for reversing the Cross Company Code Document is FBU8.

Enter the Cross Company Code Document or Document Number.
Enter Company Code and Fiscal Year.

Enter Reversal Reason and Posting Date.

Check by Simulating.
Found OK then POST the Entry.

BDC for Invoice to Customer FB70

Make the file in txt format having the fields that are defined in the Structure below -

REPORT ZFB70 NO STANDARD PAGE HEADING LINE-SIZE 255.

*TYPES DECLARATION............................................*
DATAW_FILENAME TYPE STRING.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-500.
PARAMETERSP_FILENM LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK B1.

TABLESINVFO.

TYPES BEGIN OF ST,

        ACCNT(17),
        BLDAT(10),
        BUDAT(10),
        CWRBTR(13),
        WAERS(5),
        BUPLA(4),
        SECCO(4),
        SGTXT(50),
        HKONT(10),
        DWRBTR(13),
        "MWSKZ(2),   Not Required
        "GSBER(4),   Not Required it will picked up from Cost Center
        KOSTL(10),
        "PRCTR(10),  Not Required it will picked up from Cost Center
        ZFBDT(10),

        END OF ST.

*INTERNAL TABLE AND WORKAREA DECLARATION*
DATA IT TYPE TABLE OF ST.
DATA WA TYPE ST.

INCLUDE BDCRECX1.

START-OF-SELECTION.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILENM.

  CALL FUNCTION 'WS_FILENAME_GET'
       EXPORTING
            MASK             ',*.*,*.*.'
            MODE             '0'
            TITLE            'GET FILE NAME'
       IMPORTING
            FILENAME         P_FILENM
       EXCEPTIONS
            INV_WINSYS       1
            NO_BATCH         2
            SELECTION_CANCEL 3
            SELECTION_ERROR  4
            OTHERS           5.

** START OF CHANGE DCS05052003
START-OF-SELECTION.
 W_FILENAME P_FILENM.
CALL FUNCTION 'GUI_UPLOAD'
  EXPORTING
**   FILENAME                    = 'C:\BDC_XLS_ASSIGN.TXT'
   FILENAME                      W_FILENAME
   FILETYPE                      'ASC'
   HAS_FIELD_SEPARATOR           'X'
  TABLES
    DATA_TAB                     IT
 EXCEPTIONS
   FILE_OPEN_ERROR               1
   FILE_READ_ERROR               2
   NO_BATCH                      3
   GUI_REFUSE_FILETRANSFER       4
   INVALID_TYPE                  5
   NO_AUTHORITY                  6
   UNKNOWN_ERROR                 7
   BAD_DATA_FORMAT               8
   HEADER_NOT_ALLOWED            9
   SEPARATOR_NOT_ALLOWED         10
   HEADER_TOO_LONG               11
   UNKNOWN_DP_ERROR              12
   ACCESS_DENIED                 13
   DP_OUT_OF_MEMORY              14
   DISK_FULL                     15
   DP_TIMEOUT                    16
   OTHERS                        17.

          .
IF SY-SUBRC <> 0.
 MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO.
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

PERFORM OPEN_GROUP.

LOOP AT IT INTO WA.

"---------------------------------------------------------------
PERFORM BDC_DYNPRO      USING 'SAPMF05A' '1200'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '/00'.
PERFORM BDC_FIELD       USING 'RF05A-BUSCS'
                              'R'.
PERFORM BDC_FIELD       USING 'INVFO-ACCNT'
                               WA-ACCNT."'63G63187'.
PERFORM BDC_FIELD       USING 'INVFO-BLDAT'
                               WA-BLDAT"'31.01.2014'.
PERFORM BDC_FIELD       USING 'INVFO-BUDAT'
                               WA-BUDAT."'31.01.2014'.
PERFORM BDC_FIELD       USING 'INVFO-WRBTR'
                               WA-CWRBTR."'70000'.
PERFORM BDC_FIELD       USING 'INVFO-WAERS'
                               WA-WAERS."''.
PERFORM BDC_FIELD       USING 'INVFO-BUPLA'
                               WA-BUPLA."''.
PERFORM BDC_FIELD       USING 'INVFO-SECCO'
                               WA-SECCO."''.
PERFORM BDC_FIELD       USING 'INVFO-SGTXT'
                               WA-SGTXT."'TESTING FOR '.
PERFORM BDC_FIELD       USING 'ACGL_ITEM-HKONT(01)'
                               WA-HKONT."'505100'.
PERFORM BDC_FIELD       USING 'ACGL_ITEM-WRBTR(01)'
                               WA-DWRBTR."'            70000'.
PERFORM BDC_FIELD       USING 'ACGL_ITEM-MWSKZ(01)'
                               ''."WA-MWSKZ."'V0'.
PERFORM BDC_FIELD       USING 'ACGL_ITEM-GSBER(01)'
                               ''."WA-GSBER."''.
PERFORM BDC_FIELD       USING 'ACGL_ITEM-KOSTL(01)'
                               WA-KOSTL."'46301'.
PERFORM BDC_FIELD       USING 'ACGL_ITEM-PRCTR(01)'
                               ''."WA-PRCTR."'400'.
PERFORM BDC_DYNPRO      USING 'SAPMF05A' '1200'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '/00'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'INVFO-ZFBDT'.
PERFORM BDC_FIELD       USING 'INVFO-ZFBDT'
                               WA-ZFBDT."'31.01.2014'.
PERFORM BDC_DYNPRO      USING 'SAPMF05A' '1200'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=BS'.
PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                              'INVFO-ZFBDT'.
PERFORM BDC_FIELD       USING 'INVFO-ZFBDT'
                               WA-ZFBDT."'31.01.2014'.
PERFORM BDC_DYNPRO      USING 'SAPMSSY0' '0120'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=PS 18'.
PERFORM BDC_DYNPRO      USING 'SAPMSSY0' '0120'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=PS 37'.
PERFORM BDC_DYNPRO      USING 'SAPMSSY0' '0120'.
PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                              '=BU'.
PERFORM BDC_TRANSACTION USING 'FB70'.

ENDLOOP.

PERFORM CLOSE_GROUP.

SAP Devlopment Portal Link

1- Introduction and a few links to help people get started in the world of SAP
http://www.sapdev.co.uk/webapps/fiori/fiori-sapui5-intro.htm

2- Simple steps to create a custom search help(value help) for your web dynpro application
http://www.sapdev.co.uk/sap-webapps/sap-webdynpro/programmed-search-help.htm

Friday, April 3, 2015

Complete PA transfer structure FI

Copy the GL for which the error is coming and go to the T-Code KEI1

Select the PA transfer structure "FI".
Click on the "assignment lines" in the left panel and select the appropriate group on the right side and select source on the left and add the cost element in the error.
Further, you can assign the value field to this.