MB1B - 309 Movement - BDC Recording

HI Everyone,
Basically I need to create a 309 Movement in transaction MB1B to do a batch to batch transfer. Unfortunately I cannot use a BAPI for this because there is configuration in the system that will create the destination batch so I need to use BDC.
I can record the transaction wthout problems, but I cannot get the recording to work in my program. For some reason it doesnt seem to be able to overwrite the defaulted batch no that comes in when specifying the batch to transfer into. If I run the program in mode 'E' the MB1B screen pops up and does nothing. If I click back it then prompts me to Post  which is strange. I cannot see why it wont post using my BDC Logic (see below).
I have tried recording this transaction many many times but it wont work - Maybe i am missing something. Your help is greatly appreciated.
FORM  batch_309_mvt  USING    pi_charg
                             pi_charg_new
                             pi_matnr
                             pi_werks
                             pi_lgort
                             pi_menga
                             pi_vfdat.
* Local Declarations
  DATA BEGIN OF messtab OCCURS 10.
          INCLUDE STRUCTURE bdcmsgcoll.
  DATA END OF messtab.
  DATA:  opt TYPE ctu_params,
         lv_date TYPE char10.
* Format Date
  CONCATENATE sy-datum+6(2) sy-datum+4(2) sy-datum(4)
  INTO lv_date SEPARATED BY '.'.
* Format Material No.
  SHIFT pi_matnr LEFT DELETING LEADING '0'.
  CONDENSE pi_matnr NO-GAPS.
* MB1B - Start Screen
  PERFORM bdc_dynpro      USING 'SAPMM07M' '0400'.
  PERFORM bdc_field       USING 'BDC_OKCODE' '/00'.
  PERFORM bdc_field       USING 'MKPF-BLDAT' lv_date.
  PERFORM bdc_field       USING 'MKPF-BUDAT' lv_date.
  PERFORM bdc_field       USING 'RM07M-BWARTWA' '309'.
  PERFORM bdc_field       USING 'RM07M-WERKS'   pi_werks.
  PERFORM bdc_field       USING 'RM07M-LGORT'   pi_lgort.
  PERFORM bdc_field       USING 'XFULL'         ' '.
  PERFORM bdc_field       USING 'RM07M-WVERS2' 'X'.
* MB1B - Detail Screen
  PERFORM bdc_dynpro      USING 'SAPMM07M' '0421'.
  PERFORM bdc_field       USING 'BDC_OKCODE' '/00'.
  PERFORM bdc_field       USING 'MSEGK-UMWRK'    pi_werks.
  PERFORM bdc_field       USING 'MSEGK-UMLGO'    pi_lgort.
  PERFORM bdc_field       USING 'MSEGK-UMMAT'    pi_matnr.
  PERFORM bdc_field       USING 'MSEG-MATNR(01)' pi_matnr.
  PERFORM bdc_field       USING 'MSEG-ERFMG(01)' pi_menga.
  PERFORM bdc_field       USING 'MSEG-ERFME(01)' 'EA'.
  PERFORM bdc_field       USING 'MSEG-CHARG(01)' pi_charg.
* MB1B - New Batch Screen
  PERFORM bdc_dynpro      USING 'SAPMM07M' '0410'.
  PERFORM bdc_field       USING 'MSEG-UMCHA' pi_charg_new.
  PERFORM bdc_dynpro      USING 'SAPMM07M' '0421'.
  PERFORM bdc_field       USING 'BDC_CURSOR'
                                'MSEG-ERFMG(01)'.
  PERFORM bdc_field       USING 'BDC_OKCODE'
                                '/00'.
  PERFORM bdc_dynpro      USING 'SAPMM07M' '0421'.
  PERFORM bdc_field       USING 'BDC_OKCODE'
                                '/EBCK'.
  PERFORM bdc_field       USING 'BDC_CURSOR'
                              'MSEG-ERFMG(01)'.
* MB1B - Return to Detail Screen & Post
  PERFORM bdc_dynpro      USING 'SAPMM07M' '0421'.
  PERFORM bdc_field       USING 'BDC_CURSOR'
                                'MKPF-BUDAT '.
  PERFORM bdc_field       USING 'BDC_OKCODE'
                                '=BU'.
* Call transaction
  CALL TRANSACTION 'MB1B' USING bdcdata MODE 'E' UPDATE 'A' MESSAGES INTO messtab.
  IF sy-subrc NE 0.
    LOOP AT messtab.
      PERFORM add_to_err_log USING text-er1
                               messtab-msgv1.
    ENDLOOP.
  ENDIF.
ENDFORM.                    " BATCH_309_MVT

Dear Kesle,
I am facing the same issue.
Can u please help me how you have resolved this.
i am copying the piece of code that i have written..
    PERFORM BDC_DYNPRO      USING 'SAPMM07M' '0400'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'RM07M-LGORT'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/00'.
    PERFORM BDC_FIELD       USING 'MKPF-BLDAT'
                                  '01.03.2012'.
    PERFORM BDC_FIELD       USING 'MKPF-BUDAT'
                                  '01.03.2012'.
    PERFORM BDC_FIELD       USING 'RM07M-BWARTWA'
                                  '309'.
    PERFORM BDC_FIELD       USING 'RM07M-WERKS'
                                   FS_DATATAB-WERKS.
    PERFORM BDC_FIELD       USING 'RM07M-LGORT'
                                  FS_DATATAB-LGORT.
    PERFORM BDC_FIELD       USING 'XFULL'
                                  'X'.
    PERFORM BDC_FIELD       USING 'RM07M-WVERS2'
                                  'X'.
    PERFORM BDC_DYNPRO      USING 'SAPMM07M' '0421'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'MSEG-CHARG(01)'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/00'.
    PERFORM BDC_FIELD       USING 'MSEGK-UMWRK'
                                   FS_DATATAB-WERKS.
    PERFORM BDC_FIELD       USING 'MSEGK-UMLGO'
                                   FS_DATATAB-LGORT.
    PERFORM BDC_FIELD       USING 'MSEGK-UMMAT'
                                   FS_DATATAB-MATNR.
    PERFORM BDC_FIELD       USING 'MSEG-MATNR(01)'
                                   FS_DATATAB-MATNR.
    PERFORM BDC_FIELD       USING 'MSEG-ERFMG(01)'
                                   FS_DATATAB-ERFMG.
    PERFORM BDC_FIELD       USING 'MSEG-CHARG(01)'
                                  FS_DATATAB-CHARG.
    PERFORM BDC_FIELD       USING 'DKACB-FMORE'
                                  'X'.
    PERFORM BDC_DYNPRO      USING 'SAPLKACB' '0002'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'COBL-KOSTL'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '=ENTE'.
    PERFORM BDC_FIELD       USING 'COBL-KOSTL'
                                  FS_DATATAB-KOSTL.
    PERFORM BDC_DYNPRO      USING 'SAPMM07M' '0410'.
    PERFORM BDC_FIELD       USING 'MSEG-UMCHA'
                                  FS_DATATAB-CHARG1.
    PERFORM BDC_FIELD       USING 'DKACB-FMORE'
                                  'X'.
    PERFORM BDC_DYNPRO      USING 'SAPLKACB' '0002'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'COBL-KOSTL'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '=ENTE'.
    PERFORM BDC_FIELD       USING 'COBL-KOSTL'
                                  FS_DATATAB-KOSTL.
    PERFORM BDC_DYNPRO      USING 'SAPMM07M' '0421'.
   PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/EBCK'.
   PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                 'MSEG-ERFMG(01)'.
   PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '/00'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '=BU'.
    PERFORM BDC_FIELD       USING 'DKACB-FMORE'
                                  'X'.
    PERFORM BDC_DYNPRO      USING 'SAPLKACB' '0002'.
    PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'COBL-KOSTL'.
    PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                  '=ENTE'.
    CALL TRANSACTION 'MB1B' USING BDCDATA[] MODE 'A'
                            MESSAGES INTO IT_BDC_MSGS.

Similar Messages

  • MB1B - 309 Movement - BDC Recording   Error

    HI Everyone,
    Basically I need to create a 309 Movement in transaction MB1B to do a batch to batch transfer. Unfortunately I cannot use a BAPI for this because there is configuration in the system that will create the destination batch so I need to use BDC.
    I can record the transaction without problems, but I cannot get the recording to work in my program. For some reason it doesnot seem to be able to overwrite the defaulted batch no that comes in when specifying the batch to transfer into. If I run the program in mode 'E' the MB1B screen pops up and does nothing. If I click on warning message and close window  it then prompts me to Post. I cannot see why it wont post using my BDC Logic (see below).
    I have tried recording this transaction many many times but it wont work - Maybe i am missing something.
    Please find the code below that i have recorded.....
    Your help is greatly appreciated.
    PERFORM BDC_DYNPRO USING 'SAPMM07M' '0400'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'RM07M-LGORT'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/00'.
    PERFORM BDC_FIELD USING 'MKPF-BLDAT'
    '01.03.2012'.
    PERFORM BDC_FIELD USING 'MKPF-BUDAT'
    '01.03.2012'.
    PERFORM BDC_FIELD USING 'RM07M-BWARTWA'
    '309'.
    PERFORM BDC_FIELD USING 'RM07M-WERKS'
    FS_DATATAB-WERKS.
    PERFORM BDC_FIELD USING 'RM07M-LGORT'
    FS_DATATAB-LGORT.
    PERFORM BDC_FIELD USING 'XFULL'
    'X'.
    PERFORM BDC_FIELD USING 'RM07M-WVERS2'
    'X'.
    PERFORM BDC_DYNPRO USING 'SAPMM07M' '0421'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'MSEG-CHARG(01)'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/00'.
    PERFORM BDC_FIELD USING 'MSEGK-UMWRK'
    FS_DATATAB-WERKS.
    PERFORM BDC_FIELD USING 'MSEGK-UMLGO'
    FS_DATATAB-LGORT.
    PERFORM BDC_FIELD USING 'MSEGK-UMMAT'
    FS_DATATAB-MATNR.
    PERFORM BDC_FIELD USING 'MSEG-MATNR(01)'
    FS_DATATAB-MATNR.
    PERFORM BDC_FIELD USING 'MSEG-ERFMG(01)'
    FS_DATATAB-ERFMG.
    PERFORM BDC_FIELD USING 'MSEG-CHARG(01)'
    FS_DATATAB-CHARG.
    PERFORM BDC_FIELD USING 'DKACB-FMORE'
    'X'.
    PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'COBL-KOSTL'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ENTE'.
    PERFORM BDC_FIELD USING 'COBL-KOSTL'
    FS_DATATAB-KOSTL.
    PERFORM BDC_DYNPRO USING 'SAPMM07M' '0410'.
    PERFORM BDC_FIELD USING 'MSEG-UMCHA'
    FS_DATATAB-CHARG1.
    PERFORM BDC_FIELD USING 'DKACB-FMORE'
    'X'.
    PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'COBL-KOSTL'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ENTE'.
    PERFORM BDC_FIELD USING 'COBL-KOSTL'
    FS_DATATAB-KOSTL.
    PERFORM BDC_DYNPRO USING 'SAPMM07M' '0421'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/EBCK'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'MSEG-ERFMG(01)'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/00'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=BU'.
    PERFORM BDC_FIELD USING 'DKACB-FMORE'
    'X'.
    PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'COBL-KOSTL'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ENTE'.
    CALL TRANSACTION 'MB1B' USING BDCDATA[] MODE 'A'
    MESSAGES INTO IT_BDC_MSGS.

    Hi,
    I could not give the exact solution as i dont have access to my SAP system temporarily. According to your inputs i can guess that the issue happened because of pop-up or message prompt will be coming for MB1B movement.
    Generally we could not capture the pop-up kind of things using SHDB recording. You must include one BDC_OKCODE logic in the place where POP-UP is coming inside your BDC Coding part.
    I hope this will give you some idea.
    Thanks:)

  • Problem with SM37 BDC recording

    Hi ,
    I want to change the output device for the job scheduled of 1000 pgms in SM37.
    For this i am using BDC recording.
    But when i run the recording, it does not fill the data and does not move from 1 screen to other screen.
    I have checked the recording, and everything got recorded.
    Please suggest .
    Thanks in advance.
    Rgds/Abhi

    Hi,
    Why not make things simpler by using FM BP_CHANGE_JOB_STEP.  Parameters required are:
    JOBNAME
    JOBCOUNT
    STEP-PROGRAM & STEP-TYP (equal to 'A')
    STEP_NUM
    ALLPRIPAR-PDEST
    Presumably you will have the info for JOBNAME, JOBCOUNT etc from your BDC feed.  To preserve the rest of the print parameters then use something like FM BP_JOB_READ and fill in ALLPRIPAR fields.
    Thanks,
    Pete

  • Bdc recording for mek1

    hi
    i have been asked to do bdc recording for the transaction mek1 through the call transaction method.can u people plss tell me how to go abt it?

    Hi,
    You can Record using the Tcode SHDB and format the program and use.
    You can use VK11 tcode also which is similar to MEK1.
    see the sample code for VK11 ; You can change as per your requirement.
    report ZSDBDCP_PRICING no standard page heading
           line-size 255.
                               Includes
    include zbdcrecx1.
                              Internal Tables
    *--Internal Table To hold condition records data from flat file.
    Data: begin of it_pricing occurs 0,
           key(4),
           f1(4),
           f2(4),
           f3(2),
           f4(18),
           f5(16),
          end of it_pricing.
    *--Internal Table To hold condition records header  .
    data : begin of it_header occurs 0,
             key(4),
             f1(4),
             f2(4),
             f3(2),
           end of it_header.
    *--Internal Table To hold condition records details .
    data : begin of it_details occurs 0,
            key(4),
            f4(18),
            f5(16),
           end of it_details.
    data : v_sno(2),
           v_rows type i,
           v_fname(40).
    start-of-selection.
    refresh : it_pricing,it_header,it_details.
    clear  : it_pricing,it_header,it_details.
    CALL FUNCTION 'UPLOAD'
          EXPORTING
               FILENAME                = 'C:\WINDOWS\Desktop\pricing.txt'
               FILETYPE                = 'DAT'
          TABLES
               DATA_TAB                = it_pricing
          EXCEPTIONS
               CONVERSION_ERROR        = 1
               INVALID_TABLE_WIDTH     = 2
               INVALID_TYPE            = 3
               NO_BATCH                = 4
               UNKNOWN_ERROR           = 5
               GUI_REFUSE_FILETRANSFER = 6
               OTHERS                  = 7.
      WRITE : / 'Condition Records ', P_FNAME, ' on ', SY-DATUM.
      OPEN DATASET P_FNAME FOR INPUT IN TEXT MODE.
      if sy-subrc ne 0.
        write : / 'File could not be uploaded.. Check file name.'.
        stop.
      endif.
      CLEAR : it_pricing[], it_pricing.
      DO.
        READ DATASET P_FNAME INTO V_STR.
        IF SY-SUBRC NE 0.
          EXIT.
        ENDIF.
    write v_str.
    translate v_str using '#/'.
        SPLIT V_STR AT ',' INTO it_pricing-key
                                it_pricing-F1 it_pricing-F2 it_pricing-F3
                                it_pricing-F4 it_pricing-F5 .
        APPEND it_pricing.
        CLEAR it_pricing.
      ENDDO.
      IF it_pricing[] IS INITIAL.
        WRITE : / 'No data found to upload'.
        STOP.
      ENDIF.
      loop at it_pricing.
        At new key.
          read table it_pricing index sy-tabix.
          move-corresponding it_pricing to it_header.
          append it_header.
          clear it_header.
        endat.
        move-corresponding it_pricing to it_details.
        append it_details.
        clear it_details.
      endloop.
      perform open_group.
      v_rows = sy-srows - 8.
      loop at it_header.
        perform bdc_dynpro      using 'SAPMV13A' '0100'.
        perform bdc_field       using 'BDC_CURSOR'
                                      'RV13A-KSCHL'.
        perform bdc_field       using 'BDC_OKCODE'
                                      '/00'.
        perform bdc_field       using 'RV13A-KSCHL'
                                      it_header-f1.
        perform bdc_dynpro      using 'SAPMV13A' '1004'.
        perform bdc_field       using 'BDC_CURSOR'
                                      'KONP-KBETR(01)'.
        perform bdc_field       using 'BDC_OKCODE'
                                      '/00'.
        perform bdc_field       using 'KOMG-VKORG'
                                      it_header-f2.
        perform bdc_field       using 'KOMG-VTWEG'
                                       it_header-f3.
    **Table Control
        v_sno = 0.
        loop at it_details where key eq it_header-key.
          v_sno = v_sno + 1.
          clear v_fname.
          CONCATENATE 'KOMG-MATNR(' V_SNO ')' INTO V_FNAME.
          perform bdc_field       using v_fname
                                        it_details-f4.
          clear v_fname.
          CONCATENATE 'KONP-KBETR(' V_SNO ')' INTO V_FNAME.
          perform bdc_field       using v_fname
                                        it_details-f5.
          if v_sno eq v_rows.
            v_sno = 0.
            perform bdc_dynpro      using 'SAPMV13A' '1004'.
            perform bdc_field       using 'BDC_OKCODE'
                                     '=P+'.
            perform bdc_dynpro      using 'SAPMV13A' '1004'.
            perform bdc_field       using 'BDC_OKCODE'
                                     '/00'.
          endif.
        endloop.
    *--Save
        perform bdc_dynpro      using 'SAPMV13A' '1004'.
        perform bdc_field       using 'BDC_OKCODE'
                                      '=SICH'.
        perform bdc_transaction using 'VK11'.
      endloop.
      perform close_group.
    Regards,
    Anji

  • Bdc recording for trancastion ME01

    Hi,
    Can u help me in BDC recording for transaction 'ME01' .
    I have no idea for transaction 'ME01'  & here i like to know how to handle table ctr during bdc recording?
    give sample code if possible.
    Thanks

    See the sample attached code for ME51 using table control.
    similarly record the same for ME01 and copy the TC logic from this.
    REPORT zmm_pr_upload_mat
    NO STANDARD PAGE HEADING
    LINE-SIZE 255.
    Standard Include for Selection Screen
    INCLUDE bdcrecx1.
    Internal Table for Upload Data
    DATA: BEGIN OF i_pr OCCURS 0,
    Header Screen
    sno(3), " SNo
    bsart(004), " PR Type
    epstp(001), " Item Category
    knttp(001), " Account Assignment
    eeind(010), " Delivery Date
    lpein(001), " Category of Del Date
    werks(004), " Plant
    lgort(004), " Storage Location
    ekgrp(003), " Purchasing Group
    matkl(009), " Material Group
    bednr(010), " Tracking No
    afnam(012), " Requisitioner
    Item Details
    matnr(018), " Material No
    menge(017), " Quantity
    badat(010),
    frgdt(010),
    preis(014), " Valuation Price
    waers(005), " Currency
    peinh(005),
    wepos(001),
    repos(001),
    sakto(010), " GL Account
    kostl(010), " Cost Center
    bnfpo(005),
    END OF i_pr.
    Internal Table for header Data
    DATA: BEGIN OF it_header OCCURS 0,
    sno(3), " SNo
    bsart(004), " PR Type
    epstp(001), " Item Category
    knttp(001), " Account Assignment
    eeind(010), " Delivery Date
    werks(004), " Plant
    lgort(004), " Storage Location
    ekgrp(003), " Purchasing Group
    matkl(009), " Material Group
    bednr(010), " Tracking No
    afnam(012), " Requisitioner
    END OF it_header.
    Internal Table for Item Data
    DATA: BEGIN OF it_item OCCURS 0,
    sno(3), " SNo
    matnr(018), " Material No
    menge(017), " Quantity
    preis(014), " Valuation Price
    sakto(010), " GL Account
    kostl(010), " Cost Center
    END OF it_item.
    Data Variables & Constants
    CONSTANTS : c_x VALUE 'X'. " Flag
    DATA : v_l(2), " Counter
    v_rowno(5), " Row No
    v_2(2), " Counter
    v_rows LIKE sy-srows, " Rows in TC
    v_field(45). " String
    Parameters
    PARAMETERS: p_file LIKE ibipparms-path. " Filename
    At selection-screen on Value Request for file Name
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
    Get the F4 Values for the File
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
    program_name = syst-cprog
    dynpro_number = syst-dynnr
    IMPORTING
    file_name = p_file.
    Start of Selection
    START-OF-SELECTION.
    Open the BDC Session
    PERFORM open_group.
    Upload the File into internal Table
    CALL FUNCTION 'UPLOAD'
    EXPORTING
    filename = p_file
    filetype = 'DAT'
    TABLES
    data_tab = i_pr
    EXCEPTIONS
    conversion_error = 1
    invalid_table_width = 2
    invalid_type = 3
    no_batch = 4
    unknown_error = 5
    gui_refuse_filetransfer = 6
    OTHERS = 7.
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    SORT i_pr BY sno.
    LOOP AT i_pr.
    MOVE-CORRESPONDING i_pr TO it_item.
    APPEND it_item.
    CLEAR it_item.
    AT END OF sno.
    READ TABLE i_pr INDEX sy-tabix.
    MOVE-CORRESPONDING i_pr TO it_header.
    APPEND it_header.
    CLEAR it_header.
    ENDAT.
    ENDLOOP.
    SORT it_header BY sno.
    SORT it_item BY sno.
    v_rows = sy-srows - 6.
    Upload the Data from Internal Table
    LOOP AT it_header.
    Header Data
    PERFORM bdc_dynpro USING 'SAPMM06B' '0100'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'EBAN-BEDNR'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'EBAN-BSART'
    it_header-bsart.
    PERFORM bdc_field USING 'RM06B-EPSTP'
    it_header-epstp.
    PERFORM bdc_field USING 'EBAN-KNTTP'
    it_header-knttp.
    PERFORM bdc_field USING 'RM06B-EEIND'
    it_header-eeind.
    PERFORM bdc_field USING 'RM06B-LPEIN'
    it_header-lpein.
    PERFORM bdc_field USING 'EBAN-WERKS'
    it_header-werks.
    PERFORM bdc_field USING 'EBAN-LGORT'
    it_header-lgort.
    PERFORM bdc_field USING 'EBAN-EKGRP'
    it_header-ekgrp.
    PERFORM bdc_field USING 'EBAN-MATKL'
    it_header-matkl.
    PERFORM bdc_field USING 'EBAN-BEDNR'
    it_header-bednr.
    PERFORM bdc_field USING 'EBAN-AFNAM'
    it_header-afnam.
    Item Details
    v_l = 0.
    To add no. of rows
    v_2 = 0 .
    As the screen is showing 13 rows defaulted to 130
    v_rowno = 130 .
    LOOP AT it_item WHERE sno = it_header-sno.
    v_l = v_l + 1.
    IF v_l = 14 .
    IF v_2 = 12 .
    v_2 = 12 .
    v_l = 2 .
    From second time onwards it is displaying 12 rows only
    v_rowno = v_rowno + 120 .
    PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'RM06B-BNFPO'.
    PERFORM bdc_field USING 'RM06B-BNFPO'
    v_rowno.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    ELSE.
    V_2 initialized to 12 for second screen purpose
    v_2 = 12 .
    v_l = 2 .
    PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'RM06B-BNFPO'.
    PERFORM bdc_field USING 'RM06B-BNFPO'
    v_rowno .
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    ENDIF.
    ENDIF.
    PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    CLEAR v_field.
    CONCATENATE 'EBAN-MATNR(' v_l ')' INTO v_field.
    PERFORM bdc_field USING v_field it_item-matnr.
    CLEAR v_field.
    CONCATENATE 'EBAN-MENGE(' v_l ')' INTO v_field.
    PERFORM bdc_field USING v_field it_item-menge.
    PERFORM bdc_dynpro USING 'SAPMM06B' '0102'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'EBAN-PREIS'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'EBAN-PREIS'
    it_item-preis.
    PERFORM bdc_dynpro USING 'SAPMM06B' '0505'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'EBKN-SAKTO'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=ENTE'.
    PERFORM bdc_field USING 'EBKN-SAKTO'
    it_item-sakto.
    Cost Center
    PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'COBL-KOSTL'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=ENTE'.
    PERFORM bdc_field USING 'COBL-KOSTL'
    it_item-kostl.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=ENTE'.
    ENDLOOP.
    PERFORM bdc_dynpro USING 'SAPMM06B' '0106'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'RM06B-BNFPO'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=BU'.
    Call The Transaction
    PERFORM bdc_transaction USING 'ME51'.
    ENDLOOP.
    Close the BDC Session
    PERFORM close_group.
    reward if useful
    Regards
    Vasu

  • BDC recording for AS01

    hi all,
    how to do bdc recording for AS01.please send me step step by approach.

    Hi Satya,
    Welcome to SDN.
    Check this Sample program.
    REPORT ZASSET .
    INCLUDE ZASSET_INC .
    PARAMETERS: P_PCFILE LIKE RLGRAP-FILENAME.
    *PARAMETERS: P_FILE_S LIKE RLGRAP-FILENAME.
    PARAMETER : H_CHK AS CHECKBOX.
    "Proc Mode
    Include the BDC *
    **BDC DATA STUCTURE
    *DATA: BEGIN OF BDCDATA OCCURS 0.
    INCLUDE STRUCTURE BDCDATA.
    *DATA: END OF BDCDATA.
    messages of call transaction
    *DATA: MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    TYPE-POOLS
    TYPE-POOLS TRUXS.
    DATA IT_DATA1 TYPE TRUXS_T_TEXT_DATA.
    DATA : BEGIN OF IT_DATA OCCURS 0,
    INVZU(015),
    ANLKL(008),
    BUKRS(004),
    TXT50(100),
    SERNR(018),
    MENGE(018),
    INKEN(001),
    AKTIV(010),
    KOSTL(010),
    WERKS(004),
    STORT(010),
    ORD41(004),
    ORD42(004),
    EQANZ(001),
    LIFNR(010),
    AFASL(004),
    NDJAR(003),
    AFABG(010),
    ANLGR(012),
    ANLGR2(004),
    ANBTR01_01(016),
    ANBTR01_06(016),
    ANBTR01_16(016),
    TDATE(010),
    TCODE(004),
    TAMT(018),
    PERNR(012),
    KFZKF(015),
    SAP_ASSET(12),
    ERR_ASSET,
    END OF IT_DATA.
    DATA : BEGIN OF IT_DATA2 OCCURS 0,
    INVZU(015),
    TDATE(010),
    TCODE(004),
    TAMT(018),
    END OF IT_DATA2.
    DATA : BEGIN OF IT_DATA3 OCCURS 0,
    ITEM(003),
    INVZU(015),
    ANLKL(010),
    BUKRS(010),
    TXT50(050),
    SERNR(018),
    MENGE(018),
    INKEN(001),
    AKTIV(010),
    KOSTL(010),
    WERKS(004),
    STORT(010),
    ORD41(004),
    ORD42(004),
    EQANZ(001),
    LIFNR(010),
    AFASL(004),
    NDJAR(003),
    AFABG(010),
    ANLGR(012),
    ANLGR2(004),
    ANBTR01_01(016),
    ANBTR01_06(016),
    ANBTR01_16(016),
    TDATE(010),
    TCODE(004),
    TAMT(018),
    SAP_ASSET(12),
    ERR_ASSET,
    END OF IT_DATA3.
    SUB ASSET MASTER TABLE
    DATA : BEGIN OF IT_DATA_SUB OCCURS 0,
    INVZU_M(015),
    INVZU(015),
    BUKRS(004),
    TXT50(100),
    ANLHTXT(050),
    SERNR(018),
    MENGE(018),
    MEINS_007(003),
    XHIST_008(001),
    AKTIV(010),
    GSBER_011(004),
    KOSTL(010),
    STORT(010),
    ORD41(004),
    ORD42(004),
    EQANZ_016(001),
    LIFNR(010),
    LIEFE(030),
    NDJAR(003),
    NDPER(003),
    ANBTR01_01(016),
    ANBTR01_06(016),
    ANBTR01_16(016),
    BZDAT(010),
    BWASL(003),
    ANBTR01(016),
    ANLN1(012),
    ERR_SUB,
    SUB_CODE(012),
    ERR_SUB1,
    END OF IT_DATA_SUB.
    *& At selection-screen on value request for getting f4 help
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_PCFILE.
    PERFORM VALUE_REQUEST_P_FILE.
    *AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE_S.
    PERFORM VALUE_REQUEST_P_FILE_S.
    START OF SELECTION *
    START-OF-SELECTION.
    To Upload the flat file datas *
    PERFORM GET_DATA.
    PERFORM UP_LOAD.
    PERFORM SUB_UPLOAD.
    WRITE :/ 'FOLLOWING ASSETS CREATED'.
    WRITE:/ 'OLD ASSET'.
    WRITE: 20 'COMPANY'.
    WRITE: 30 'SAP CODE'.
    LOOP AT IT_DATA WHERE ERR_ASSET NE 'X'.
    WRITE :/ IT_DATA-INVZU,
    20 IT_DATA-BUKRS, 30 IT_DATA-SAP_ASSET.
    ENDLOOP.
    SKIP 2.
    WRITE :/ 'FOLLOWING SUB ASSETS CREATED'.
    WRITE:/ 'OLD ASSET'.
    WRITE: 16 'OLD SUB ASSET'.
    WRITE: 35 'COMPANY'.
    WRITE: 45 'SAP CODE'.
    WRITE: 60 'SUB ASSET'.
    LOOP AT IT_DATA_SUB WHERE ERR_SUB NE 'X' AND ERR_SUB1 NE 'X'.
    WRITE :/ IT_DATA_SUB-INVZU_M,
    16 IT_DATA_SUB-INVZU,
    35 IT_DATA_SUB-BUKRS, 45 IT_DATA_SUB-ANLN1, 60
    *IT_DATA_SUB-SUB_CODE.
    ENDLOOP.
    *& Form value_request_p_file
    FORM VALUE_REQUEST_P_FILE .
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
    PROGRAM_NAME = SYST-CPROG
    DYNPRO_NUMBER = SYST-DYNNR
    FIELD_NAME = 'x'
    IMPORTING
    FILE_NAME = P_PCFILE.
    ENDFORM. " value_request_p_file
    *& Form UP_LOAD
    text
    --> p1 text
    <-- p2 text
    FORM UP_LOAD .
    SORT IT_DATA BY INVZU.
    SORT IT_DATA2 BY INVZU.
    DATA : V_LEN1 TYPE I, V_LEN2 TYPE I, V_SUBSTR1(50) ,V_SUBSTR2(50).
    perform open_dataset using dataset.
    PERFORM OPEN_GROUP.
    LOOP AT IT_DATA.
    CONDENSE IT_DATA-TXT50.
    V_LEN1 = STRLEN( IT_DATA-TXT50 ).
    IF V_LEN1 > 50.
    V_SUBSTR1 = IT_DATA-TXT50+0(50).
    V_LEN2 = V_LEN1 - 50.
    V_SUBSTR2 = IT_DATA-TXT50+50(50).
    ELSE.
    V_SUBSTR1 = IT_DATA-TXT50.
    V_SUBSTR2 = ''..
    ENDIF.
    REFRESH BDCDATA.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '0105'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-BUKRS'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/00'.
    PERFORM BDC_FIELD USING 'ANLA-ANLKL'
    IT_DATA-ANLKL.
    PERFORM BDC_FIELD USING 'ANLA-BUKRS'
    IT_DATA-BUKRS.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB02'.
    PERFORM BDC_FIELD USING 'ANLA-TXT50'
    V_SUBSTR1. "IT_DATA-TXT50.
    PERFORM BDC_FIELD USING 'ANLA-TXA50'
    V_SUBSTR2.
    PERFORM BDC_FIELD USING 'ANLA-SERNR'
    IT_DATA-SERNR.
    PERFORM BDC_FIELD USING 'ANLA-MENGE'
    IT_DATA-MENGE.
    *perform bdc_field using 'ANLA-INKEN'
    record-INKEN_006.
    PERFORM BDC_FIELD USING 'ANLA-INVZU'
    IT_DATA-INVZU.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-AKTIV'.
    PERFORM BDC_FIELD USING 'ANLA-AKTIV'
    IT_DATA-AKTIV.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB03'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLZ-PERNR'.
    PERFORM BDC_FIELD USING 'ANLZ-PERNR'
    IT_DATA-PERNR.
    PERFORM BDC_FIELD USING 'ANLZ-KOSTL'
    IT_DATA-KOSTL.
    PERFORM BDC_FIELD USING 'ANLZ-WERKS'
    IT_DATA-WERKS.
    PERFORM BDC_FIELD USING 'ANLZ-STORT'
    IT_DATA-STORT.
    IF IT_DATA-ANLKL = 'VHCL'.
    PERFORM BDC_FIELD USING 'ANLZ-KFZKZ'
    IT_DATA-KFZKF.
    ENDIF.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB04'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ORD42'.
    PERFORM BDC_FIELD USING 'ANLA-ORD41'
    IT_DATA-ORD41.
    PERFORM BDC_FIELD USING 'ANLA-ORD42'
    IT_DATA-ORD42.
    *perform bdc_field using 'RA02S-EQANZ'
    record-EQANZ_014.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB06'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-LIFNR'.
    PERFORM BDC_FIELD USING 'ANLA-LIFNR'
    IT_DATA-LIFNR.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB08'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLV-VSART'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=SELZ'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'RA02S-XAKPLA(02)'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '0195'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLB-AFASL'.
    IF IT_DATA-TCODE IS INITIAL.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTD'.
    ELSE.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTB'.
    ENDIF.
    PERFORM BDC_FIELD USING 'ANLB-ANLGR'
    IT_DATA-ANLGR.
    PERFORM BDC_FIELD USING 'ANLB-ANLGR2'
    IT_DATA-ANLGR2.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1100'.
    IF IT_DATA-TCODE IS INITIAL.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=BUCH'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(01)'
    IT_DATA-ANBTR01_01.
    IF H_CHK NE 'X'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(06)'
    IT_DATA-ANBTR01_06.
    ENDIF.
    ELSE.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTB'.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1200'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=BUCH'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-BZDAT(01)'
    IT_DATA-TDATE.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-BWASL(01)'
    IT_DATA-TCODE.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(01)'
    IT_DATA-TAMT.
    ENDIF.
    REFRESH MESSTAB.
    CALL TRANSACTION 'AS91' USING BDCDATA
    MODE H_MODE
    UPDATE 'S'
    MESSAGES INTO MESSTAB.
    PERFORM BDC_TRANSACTION USING 'AS91'.
    ENDLOOP..
    PERFORM CLOSE_GROUP.
    *perform close_dataset using dataset.
    ENDFORM. " UP_LOAD
    *& Form GET_DATA
    text
    --> p1 text
    <-- p2 text
    FORM GET_DATA .
    CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
    EXPORTING
    I_TAB_RAW_DATA = IT_DATA1
    I_FILENAME = P_PCFILE
    TABLES
    I_TAB_CONVERTED_DATA = IT_DATA.
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    LOOP AT IT_DATA3.
    IF IT_DATA3-ITEM = '1'.
    MOVE-CORRESPONDING IT_DATA3 TO IT_DATA.
    APPEND IT_DATA.
    ELSEIF IT_DATA3-ITEM = '2'.
    IT_DATA2-INVZU = IT_DATA3-INVZU.
    IT_DATA2-TDATE = IT_DATA3-ANLKL.
    IT_DATA2-TCODE = IT_DATA3-BUKRS.
    IT_DATA2-TAMT = IT_DATA3-TXT50.
    APPEND IT_DATA2.
    ENDIF.
    ENDLOOP.
    IF NOT P_FILE_S IS INITIAL.
    CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
    EXPORTING
    I_TAB_RAW_DATA = IT_DATA1
    I_FILENAME = P_FILE_S
    TABLES
    I_TAB_CONVERTED_DATA = IT_DATA_SUB.
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDIF.
    ENDFORM. " GET_DATA
    FORM BDC_DYNPRO
    --> PROGRAM
    --> DYNPRO
    **FORM BDC_DYNPRO USING PROGRAM DYNPRO.
    CLEAR BDCDATA.
    BDCDATA-PROGRAM = PROGRAM.
    BDCDATA-DYNPRO = DYNPRO.
    BDCDATA-DYNBEGIN = 'X'.
    APPEND BDCDATA.
    **ENDFORM. " BDC_DYNPRO
    FORM BDC_FIELD
    --> FNAM
    --> FVAL
    **FORM BDC_FIELD USING FNAM FVAL.
    CLEAR BDCDATA.
    BDCDATA-FNAM = FNAM.
    BDCDATA-FVAL = FVAL.
    APPEND BDCDATA.
    **ENDFORM. "BDC_FIELD
    ***& Form bdc_transaction
    text
    -->TCODE text
    **FORM BDC_TRANSACTION USING TCODE.
    REFRESH MESSTAB.
    CALL TRANSACTION TCODE USING BDCDATA
    MODE H_MODE
    UPDATE 'S'
    MESSAGES INTO MESSTAB.
    **ENDFORM. " bdc_transaction
    *& Form VALUE_REQUEST_P_FILE_S
    text
    --> p1 text
    <-- p2 text
    FORM VALUE_REQUEST_P_FILE_S .
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
    PROGRAM_NAME = SYST-CPROG
    DYNPRO_NUMBER = SYST-DYNNR
    FIELD_NAME = 'x'
    IMPORTING
    FILE_NAME = P_FILE_S.
    ENDFORM. " VALUE_REQUEST_P_FILE_S
    *& Form sUB_upload
    text
    --> p1 text
    <-- p2 text
    ***FORM SUB_UPLOAD .
    DATA : V_LEN1 TYPE I, V_LEN2 TYPE I, V_SUBSTR1(50) ,V_SUBSTR2(50).
    LOOP AT IT_DATA_SUB WHERE ERR_SUB NE 'X'.
    CONDENSE IT_DATA_SUB-TXT50.
    V_LEN1 = STRLEN( IT_DATA_SUB-TXT50 ).
    IF V_LEN1 > 50.
    V_SUBSTR1 = IT_DATA_SUB-TXT50+0(50).
    V_LEN2 = V_LEN1 - 50.
    V_SUBSTR2 = IT_DATA_SUB-TXT50+50(50).
    ELSE.
    V_SUBSTR1 = IT_DATA_SUB-TXT50.
    V_SUBSTR2 = ''..
    ENDIF.
    REFRESH BDCDATA.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '0110'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ANLN1'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=MAST'.
    PERFORM BDC_FIELD USING 'ANLA-ANLN1'
    IT_DATA_SUB-ANLN1.
    PERFORM BDC_FIELD USING 'ANLA-BUKRS'
    IT_DATA_SUB-BUKRS.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB02'.
    PERFORM BDC_FIELD USING 'ANLA-TXT50'
    V_SUBSTR1. "IT_DATA_SUB-TXT50.
    PERFORM BDC_FIELD USING 'ANLA-TXa50'
    V_SUBSTR2. "IT_DATA_SUB-TXT50.
    ****perform bdc_field using 'ANLH-ANLHTXT'
    it_data_sub-ANLHTXT_004.
    PERFORM BDC_FIELD USING 'ANLA-SERNR'
    IT_DATA_SUB-SERNR.
    PERFORM BDC_FIELD USING 'ANLA-MENGE'
    IT_DATA_SUB-MENGE.
    ****perform bdc_field using 'ANLA-MEINS'
    it_data_sub-MEINS_007.
    ****perform bdc_field using 'RA02S-XHIST'
    it_data_sub-XHIST_008.
    PERFORM BDC_FIELD USING 'ANLA-INVZU'
    IT_DATA_SUB-INVZU.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-AKTIV'.
    PERFORM BDC_FIELD USING 'ANLA-AKTIV'
    IT_DATA_SUB-AKTIV.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB03'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLZ-GSBER'.
    ****perform bdc_field using 'ANLZ-GSBER'
    it_data_sub-GSBER_011.
    ****perform bdc_field using 'ANLZ-KOSTL'
    it_data_sub-KOSTL_012.
    PERFORM BDC_FIELD USING 'ANLZ-STORT'
    IT_DATA_SUB-STORT.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB04'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ORD41'.
    PERFORM BDC_FIELD USING 'ANLA-ORD41'
    IT_DATA_SUB-ORD41.
    PERFORM BDC_FIELD USING 'ANLA-ORD42'
    IT_DATA_SUB-ORD42.
    ****perform bdc_field using 'RA02S-EQANZ'
    it_data_sub-EQANZ_016.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB07'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-LIFNR'.
    PERFORM BDC_FIELD USING 'ANLA-LIFNR'
    IT_DATA_SUB-LIFNR.
    ****perform bdc_field using 'ANLA-LIEFE'
    IT_DATA_SUB-LIEFE.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB08'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-LEART'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=SELZ'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'T093T-AFBKTX(01)'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '0195'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLB-NDPER'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTD'.
    PERFORM BDC_FIELD USING 'ANLB-NDJAR'
    IT_DATA_SUB-NDJAR.
    PERFORM BDC_FIELD USING 'ANLB-NDPER'
    IT_DATA_SUB-NDPER.
    ****perform bdc_field using 'ANLB-AFABG'
    record-AFABG_029.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1100'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ANLN1'.
    IF IT_DATA_SUB-BWASL IS INITIAL.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=BUCH'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(01)'
    IT_DATA_SUB-ANBTR01_01.
    Accu deprn automatically calculated by system changed on 6th Aug.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(06)'
    IT_DATA_SUB-ANBTR01_06.
    ELSE.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTB'.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1200'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/00'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-BZDAT(01)'
    IT_DATA_SUB-BZDAT.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-BWASL(01)'
    IT_DATA_SUB-BWASL.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(01)'
    IT_DATA_SUB-ANBTR01.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1200'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ANLN1'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=BUCH'.
    ****perform bdc_transaction using 'AS94'.
    ENDIF.
    REFRESH MESSTAB.
    CALL TRANSACTION 'AS94' USING BDCDATA
    MODE H_MODE
    UPDATE 'S'
    MESSAGES INTO MESSTAB.
    IF SY-SUBRC = 0.
    READ TABLE MESSTAB INDEX 1.
    IT_DATA_sub-SUB_CODE = MESSTAB-MSGV1.
    DATA AN1 TYPE ANLN1.
    DATA AN2 TYPE ANLN2.
    GET PARAMETER ID 'AN2' FIELD AN2.
    IT_DATA_SUB-SUB_CODE = AN2. "MESSTAB-MSGV1.
    MODIFY IT_DATA_SUB TRANSPORTING SUB_CODE.
    ELSE.
    IT_DATA_SUB-ERR_SUB1 = 'X'.
    MODIFY IT_DATA_SUB TRANSPORTING ERR_SUB1.
    ENDIF.
    REFRESH BDCDATA.
    ENDLOOP.
    ***ENDFORM. " sUB_upload
    ****& Form SUB_UPLOAD1
    text
    ***FORM SUB_UPLOAD1 .
    LOOP AT IT_DATA_SUB WHERE ERR_SUB NE 'X'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '0110'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ANLN1'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=MAST'.
    PERFORM BDC_FIELD USING 'ANLA-ANLN1'
    IT_DATA_SUB-ANLN1.
    PERFORM BDC_FIELD USING 'ANLA-BUKRS'
    IT_DATA_SUB-BUKRS.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB02'.
    PERFORM BDC_FIELD USING 'ANLA-TXT50'
    IT_DATA_SUB-TXT50.
    ****perform bdc_field using 'ANLH-ANLHTXT'
    it_data_sub-ANLHTXT_004.
    PERFORM BDC_FIELD USING 'ANLA-SERNR'
    IT_DATA_SUB-SERNR.
    PERFORM BDC_FIELD USING 'ANLA-MENGE'
    IT_DATA_SUB-MENGE.
    ****perform bdc_field using 'ANLA-MEINS'
    it_data_sub-MEINS_007.
    ****perform bdc_field using 'RA02S-XHIST'
    it_data_sub-XHIST_008.
    PERFORM BDC_FIELD USING 'ANLA-INVZU'
    IT_DATA_SUB-INVZU.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-AKTIV'.
    PERFORM BDC_FIELD USING 'ANLA-AKTIV'
    IT_DATA_SUB-AKTIV.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB03'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLZ-GSBER'.
    ****perform bdc_field using 'ANLZ-GSBER'
    it_data_sub-GSBER_011.
    ****perform bdc_field using 'ANLZ-KOSTL'
    it_data_sub-KOSTL_012.
    PERFORM BDC_FIELD USING 'ANLZ-STORT'
    IT_DATA_SUB-STORT.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB04'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ORD41'.
    PERFORM BDC_FIELD USING 'ANLA-ORD41'
    IT_DATA_SUB-ORD41.
    PERFORM BDC_FIELD USING 'ANLA-ORD42'
    IT_DATA_SUB-ORD42.
    ****perform bdc_field using 'RA02S-EQANZ'
    it_data_sub-EQANZ_016.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB07'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-LIFNR'.
    PERFORM BDC_FIELD USING 'ANLA-LIFNR'
    IT_DATA_SUB-LIFNR.
    ****perform bdc_field using 'ANLA-LIEFE'
    IT_DATA_SUB-LIEFE.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=TAB08'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-LEART'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '1000'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=SELZ'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'T093T-AFBKTX(01)'.
    PERFORM BDC_DYNPRO USING 'SAPLAIST' '0195'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLB-NDPER'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTD'.
    PERFORM BDC_FIELD USING 'ANLB-NDJAR'
    IT_DATA_SUB-NDJAR.
    PERFORM BDC_FIELD USING 'ANLB-NDPER'
    IT_DATA_SUB-NDPER.
    ****perform bdc_field using 'ANLB-AFABG'
    record-AFABG_029.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1100'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ANLN1'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=ALTB'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(01)'
    IT_DATA_SUB-ANBTR01_01.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(06)'
    IT_DATA_SUB-ANBTR01_06.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1200'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '/00'.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-BZDAT(01)'
    IT_DATA_SUB-BZDAT.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-BWASL(01)'
    IT_DATA_SUB-BWASL.
    PERFORM BDC_FIELD USING 'RALT_DYNP_STRUC-ANBTR01(01)'
    IT_DATA_SUB-ANBTR01.
    PERFORM BDC_DYNPRO USING 'SAPLALTD' '1200'.
    PERFORM BDC_FIELD USING 'BDC_CURSOR'
    'ANLA-ANLN1'.
    PERFORM BDC_FIELD USING 'BDC_OKCODE'
    '=BUCH'.
    ****perform bdc_transaction using 'AS94'.
    REFRESH MESSTAB.
    CALL TRANSACTION 'AS94' USING BDCDATA
    MODE H_MODE
    UPDATE 'S'
    MESSAGES INTO MESSTAB.
    IF SY-SUBRC = 0.
    READ TABLE MESSTAB INDEX 1.
    IT_DATA_sub-SUB_CODE = MESSTAB-MSGV1.
    DATA AN1 TYPE ANLN1.
    DATA AN2 TYPE ANLN2.
    GET PARAMETER ID 'AN2' FIELD AN2.
    IT_DATA_SUB-SUB_CODE = AN2. "MESSTAB-MSGV1.
    MODIFY IT_DATA_SUB TRANSPORTING SUB_CODE.
    ELSE.
    IT_DATA_SUB-ERR_SUB1 = 'X'.
    MODIFY IT_DATA_SUB TRANSPORTING ERR_SUB1.
    ENDIF.
    REFRESH BDCDATA.
    ENDLOOP.
    ***ENDFORM. " sUB_upload
    and one more thing i face some issues when doing bdc for AS01, so i use AS91 and AS92 for uploading by using LSMW (direct input method and recording method) and it was successful.(if u have to do coding go for BDC/BAPI or there is no coding better to choose LSMW (it is the easiest way) as of my knowledge, so before starting just analyze once which method is best for ur requirement.
    Reward Points for Useful Answers
    Thanks
    Naveen khan
    Message was edited by:
            Pattan Naveen

  • Bdc recording of  screen having table control

    hi all,
        how to trap scroll in bdc recording of table control.
    regards deepak

    Hi..,
    <b>I found this program in one of the BDC links  !! Hope this helps u !!</b>
    Following is a sample code of handling table control in BDC.
    REPORT Y730_BDC5 .
    *HANDLING TABLE CONTROL IN BDC
    DATA : BEGIN OF IT_DUMMY OCCURS 0,
           DUMMY(100) TYPE C,
           END OF IT_DUMMY.
    DATA : BEGIN OF IT_XK01 OCCURS 0,
           LIFNR(10) TYPE C,
           BUKRS(4)  TYPE C,
           EKORG(4)  TYPE C,
           KTOKK(4)  TYPE C,
           NAME1(30) TYPE C,
           SORTL(10) TYPE C,
           LAND1(3)  TYPE C,
           SPRAS(2)  TYPE C,
           AKONT(6)  TYPE C,
           FDGRV(2)  TYPE C,
           WAERS(3)  TYPE C,
           END OF IT_XK01,
           BEGIN OF IT_BANK OCCURS 0,
           BANKS(3)  TYPE C,
           BANKL(10) TYPE C,
           BANKN(10) TYPE C,
           KOINH(30) TYPE C,
           LIFNR(10) TYPE C,
           END OF IT_BANK.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
           IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
       FILENAME                      = 'C:\VENDOR.TXT'
       FILETYPE                      = 'ASC'
    TABLES
       DATA_TAB                      = IT_DUMMY.
    LOOP AT IT_DUMMY.
      IF IT_DUMMY-DUMMY+0(2) = '11'.
        IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
        IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
        IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
        IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
        IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
        IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
        IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
        IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
        IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
        IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
        IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
        APPEND IT_XK01.
      ELSE.
        IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
        IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
        IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
        IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
        IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
        APPEND IT_BANK.
      ENDIF.
    ENDLOOP.
    LOOP AT IT_XK01.
    REFRESH IT_BDCDATA.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-REF_LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  IT_XK01-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  IT_XK01-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  IT_XK01-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  IT_XK01-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-TELX1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  IT_XK01-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  IT_XK01-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  IT_XK01-LAND1.
    perform bdc_field       using 'LFA1-SPRAS'
                                  IT_XK01-SPRAS.
    perform bdc_dynpro      using 'SAPMF02K' '0120'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-KUNNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-KOINH(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    DATA : FNAM(20) TYPE C,
           IDX      TYPE C.
      MOVE 1 TO IDX.
    LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
      CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKS.
      CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKL.
      CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKN.
      CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-KOINH.
      IDX = IDX + 1.
    ENDLOOP.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-BANKS(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPMF02K' '0210'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-FDGRV'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFB1-AKONT'
                                  IT_XK01-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  IT_XK01-FDGRV.
    perform bdc_dynpro      using 'SAPMF02K' '0215'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-ZTERM'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0220'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB5-MAHNA'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0310'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFM1-WAERS'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFM1-WAERS'
                                  IT_XK01-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'WYT3-PARVW(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    CALL TRANSACTION 'XK01' USING IT_BDCDATA
                            MODE  'A'
                           UPDATE 'S'
                         MESSAGES INTO IT_BDCMSGCOLL.
    ENDLOOP.
    FORM BDC_DYNPRO USING PROG SCR.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM = PROG.
      IT_BDCDATA-DYNPRO  = SCR.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-FNAM = FNAM.
      IT_BDCDATA-FVAL  = FVAL.
      APPEND IT_BDCDATA.
    ENDFORM.
    regards,
    sai ramesh

  • Sample code creating BOM for CS01 using BDC recording.

    Hi,
    Can anyone give me sample coding creating BOM for CS01 using BDC recording.
    I want to display the flat file records,under one (Alternative BOM).
    I m already working on it,but i m getting one A.BOM for each records.
    [       Header data          ]    [      Item Data               ]
    SOFTDRINKS   WIND   1       13            1     ml     l
    SOFTDRINKS   WIND   1       11            1     ml     l
    SOFTDRINKS   WIND   1       15        1     ml     l
    SOFTDRINKS   WIND   1       14       1     ml     l
    Code:
    report ZBOM
           no standard page heading line-size 255.
    *include bdcrecx1.
    *DATA: BEGIN OF bdc OCCURS 0,
          matnr(18),
          werks(4),
          stlan(1),
         END OF BDC.
    *DATA: BEGIN OF BDC1 OCCURS 0,
          idnrk(18),
          MENGE(18),
          MEINS(3),
          postp(1),
          posnr(4),
         END OF bdc1.
    DATA: BEGIN OF BDCDATA OCCURS 0,
             matnr(18),
             werks(4),
             stlan(1),
             idnrk(18),
             MENGE(18),
             MEINS(3),
             postp(1),
             posnr(4),
          END OF BDCDATA.
    data  ibdcdata type standard table of bdcdata WITH  header line.
    *start-of-selection.
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
        FILENAME                      = 'C:\Documents and Settings\dilipkumar.b\Desktop\soft.txt'
       FILETYPE                       = 'ASC'
       HAS_FIELD_SEPARATOR            = ','
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
      DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      CHECK_BOM                     = ' '
      VIRUS_SCAN_PROFILE            =
      NO_AUTH_CHECK                 = ' '
    IMPORTING
      FILELENGTH                     =
      HEADER                         =
      TABLES
        DATA_TAB                      = BDCDATA
    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 bdcdata.
    perform bdc_dynpro      using 'SAPLCSDI' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29N-STLAN'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RC29N-MATNR'
                                  'SOFTDRINKS'.
    perform bdc_field       using 'RC29N-WERKS'
                                  'WIND'.
    perform bdc_field       using 'RC29N-STLAN'
                                  '1'.
    perform bdc_field       using 'RC29N-DATUV'
                                  '16.09.2008'.
    perform bdc_dynpro      using 'SAPLCSDI' '0110'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RC29K-BMENG'
                                  '1'.
    perform bdc_field       using 'RC29K-STLST'
                                  '1'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29K-EXSTL'.
    perform bdc_dynpro      using 'SAPLCSDI' '0111'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29K-LABOR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPLCSDI' '0140'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29P-POSTP(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=FCBU'.
    perform bdc_field       using 'RC29P-IDNRK(001)'
                                  BDCDATA-IDNRK.
    perform bdc_field       using 'RC29P-MENGE(001)'
                                  BDCDATA-MENGE.
    perform bdc_field       using 'RC29P-MEINS(001)'
                                  BDCDATA-MEINS.
    perform bdc_field       using 'RC29P-POSTP(001)'
                                  BDCDATA-POSTP.
    perform bdc_dynpro      using 'SAPLCSDI' '0130'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29P-POSNR'.
    perform bdc_field       using 'RC29P-POSNR'
                                   BDCDATA-POSNR.            "'0010'.
    perform bdc_field       using 'RC29P-IDNRK'
                                  BDCDATA-IDNRK.             "'15'.
    perform bdc_field       using 'RC29P-MENGE'
                                  BDCDATA-MENGE.             "'1'.
    perform bdc_field       using 'RC29P-MEINS'
                                  BDCDATA-MEINS.             "'ml'.
    perform bdc_dynpro      using 'SAPLCSDI' '0131'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29P-POTX1'.
    perform bdc_field       using 'RC29P-SANKA'
                                  'X'.
    *perform bdc_transaction using 'CS01'.
    *perform close_group.
    CALL TRANSACTION 'CS01' USING IBDCDATA MODE 'A' UPDATE 'S'.
    REFRESH IBDCDATA.
    clear ibdcdata.
    endloop.
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR iBDCDATA.
      iBDCDATA-PROGRAM  = PROGRAM.
      iBDCDATA-DYNPRO   = DYNPRO.
      iBDCDATA-DYNBEGIN = 'X'.
      APPEND ibDCDATA .
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
    IF FVAL <> NODATA.
        CLEAR iBDCDATA.
        iBDCDATA-FNAM = FNAM.
        iBDCDATA-FVAL = FVAL.
        APPEND iBDCDATA .
    ENDIF.
    ENDFORM.

    Hi,
          I tried with the sample code but i m not getting the required result.
        Can anyone give some other soln.
    Code:
    REPORT  ZBOM2
    no standard page heading line-size 255.
    *include bdcrecx1.
    TYPES: BEGIN OF TY_FLAT,      " structure for flat file
            STRING(200),
           END OF TY_FLAT.
    TYPES: BEGIN OF TY_HEAD,     " structure for header file
            IND(2) TYPE N,
            MATNR(18),
            WERKS(4),
            STLAN(1),
           END OF TY_HEAD.
    TYPES : BEGIN OF TY_ITEM,    "structure for item file
              IND(2) TYPE N,
              POSTP(1),
              IDNRK(18),
              MENGE(13),
              meins(3),
            END OF TY_ITEM.
    TYPES :BEGIN OF TY_FLAT1,   " structure for final file
             MATNR(18),
             WERKS(4),
             STLAN(1),
             posnr(4),
             POSTP(1),
             IDNRK(18),
             MENGE(13),
             meins(3),
           END OF TY_FLAT1.
    INTERNAL TABLE DECLERATIONS:
    DATA : T_FLAT TYPE STANDARD TABLE OF TY_FLAT,
           T_FLAT1 TYPE STANDARD TABLE OF TY_FLAT1,
           T_HEAD TYPE STANDARD TABLE OF TY_HEAD,
           T_ITEM TYPE STANDARD TABLE OF TY_ITEM,
           T_BDCDATA TYPE STANDARD TABLE OF BDCDATA with header line ,
           T_BDCMSG TYPE STANDARD TABLE OF BDCMSGCOLL.
    WORK AREA DECLERATIONS:
    DATA : ST_FLAT TYPE TY_FLAT,
           ST_FLAT1 TYPE TY_FLAT1,
           ST_HEAD TYPE TY_HEAD,
           ST_ITEM TYPE TY_ITEM,
           ST_BDCDATA TYPE BDCDATA,
           ST_BDCMSG TYPE BDCMSGCOLL.
    VARIABLES:
    DATA : FNAM TYPE LOCALFILE,           "rlgrap-filename,
           FTYP TYPE RLGRAP-FILETYPE,
           LF_FNAM TYPE STRING.
    DATA : V_IND(2) TYPE N,                " value 1,
           V_FLD(20),
           V_NO(2) TYPE N.
    *start-of-selection.
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
        FILENAME                      = 'C:\Documents and Settings\dilipkumar.b\Desktop\soft.txt'
       FILETYPE                       = 'ASC'
       HAS_FIELD_SEPARATOR            = ','
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
      DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      CHECK_BOM                     = ' '
      VIRUS_SCAN_PROFILE            =
      NO_AUTH_CHECK                 = ' '
    IMPORTING
      FILELENGTH                     =
      HEADER                         =
      TABLES
        DATA_TAB                      = T_FLAT
    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.
    LOOP AT T_FLAT INTO ST_FLAT.
    SPLIT ST_FLAT AT CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB
    INTO ST_FLAT1-MATNR ST_FLAT1-WERKS
    ST_FLAT1-STLAN ST_FLAT1-POSTP
    ST_FLAT1-IDNRK ST_FLAT1-MENGE ST_FLAT1-MEINS.
    APPEND ST_FLAT1 TO T_FLAT1.
    CLEAR ST_FLAT1.
    ENDLOOP.
    SORT T_FLAT1 BY MATNR WERKS STLAN POSTP IDNRK MENGE MEINS.
    LOOP AT T_FLAT1 INTO ST_FLAT1.
    MOVE :
    ST_FLAT1-MATNR TO ST_HEAD-MATNR,
    ST_FLAT1-WERKS TO ST_HEAD-WERKS,
    ST_FLAT1-STLAN TO ST_HEAD-STLAN,
    ST_FLAT1-POSTP TO ST_ITEM-POSTP,
    ST_FLAT1-IDNRK TO ST_ITEM-IDNRK,
    ST_FLAT1-MENGE TO ST_ITEM-MENGE,
    ST_FLAT1-MENGE TO ST_ITEM-MEINS.
    AT new STLAN.
      ADD 1 TO V_IND.
    ENDAT.
    MOVE V_IND TO ST_HEAD-IND.
    MOVE V_IND TO ST_ITEM-IND.
    APPEND ST_HEAD TO T_HEAD.
    APPEND ST_ITEM TO T_ITEM.
    CLEAR ST_HEAD.
    CLEAR ST_ITEM.
    ENDLOOP.
    CLEAR V_IND.
    *perform open_group.
    SORT T_ITEM BY IND.
    SORT T_HEAD BY IND.
    DELETE ADJACENT DUPLICATES FROM T_HEAD.
    LOOP AT T_HEAD INTO ST_HEAD.
    perform bdc_dynpro      using 'SAPLCSDI' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29N-STLAN'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RC29N-MATNR'
                                  ST_HEAD-MATNR.
    perform bdc_field       using 'RC29N-WERKS'
                                  ST_HEAD-WERKS.
    perform bdc_field       using 'RC29N-STLAN'
                                  ST_HEAD-STLAN.
    perform bdc_field       using 'RC29N-DATUV'
                                  '16.09.2008'.
    perform bdc_dynpro      using 'SAPLCSDI' '0110'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RC29K-BMENG'
                                  '1'.
    perform bdc_field       using 'RC29K-STLST'
                                  '1'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29K-EXSTL'.
    perform bdc_dynpro      using 'SAPLCSDI' '0111'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29K-LABOR'.
    LOOP AT T_ITEM INTO ST_ITEM WHERE IND = ST_HEAD-IND.
    ADD 1 TO V_NO.
    perform bdc_dynpro      using 'SAPLCSDI' '0140'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29K-MENGE(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=FCBU'.
    perform bdc_dynpro      using 'SAPLCSDI' '0140'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29P-POSNR(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=FCBU'.
    perform bdc_field       using 'RC29P-IDNRK(01)'
                                  ST_ITEM-IDNRK.
    perform bdc_field       using 'RC29P-MENGE(01)'
                                  ST_ITEM-MENGE.
    perform bdc_field       using 'RC29P-MEINS(01)'
                                  ST_ITEM-MEINS.
    perform bdc_field       using 'RC29P-POSTP(01)'
                                  ST_ITEM-POSTP.
    CONCATENATE 'RC29K-IDNRK(' V_NO ')' INTO V_FLD.
    CONDENSE V_FLD.
    PERFORM BDC_FIELD USING V_FLD
    ST_ITEM-IDNRK.
    CONCATENATE 'RC29K-MENGE(' V_NO ')' INTO V_FLD.
    CONDENSE V_FLD.
    PERFORM BDC_FIELD USING V_FLD
    ST_ITEM-MENGE.
    CONCATENATE 'RC29K-MEINS(' V_NO ')' INTO V_FLD.
    CONDENSE V_FLD.
    PERFORM BDC_FIELD USING V_FLD
    ST_ITEM-MEINS.
    CONCATENATE 'RC29K-POSTP(' V_NO ')' INTO V_FLD.
    CONDENSE V_FLD.
    PERFORM BDC_FIELD USING V_FLD
    ST_ITEM-POSTP.
    V_NO = 1.
    ENDLOOP.
    CLEAR V_NO.
    *perform bdc_dynpro      using 'SAPLCSDI' '0130'.
    *perform bdc_field       using 'BDC_OKCODE'
                                 '/00'.
    *perform bdc_field       using 'BDC_CURSOR'
                                 'RC29P-POSNR'.
    *perform bdc_field       using 'RC29P-POSNR'
                                  POSNR.
    *perform bdc_field       using 'RC29P-IDNRK'
                                 bdcdata-IDNRK.
    *perform bdc_field       using 'RC29P-MENGE'
                                 bdcdata-MENGE.
    *perform bdc_field       using 'RC29P-MEINS'
                                 bdcdata-MEINS.
    perform bdc_dynpro      using 'SAPLCSDI' '0131'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29P-POTX1'.
    perform bdc_field       using 'RC29P-SANKA'
                                     'X'.
    perform bdc_dynpro      using 'SAPLCSDI' '0133'.
    perform bdc_field       using 'BDC_OKCODE'
                                    '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29P-matkl'.
    perform bdc_field       using 'RC29P-SANKA'
                                     'zv01'.
    perform bdc_dynpro      using 'SAPLCSDI' '0140'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RC29N-POSNR(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=FCBU'.
    *perform bdc_transaction using 'CS01'.
    perform close_group.
    CALL TRANSACTION 'CS01' USING t_bdcdata MODE 'A' UPDATE 'S'.
    REFRESH t_bdcdata.
    clear t_bdcdata.
    endloop.
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR st_bdcdata.
      st_bdcdata-PROGRAM  = PROGRAM.
      st_bdcdata-DYNPRO   = DYNPRO.
      st_bdcdata-DYNBEGIN = 'X'.
      APPEND st_bdcdata to t_bdcdata .
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
    IF FVAL <> NODATA.
        CLEAR st_bdcdata.
        st_bdcdata-FNAM = FNAM.
        st_bdcdata-FVAL = FVAL.
        APPEND st_bdcdata to t_bdcdata.
    ENDIF.
    ENDFORM.

  • BDC Recording for uploading data into Fi01

    HI,
    I need to upload date from a file into SAP Fi01 transaction
    i used a sample program and added my bdc recording to it as per instrucrion
    there is a error while uploading.
    i believe it is at the place i am pointing in bold. it is at read dataset. could you advice me how to solve it.
    CODE:
    REPORT Z_BANK_DIRECTORY
    NO STANDARD PAGE HEADING
    LINE-SIZE 200
    LINE-COUNT 300.
    *-- DATA DECLARATION--
    *---Types
    DATA : BEGIN OF t_upload,
    data element: BANKS
            BANKS_001(003),
    data element: BANKK
            BANKL_002(015),
    data element: BANKA
            BANKA_003(060),
    data element: REGIO
            PROVZ_004(003),
    data element: STRAS_GP
            STRAS_005(035),
    data element: ORT01_GP
            ORT01_006(035),
    data element: BRNCH
            BRNCH_007(040),
    data element: SWIFT
            SWIFT_008(011),
    data element: BGRUP
            BGRUP_009(002),
    data element: AD_TITLETX
            TITLE_MEDI_010(030),
    data element: AD_NAME1
            NAME1_011(040),
    data element: AD_STRSPP1
            STR_SUPPL1_012(040),
    data element: AD_STRSPP2
            STR_SUPPL2_013(040),
    data element: AD_STREET
            STREET_014(060),
    data element: AD_CITY2
            CITY2_015(040),
    data element: AD_CITY3
            HOME_CITY_016(040),
    data element: AD_PSTCD1
            POST_CODE1_017(010),
    data element: LAND1
            COUNTRY_018(003),
    data element: AD_POBX
            PO_BOX_019(010),
    data element: AD_PSTCD2
            POST_CODE2_020(010),
    data element: SPRAS
            LANGU_021(002),
    data element: AD_TLNMBR1
            TEL_NUMBER_022(030),
    data element: AD_MBNMBR1
            MOB_NUMBER_023(030),
    data element: AD_FXNMBR1
            FAX_NUMBER_024(030),
    data element: AD_SMTPADR
            SMTP_ADDR_025(132),
    data element: BANKA
            BANKA_026(060),
    data element: REGIO
            PROVZ_027(003),
    data element: STRAS_GP
            STRAS_028(035),
    data element: ORT01_GP
            ORT01_029(035),
    data element: BRNCH
            BRNCH_030(040),
    data element: SWIFT
            SWIFT_031(011),
    data element: BGRUP
            BGRUP_032(002),
    END OF t_upload.
    *--- Tables
    DATA : BEGIN OF i_bdcdata OCCURS 0."to hold the transaction t_upload
    INCLUDE STRUCTURE bdcdata.
    DATA: END OF i_bdcdata.
    DATA: i_upload LIKE STANDARD TABLE OF t_upload," to hold file data.
    i_upload1 LIKE STANDARD TABLE OF t_upload." to hold file data.
    *--- Work Areas
    DATA: wa_upload2 LIKE t_upload,
    wa_upload LIKE t_upload,
    wa_upload1 LIKE t_upload.
    *--- Variables
    DATA: v_count1(4) TYPE n,
    v_error TYPE c,
    v_session(12),
    v_field(21) TYPE c,
    v_message(60) type C.
    *--Constants
    DATA: c_open TYPE c VALUE '(',
    c_close TYPE c VALUE ')',
    c_x TYPE c VALUE 'X'.
    *---Initialisation
    initialization.
    refresh : i_upload , i_upload1 ,i_bdcdata.
    -------Selection Screen Design -
    *Selection screen for input of upload file address
    SELECTION-SCREEN SKIP 2.
    SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME.
    PARAMETERS : p_file LIKE rlgrap-filename OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK blk1.
    ---AT SELECTION SCREEN -
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
    *--For popup to select file.
    PERFORM give_help.
    -----START OF SELECTION -
    START-OF-SELECTION.
    *--Data upload using WS_Upload.
    PERFORM get_data.
    *-- OPEN SESSION
    PERFORM open_group.
    *--Insert transactions using BDCDATA table in the session.
    PERFORM do_transaction .
    *-- Close the session.
    PERFORM close_group.
    END-OF-SELECTION.
    *& Form f_get_data
    For data upload from external file.
    FORM get_data.
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
    filename = p_file
    filetype = 'DAT'
    TABLES
    data_tab = i_upload
    EXCEPTIONS
    conversion_error = 1
    file_open_error = 2
    file_read_error = 3
    invalid_type = 4
    no_batch = 5
    unknown_error = 6
    invalid_table_width = 7
    gui_refuse_filetransfer = 8
    customer_error = 9
    OTHERS = 10.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ELSE.
    DELETE I_UPLOAD INDEX 1.
    ENDIF.
    ENDFORM. " f_get_data
    *& Form F_open_group
    To open session in session management.
    FORM open_group.
    v_session = 'FI01'.
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
    client = sy-mandt
    group = v_session
    user = sy-uname
    keep = 'X'.
    ENDFORM. " F_open_group
    *& Form f_do_transaction
    Insert transactions in session after passing values to BDCDATA
    FORM do_transaction.
    LOOP AT i_upload INTO wa_upload .
    *---- insert your generated codes from recording at SHDB here
    read dataset <b>wa_upload</b> into t_upload.
    if sy-subrc <> 0. exit. endif.
    perform bdc_dynpro      using 'SAPMF02B' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'BNKA-BANKL'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BNKA-BANKS'
                                  t_upload-BANKS_001.
    perform bdc_field       using 'BNKA-BANKL'
                                  t_upload-BANKL_002.
    perform bdc_dynpro      using 'SAPMF02B' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'BNKA-BGRUP'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ADDR'.
    perform bdc_field       using 'BNKA-BANKA'
                                  t_upload-BANKA_003.
    perform bdc_field       using 'BNKA-PROVZ'
                                  t_upload-PROVZ_004.
    perform bdc_field       using 'BNKA-STRAS'
                                  t_upload-STRAS_005.
    perform bdc_field       using 'BNKA-ORT01'
                                  t_upload-ORT01_006.
    perform bdc_field       using 'BNKA-BRNCH'
                                  t_upload-BRNCH_007.
    perform bdc_field       using 'BNKA-SWIFT'
                                  t_upload-SWIFT_008.
    perform bdc_field       using 'BNKA-BGRUP'
                                  t_upload-BGRUP_009.
    perform bdc_dynpro      using 'SAPLSZA1' '0201'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'SZA1_D0100-SMTP_ADDR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=CONT'.
    perform bdc_field       using 'SZA1_D0100-TITLE_MEDI'
                                  t_upload-TITLE_MEDI_010.
    perform bdc_field       using 'ADDR1_DATA-NAME1'
                                  t_upload-NAME1_011.
    perform bdc_field       using 'ADDR1_DATA-STR_SUPPL1'
                                  t_upload-STR_SUPPL1_012.
    perform bdc_field       using 'ADDR1_DATA-STR_SUPPL2'
                                  t_upload-STR_SUPPL2_013.
    perform bdc_field       using 'ADDR1_DATA-STREET'
                                  t_upload-STREET_014.
    perform bdc_field       using 'ADDR1_DATA-CITY2'
                                  t_upload-CITY2_015.
    perform bdc_field       using 'ADDR1_DATA-HOME_CITY'
                                  t_upload-HOME_CITY_016.
    perform bdc_field       using 'ADDR1_DATA-POST_CODE1'
                                  t_upload-POST_CODE1_017.
    perform bdc_field       using 'ADDR1_DATA-COUNTRY'
                                  t_upload-COUNTRY_018.
    perform bdc_field       using 'ADDR1_DATA-PO_BOX'
                                  t_upload-PO_BOX_019.
    perform bdc_field       using 'ADDR1_DATA-POST_CODE2'
                                  t_upload-POST_CODE2_020.
    perform bdc_field       using 'ADDR1_DATA-LANGU'
                                  t_upload-LANGU_021.
    perform bdc_field       using 'SZA1_D0100-TEL_NUMBER'
                                  t_upload-TEL_NUMBER_022.
    perform bdc_field       using 'SZA1_D0100-MOB_NUMBER'
                                  t_upload-MOB_NUMBER_023.
    perform bdc_field       using 'SZA1_D0100-FAX_NUMBER'
                                  t_upload-FAX_NUMBER_024.
    perform bdc_field       using 'SZA1_D0100-SMTP_ADDR'
                                  t_upload-SMTP_ADDR_025.
    perform bdc_dynpro      using 'SAPMF02B' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'BNKA-BANKA'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=UPDA'.
    perform bdc_field       using 'BNKA-BANKA'
                                  t_upload-BANKA_026.
    perform bdc_field       using 'BNKA-PROVZ'
                                  t_upload-PROVZ_027.
    perform bdc_field       using 'BNKA-STRAS'
                                  t_upload-STRAS_028.
    perform bdc_field       using 'BNKA-ORT01'
                                  t_upload-ORT01_029.
    perform bdc_field       using 'BNKA-BRNCH'
                                  t_upload-BRNCH_030.
    perform bdc_field       using 'BNKA-SWIFT'
                                  t_upload-SWIFT_031.
    perform bdc_field       using 'BNKA-BGRUP'
                                  t_upload-BGRUP_032.
    *----- insertion ends
    perform bdc_transaction using 'FI01'.
    REFRESH : I_BDCDATA.
    CLEAR : WA_UPLOAD.
    ENDIF.
    ENDLOOP.
    ENDFORM. " f_do_transaction
    *& Form bdc_dynpro
    For appending screen details to BDCDATA
    FORM bdc_dynpro USING program dynpro.
    CLEAR i_bdcdata.
    i_bdcdata-program = program.
    i_bdcdata-dynpro = dynpro.
    i_bdcdata-dynbegin = 'X'.
    APPEND i_bdcdata.
    CLEAR i_bdcdata.
    ENDFORM. "bdc_dynpro
    *& Form bdc_field
    For appending field details to bdcdata table
    FORM bdc_field USING fnam fval.
    CLEAR i_bdcdata.
    i_bdcdata-fnam = fnam.
    i_bdcdata-fval = fval.
    APPEND i_bdcdata.
    CLEAR i_bdcdata.
    ENDFORM. " bdc_field
    *& Form bdc_transaction
    For inserting Transaction in the session
    FORM bdc_transaction USING tcode.
    CALL FUNCTION 'BDC_INSERT'
    EXPORTING
    tcode = 'FI01'
    TABLES
    dynprotab = i_bdcdata.
    ENDFORM. " bdc_transaction
    *& Form F_close_group
    For closing the session created in Session manager SM35
    FORM close_group.
    CALL FUNCTION 'BDC_CLOSE_GROUP'.
    concatenate 'Session ' v_session 'successfully created' into v_field.
    MESSAGE v_field type 'I'..
    CALL TRANSACTION 'SM35'.
    ENDFORM. "f_close_group
    *& Form f_give_help
    For user help to select file
    FORM give_help.
    CALL FUNCTION 'WS_FILENAME_GET'
    EXPORTING
    mask = ',.,..'
    mode = 'O'
    IMPORTING
    filename = p_file
    EXCEPTIONS
    inv_winsys = 1
    no_batch = 2
    selection_cancel = 3
    selection_error = 4
    OTHERS = 5.
    IF sy-subrc <> 0 AND NOT sy-msgty IS INITIAL.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDFORM. " f_give_help
    ---- End of Template -

    Actually, there is no need for the dataset statemant at all.  Comment that out, and add a line that moves the data from wa_upload to t_upload,  or you could change the rest of the references to point to wa_upload and forget about t_upload.  Your choice.
    LOOP AT i_upload INTO wa_upload .
    *---- insert your generated codes from recording at SHDB here
    *read dataset wa_upload into t_upload.
    *f sy-subrc <> 0. exit. endif.
    t_upload = wa_upload.
    Regards,
    RIch Heilman

  • BDC Recording - IL02

    Hi,
    I'm new to abap.  Hope any expert able to help me out.
    I'm doing upload program to link the document to functional location via BDC recording IL02.
    1) How i proceed to check the floc is whether exist in the system?
    2) Display the out the floc name if not exist.
    3) skip/ delete this floc and proceed rest of uploading.
    Below are part of my code & recording. Appreciate can provide guide code to me.
    Thanks!!
    <u><b>Internal Table:</b></u>
    DATA : BEGIN OF i_input OCCURS 0,
            tplnr LIKE iflo-tplnr,         "Functional Location
            dokar LIKE draw-dokar,   "Document Type
            doknr LIKE draw-doknr,   "Document
            doktl LIKE draw-doktl,     "Document Part
            dokvr LIKE draw-dokvr,    "Document Version
    END OF i_input.
    <u><b>BDC Recording</b></u>
    FORM BDC_Functional_Location.
      DATA : wa_file LIKE i_input.
      IF NOT i i_input[] IS INITIAL.
        SORT  i_input BY tplnr.
        LOOP AT i_input.
          wa_file = i_input.
          REFRESH i_bdcdata.
          CLEAR i_bdcdata.
        <u>Screen 1</u>
          PERFORM bdc_dynpro      USING 'SAPMILO0' '1110' c_on.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'IFLO-TPLNR'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'IFLO-TPLNR'
                                        wa_file-tplnr.
        <u>Screen 2</u>
          PERFORM bdc_dynpro      USING 'SAPMILO0' '2100' c_on.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'IFLO-PLTXT'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=T\05'.
        <u>Screen 3</u>
          PERFORM bdc_dynpro      USING 'SAPMILO0' '2100' c_on.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=CV140_INS'.
        <u>Screen 4</u>
          PERFORM bdc_dynpro      USING 'SAPMILO0' '2100' c_on.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'DRAW-DOKVR(01)'.
          PERFORM bdc_field       USING 'DRAW-DOKAR(01)'
                                        wa_file-dokar.
          PERFORM bdc_field       USING 'DRAW-DOKNR(01)'
                                        wa_file-doknr.
          PERFORM bdc_field       USING 'DRAW-DOKTL(01)'
                                        wa_file-doktl.
          PERFORM bdc_field       USING 'DRAW-DOKVR(01)'
                                        wa_file-dokvr.
          PERFORM bdc_field       USING 'GF_ALLE'
                                        'X'.
       <u>Screen 5</u>
          PERFORM bdc_dynpro      USING 'SAPMILO0' '2100' c_on.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=BU'.
          PERFORM bdc_transaction USING ' ' 'IL02' 'N'.
        ENDLOOP.
      ENDIF.
    ENDFORM.

    Hi All,
    Below is my code... I only need to update the cost center belongs to the affected functional location... Please help... Thanks.
    data:  PATH TYPE STRING,
           FULLPATH TYPE STRING,
           USER_ACTION  TYPE I,
           PCFILEX  TYPE STRING,
           g_pathresult TYPE string,
           g_file TYPE string.
    DATA: gt_fltab TYPE filetable,
          g_rcode  TYPE i.
    data:   DATALINE TYPE STRING.
           INFILE TYPE STANDARD TABLE OF STRING.
    data: begin of infile occurs 0,
              c1(30) type C,
              C2(10) type C,
          end of infile.
    DATA: IT_BDCDATA TYPE STANDARD TABLE OF BDCDATA,
          WA_BDCDATA TYPE BDCDATA.
    data: begin of it_final occurs 0,
              tplnr like bdcdata-fval,        "Function Location, iflo-tplnr
              kostl like bdcdata-fval,        "Cost Center, itob-kostl
             tplnr(25) type C,
             kostl(10) type C,
          end of it_final.
    *****include bdcrecx1.
    Selection screen
    PARAMETERS: p_fnam   LIKE rlgrap-filename OBLIGATORY.
    *initialization.
    At SELECTION-SCREEN
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fnam.
      INCLUDE yzz_incldefaultdir.
      MOVE: g_filename TO g_pathresult.
    Get filename for upload
    CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
      EXPORTING
          DEFAULT_FILENAME        = g_pathresult
      CHANGING
          file_table              = gt_fltab
          rc                      = g_rcode
          USER_ACTION             = USER_ACTION
      EXCEPTIONS
        FILE_OPEN_DIALOG_FAILED = 1
        CNTL_ERROR              = 2
        ERROR_NO_GUI            = 3
        NOT_SUPPORTED_BY_GUI    = 4
        others                  = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                   WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        READ TABLE gt_fltab INDEX 1 INTO p_fnam.
      ENDIF.
    IF USER_ACTION EQ 0.
    g_file = p_fnam.
    CALL METHOD cl_gui_frontend_services=>gui_upload
       EXPORTING
         filename                = fullpath
         filetype                = 'ASC'
         has_field_separator     = 'X'
       CHANGING
         data_tab                = it_final[]
       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
         not_supported_by_gui    = 17
         error_no_gui            = 18
         OTHERS                  = 19.
       IF SY-SUBRC <> 0.
         MESSAGE ID 'ZU' TYPE 'E' NUMBER '007' WITH p_fnam.
       ELSE.
         READ TABLE gt_fltab INDEX 1 INTO p_fnam.
       ENDIF.
    ENDIF.
    start-of-selection.
      perform f_upload.
    *perform open_group.
    *perform bdc_dynpro      using 'SAPMILO0' '1110'.
    *perform bdc_field       using 'BDC_CURSOR'
                                 'IFLO-TPLNR'.
    *perform bdc_field       using 'BDC_OKCODE'
                                 '/00'.
    *perform bdc_field       using 'IFLO-TPLNR'
                                 'AK31-AP1-010-B700  -B700'.
    *perform bdc_field       using 'RILO0-TPLKZ'
                                 'PMST1'.
    *perform bdc_dynpro      using 'SAPMILO0' '2100'.
    *perform bdc_field       using 'BDC_CURSOR'
                                 'IFLO-PLTXT'.
    *perform bdc_field       using 'BDC_OKCODE'
                                 '=T\03'.
    *perform bdc_field       using 'IFLO-PLTXT'
                                 'ABS WASTE WATER STORAGE TANK'.
    *perform bdc_dynpro      using 'SAPMILO0' '2100'.
    *perform bdc_field       using 'BDC_OKCODE'
                                 '=BU'.
    *perform bdc_field       using 'IFLO-PLTXT'
                                 'ABS WASTE WATER STORAGE TANK'.
    *perform bdc_field       using 'BDC_CURSOR'
                                 'ITOB-KOSTL'.
    *perform bdc_field       using 'ITOB-BUKRS'
                                 'KP01'.
    *perform bdc_field       using 'ITOB-KOSTL'
                                 'C68312'.
    *perform bdc_field       using 'ITOB-IWERK'
                                 'KP13'.
    *perform bdc_field       using 'ITOB-INGRP'
                                 'MP1'.
    *perform bdc_field       using 'ITOBATTR-GEWRK'
                                 'MECH #1'.
    *perform bdc_field       using 'ITOBATTR-WERGW'
                                 'KP13'.
    *perform bdc_field       using 'ITOB-RBNR'
                                 'M'.
    *perform bdc_transaction using 'IL02'.
    *perform close_group.
    *&      Form  begin
          text
         -->P_0191   text
         -->P_0192   text
         -->P_0193   text
    FORM begin  USING    PROG TYPE BDCDATA-PROGRAM     
                     DYNPRO TYPE BDCDATA-DYNPRO
                     DYNBEGIN TYPE BDCDATA-DYNBEGIN.
    CLEAR WA_BDCDATA.
    WA_BDCDATA-PROGRAM = PROG.
    WA_BDCDATA-DYNPRO = DYNPRO.
    WA_BDCDATA-DYNBEGIN = DYNBEGIN.
      CLEAR wa_BDCDATA.
      wa_BDCDATA-PROGRAM  = PROG.
      wa_BDCDATA-DYNPRO   = DYNPRO.
      wa_BDCDATA-DYNBEGIN = 'X'.
      APPEND WA_BDCDATA TO IT_final.
    APPEND WA_BDCDATA.
    ENDFORM.                    " begin
    *&      Form  info_tc
          text
         -->P_0197   text
         -->P_IT_FINAL_TPLNR  text
    FORM info_tc  USING    FNAM TYPE any
                       FVAL TYPE any.
      CLEAR WA_BDCDATA.
      WA_BDCDATA-FNAM = FNAM.
      WA_BDCDATA-FVAL = FVAL.
      APPEND WA_BDCDATA TO IT_final.
    ENDFORM.                    " info_tc
    *&      Form  f_upload
          text
    -->  p1        text
    <--  p2        text
    FORM f_upload .
      clear: g_file.
      g_file = p_fnam.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename            = g_file
          filetype            = 'ASC'
          has_field_separator = '|'
        TABLES
          data_tab            = infile
        EXCEPTIONS
          file_open_error     = 1
          file_read_error     = 2
          no_batch            = 3
          disk_full           = 4
          OTHERS              = 5.
        IF SY-SUBRC <> 0.
          MESSAGE ID 'ZU' TYPE 'E' NUMBER '007' WITH p_fnam.
        ENDIF.
        perform f_call_trans.
    ENDFORM.                    " f_upload
    *&      Form  f_call_trans
          text
    -->  p1        text
    <--  p2        text
    FORM f_call_trans .
    types:  begin of t_Data,
              C1 TYPE BDCDATA-FVAL,      "Material#
              C2 TYPE BDCDATA-FVAL,      "Industry Sect.
            end of t_data.
    DATA: C1 TYPE BDCDATA-FVAL,
          C2 TYPE BDCDATA-FVAL.
    data: IT_DATA TYPE STANDARD TABLE OF t_Data,
          WA_DATA like line of infile.
        LOOP AT infile INTO WA_DATA.
          CLEAR it_bdcdata. REFRESH it_bdcdata.
              PERFORM begin USING 'SAPMILO0' '1110' 'X'.
              perform info       using 'BDC_CURSOR' 'IFLO-TPLNR'.
              perform info       using 'BDC_OKCODE' '/00'.
              PERFORM info       USING 'IFLO-TPLNR' WA_DATA-C1.
              perform info       using 'BDC_OKCODE' '/00'.    "=BU
              PERFORM begin USING 'SAPMILO0' '2100' 'X'.
              perform info       using 'BDC_OKCODE' '/00'.    "=BU
             perform info using 'BDC_CURSOR' 'ITOB-KOSTL'.
              PERFORM info USING 'ITOB-KOSTL' WA_DATA-C2.
              perform info using 'BDC_OKCODE' '=YES'.
            CALL TRANSACTION 'IL02' USING it_FINAL MODE 'A' UPDATE 'L'.
        ENDLOOP.
    ENDFORM.                    " f_call_trans
    *&      Form  info
          text
         -->P_0397   text
         -->P_0398   text
    FORM info  USING  fnam type any
                      fval type any.
    *FNAM TYPE BDCDATA-FNAM
                      FVAL TYPE BDCDATA-FVAL.
                      VALUE(LINNO) TYPE I.
    CLEAR WA_BDCDATA.
    WA_BDCDATA-FNAM = FNAM.
    WA_BDCDATA-FVAL = FVAL.
        CLEAR wa_BDCDATA.
        wa_bDCDATA-FNAM = FNAM.
        wa_BDCDATA-FVAL = FVAL.
      APPEND WA_BDCDATA TO IT_final.
    APPEND WA_BDCDATA.
    ENDFORM.                    " info

  • How do I get the codec for .mov files recorded on an ipad, so I can edit them in premiere El. 12?

    I have .mov files recorded from an ipad with these specs:
    AAC, Mono, 44.100 KHZ
    H.264 320x568 (yes the ipad was used vertically, not horizontally)
    29.96 fps
    I want to edit them in premiere 12, but get this error message:
    This type of file is not supported or the required codec is not installed.
    What are my options? Thanks!

    linn749
    Thanks for the reply.
    As for orientation, there is a rotation feature in Premiere Elements 12....at the Timeline level, you can right click the clip and select Rotate 90 Left or Rotate  90 Right. So that may help.
    This is what you may want to try and see what this looks like
    1. Open Premiere Elements 12 to its Expert workspace
    2. Go to File Menu/New/Project and Change Settings
    3. In the Change Settings dialog, change the project preset to NTSC DV Widescreen.
    4. Before you exit that area, in the last dialog that you see (new project dialog), make sure you have a check mark next to "Force Selected Project Setting on this Project".
    5. Back in the Expert workspace, use Add Media/Files and Folders/ to bring your video into Project Assets from where you will drag it to Video Track 1. We can talk about edits if necessary.
    6. Publish+Share/Disc/DVD disc with preset set for NTSC_Widescreen_Dolby DVD.
    7. Place your DVD 4.7 GB/120 min disc in the burner, in the burn dialog, have a check mark next to "Fit Content to Available Space". Hit Burn.
    If you decide to take the Timeline to YouTube instead,
    Publish+Share/Social Websites/YouTube, using Presets = Flash Video for YouTube (Widescreen)
    Hit Next and follow the instructions.
    (Upload to YouTube from within Premiere Elements 12 has limits of 2 GB and 15 minutes. Anything exceeding that, you need to export to file saved to the computer hard drive and then upload that file to YouTube at the YouTube web site where you might be able to get extended limits.
    Please let us know if you are OK with the above information.
    Thanks.
    ATR
    Add On...If you want to "decorate" the black borders in the Timeline content, drag the video to Video Track 2 and put a colored background on Video Track 1 directly below the Video Track 2 content.

  • Problem in BDC Recording

    Hi I am having a problem in BDC Recording. My requirement is that when I input data in transaction fb02 to block the invoices, It shows a list of invoices. Now i need to double click that item(line) in which PK = 06 at runtime during bdc recording. During BDC recording it takes the line number on which we have clicked which is constant but i want it dynamic that if item 1 is having PK=6, that line should be double clicked and if item 3 is having PK=6, the third item should be double clicked to open another screen. Kindly help me... Thanks in advance.

    Hi Ravi,
    While writing your code that is in your code you know which line number is having the PK = 06, then you can use the same line number and add the code for double click after that.
    Regards,
    Atish

  • Material Master BDC recording

    hi gurus,
    i am trying to do a material master creation using BDC recording,
    i am new i dont know how to modify the code,
    the following is the code, please let me know how to make changes.
    report ZTEST95
           no standard page heading line-size 255.
    include bdcrecx1.
    parameters: dataset(132) lower case default
                                  'C:\Documents and Settings\Deskt'
                                & 'op\test95.txt'.
       DO NOT CHANGE - the generated data section - DO NOT CHANGE    ***
      If it is nessesary to change the data section use the rules:
      1.) Each definition of a field exists of two lines
      2.) The first line shows exactly the comment
          '* data element: ' followed with the data element
          which describes the field.
          If you don't have a data element use the
          comment without a data element name
      3.) The second line shows the fieldname of the
          structure, the fieldname must consist of
          a fieldname and optional the character '_' and
          three numbers and the field length in brackets
      4.) Each field must be type C.
    Generated data section with specific formatting - DO NOT CHANGE  ***
    data: begin of record,
    data element: MATNR
            MATNR_001(040),
    data element: MBRSH
            MBRSH_002(001),
    data element: MTART
            MTART_003(004),
    data element: REF_MATNR
            MATNR_004(040),
    data element: XFELD
            KZSEL_01_005(001),
    data element: MAKTX
            MAKTX_006(040),
    data element: MEINS
            MEINS_007(003),
    data element: MATKL
            MATKL_008(009),
    data element: SPART
            SPART_009(002),
    data element: MTPOS_MARA
            MTPOS_MARA_010(004),
    data element: BRGEW
            BRGEW_011(017),
    data element: GEWEI
            GEWEI_012(003),
    data element: NTGEW
            NTGEW_013(017),
          end of record.
    End generated data section ***
    start-of-selection.
    perform open_dataset using dataset.
    perform open_group.
    do.
    read dataset dataset into record.
    if sy-subrc <> 0. exit. endif.
    perform bdc_dynpro      using 'SAPLMGMM' '0060'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RMMG1-MATNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_field       using 'RMMG1-MATNR'
                                  record-MATNR_001.
    perform bdc_field       using 'RMMG1-MBRSH'
                                  record-MBRSH_002.
    perform bdc_field       using 'RMMG1-MTART'
                                  record-MTART_003.
    perform bdc_field       using 'RMMG1_REF-MATNR'
                                  record-MATNR_004.
    perform bdc_dynpro      using 'SAPLMGMM' '0070'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MSICHTAUSW-DYTXT(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_field       using 'MSICHTAUSW-KZSEL(01)'
                                  record-KZSEL_01_005.
    perform bdc_dynpro      using 'SAPLMGMM' '4004'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'MAKT-MAKTX'
                                  record-MAKTX_006.
    perform bdc_field       using 'MARA-MEINS'
                                  record-MEINS_007.
    perform bdc_field       using 'MARA-MATKL'
                                  record-MATKL_008.
    perform bdc_field       using 'MARA-SPART'
                                  record-SPART_009.
    perform bdc_field       using 'MARA-MTPOS_MARA'
                                  record-MTPOS_MARA_010.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MARA-BRGEW'.
    perform bdc_field       using 'MARA-BRGEW'
                                  record-BRGEW_011.
    perform bdc_field       using 'MARA-GEWEI'
                                  record-GEWEI_012.
    perform bdc_field       using 'MARA-NTGEW'
                                  record-NTGEW_013.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    perform bdc_transaction using 'MM01'.
    enddo.
    perform close_group.
    perform close_dataset using dataset.
    thanks.

    Hi,
    It is better if the Material Master creation step is done by LSMW - Direct Input method with the following object:
    Object               0020   Material master
    Method               0000                 
    Program name         RMDATIND             
    Program type         D   Direct input
    Check the program documentation for more details.
    For a sample data file generation ( Sequential file ),  check the program RMDATGEN
    If the reqmt., is for a repetetive loading of Material Master you could schedule / execute the LSMW by following program: /SAPDMC/SAP_LSMW_INTERFACE.
    Hope this helps.
    Best Regards, Murugesh

  • Need help for bdc recording TC fp05

    Hi,
    My requirement is: I want to create a Payment lot using fp05 and then post   
                                it through a program.
    First i want to know is there any BAPI available to do that.
    I couldnt find any BAPI. That is why i did BDC Recording. The recording is working till Payment Lot creation. But after creation when i try to post the lot, it is giving status as "Direct Posting Stopped". Again if i come out of the program and then manually post it, it is working fine. But through program if i try to post it, it is giving status as "Direct Posting Stopped".
    Is this because we cannot Post a Payment Lot programatically or some Authorisation issue is there.
    Can anyone respond immediately
    Regards,
    Sheron

    Hi Raj,
    May be this can be useful.
    BAPI_INSPOPER_RECORDRESULTS
    You can search other in se37 BAPIINSP.
    Regards,
    Amit Mittal.

  • What is the tcode for bdc recording and how to do in hr-abap for pa and om

    hi,
         I need to do the bdc recording for pa and om. So, can any of you tell me how to do and what are the tcodes we have to use.
    thanks & regards,
        Sekhar.

    Hi ,
    Here is the link from you will get all the transaction code
    http://www.sap-basis-abap.com/saphr004.htm
    As far PA specfic some tcodes are given below
    PA20  Display HR Master Data
    PA30  Maintain HR Master Data
    PA40  Personnel Actions
    PA41  Correct Actions
    PA42  Fast Entry for Actions
    PA46  Import from Resumix
    PA47  Export to Resumix
    PA48  Hiring from non-SAP system
    PA51  Display Time Data
    PA53  Display Time Data
    PA61  Maintain Time Data
    PA62  List Entry of Additional Data
    PA63  Maintain Time Data
    PA64  Calendar Entry
    PA70  Fast Entry
    PA71  Fast Entry of Time Data
    PA88  Benefits
    For OM specific
    PP01  Maintain Plan Data (menu-guided)

Maybe you are looking for

  • Invoking a web service from a java code

    Hello I created a simple Web service using JDevlper. It contains two methods 1) getInf int () { return inf;} 2) void setInf (int a) { inf = a;} I have deployed it on Oracle Application server. By inserting the address in a browser, I tried both metho

  • The backup disk image "/Volumes/FW1000HD/MacBkPro.sparsebundle" could not be created (error 1).

    I added an 1TB external usb hard disk to my time capsule as the existing 1TB hard disk is nearly full (less than 12 GB left on time capslule hard disk).  Initially, I connected external hard disk to my MacBookPro (late 2009 Intel machine) and erased

  • Save as PDF yields no text display in Apple's Preview

    I'm trying to output a pdf file for a client. When I do a "Save As" and select Photoshop PDF, the resulting document shows no text in the Preview application. It does show up in Acrobat however. Similarly, when adding the pdf to an email, the text do

  • How to add ICC profiles to Photoshop Elements 10

    My ICC profiles are showing up in my LR 4, however, they will not show up in PSE 10.   What do I need to do to add the profiles into PSE 10?

  • Bus routing information?

    how can I get my bus sends to be stereo while being pre-fader. I need to use these for my cue mixes but can't make them stereo. help?