BDC for ME22n vendor confirmation

i am facing problem while doing BDC for ME22N . i am going for itemwise vendor confirmation.
for first line item it is happening. but for 2nd line item it is not going.
any help?
this is my code. i guess some loop i have to add but where? can any body give idea?
REPORT  ZMM_VC_UPLOAD.
TABLES :  t100.
       Internal table declaration                                    *
DATA : BEGIN OF it_upload OCCURS 0,
              index(4),      "Index
              EBELN(10),     "PO number
             EBELP(5),      "line item PO
              LIST(1),       "item number
              BSTAE(4),      "Confirmation control key
              EBTYP(2),      "Confirmation Category
             BSTAE(4),      "Confirmation control key
              LPEIN(1),      "Category of delivery date
              EEIND(10),     "delivery date
              MENGE(13),     "QTY Quantity as per vendor confirmation
              XBLNR(20),     "ext doc
              ERDAT(10),     "doc date
              er_message(100),
       END OF it_upload.
DATA: BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
      MSGDATA LIKE BDCMSGCOLL  OCCURS 0 WITH HEADER LINE.
*Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETER: P_FILE LIKE IBIPPARMS-PATH OBLIGATORY.  "to select a file.
SELECTION-SCREEN END OF BLOCK B1.
*Initialization
INITIALIZATION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE .
  PERFORM GET_FILENAME.
start-of-selection
START-OF-SELECTION.
  PERFORM MAKE_FILE_NAME .
  PERFORM UPLOAD_FILE.
    PERFORM BDC_PROCESS.
perform read_messages.
*&      Form  UPLOAD_FILE
FORM UPLOAD_FILE .
  CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
      FILENAME                = P_FILE
      FILETYPE                = 'DAT'
    TABLES
      DATA_TAB                = IT_UPLOAD .
        IF SY-SUBRC <> 0.
  ENDIF.
ENDFORM.                    " UPLOAD_FILE
*&      Form  bdc_process
FORM BDC_PROCESS .
loop at it_upload.
LOOP AT IT_header.
refresh bdcdata.
  perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
perform bdc_field       using 'BDC_OKCODE'
                              '=MECHOB'.
perform bdc_field       using 'MEPO_TOPLINE-BSART'
                              'NB'.
perform bdc_field       using 'DYN_6000-LIST'
                              it_upload-list.    "'   1'.
perform bdc_field       using 'BDC_CURSOR'
                              'MEPO1319-MATKL'.
perform bdc_field       using 'MEPO1319-SPINF'
                              'X'.
perform bdc_dynpro      using 'SAPLMEGUI' '0002'.
perform bdc_field       using 'BDC_OKCODE'
                              '=MEOK'.
perform bdc_field       using 'BDC_CURSOR'
                              'MEPO_SELECT-EBELN'.
perform bdc_field       using 'MEPO_SELECT-EBELN'
                              it_upload-EBELN.              "'4500195517'.
perform bdc_field       using 'MEPO_SELECT-BSTYP_F'
                              'X'.
perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
perform bdc_field       using 'BDC_OKCODE'
                              '=TABIDT14'.
perform bdc_field       using 'BDC_CURSOR'
                              'MEPO_TOPLINE-BSART'.
perform bdc_field       using 'MEPO_TOPLINE-BSART'
                              'NB'.
perform bdc_field       using 'DYN_6000-LIST'
                              it_upload-list.    "'   1'.
perform bdc_field       using 'MEPO1319-SPINF'
                              'X'.
perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
perform bdc_field       using 'BDC_OKCODE'             "first time
                              '/00'.
perform bdc_field       using 'MEPO_TOPLINE-BSART'
                              'NB'.
perform bdc_field       using 'DYN_6000-LIST'
                             it_upload-list.    " '   1'.
perform bdc_field       using 'BDC_CURSOR'
                              'MEPO1334-BSTAE'.
perform bdc_field       using 'MEPO1334-BSTAE'
                              it_upload-BSTAE  .                "'0005'.
perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
perform bdc_field       using 'BDC_OKCODE'
                              '/00'.
perform bdc_field       using 'MEPO_TOPLINE-BSART'
                              'NB'.
*loop at it_item where ebeln = it_upload-ebeln.
perform bdc_field       using 'BDC_CURSOR'
                              'DYN_6000-LIST'.
perform bdc_field       using 'DYN_6000-LIST'
                              it_upload-list.    "'   1'.
perform bdc_field       using 'MEPO1334-BSTAE'
                              it_upload-BSTAE.                 "'0005'.
perform bdc_field       using 'BDC_CURSOR'
                              'EKES-ERDAT(01)'.
perform bdc_field       using 'EKES-EBTYP(01)'
                              it_upload-EBTYP.                 "'vc'.
perform bdc_field       using 'RM06E-LPEIN(01)'
                              it_upload-LPEIN.                 "'D'.
perform bdc_field       using 'RM06E-EEIND(01)'
                              it_upload-EEIND.                 "'15.02.2009'.
perform bdc_field       using 'EKES-MENGE(01)'
                              it_upload-MENGE.                 "'10'.
perform bdc_field       using 'EKES-XBLNR(01)'
                              it_upload-XBLNR.                 "'inv 9'.
perform bdc_field       using 'EKES-ERDAT(01)'
                              it_upload-ERDAT.                 "'15.02.2009'.
perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
perform bdc_field       using 'BDC_OKCODE'
                              '=MESAVE'.
CALL TRANSACTION 'ME22N' USING BDCDATA MODE 'A' UPDATE 'A' MESSAGES INTO MSGDATA. 
    CLEAR: BDCDATA,BDCDATA[].
    refresh BDCDATA.
  ENDLOOP.
ENDFORM.                    " bdc_process
       Start new screen                                              *
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
  CLEAR BDCDATA.
  BDCDATA-PROGRAM  = PROGRAM.
  BDCDATA-DYNPRO   = DYNPRO.
  BDCDATA-DYNBEGIN = 'X'.
  APPEND BDCDATA.
ENDFORM.                    "BDC_DYNPRO
       Insert field                                                  *
FORM BDC_FIELD USING FNAM FVAL.
  IF FVAL <> ''.
    CLEAR BDCDATA.
    BDCDATA-FNAM = FNAM.
    BDCDATA-FVAL = FVAL.
    APPEND BDCDATA.
  ENDIF.
ENDFORM.                    "BDC_FIELD
*To get file name                                                      *
FORM GET_FILENAME .
  CALL FUNCTION 'F4_FILENAME'
    EXPORTING
      PROGRAM_NAME  = SYST-CPROG
      DYNPRO_NUMBER = SYST-DYNNR
    IMPORTING
      FILE_NAME     = P_FILE.
  IF SY-SUBRC NE 0  .
    WRITE : / 'Enter File Name'.
  ENDIF.
ENDFORM.                    "GET_FILENAME

Hi Dude,
  When ur looping the item information , in your code ur
loop at it_item where ebeln = it_upload-ebeln.
perform bdc_field using 'BDC_CURSOR'
'DYN_6000-LIST'.
perform bdc_field using 'DYN_6000-LIST'
it_upload-list. "' 1'.
perform bdc_field using 'MEPO1334-BSTAE'
it_upload-BSTAE. "'0005'.
perform bdc_field using 'BDC_CURSOR'
'EKES-ERDAT(01)'.
perform bdc_field using 'EKES-EBTYP(01)'
it_upload-EBTYP. "'vc'.
perform bdc_field using 'RM06E-LPEIN(01)'
it_upload-LPEIN. "'D'.
perform bdc_field using 'RM06E-EEIND(01)'
it_upload-EEIND. "'15.02.2009'.
perform bdc_field using 'EKES-MENGE(01)'
it_upload-MENGE. "'10'.
perform bdc_field using 'EKES-XBLNR(01)'
it_upload-XBLNR. "'inv 9'.
perform bdc_field using 'EKES-ERDAT(01)'
it_upload-ERDAT. "'15.02.2009'.
perform bdc_dynpro using 'SAPLMEGUI' '0014'.
perform bdc_field using 'BDC_OKCODE'
'=MESAVE'.
->(01) you have to replace to variable , and every loop pass increment the varialbe value with 1.
ex : -
V1 = 1.
loop at item.
perform bdc_data using 'xyz(V1)' 
                               it_upload-variable.
V1 = V1 + 1.
endloop.
This is called as index , the table control fields are differ the field name by index only...

Similar Messages

  • BDC for production order confirmation (co11n)

    Dear All,
    Is it better to create a table control BDC for Production Order confirmation (CO11n)?
    Or there is any other efficient way?
    Pls guide me.
    Thank you
    Vijay

    Hi,
    There are different BAPIs available:
    BAPI_PRODORDCONF_CREATE_ACT    Enter activity confirmation
    BAPI_PRODORDCONF_CREATE_HDR    Enter Order Confirmations
    BAPI_PRODORDCONF_CREATE_TE     Enter Time Event Confirmation
    BAPI_PRODORDCONF_CREATE_TT     Enter Time Ticket Confirmation
    You can use them depenidng on your requirement..

  • User Exit and BDC for ME22N

    Hello All,
    A code has been written in the User exit for Tcode ME22N, Which sets the indicator on PO line item. This has been done by modifying the standard itab POT by using field symbols, because the fields to be modified are shown in display mode in the tcode ME22N and cannot be done in BDC. See the below code in user exit ZXM06U43.
    DATA char(50) VALUE '(SAPLMEPO)POT[]'.
    CLEAR wa_ind.
        FIELD-SYMBOLS <f1> TYPE ANY.
    Move memory of internal table POT to field symbol f1.
        ASSIGN (char) TO <f1>.
    Move content of f1 to internal table i_ind
        i_ind[] = <f1> .
        LOOP AT i_ind INTO wa_ind.
          IF wa_ind-pstyp = '9'.            " Service PO - item category
    IF PO Line item has History per Purchasing Document as 'D'
    Set indicators on, for the line item.
            CLEAR v_cnt.
            SELECT COUNT( * ) INTO v_cnt FROM ent5100
                                         WHERE ebeln = wa_ind-ebeln
                                           AND ebelp = wa_ind-ebelp
                                           AND bewtp = 'D'.
            IF sy-subrc = 0.
              wa_ind-wepos = 'X'.            " Set Goods Receipt Indicator
              wa_ind-webre = 'X'.            " Set GR-based IV Indicator
              wa_ind-lebre = 'X'.            " Set Srv-based IV Indicator
            ELSE.
    *End of addition SAP-20070910104025 - SL36 - D01K963369
              wa_ind-wepos = ' '.            " Clear Goods Receipt Indicator
              wa_ind-webre = ' '.            " Clear GR-based IV Indicator
              wa_ind-lebre = ' '.            " Clear Srv-based IV Indicator
              wa_ind-xersy = ' '.            " Clear ERS Indicator
            ENDIF.                                           
            MODIFY i_ind FROM wa_ind INDEX sy-tabix.
          ENDIF.
        ENDLOOP.
        <f1> = i_ind[].
      ENDIF.          
    ENDIF.
    This code is in production and has been working fine.
    The requirnment is now to make this indicator work for all the Purchase order before this code has been written in the Exit. For this my functional suggests that to write a separate program using BDC for PO change and jus add a period/dot  in the short text and save it. The code has been written, the user exit and the above code is getting triggrred values are updated in internal table correctly.
    However the flags was not set or cleared when seen in the tcode ME22N . This works fine if the tcode me22n is run directly and not working in BDC.
    I have tried with ME22 without enjoy transaction in BDC changing the POT Program to SAPMM06E. It does not work.
    Please help me as why it is not uodating in the table when using BDC.
    Thanks in Advance.
    Senthil Kumar

    Hi All,
    Any luck on this??
    Thanks

  • Scrolling not working in BDC for ME22N

    Dear All,
    i record BDC using Tcode "SHDB" for ME22N ( only for Type stock transfer ).
    in recording i select tab "delivery schedule" and it showing 4 rows as default rows and
    after that i scroll one by  one to put requisition Closed Flag.
    after successfull completion of recording when run "Process" to test (without change any coding),
    it's not working for scrolling even if i tried for page down the result is same.
    can you please suggest for :
    1- what could be the problem, though BDC recorded with scrolling but process not working.
    2- is there any option to increase no. of fixed rows in tab "schedule delivery"
    Pls help.
    Thanks a lot,
    Radhashyam

    see my code below it might help you, i have also used a flag and i have populated the data manually from where i need scrolling, i guess in recording you cannot catch sscorlling you have to do it manually.
    loop at t_final_data into fs_final_data.
        if fs_final_data-acopc = 'Y'.
          lw_flag = 'X'.
        elseif fs_final_data-acopc = 'N'.
          lw_flag = ' '.
        endif.                            
    refresh t_bdcdata.
    perform bdc_dynpro      using 'SAPMP50A' '1000'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=INS'.
    perform bdc_field       using 'RP50G-PERNR'
                                  fs_final_data-pernr.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RP50G-ENDDA'.
    perform bdc_field       using 'RP50G-BEGDA'
                                  fs_final_data-begda.
    perform bdc_field       using 'RP50G-ENDDA'
                                  fs_final_data-endda.
    perform bdc_field       using 'RP50G-CHOIC'
                                  lw_info.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMP50A' '1000'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=INS'.
    perform bdc_dynpro      using 'MP058500' '2000'.
    clear w_curr.
    w_curr =  fs_final_data-pcntr1.
    perform bdc_field       using 'Q0585-PCNTR(01)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr1.
    perform bdc_field       using 'Q0585-ACNTR(01)'
                                 w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr2.
    perform bdc_field       using 'Q0585-PCNTR(02)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr2.
    perform bdc_field       using 'Q0585-ACNTR(02)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr3.
    perform bdc_field       using 'Q0585-PCNTR(03)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr3.
    perform bdc_field       using 'Q0585-ACNTR(03)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr4.
    perform bdc_field       using 'Q0585-PCNTR(04)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr4.
    perform bdc_field       using 'Q0585-ACNTR(04)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr5.
    perform bdc_field       using 'Q0585-PCNTR(05)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr5.
    perform bdc_field       using 'Q0585-ACNTR(05)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr6.
    perform bdc_field       using 'Q0585-PCNTR(06)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr6.
    perform bdc_field       using 'Q0585-ACNTR(06)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr7.
    perform bdc_field       using 'Q0585-PCNTR(07)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr6.
    perform bdc_field       using 'Q0585-ACNTR(07)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr8.
    perform bdc_field       using 'Q0585-PCNTR(08)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr8.
    perform bdc_field       using 'Q0585-ACNTR(08)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr9.
    perform bdc_field       using 'Q0585-PCNTR(09)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr9.
    perform bdc_field       using 'Q0585-ACNTR(09)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr10.
    perform bdc_field       using 'Q0585-PCNTR(10)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr10.
    perform bdc_field       using 'Q0585-ACNTR(10)'
                                   w_curr.
    *" from here i have done it manually
    perform bdc_field       using 'BDC_OKCODE'
                                  'P+' .
    perform bdc_dynpro      using 'MP058500' '2000'.
    clear w_curr.
    w_curr =  fs_final_data-pcntr11.
    perform bdc_field       using 'Q0585-PCNTR(01)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr11.
    perform bdc_field       using 'Q0585-ACNTR(01)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr12.
    perform bdc_field       using 'Q0585-PCNTR(02)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr12.
    perform bdc_field       using 'Q0585-ACNTR(02)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr13.
    perform bdc_field       using 'Q0585-PCNTR(03)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr13.
    perform bdc_field       using 'Q0585-ACNTR(03)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr14.
    perform bdc_field       using 'Q0585-PCNTR(04)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr14.
    perform bdc_field       using 'Q0585-ACNTR(04)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr15.
    perform bdc_field       using 'Q0585-PCNTR(05)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr15.
    perform bdc_field       using 'Q0585-ACNTR(05)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr16.
    perform bdc_field       using 'Q0585-PCNTR(06)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr16.
    perform bdc_field       using 'Q0585-ACNTR(06)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-pcntr17.
    perform bdc_field       using 'Q0585-PCNTR(07)'
                                   w_curr.
    clear w_curr.
    w_curr =  fs_final_data-acntr17.
    perform bdc_field       using 'Q0585-ACNTR(07)'
                                   w_curr.
    *" i have used a flag here
    perform bdc_field       using 'Q0585-ACOPC'
                                   lw_flag.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=UPD'.
    perform bdc_dynpro      using 'MP058500' '2000'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/EBCK'.
    perform bdc_dynpro      using 'SAPMP50A' '1000'.
      call transaction 'PA30' using t_bdcdata
                               mode 'A'
                           messages into t_messtab.

  • BDC for ME22N not working in background but working fine in foreground

    Hi guys,
    I have done a BDC recording for ME22N.
    Its working fine in foreground but failing in background.
    Can anyone sugesst a solution.
    Thanks!

    There is a note on this subject, BDC with control may (and of course will) not perform correctly in background, they need the Sapgui) [Note 381630 - Batch input for Enjoy transaction in MM not possible|https://service.sap.com/sap/support/notes/381630]
    You may need to use the old ME22 transaction or BAPI like BAPI_PO_CHANGE [Note 217437 - ME21N/ME51N: Batch input and CATT not possible|https://service.sap.com/sap/support/notes/217437]
    Regards
    Regards

  • Function Modules used for PO Vendor Confirmation

    Hi,
    Pls. let me know which function module is used to update EKES table during Vendor Confirmation in Purchase Order.
    Thanks in advance.
    Regards,
    Ramesh

    Hi Ramesh,
    Please check this FM ME_CONFIRMATION_UPDATE.
    This FM will perform direct update to table EKES (please be careful).
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward points if helpful.

  • BDC for deleting vendors at plant level

    Hi experts..
      I have query regarding BDC. Please read  below.
    Go to  MK02 T-code , select valid combination of vendor and purchase organiation -> select 2 check boxes in general data
    -> select 2 check boxes in purchase oraganization data -> press ' Enter ' -> again press ' Enter '-> again press 'Enter '-> select  ' Alternative Data ' in Tool bar -> There you will see all the plant descriptions belongs to vendor under purchase oraganization .
       Now i have to delete some  plants (  based on certain condition  )  here,this i can do by  selecting plant   and press delete line .
       This procedure i have to repeat many vendors. i wanted to implement this through BDC .
         My question is , through BDC how can i select some plant descriptions ( there in the last screen )  . Dynamically i have to select some plant descriptions .
       Thanks much !!!
        Radhika

    Hello dear Srinivas,
    I want to inform you that your question is not in the most appropriated spot for the experts. It is related to FI area but was posted in the logistic area.
    Please close this thread and open a new one in the following spot (ERP FI)
    -SAP ERP Financials
    Best Regards,
    Christian Rosa

  • Vendor Confirmation workflow ( TS00008075 ) issue for IDOCs in Error ( 51 )

    Hi All,
              When IDOCs (Basic type: ORDERS02, Message type : ORDRSP ) goes in error with status 51 & comes to SAP system it calls event  u2018INPUTERROROCCURREDu2019  which is correct but it creates problem when it get re processed as it triggers event u2018INPUTSUCCESSu2019 resulting in firing vendor confirmation workflows to respective user ( this batch job re process each ORDRSP IDOC twice a day & hence 2 workflows per IDOC in error to clientu2019s inbox by triggering event u2018INPUTSUCCESSu2019).
    Could you please tell me why these IDOCs are triggering event u2018INPUTSUCCESSu2019 in case of error ( status 51 ) when they get RE PROCESSED. These kind of Idocs must only trigger u2018INPUTERROROCCURREDu2019  once  and should not create anything when these get reprocessed. Please note that these issues arise after EHP4 upgrade. Please let me know if any setting is there for triggering Vendor COnfirmation workflow ( TS00008075 ) when IDOCs in error get re processed.
    Please help us , thanks.
    Regards,
    Kartikey Rawat.

    Hello Kartikey Rawat !
                        INPUTSUCCESS  event gets fired just because it is configured as terminating event in the task.
                        If you don't want this event to get fired, either you can deactivate it  or delete the bindings related to the event  INPUTSUCCESS(doing so should not affect other two terminating events that may be required for you scenario) .
                        If you want know why it is fired, you can get to know in debug mode or check whether the event is defined through  related function modules configured in WE57,BD51,WE42 AND WE20 transaction codes.
                        In WE05 or WE02 transactions, you will get error description.Based on it too, you can figure out the reason.
    Regards,
    S.Suresh

  • EDI1(vendor confirmation price) in PO can set to green light?

    I have setup the condition EDI1 for the vendor confirmed price. I set as default, when I create PO, the EDI1 condition will show up in the condition tab with price 0. But I found out that EDI1 condition is in "Red light" in stead of green light. Although there is no problem to save the PO, but I feel irritated to see the red light there.
    Is there a way to set it as green light with zero price?
    Edited by: janice on Aug 13, 2010 9:56 AM

    hi J,
    i also have the same business requirement-
    1/ to have price confirmation from vendor (from what platform vendor can send confirmation- if it has to be via EDI via mail, ??)
    2/ do you maintained new condition type in the pricing schema for the PO , and hou is it triggered once the vendor confirm/ mail the price?
    thanks in advance for your assistance as to hou to configured this requirements.
    thanks a lot,
    Coolio.

  • BAPI for Purchase Order Vendor Confirmations

    Can any body suggest me the BAPI for the purchase order vendor confirmations transaction code me22n - Tab<b>-(Confirmations)</b> alone.
    regs,
    Raja

    Dear Asha,
    Pls find the below code, this handles only the BDC part of the program.Updates only the EKES table thru standard confirmation tab on ME22N.
    Kindly clarify any doubts in this reg.
    regs,
    Raja.
    FORM ins_stdtable .
      DATA:var TYPE c LENGTH 30,
      cstr(02) TYPE n value '01'.
      data istr(02) type n value '00'.
      DATA recno TYPE i.
      data: eblc type c length 5,
      ebli type i.
      DATA: kebeln LIKE utab-ebeln.
      DATA: BEGIN OF indx,
             ebelp type ekes-ebelp,
             eindx type i,
            END OF indx.
      DATA : CNT TYPE I value 1.
      DATA: COUNTER(2) TYPE N VALUE '01',
      ROWS TYPE P.
      DATA: w_textout            LIKE t100-text.
      DATA: gd_update TYPE i,
            gd_lines TYPE i.
      data :waek like indx,
      itabek LIKE TABLE OF waek.
    *Used to stores error information from CALL TRANSACTION Function Module
      DATA: BEGIN OF messtab OCCURS 0.
              INCLUDE STRUCTURE bdcmsgcoll.
      DATA: END OF messtab.
      SELECT MAX( ETENS ) FROM ekes INTO zetens WHERE ebeln =
      ekko-ebeln.
      recno = zetens.
      LOOP AT utab.
        SELECT distinct ebelp INTO CORRESPONDING FIELDS OF TABLE
        itabek  FROM eket  WHERE ebeln = ekko-ebeln.
        loop at itabek into waek.
          ebli =  ebli + 1.
          waek-eindx = ebli.
          modify itabek from waek.
        endloop.
        loop at itabek into waek where ebelp = utab-ebelp.
          eblc = waek-eindx.
          condense eblc.
        endloop.
        AT NEW ebeln.
          PERFORM bdc_dynpro      USING 'SAPLMEGUI' '0014'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=MECHOB'.
          PERFORM bdc_dynpro      USING 'SAPLMEGUI' '0002'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=MEOK'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MEPO_SELECT-EBELN'.
          PERFORM bdc_field       USING 'MEPO_SELECT-EBELN'
                                         utab-ebeln.
          AT New EBELP.
            perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
            perform bdc_field       using 'BDC_CURSOR'
                                      'DYN_6000-LIST'.
            perform bdc_field       using 'DYN_6000-LIST'
                                     eblc.
            perform bdc_field       using 'BDC_OKCODE'
                                          '=DDOWN3200'.
            PERFORM bdc_dynpro      USING 'SAPLMEGUI' '0014'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '=TABIDT15'.
            perform bdc_field       using 'DYN_6000-LIST'
                                    eblc.
            PERFORM bdc_dynpro      USING 'SAPLMEGUI' '0014'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          'PICK'.
          ENDAT.
        ENDAT.
        PERFORM bdc_field       USING 'DYN_6000-LIST'
                                          eblc.
        recno = recno + 1.
        cstr = recno.
        counter = cstr.
    *This is to check whether the scheduled line item exceeding 12 rows. if so, use *page up
        if counter >= 13.
          rows = counter MOD 13.
          istr = ( ( counter - rows ) / 13 ).
          do istr times.
            perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
            perform bdc_field       using 'BDC_OKCODE'
                                    '=EINB_CREATE'.
          enddo.
          DO 2 TIMES.
            perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
            perform bdc_field       using 'BDC_OKCODE'
                                    '=P+'.
          enddo.
          COUNTER = '03'.
          cstr = '03'.
        ENDIF.
        CONCATENATE 'EKES-EBTYP('  cstr  ')' INTO var.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                          var.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
        PERFORM bdc_field       USING var
                                    utab-ebtyp.
        CONCATENATE 'RM06E-EEIND('  cstr  ')' INTO var.
        PERFORM bdc_field       USING var
                                       utab-eeind.
        CONCATENATE 'EKES-MENGE('  cstr  ')' INTO var.
        PERFORM bdc_field       USING var
                                       utab-menge.
        CONCATENATE 'J_3ASZDI-J_3ASIZED('  cstr  ')' INTO var.
        PERFORM bdc_field       USING var
                                       utab-j_3asize.
        AT END OF Ebelp.
          PERFORM bdc_dynpro      USING 'SAPLMEGUI' '0014'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=MESAVE'.
          perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
          perform bdc_field       using 'BDC_OKCODE'
                                    '/00'.
          CALL TRANSACTION 'ME22N' USING bdcdata MODE 'E'.
          IF sy-subrc EQ 0.
            savedone = 'Y'.
            saveflag = 'Y'.
            initflag = 'N'.
            MESSAGE 'SAVED' TYPE 'I'.
          else.
            saveflag = 'N'.
            savedone = 'N'.
            initflag = 'Y'.
            MESSAGE 'Not Saved' Type 'I'.
          endif.
          CLEAR: bdcdata.
          REFRESH bdcdata.
        ENDAT.
      ENDLOOP.
    ENDFORM.
    Hope this will help u

  • Steps for Vendor Confirmation

    Hi All
    can any on tell me how the vendor confirmation proces is taking place in MM.
    and if possible give me the steps.
    Regrds
    M S K

    Hi MSK ,
    At first u need to enter confirmation control key in Item details of PO - Confirmation Tab
    Depending on the key choosen , either the Order Acknowledgment / Shipping Notification is expected before proceeding for GR.
    Order Confirmation is done manually( ME22N ) or via EDI.
    Shipping Notifcation / Inbound Delivery is done manually ( VL31N ) or via EDI.
    Regards
    Ramesh Ch

  • Does BDC supports to update Confirmation in PO through ME22N

    Hi,
       Can any one suggest wether BDC supports to update Confirmation details in PO by using ME22N transaction. The standard BAPI, BAPI_PO_CHANGE does't support for updating confirmation details in PO. We are currently using BDC with ME22, we need to replace ME22 with enjoy transaction to support Event management functionality. Can any one help us in this?
    Thanks and Regards
    Raghu

    HI,
    SAP recommends not to record enjoy transactions and hence BDC doesn't support ME23N.
    Only way is to use BAPI..
    regards,
    Naveen

  • Generating Inbound delivery based on Vendor Confirmation for Purchase order

    Is there a way to create Inbound deliveries based on Vendor confirmation for a purchase order.
    Here is the complete scenario.
    Buyer Creates the PO for qty 100 and Date August 29
    Vendor Confirms that he can supply a qty of 50 for August 29 and remaining 50 for Sep15th
    Based on vendor confirmation, Buyer creates 2 vendor confirmations (AB) to match with the data received from Buyer, without modifing the PO.
    Requirement:
    Inbound deliveries should get created based on the vendor confirmation.
    As MRP looks at Inbound delivery for Planning purposes once they are available, Inbound delivery should match with vendor confirmation data.
    Is it possible to get this requirement met with standard config available in SAP.

    could you eventually get the answer from the docu Set Up Confirmation Control

  • How to change order unit in ME22n for particular vendor

    Dear All,
    We have defined ordering unit in material master as "L".
    For other vendors & new PO we get proper ord.unit display.
    But we r not getting in PO of particular vendor.
    How to get order unit in ME22n ? What is the relation of order unit with Vendor ?

    Hi
    Did you ordere the particular material for the vendor concerned already with different Order unit (SKU),  this might be the reason why you are not getting the ordering unit in PO while ordering. Did you maintain the details of conversion in master between SKU & Ordering unit,if yes, then check for Info Record for the material and vendor combination and in the Genaral Data Tab chek for the variable order unit activation if not available then activate it and if the system is asking the conversiondetails enter herr the conversion also. Now if you create PO you will be able to assigne the new order unit.
    Regards

  • BDC FOR VENDOR INVOICE FB60

    Hi,
    I need to make a BDC to upload transaction data for Vendor invoice thru  fb60. Can someone help me with making this BDC. I have multiple invoice line items where G/L Accounts can be same for multiple line items.
    plz any help soon will be appreciated ...

    hi Raj,
    Here a Example:
    report ZTEST
    no standard page heading line-size 255.
    include bdcrecx1.
    start-of-selection.
    perform open_group.
    perform bdc_dynpro using 'SAPMF05A' '1100'.
    perform bdc_field using 'BDC_OKCODE'
    '=DUMMY'.
    perform bdc_field using 'RF05A-BUSCS'
    'R'.
    perform bdc_field using 'BDC_CURSOR'
    'INVFO-XMWST'.
    perform bdc_field using 'INVFO-ACCNT'
    '4711'. "LIFNR
    perform bdc_field using 'INVFO-BUDAT'
    '07.07.2006'.
    perform bdc_field using 'INVFO-WRBTR'
    '1000'.
    perform bdc_field using 'INVFO-WAERS'
    'EUR'.
    perform bdc_field using 'INVFO-XMWST'
    'X'.
    perform bdc_field using 'INVFO-MWSKZ'
    'V4'.
    perform bdc_dynpro using 'SAPMF05A' '1100'.
    perform bdc_field using 'BDC_OKCODE'
    '=BU'.
    perform bdc_field using 'RF05A-BUSCS'
    'R'.
    perform bdc_field using 'BDC_CURSOR'
    'INVFO-XBLNR'.
    perform bdc_field using 'INVFO-ACCNT'
    '4711'. "LIFNR
    perform bdc_field using 'INVFO-XBLNR'
    'test'.
    perform bdc_field using 'INVFO-WRBTR'
    '1.000,00'.
    perform bdc_field using 'INVFO-XMWST'
    'X'.
    perform bdc_field using 'INVFO-MWSKZ'
    'V4'.
    perform bdc_dynpro using 'SAPMF05A' '1100'.
    perform bdc_field using 'INVFO-BLDAT'
    '07062006'.
    perform bdc_field using 'INVFO-XBLNR'
    'TEST'.
    perform bdc_field using 'ACGL_ITEM-HKONT(01)'
    '467000'.
    perform bdc_field using 'ACGL_ITEM-WRBTR(01)'
    ' 1000'.
    perform bdc_field using 'ACGL_ITEM-KOSTL(01)'
    '1000'.
    perform bdc_transaction using 'FB60'.
    perform close_group.
    OR Also u can use the
    U can use the std batchinput RFBIBL00 (or a BAPI, like BAPI_ACC_DOCUMENT_POST ) instead of to write an own BDC program for FB60.
    FB60 is enjoy trx and it couldn't support the BDC for all its functionalities.
    For more infor abt the BDC
    http://www.sap-img.com/abap/learning-bdc-programming.htm
    Assing the points if helpfulll
    ranjit
    null
    null

Maybe you are looking for

  • Why can't I use my apple id as i cloud address?

    Why can't I use my apple ID as an Icloud e-mail address on my 3gs Iphone?

  • Captivate 6 PDF file trashed

    In the past I have had no problem creating PDF versions of my Captivate 6 modules. However, I found today that all the PDF files I recently created don't play in my PDF Reader. Older Captivate 6 PDFs play, but not the new ones. The Adobe site says th

  • CONNECT BY query doesn't return any results...

    Hi All I am trying to execute this CONNECT BY query...but it does not return any result. Could anyone please suggests what am I doing wrong. Or how should I modify the query to get the results. SELECT Distinct dt.DID FROM DEPT dt left outer join EMPL

  • Cannot log into OBIEE answers and Dashboard

    Hi All, When we try to loginto OBIEE dashboard as an administrator we get an error as given below Error Codes: WH4KCFW6:OPR4ONWY:U9IM8TAC Odbc driver returned an error (SQLDriverConnectW). State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSEr

  • Show values beside Bar of a chart

    Hello world, within a chart I like to show the values beside/of the bar. Is this possible? ...and how Thank you. Ralf Müller