BDC TRansaction

hi folks,
I am having two issues related to the BDC transaction, I have recorded the below transaction using the BDC transaction recorder
'X' 'SAPMP50A'   '1000',
' ' 'BDC_OKCODE' '=INS',
' ' 'RP50G-PERNR' REC-PERNR,
' ' 'BDC_CURSOR' 'T582S-ITEXT(01)',
' ' 'RP50G-SELEC(01)' 'X',
' ' 'RP50G-TIMR6' 'X',
'X' 'MP000000' '2000',
' ' 'BDC_CURSOR' 'P0000-MASSG',
' ' 'BDC_OKCODE' '/00',
' ' 'P0000-BEGDA' format_termin,
' ' 'P0000-MASSN' 'TM',
' ' 'P0000-MASSG'  zmassg,
'X' 'MP000000' '2000',
' ' 'BDC_CURSOR' 'P0000-BEGDA',
' ' 'BDC_OKCODE' '/00',
' ' 'P0000-BEGDA' format_termin,
' ' 'P0000-MASSN' 'TM',
' ' 'P0000-MASSG'  zmassg,
'X' 'MP000000' '2000',
' ' 'BDC_CURSOR' 'P0000-BEGDA',
' ' 'BDC_OKCODE' 'UPD',
' ' 'P0000-BEGDA' format_termin,
' ' 'P0000-MASSN' 'TM',
' ' 'P0000-MASSG' zmassg,
'X' 'MP000100' '2010',
' ' 'BDC_CURSOR' 'P0001-SACHZ',
' ' 'BDC_OKCODE' 'UPD',
' ' 'P0001-BEGDA' format_termin,
' ' 'P0001-ENDDA' '12/31/9999',
*' ' 'P0001-BTRTL' 'SNXP',
*' ' 'P0001-ABKRS' 'GA',
*' ' 'P0001-ANSVH' '04',
*' ' 'P0001-SACHP' 'H13',
*' ' 'P0001-PLANS' '99999999',
' ' 'P0001-SACHZ' 'P99',
*' ' 'P0001-SACHA' '026',
'X' 'MP003500' '2000',
' ' 'BDC_CURSOR' 'P0035-DAT35',
' ' 'BDC_OKCODE' '/00',
' ' 'P0035-BEGDA' format_termin,
' ' 'P0035-ENDDA' '12/31/9999',
' ' 'P0035-BLEHR' ZBLEHR,
' ' 'P0035-DAT35' format_termin,
'X' 'MP003500' '2000',
' ' 'BDC_CURSOR' 'P0035-BEGDA',
' ' 'BDC_OKCODE' '=UPD',
' ' 'P0035-BEGDA' format_termin,
' ' 'P0035-ENDDA' '12/31/9999',
' ' 'P0035-BLEHR' ZBLEHR,
' ' 'P0035-DAT35' format_termin,
'X' 'MP005000' '3000',
' ' 'BDC_CURSOR' 'P0050-BEGDA(01)',
' ' 'BDC_OKCODE' '=DLIM',
' ' 'RP50M-BEGDA' format_termin,
' ' 'RP50M-ENDDA' '12/31/9999',
' ' 'RP50M-ABGRD' format_termin,
' ' 'RP50M-PAGEA' '  1',
' ' 'RP50M-SELE2(01)' 'X',
' ' 'BDC_OKCODE' '/11',
' ' 'BDC_OKCODE' '/11'.
The process flow:
Menu Path: Human Resources > Personnel Management -> HR Master Data -> Maintain -> Enter
Personnel Number -> Select Actions (0000) Infotype -> Create ->  Enter the defined date -> Select Action – Termination -> Insert Termination Reason -> Click SAVE ->  Insert P99 in Time Administrator field -> click SAVE _->Populate 12/31/9999 in End Date on IT 0035 -> Populate "ELIG" -> Populate Termination Date in DAT 35 -> click SAVE -> Delimit IT 0050. 
I have two questions.
Firslty, when I SAVE the data entered for each infotype that action is not getting recorded in the transaction recorder which means that transaction is stopping right after the Actions (0000) infotype as a result the subsequent infotypes are not getting populated even though I recorded the entire process in the transaction recorder.
Secondly, delimit the Time recording info IT0050 I click the delimit button again this action is not recorded in the transaction recorder.
Bottom line: the action related to the buttons(SAVE or DELIMIT) is not getting recorded.
How can I solve this?
Any leads would be helpful
Thanks in advance.\
Vinu.

hi folks,
In the thread you have mentioned to add the (termination date)date record to '0050-enda' I did that and I commented the begda portion of it.
As I was examining how the data is getting populated on the screen (for DElimit 0050) by default the termination date is taken into the 'begda' field
That means the screen is getting populated as
03/31/2006 to 03/31/2006 and the second thing is it is throwing an error ' choose the valid function' which means the delimit action is not getting recorded.
How can I solve this problem?
'X' 'MP005000' '3000',
' ' 'BDC_CURSOR' 'P0050-BEGDA(01)',
' ' 'BDC_OKCODE' '=DLIM',
*' ' 'RP50M-BEGDA' format_termin,
' ' 'RP50M-ENDDA' format_termin,
' ' 'RP50M-ABGRD' format_termin,
' ' 'RP50M-PAGEA' '  1',
' ' 'RP50M-SELE2(01)' 'X',
' ' 'BDC_OKCODE' '/11',
' ' 'BDC_OKCODE' '/11'.
ANY LEADS WILL BE HELPFUL.
THANKS.
VINU

Similar Messages

  • BDC transaction "The function is not possible"

    Dear Experts,
    I have made a BDC transaction program according to recording from SHDB in order to have batch transaction for FB50.
    However, when I run the program. It shows an error "The function is not possible". But when I press the "Save" button manually, the function passed and result is saved. Just do not know what happens.
    report YFB50 no standard page heading line-size 255.
    include bdcrecx1.
    type-pools : TRUXS.
    data : rawdata type TRUXS_T_TEXT_DATA.
    parameters: sfile TYPE localfile default 'C:\fb50.txt'.
    parameters: plant like BKPF-BUKRS default '1000'.
    data: pfile type string.
    data: post_date(8) type c.
    data: record_count(2) type c.
    data: v_HKONT(19) type c.
    data: v_SHKZG(19) type c.
    data: v_WRBTR(19) type c.
    data: v_SGTXT(19) type c.
    data: v_KOSTL(19) type c.
    ***    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 occurs 0,
    * data element: HKONT
            HKONT(010),
    * data element: SHKZG
            SHKZG(007),
    * data element: WRBTR
            WRBTR(017),
    * data element: SGTXT
            SGTXT(050),
    * data element: KOSTL
            KOSTL(010),
          end of record.
    *** End generated data section ***
    start-of-selection.
    pfile = sfile.
    concatenate sy-datum+6(2) sy-datum+4(2) sy-datum+0(4) into post_date.
    CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
         FILENAME                = pfile
    TABLES
         DATA_TAB                = rawdata
    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.
         WRITE:/ 'SY-SUBRC:', SY-SUBRC.
    ENDIF.
    CALL FUNCTION 'TEXT_CONVERT_CSV_TO_SAP'
    EXPORTING
         I_FIELD_SEPERATOR = ';'
         I_TAB_RAW_DATA = rawdata
    TABLES
         I_TAB_CONVERTED_DATA = record
    EXCEPTIONS
         CONVERSION_FAILED = 1
         OTHERS = 2.
    perform bdc_dynpro      using 'SAPMF05A' '1001'.
    *Input header information
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    *Document Date
    perform bdc_field       using 'ACGL_HEAD-BLDAT'
                                  post_date.
    *Posting Date
    perform bdc_field       using 'ACGL_HEAD-BUDAT'
                                  post_date.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/ECCDE'.
    perform bdc_dynpro      using 'SAPLACHD' '1000'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    *Company Code
    perform bdc_field       using 'BKPF-BUKRS'
                                  plant.
    perform bdc_dynpro      using 'SAPMF05A' '1001'.
    *Input header information
    perform bdc_field       using 'BDC_OKCODE'
                                  '/BU'.
    *Document Date
    perform bdc_field       using 'ACGL_HEAD-BLDAT'
                                  post_date.
    *Posting Date
    perform bdc_field       using 'ACGL_HEAD-BUDAT'
                                  post_date.
    *Input item text
    loop at record.
    *write sy-tabix to record_count.
    *concatenate 'ACGL_ITEM-HKONT(' record_count ')' into v_HKONT.
    *concatenate 'ACGL_ITEM-SHKZG(' record_count ')' into v_SHKZG.
    *concatenate 'ACGL_ITEM-WRBTR(' record_count ')' into v_WRBTR.
    *concatenate 'ACGL_ITEM-SGTXT(' record_count ')' into v_SGTXT.
    *concatenate 'ACGL_ITEM-KOSTL(' record_count ')' into v_KOSTL.
    perform bdc_field       using v_HKONT
                                  record-HKONT.
    perform bdc_field       using v_SHKZG
                                  record-SHKZG.
    perform bdc_field       using v_WRBTR
                                  record-WRBTR.
    perform bdc_field       using v_SGTXT
                                  record-SGTXT.
    perform bdc_field       using v_KOSTL
                                  record-KOSTL.
    endloop.
    perform bdc_transaction using 'FB50'.
    Here is my input:
    206090203;H;41.74;abc;MISHK
    206090203;H;14.36;abc;FACHK
    206100100;S;41.74;def;MISHK
    206070100;S;14.36;def;FACHK
    Regards,
    Cato

    Make your LOOP.... ENDLOOP... Like this
    LOOP AT RECORD.
    perform bdc_dynpro      using 'SAPMF05A' '1001'.
    *Input header information
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    *Document Date
    perform bdc_field       using 'ACGL_HEAD-BLDAT'
                                  post_date.
    *Posting Date
    perform bdc_field       using 'ACGL_HEAD-BUDAT'
                                  post_date.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/ECCDE'.
    perform bdc_dynpro      using 'SAPLACHD' '1000'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    *Company Code
    perform bdc_field       using 'BKPF-BUKRS'
                                  plant.
    perform bdc_dynpro      using 'SAPMF05A' '1001'.
    *Input header information
    perform bdc_field       using 'BDC_OKCODE'
                                  '/BU'.
    *Document Date
    perform bdc_field       using 'ACGL_HEAD-BLDAT'
                                  post_date.
    *Posting Date
    perform bdc_field       using 'ACGL_HEAD-BUDAT'
                                  post_date.
    *Input item text
    **loop at record.
    *write sy-tabix to record_count.
    *concatenate 'ACGL_ITEM-HKONT(' record_count ')' into v_HKONT.
    *concatenate 'ACGL_ITEM-SHKZG(' record_count ')' into v_SHKZG.
    *concatenate 'ACGL_ITEM-WRBTR(' record_count ')' into v_WRBTR.
    *concatenate 'ACGL_ITEM-SGTXT(' record_count ')' into v_SGTXT.
    *concatenate 'ACGL_ITEM-KOSTL(' record_count ')' into v_KOSTL.
    perform bdc_field       using v_HKONT
                                  record-HKONT.
    perform bdc_field       using v_SHKZG
                                  record-SHKZG.
    perform bdc_field       using v_WRBTR
                                  record-WRBTR.
    perform bdc_field       using v_SGTXT
                                  record-SGTXT.
    perform bdc_field       using v_KOSTL
                                  record-KOSTL.
    **endloop.
    perform bdc_transaction using 'FB50'.
    ENDLOOP.
    Now should work fine..

  • ABAP - BDC transaction not saving changes to records

    I am trying to write my first ABAP code using BDC recording.  Essentially I would like to flag the "Final Delivery" field (EKPO-EGLKZ) for a range of documents by recording transaction MASS.
    The code runs without errors - but the changes are not saved.  I have run the code in "Processing Mode: A" (Display all screens) and the program successfully loops through each record & saves the updated fields.  When I look at the documents in ME23N the changes have not been saved.   Running the MASS transaction manually results in the changes being successfully saved so I can rule out any data validation issues.
    Does anyone know why the changes refuse to save when running the code below?
    I have considered trying to use BAPI_PO_CHANGE instead of BDC, but I am new to ABAP and I thought the BDC code would be less complex.
    report Z_MASS_REMOVE_FDI_DCI
           no standard page heading line-size 255.
    include bdcrecx1.
    TYPES: BEGIN OF ty_tab,
    MASSOBJTYP(7),
    MASSVARNAM(7),
    DOCNO(9),
    ITEM(1),
    END OF ty_tab.
    DATA : it_tab TYPE STANDARD TABLE OF ty_tab.
    DATA : wa_tab TYPE ty_tab.
    START-OF-SELECTION.
    CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
    filename = 'X:\STO.TXT'
    * FILETYPE = 'ASC
    has_field_separator = 'X'
    TABLES
    data_tab = it_tab
    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.
    END-OF-SELECTION.
    LOOP AT it_tab INTO wa_tab.
    WRITE:/ wa_tab-MASSOBJTYP,
    wa_tab-MASSVARNAM,
    wa_tab-DOCNO,
    wa_tab-ITEM.
    PERFORM open_group.
    perform bdc_dynpro      using 'SAPMMSDL' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSSCREEN-OBJECT'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'MASSSCREEN-OBJECT'
                                  wa_tab-MASSOBJTYP.
    perform bdc_field       using 'MASSSCREEN-VARNAME'
                                  wa_tab-MASSVARNAM.
    perform bdc_dynpro      using 'SAPMMSDL' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSSCREEN-OBJECT'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=NEXT'.
    perform bdc_dynpro      using 'SAPLMASS_SEL_DIALOG' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSFREESEL-LOW(01)'.
    perform bdc_field       using 'MASSFREESEL-LOW(01)'
                                  wa_tab-DOCNO.
    perform bdc_dynpro      using 'SAPLMASS_SEL_DIALOG' '0100'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSFREESEL-LOW(02)'.
    perform bdc_field       using 'MASSFREESEL-LOW(02)'
                                  wa_tab-ITEM.
    perform bdc_dynpro      using 'SAPLMASS_SEL_DIALOG' '0100'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=CRET'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MASSFREESEL-LOW(01)'.
    perform bdc_dynpro      using 'SAPLMASSINTERFACE' '0200'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=FDAE'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'NR_ITEMS'.
    perform bdc_dynpro      using 'SAPLMASSINTERFACE' '0200'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=SAVE'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'NR_ITEMS'.
    perform bdc_dynpro      using 'SAPLMASSMSGLIST' '0300'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'REOML-MSGTXT(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=EXIT'.
    perform bdc_transaction using 'MASS'.
    ENDLOOP.
    PERFORM close_group.

    Where is BDC_INSERT.
    If u use OPEN and CLOSE_group u need to use INSERT_GROUP also to update in database.
    A session will be created and u nedd to run the Session in Sm35 in order to update the database.
    Edited by: Ranjith Kumar on Sep 18, 2008 6:41 AM

  • How to download BDC transaction data to excel sheet directly.

    Please don't have your subject in all CAPITALS.  Now edited
    Hello Experts,
                          i have been working on a BDC Tool,so the main job of this tool is
      Generate BDCDATA from  Excel Tool and pass as an input to a program to perform BDC (Session/Call Transaction).
    so i want to the download data from BDC recording directly to excel sheet but i am unable to download it.
    hope u all are clear with my question
    with thanx and regards
    harish
    Edited by: Matt on Apr 24, 2009 10:44 AM

    Hiii,
    Plz refer the below code.
        CALL TRANSACTION 'MEK1' USING it_bdcdata OPTIONS FROM x_ctuprms
                                 MESSAGES INTO it_bdcmsg.
    ***collect the messages.
      LOOP AT it_bdcmsg INTO wa_bdcmsg.
        CALL FUNCTION 'FORMAT_MESSAGE'
          EXPORTING
            id        = wa_bdcmsg-msgid
            lang      = sy-langu
            no        = wa_bdcmsg-msgnr
            v1        = wa_bdcmsg-msgv1
            v2        = wa_bdcmsg-msgv2
            v3        = wa_bdcmsg-msgv3
            v4        = wa_bdcmsg-msgv4
          IMPORTING
            msg       = message
          EXCEPTIONS
            not_found = 1
            OTHERS    = 2.
    **collect the messages into an internal table.
    endloop.
    then use "gui_download" to download data.
    Regards,
    Anil N.

  • Bdc transaction problem

    hi,
    i am create a programm for f-27 type DG by bdc session method
    when i execute it on 3rd screen of execution it ask for the values for PAYMENT TERMS but in manual entry OF F-27 it does not TAKE ANY PAYMENT TERMS. plz check my code and tell me where is the problem in coding.
    CODES:
    REPORT zcrdtdgupld
           NO STANDARD PAGE HEADING LINE-SIZE 255.
    *INCLUDE zdata_declarations.
              I N T E R N A L  T A B L E                           *
    DATA: BEGIN OF wa_data,
           bldat     TYPE  BDC_FVAL, "Document Date10
           blart     TYPE  BDC_FVAL, "Document Type
           bukrs     TYPE  BDC_FVAL, "Company Code
           budat     TYPE  BDC_FVAL, "Posting Date10
           monat     TYPE  BDC_FVAL, "Period
           waers     TYPE  BDC_FVAL, "Currency
           xblnr     TYPE  BDC_FVAL, "Reference Field
           docid     TYPE  BDC_FVAL, "Document ID
           newbs     TYPE  BDC_FVAL, "Posting  Key
           newko     TYPE  BDC_FVAL, "Account Code
           wrbtr     TYPE  BDC_FVAL, "Amount in Documentcurrency
           zfbdt     TYPE  BDC_FVAL, "Baseline Date10
           newbs2    TYPE  BDC_FVAL, "Account Key2
           newko2    TYPE  BDC_FVAL, "Account code2
           wrbtr2    TYPE  BDC_FVAL, "bseg-wrbtr,"Amount2
           kostl     TYPE  BDC_FVAL, " cost center
           prctr     TYPE  BDC_FVAL, " profit center
           END OF wa_data.
                          D A T A                                     *
    DATA: it_data    LIKE TABLE OF wa_data.
    DATA: it_bdcdata TYPE TABLE OF bdcdata.
    DATA: wa_bdcdata LIKE LINE OF it_bdcdata.
    DATA: v_file     TYPE string.
                 S E L E C T I O N  S C R E E N                       *
    SELECTION-SCREEN BEGIN OF BLOCK b.
    PARAMETERS : pa_file LIKE fc03tab-pl00_file OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK b.
                    AT SELECTION-SCREEN                               *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR pa_file.
      PERFORM get_file USING pa_file.
               S T A R T  O F  S E L E C T I O N                      *
    START-OF-SELECTION.
      v_file = pa_file.
    *uploading flat file into internal table
      PERFORM upload_file USING v_file CHANGING it_data.
    *open the session
      PERFORM open_session.
    *POPULATING THE BDCDATA
      LOOP AT it_data INTO wa_data.
        REFRESH it_bdcdata.
        PERFORM bdc_dynpro      USING 'SAPMF05A' '0100' 'X'.
        PERFORM bdc_field       USING 'BDC_CURSOR' 'RF05A-NEWKO'.
        PERFORM bdc_field       USING 'BDC_OKCODE' '/00'.
        PERFORM bdc_field       USING 'BKPF-BLDAT'  wa_data-bldat.
        PERFORM bdc_field       USING 'BKPF-BLART'  wa_data-blart.
        PERFORM bdc_field       USING 'BKPF-BUKRS'  wa_data-bukrs.
        PERFORM bdc_field       USING 'BKPF-BUDAT'  wa_data-budat.
        PERFORM bdc_field       USING 'BKPF-MONAT'  wa_data-monat.
        PERFORM bdc_field       USING 'BKPF-WAERS'  wa_data-waers.
        PERFORM bdc_field       USING 'BKPF-XBLNR'  wa_data-xblnr.
        PERFORM bdc_field       USING 'FS006-DOCID' wa_data-docid.
        PERFORM bdc_field       USING 'RF05A-NEWBS' wa_data-newbs.
        PERFORM bdc_field       USING 'RF05A-NEWKO' wa_data-newko.
        PERFORM bdc_dynpro      USING 'SAPMF05A' '0301' 'X'.
        PERFORM bdc_field       USING 'BDC_CURSOR' 'BSEG-WRBTR'.
        PERFORM bdc_field       USING 'BDC_OKCODE' '/00'.
        PERFORM bdc_field       USING 'BSEG-WRBTR'  wa_data-wrbtr.
        PERFORM bdc_field       USING 'BSEG-ZFBDT'  wa_data-zfbdt.
        PERFORM bdc_field       USING 'RF05A-NEWBS' wa_data-newbs2.
        PERFORM bdc_field       USING 'RF05A-NEWKO' wa_data-newko2.
        PERFORM bdc_dynpro      USING 'SAPMF05A' '0300' 'X'.
        PERFORM bdc_field       USING 'BDC_CURSOR' 'BSEG-WRBTR'.
        PERFORM bdc_field       USING 'BDC_OKCODE' '=BU'.
        PERFORM bdc_field       USING 'BSEG-WRBTR' wa_data-wrbtr2.
        PERFORM bdc_dynpro      USING 'SAPLKACB' '0002' 'X'.
        PERFORM bdc_field       USING 'BDC_CURSOR' 'COBL-PRCTR'.
        PERFORM bdc_field       USING 'BDC_OKCODE' '=ENTE'.
       PERFORM bdc_field       USING 'COBL-KOSTL' wa_data-kostl. "'101902'
        PERFORM bdc_field       USING 'COBL-PRCTR' wa_data-prctr.
        PERFORM bdc_insert USING 'F-27' it_bdcdata.
      ENDLOOP.
    *close the session
      PERFORM close_session.
    *&      Form  get_file
          text
         -->P_PA_FILE  text
    FORM get_file  USING    p_pa_file.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        EXPORTING
          program_name = syst-repid
          field_name   = 'PA_FILE'
        CHANGING
          file_name    = pa_file.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " get_file
    *&      Form  upload_file
          text
         -->P_V_FILE  text
         <--P_IT_DATA  text
    FORM upload_file  USING    p_v_file
                      CHANGING p_it_data LIKE it_data.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                      = p_v_file
       filetype                      = 'DAT'
        has_field_separator           = '#'
        TABLES
          data_tab                      = p_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.
    ENDFORM.                    " upload_file
    *&      Form  open_session
          text
    -->  p1        text
    <--  p2        text
    FORM open_session .
      CALL FUNCTION 'BDC_OPEN_GROUP'
       EXPORTING
         client                    = sy-mandt
      DEST                      = FILLER8
         group                     = 'JAYANT'
      HOLDDATE                  = FILLER8
         keep                      = 'X'
         user                      = sy-uname.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " open_session
    *&      Form  bdc_dynpro
          text
         -->P_0043   text
         -->P_0044   text
    FORM bdc_dynpro  USING  program TYPE BDC_PROG
                            dynpro  TYPE BDC_DYNR
                            dynbegin TYPE BDC_START.
      wa_bdcdata-program  = program.
      wa_bdcdata-dynpro   = dynpro.
      wa_bdcdata-dynbegin = dynbegin.
      APPEND wa_bdcdata TO it_bdcdata.
      CLEAR wa_bdcdata.
    ENDFORM.                    " bdc_dynpro
    *&      Form  bdc_field
          text
         -->P_0048   text
         -->P_0049   text
    FORM bdc_field  USING  fnam TYPE FNAM_____4
                           fval TYPE BDC_FVAL.
      wa_bdcdata-fnam = fnam.
      wa_bdcdata-fval = fval.
      APPEND wa_bdcdata TO it_bdcdata.
      CLEAR wa_bdcdata.
    ENDFORM.                    " bdc_field
    *&      Form  bdc_insert
          text
         -->P_0183   text
         -->P_IT_BDCDATA  text
    FORM bdc_insert  USING    p_tcode TYPE sytcode
                              p_it_bdcdata LIKE it_bdcdata.
      CALL FUNCTION 'BDC_INSERT'
        EXPORTING
          tcode     = p_tcode
        TABLES
          dynprotab = p_it_bdcdata.
    ENDFORM.                    " bdc_insert
    *&      Form  close_session
          text
    -->  p1        text
    <--  p2        text
    FORM close_session .
      CALL FUNCTION 'BDC_CLOSE_GROUP'.
    ENDFORM.                    "close_session
    plz help me in this programm
    thanks
    jayant.

    why not post this in the ABAP forum?
    You expect Basis people to help you on this one?

  • How to Change Sold to using BDC transaction after perform the order

    After creating an auto new sales order how will i change the sold to and ship to a new order before saving.
    Here sample code:
    perform load_orders.
        CALL TRANSACTION  'VA41' USING itab_bdc
         MODE p_mode UPDATE 'S'
         MESSAGES INTO bdcmsg
    thanks,
    Mary

    Hi,
    Why don't you try to make the Partner Function for Sold to Party as Modifible (Don't select Non Modifible) for the Sales Order Header in partner determination determintaion setting in customizing.
    You have to check with the partner determination procedure assigned to your sales order type and check accordingly.
    Reward points if it helps.
    Regards,
    Harsh

  • Hmmm..Date is updation probs in BDC transaction

    Hi all, very gud morning
    I have written a BDC program to a dialog UI screen,
    So in dialog screen there is a date field, which wud be entered and updated.
    So if v update the date, using screen its been updated into the database corectly.
    ex: if i enter 30.05.2007, its updated as the same.
    But if i have saved the data in a .txt file and if i update the database using BDC, its been updating as 30.05.2020 into the database instead of taking it as 30.05.2007
    So do u knw watz the problem n solution for this?
    Regards,
    Sourav

    Hi Sowrabh,
    You can facing this problem because SAP date field accepts only 8 characters
    and when you are giving the value of 10 chracters, it is truncating the last 2 characters.
    You can try the following code:
    Data: i_dat(10),
             o_dat type d.
    *You can replace i_dat with ur date fld
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          input  = i_dat
        IMPORTING
          output = o_dat.
    Use the variable o_dat in ur upload.
    Regards

  • How to pass BDC transaction with error ?

    hi,
    i want to build document with F-22 through BDC, but can't do that without handly intervene. 
    in my program, if i set the display as 'A', and press enter to pass some error message, finaly i can create a document. following is message:
    CALL_TRANSACTION F-22 returncode:     0  RECORD:          0
    FB01                SAPMF05A                                0301WEZ001                067
    FB01                SAPMF05A                                0301WEZ001                066
    FB01                SAPMF05A                                0300WEZ001                066
    FB01                SAPMF05A                                0300EEZ001                073
    I
    Correct the error reported before on the next screen
    FB01                SAPMF05A                                0300WEZ001                066
    FB01                SAPMF05A                                0300EEZ001                073
    I
    Correct the error reported before on the next screen
    FB01                SAPMF05A                                0330WEZ001                066
    FB01                SAPMF05A                                0301WEZ001                067
    FB01                SAPMF05A                                0301WEZ001                066
    FB01                SAPMF05A                                0301WEZ001                067
    FB01                SAPMF05A                                0301WEZ001                066
    FB01                SAPMF05A                                0301WEZ001                067
    FB01                SAPMF05A                                0301WEZ001                066
    S
    Document 100001678 was posted in company code 3100
    obviously, in this list there're 2 'I' type message, i think they prevent me from create document automatic.
    result , if i set the display mode as 'N' ,  the result is like this, and no document was created.
    CALL_TRANSACTION F-22 returncode: 1,001  RECORD:          0
    FB01                SAPMF05A                                0301WEZ001                067
    FB01                SAPMF05A                                0301WEZ001                066
    FB01                SAPMF05A                                0300WEZ001                066
    FB01                SAPMF05A                                0300EEZ001                073
    how can i solve this ?? any help will be really appreciable.
    thank you in advance!!

    hi,
        MESSAGE_TEXT_BUILD for building the message text based on the parameters in the BDCMSGCOL
      DATA :messtab    TYPE TABLE OF bdcmsgcoll.
      DATA: wa_messtab    TYPE bdcmsgcoll.
    DATA: wa_textout    TYPE t100-text.
    LOOP AT messtab INTO wa_messtab .
          CALL FUNCTION 'MESSAGE_TEXT_BUILD'
            EXPORTING
              msgid               = wa_messtab-msgid
              msgnr               = wa_messtab-msgnr
              msgv1               = wa_messtab-msgv1
              msgv2               = wa_messtab-msgv2
              msgv3               = wa_messtab-msgv3
              msgv4               = wa_messtab-msgv4
            IMPORTING
              message_text_output = wa_textout.
          MESSAGE  wa_textout TYPE wa_messtab-msgtyp.
        ENDLOOP.
    <b>*Reward points</b>
    Regards

  • How to uploade multiple flatfiles for single transaction using BDC?

    How to uploade multiple flatfiles for single transaction using BDC?

    Hi,
    You need to upload all data files into an internal table first either using OPEN DATASET (application server files) or GUI_UPLOAD (PC files).
    Then loop at the internal table and call BDC transaction to process the data.
    Regards,
    Ferry Lianto

  • Bdc for 3 transactions

    Hi gurus
    I am writing a bdc for 3 transaction , it runs fines if i execute them seperately , can u let me know who do i merge 3 transactions in one BDC . transactions used are FBRA, F.80 and F-04 .
    is their any specific way .... pls send the code if possible.....
    thanks in advance.
    its urgent

    Hi Shweta
    do u want to run all 3 transaction at a time or run separtely..
    If u want 3 at a time then
    define 3 internal table and 3 BDC struture.
    In FM BDC_INSERT use appropriate internal for correct transactio.
    Like...
    FM BDC_OPEN_GROUP..
    Call Function 'BDC_INSERT'
    Exporting
    tcode = 'FRBA'
    importing
    table = itab1.
    Call Function 'BDC_INSERT'
    Exporting
    tcode = 'F-04'
    importing
    table = itab2.
    Call Function 'BDC_INSERT'
    Exporting
    tcode = 'F.80'
    importing
    table = itab3.
    call FM "BDC_CLOSE_GROUP.
    Reward me if its useful
    Regards
    Ravi

  • Field not getting updated in BDC while running in background

    Hi Friends,
    I'm executing a BDC transaction to update the Alternate Tax Classification (VBAK_TAXK1) field in Sales Order. I'm passing value 1 to the field and then saving it directly. While running the BDC in background, the field is not getting updated. On the other hand i checked it running in foreground, the field got updated without any error message.
    Can anybody help me advicing why the field is not getting updated in background?
    Thanks,
    Bestin

    Hi ,
    Check the the log if you are using a session method and if call transaction then capture the messages for the same,
    Because in the foreground the BDC will update the records even if there is a warning message nut in background it will not update. So check the data which you are inserting and try avoid the warning messages also so that it can run smoothly in backfround.
    Thanks & Regards
    Jyo

  • How to delete record from table control in BDC?

    Hello friends,
    I am running a BDC program to delete records.
    I have file with following records and i got these records into t_itab.
    Material     Plant     Start date     End date     Cost
    MQ100001     S001     09/01/2008     09/31/2008     55.00
    MQ100004     S002     09/01/2008     09/31/2008     56.00
    MQ100008     S003     09/01/2008     09/31/2008     57.00
    Now, I have BDC transaction in which table control screen which contains following structure.
    MQ100001     S001     09/01/2008     09/31/2008     55.00
    MQ100002     S002     09/01/2008     09/31/2008     56.00
    MQ100004     S003     09/01/2008     09/31/2008     47.00     
    MQ100005     S004     09/01/2008     09/31/2008     25.00
    MQ100006     S012     09/01/2008     09/31/2008     76.00
    MQ100007     S033     09/01/2008     09/31/2008     17.00
    MQ100008     S011     09/01/2008     09/31/2008     95.00
    MQ100009     S002     09/01/2008     09/31/2008     46.00
    I have recorded from SHDB in which first record will be delete.
    So, when i loop through t_itab,instead of deleting MQ100001,MQ100004 and MQ100008 from BDC screen,
    it is deleting MQ100001,MQ100002 and MQ100004 (first record for each process ).
    Which i don't want to.
    Is there any facility in BDC to put records on top which i want to delete?
    Please guide me.
    Regards,
    RH

    Hi,
    While doing recording check for Filter button available for the table control, if it available then do the recording for the same.
    Once it is done while passing the data from internal table put the value into Filter field.
    Hope it resolves your issue.
    Thanks & Regards.
    Nagaraj Kalbavi

  • How to delete record from table control using BDC?

    Hello friends,
    I am running a BDC program to delete records.
    I have file with following records and i got these records into t_itab.
    Material     Plant     Start date     End date     Cost
    MQ100001     S001     09/01/2008     09/31/2008     55.00
    MQ100004     S002     09/01/2008     09/31/2008     56.00
    MQ100008     S003     09/01/2008     09/31/2008     57.00
    Now, I have BDC transaction in which table control screen which contains following structure.
    MQ100001     S001     09/01/2008     09/31/2008     55.00
    MQ100002     S002     09/01/2008     09/31/2008     56.00
    MQ100004     S003     09/01/2008     09/31/2008     47.00     
    MQ100005     S004     09/01/2008     09/31/2008     25.00
    MQ100006     S012     09/01/2008     09/31/2008     76.00
    MQ100007     S033     09/01/2008     09/31/2008     17.00
    MQ100008     S011     09/01/2008     09/31/2008     95.00
    MQ100009     S002     09/01/2008     09/31/2008     46.00
    I have recorded from SHDB in which first record will be delete.
    So, when i loop through t_itab,instead of deleting MQ100001,MQ100004 and MQ100008 from BDC screen,
    it is deleting MQ100001,MQ100002 and MQ100004 (first record for each process ).
    Which i don't want to.
    Is there any facility in BDC to put records on top which i want to delete?
    Please guide me.
    Regards,
    RH

    One option is to identify the table and find out the location as the number of row which should be deleted from the table and then in the bdc program instead of postioning the cursor on the row 1(using the statement perform bdc_cursor ....(01)), replace the 01 with the row number.
    Second option is that if a filter control is available for the table control, then filter the data each and every time with the material number to be deleted and then delete the first row.
    Regards
    Farzan

  • What are the importent transaction codes in edi

    what are the importent transaction codes in edi

    hi,
    =>sale - ALE Customizing
    =>bale - Distribution Administration (ALE)
    =>wedi - IDOC Type and EDI Basis
    =>shdb - BDC (Transaction Recorder)
    =>lsmw - LSMW
    =>bapi - BAPI
    =>spau - Display Modified DE Objects
    =>spdd - Display Modified DDIC Objects
    =>sara - central idoc archiving
    =>stms - Transport Management System
    =>wedi - IDOC Type and EDI Basis (IDOC Configuration)
    =>bd21 - Analyze change pointers - create IDOC from change pointer
    =>bd10 - Send Material Master
    =>bd12 - Send Customer Master
    =>bd14 - Send Vendor Master
    =>bd50 - Activate Change Pointer for Message Type
    =>bd55 - Conversion rule user exit (Link conversion rule user exit to the different system \ partner combinations)
    =>bd54 - Maintain Logical Systems
    =>bd71 - Distribute Customer Model
    =>bd87 - Process Inbound IDOCs
    =>bd88 - Process Outbound IDOCs
    =>bdm2 - Cross-system IDOC Reporting
    =>bdm7 - ALE Audit - statistical analyses
    =>bdm8 - ALE Audit - sending confirmations
    =>bd61 - Activate Change Pointer generally
    =>bmv0 - Direct Input Data Transfer Administration
    =>rz04 - Operation Mode
    =>rz12 - RFC Server Group Maintenance
    =>sar3 - Archiving object customizing
    =>s001 - SAPoffice Inbox
    =>s010 - Standards Texts (SAP Script)
    =>se01 - Transport Organizer (Extended View - Performing and managing the transport of development object across different systems)
    =>se09 - Transport (Workbench) Organizer (Controlling and keeping track of Development work and Development Objects)
    =>se78 - Administration of Form Graphics (Import Graphics into SAP System)
    =>se84 - ABAP Repository Information (search for SAP objects)
    =>su01 - User Maintenance (Security)
    =>su02 - Maintain Authorization Profiles
    =>su03 - Maintain Authorizations
    =>sm36 - Background Job Scheduling
    =>sm37 - Background Job Monitoring (display batch jobs)
    =>sm31 - Table Maintenance
    =>sm30 - Calling View Maintenance
    =>sm35 - Batch Input Monitoring (Error Logs)
    =>sm50 - Process Overview
    =>sm58 - Transactional RFC Monitoring
    =>sm59 - Maintain RFC Destinations (Define RFC Configuration)
    =>snro - Number Range Objects (for IDOCs)
    =>we02 - Display IDOC
    =>we05 - IDOC lists
    =>we07 - IDOC statistics
    =>we12 - Inbound processing of outbound file - convert outbound to inbound file
    =>we14 - Process (dispatch) IDOCs through Port - RSEOUT00
    =>we15 - Outbound IDOC from NAST - message control
    =>we16 - Inbound File
    =>we18 - Generate status file
    =>we19 - Test tool
    =>we20 - Add new Message Type to Partner Profile
    =>we21 - Maintain Port Definition
    =>we30 - IDOC Type development
    =>we31 - IDOC Segment development
    =>we41 - Process Code Outbound
    =>we42 - Process Code Inbound
    =>we46 - IDoc Administration
    =>we47 - Status Code Maintenance
    =>we57 - Assign function module to logical message and IDoc type
    =>we63 - IDOC Type for Parser Output
    =>we82 - Assign IDOC to Message Type
    =>we60 - IDOC Documentation - IDOC Types
    =>we61 - IDOC Documentation - IDOC Record Types
    =>we81 - Create new IDOC Message Types
    =>we82 - Assign IDOC to Message Type
    =>pa20 - Display HR Master Data
    =>pa30 - Maintain HR Master Data
    =>bd59 - Create and assign Filter Object Type for Message Type
    =>bd64 - Maintenance of ALE or any other Distribution Model
    Hope this helps, Do reward.

  • How to return the result ( fields ) form using the BDC in background mode ?

    hi,
    I am now having to develop a sub routines for executing the transaction COR1 using BDC ( transaction SHDB ) , in the FORM i pass the 4 params for the fields of the screens of the transaction ( COR1 is used for creating the process order ) , and at last i have to take the number of the process order that has been created by the transaction , how can i do that , if we can no , in which table it is contained ( AUFNR ) ?  .
    In fact , i use the CALL TRANSACTION 'COR1' USING BDCDATA......
    so , if you please to help me resolve this problem ( it is really urgent )...
    Thank you so much .

    Thank you so much for your reply , I think that it would be very useful to me .
    Hi Vijay Sai  , i have used the itab TYPE BDCMSGCOLL for calling the transaction but just for taking the error messages , so as you say , it contains all the values of the fields including AUFNR ( which i need to get the its value after creating with COR1 ) .......if it is right , we  just need to access the new value by using the query at the internal table just like :
    LOOP AT itab INTO wa.
    if wa-fname = 'AUFNR' .
    res = ws-fval .
    ENDIF.
    Is that right  ?

Maybe you are looking for

  • Can I convert an old IMAC computer with OS 9 operating system from being "dial up" to high speed?

    Can anyone tell me how I can convert my old IMAC from "dial up" to go on the internet as high speed? I have an ISP provider for a more modern computer that I own, but I really would like to use my old IMAC on the internet as well? How can I make it c

  • Working with different versions of FCP

    My apologies if this is answered somewhere else but is there any way to work on a newer version of FCP then take that project to an older version? We have 5.1 at home but the workplace has 5.0. I'd like to do some work at home and am not sure how tak

  • Question about using Logic with guitar on stage. HELP!

    Hello, I'm a guitarist. I would need some advises about using Logic in a live situation.. How do you move from one track to the other using the keyboard? Could that action be controlled by some kind of footswitch? Also, the REC button has to be alway

  • Remove Information message for maximum rates check program

    When we set a maximum rate, we put that a business reason is required. This is working correctly but I am getting an information message u201CIf necessary, split up the receipt to not exceed the maximum rateu201D . The customer would like to remove t

  • Prints Garbled Text with HP845C

    My Garbled Text problem: My MacBook is back from Applecare after it went dead, and the internal hard disk was wiped clean by them as I requested, and in checking completed print jobs, I see that they did try printing a document or two after reformatt