BAPI for Mass Purchase Order Confirmation
Dear All,
In standard SAP,it is possible to confirm for single line item only by using confirmation tab.
We want to confirm Mass PO Confirmation.
Is there any BAPI for Mass Purchase Order Confirmation?
Regards,
Ramesh
Hi Sumant,
I have tried with TC:MASS.
By using this TC we can update quantity but not delivery date & Confirmation Control (Fields available in the confirmation tab of ME22n for Vendor Confirmation).
Is there any way to updates all these fields which are available in the Confirmation Tab?
Is there any BAPI which is tranferring confirmation tab details into EKES table?
Expecting your valuable inputs in this regard.
Regards,
Ramesh
Similar Messages
-
Fast entry transaction for entering purchase order confirmations
Does anyone know of fast entry transaction for entering purchase order confirmations similar to VL31N for inbound deliveries?
Thanksdear John,
if i m not mistaken you want to give confirmation control to your existing POs.
If the case is this you can opt for a BDC to be run for updation.
Ask your abaper to do this thing.
revert back if this is not the the case.
Njoy
Ashish -
Mass Purchase Order Confirmation
Dear All,
Existing Process :
In ME21N Purchase Order is created.It is released.After vendor receives PO he will be confirming the quantity & delivery date.
Based on the vendor information,in ME22n confirmed
qty & date will be entered for each line item of PO.
As such confirmation is done for single line item at a time it is most time consuming & hectic process.
Requirement:
Based on some selection criteria(Vendor,Material,PO No range etc) & filters(Only un confirmed PO has to be selected;Only Released PO has to be selected etc)we want to create Transaction / screen which will be populating all the PO which are meeting the filtering criteria. On execution of this screen all PO which is populated will be confirmed in a single step.
Is there any BAPI to do Mass PO confirmation instead of single PO line confirmation?
Is there any way to do it?
Expecting your expertise in this regard.
Thanks in advance.
Regards,
RameshHi Umakanth,
Thanks for your input.
After sending the PO to Vendor, Vendor will be confirming their feasibity for delivering the quantity and delivery date.
Based on that we will be entering in the Confirmation Tab with CC AB(Order Acknowledgement).
While vendor has dispatched he will be informing regarding dispatch details for which we can create Inbound delivery.
Is my understanding right?
We want to go for Order Acknowledgement process in a mass manner as in standard SAP for single PO line item only we can go for confirmation.
For our case, most of the confirmation will be done as given in the PO line tem (Qty & Del. date).
Pls. let me know which BAPI is used for updating confirmation details into EKES.I have checked BAPI_PO_CHANGE.Its not working.
If BAPI is known,Custom Program can be developed by using that BAPI in such a way that multiple line item can be posted in a single transaction execution.
Expecting your valuable inputs regarding this.
Regards,
Ramesh -
LSMW issue using BAPI for changing Purchase Order G/L Account
Wonder if anyone can help as I'm tearing my hair out!!
Have used LSMW lots of times using the transaction recorder, but tried using a BAPI as we have a mass update to do of G/L Accounts for Purchase Orders and it seems the tidiest and most efficient way to do it.
Got my LSMW project working as a test by changing the Short Text on a purchase order, this works fine. However, when I add the Account Assignment details in (Structure E1BPMEPOACCOUNT and E1BPMEACCOUNTX) everything seems to run fine, the IDOC posts and gives message 'Document xxx changed'. Yet when I look into the order it hasn't actually changed the G/L.
If I go into the purchase order in change mode in another session and run the LSMW again it recognises the purchase order is locked so it seems to be doing everything right, just not updating the G/L Account field. Anyone got any ideas ? It updated the short text fine so I'm sure everything is set up OK but for some reason it ignores the G/L that I upload. Anything relating to the Account Assignment (Unloading Point, GR, Cost Center) just gets ignored if I try and upload a change.
I seem to be so close it seems a shame not to be able to get it sorted !!!
Thanks,Helen Smith wrote:
HI Praveen,
>
> Thank you very much for your response. I tested the BAPI as per yor instructions and the return message comes back 'Eng & other PO xxxx changed' so it seems to indicate a success message again (like the LSMW does) but the actual data doesn't update.
>
> I thought I'd found it as I searched OSS and found note 0001382965 which seemed exactly my problem. I imported it and applied it but yet I still get the same issue - LSMW runs, says app doc posted and purchase order has been saved but no Account Assignment field will update.
>
> So it seems as if it's the BAPI not doing what it should - so I'm considering logging with SAPNET just to see if they can help as getting desperate with this one now! Felt sure I had it sorted when I found that note!
>
> Thanks
>
> Helen
>
> ** I should add I also ran the test above altering something in the item detail (the short text) - and that worked and updated. So it still seems to point to the Account Assignment part of the BAPI not updating.
>
> Edited by: Helen Smith on Nov 2, 2010 4:35 PM
Hi Helen,
Just wondering whether you have found solution to your issue.
We also encounter the same issue and have implemented the note without any positive result.
Please share if you found the solution.
Thank you.
Abraham -
BAPI to add Purchase Order Confirmation?
Hi,
I have to add PO Confirmations and I found the BAPI 'BAPI_PO_CHANGE' that have an "tables" parameter for my requeriment. But I created a test program and I checked that it doesn't work for that purpouse (and I'm not the 1st one who find that problem: [Re: BAPI_PO_CHANGE is not updating Confirmation Category and Date cate Category; ). I checked the code and the BAPI really don't do anything with POCONFIRMATION data except read it....
Have you an alternative for this??Hello to all,
that is just for documentation. SAP answerd the problem in OSS-304243 but this message is not accessable if you don't have powerful OSS-Users.
This SAP-note might be interesting: 197958
OSS-Message 652796 8.8.2011
BAPI_PO_CHANGE
We can not process confirmations by using the parameter poconfirmation.
The Baps reports always S 06 022 - no data changed.
In the SDN there are some hints telling that the BAPI_PO_CHANGE does notsupport processing of confirmations. More detailled infos should be in
the OSS-Message 0000304243 but this message is not accessable for us.
Can you confirm that the BAPI_PO_CHANGE does not support adding
confirmations? We debugged the BAPI and there is no code for updating
confirmations found.
Best regards
Bernhard Lascy
09.08.2011 - 10:43:07 CET - Antwort von SAP
Dear Bernhard,
I regret to inform you that the functionality you request is not
implemented in the R/3 standard system.
Unfortunately it is not possible to change/load confirmations with the
function module BAPI_PO_CREATE/BAPI_PO_CHANGE. Table POCONFIRMATION in
BAPI interface is relevant for Display/List Vendor Confirmation in BAPI,not for update/insert Vendor confirmation in PO.
Furthermore, we recommends that you use Idocs for automatically
entering confirmations. The Message type to use is ORDRSP.
You may read more about this topic in the online documentation.
Please see also following attached note for your reference.
456127 FAQ: Electronic Data Interchange (EDI) in purchasing
Best regards,
Pavel Olysar
Support Consultant
Global Support - Logistics -
Bapi for subcontracting purchase order
Hi,
is there a BAPI allowing to create a subcontracting purchase order?
Best regards.Hello,
BAPI_PO_CREATE and BO: BUS2012.
BAPIEKPOC = ITEM_CAT (3 - Subcontracting)
Regds, Murugesh AS -
Bapi for creating purchase order
hi, iam using BAPI_PO_CREATE1 to create PO's for service. after creating opne PO if i go and create another po within a short span of a minute or so then it does not create the second PO. it gives message that doc does not contain any items.
TABLES: ekpo,zcta_podates,ekko.
DATA iekpo LIKE ekpo OCCURS 0 WITH HEADER LINE.
DATA iekko LIKE ekko OCCURS 0 WITH HEADER LINE.
DATA ipodates LIKE zcta_podates OCCURS 0 WITH HEADER LINE.
DATA : wabldat1 LIKE zcta_podates-podat.
DATA : wabldat2 LIKE zcta_podates-podat.
DATA : wabldat3 LIKE zcta_podates-podat.
DATA : wabldat4 LIKE zcta_podates-podat.
DATA : wabldat5 LIKE zcta_podates-podat.
DATA : wabldat6 LIKE zcta_podates-podat.
DATA : wabldat7 LIKE zcta_podates-podat.
DATA :fname1 TYPE string.
DATA :w_fname1 TYPE string.
DATA : BEGIN OF itab1 OCCURS 0 ,
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(15),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
val3(10),
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zzcity LIKE ekpo-zzcity,
zzlangu LIKE ekpo-zzlangu,
zzedition LIKE ekpo-zzedition,
zzcolorhue LIKE ekpo-zzcolorhue,
zztypeofad LIKE ekpo-zztypeofad,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab1.
DATA :BEGIN OF itab2 OCCURS 0, " radio
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(12),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zzcity LIKE ekpo-zzcity,
zzprogramname LIKE ekpo-zzprogramname,
zzdealstructure LIKE ekpo-zzdealstructure,
zztimeband LIKE ekpo-zztimeband,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab2.
DATA :BEGIN OF itab3 OCCURS 0, "tv
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(12),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zzgenre LIKE ekpo-zzgenre,
zzprogramname LIKE ekpo-zzprogramname,
zzdealstructure LIKE ekpo-zzdealstructure,
zztimeband LIKE ekpo-zztimeband,
zzlangu LIKE ekpo-zzlangu,
zzcity(20), " LIKE ekpo-zzcity,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab3.
DATA :BEGIN OF itab4 OCCURS 0, "OUTDOOR
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(12),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
cond(12),
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zzcity LIKE ekpo-zzcity,
zzlocationorroad LIKE ekpo-zzlocationorroad,
zztypeofad LIKE ekpo-zztypeofad,
zztrafficdirtn LIKE ekpo-zztrafficdirtn,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab4.
DATA :BEGIN OF itab5 OCCURS 0, "INTERNET
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(12),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
cond(12),
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zztypeofad LIKE ekpo-zztypeofad,
zzsection LIKE ekpo-zzsection,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab5.
DATA :BEGIN OF itab6 OCCURS 0, "CINEMA
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(12),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
cond(12),
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzcity LIKE ekpo-zzcity,
zzlocationorroad LIKE ekpo-zzlocationorroad,
zzcinemaname LIKE ekpo-zzcinemaname,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab6.
DATA :BEGIN OF itab7 OCCURS 0, "OTHER MEDIA
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(12),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
val3(10),
val4(10),
zzformat LIKE ekpo-zzformat,
zcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zzcity LIKE ekpo-zzcity,
zzedition LIKE ekpo-zzedition,
zzcolorhue LIKE ekpo-zzcolorhue,
zztypeofad LIKE ekpo-zztypeofad,
zzlangu LIKE ekpo-zzlangu,
zzgenre LIKE ekpo-zzgenre,
zzprogramname LIKE ekpo-zzprogramname,
zzdealstructure LIKE ekpo-zzdealstructure,
zztimeband LIKE ekpo-zztimeband,
zzlocationorroad LIKE ekpo-zzlocationorroad,
zzsection LIKE ekpo-zzsection,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab7.
DATA :BEGIN OF itab8 OCCURS 0, "NO MEDIA
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
qty(12),
gross(12),
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzcity LIKE ekpo-zzcity,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF itab8.
DATA : BEGIN OF str OCCURS 0,
txz01 LIKE mepo1211-txz01,
werks LIKE mepo1211-name1,
srvpos LIKE esll-srvpos,
gross(15),
val1(10), "LIKE esll-frmval1,
val2(10), " LIKE esll-frmval2
val3(10),
val4(10),
zzformat LIKE ekpo-zzformat,
zzcampaign LIKE ekpo-zzcampaign,
zzmeansofad LIKE ekpo-zzmeansofad,
zzcity LIKE ekpo-zzcity,
zzlangu LIKE ekpo-zzlangu,
zzedition LIKE ekpo-zzedition,
zzcolorhue LIKE ekpo-zzcolorhue,
zztypeofad LIKE ekpo-zztypeofad,
zzillumination LIKE ekpo-zzillumination ,
zztrafficdirtn LIKE ekpo-zztrafficdirtn ,
zzstore LIKE ekpo-zzstore ,
zzcasting LIKE ekpo-zzcasting ,
zzgenre LIKE ekpo-zzgenre ,
zzsection LIKE ekpo-zzsection ,
zznumberofdays LIKE ekpo-zznumberofdays ,
zzprogramname LIKE ekpo-zzprogramname ,
zzdealstructure LIKE ekpo-zzdealstructure ,
zztimeband LIKE ekpo-zztimeband ,
zzdate LIKE ekpo-zzdate ,
zzdaysofwk LIKE ekpo-zzdaysofwk ,
zzasnum LIKE ekpo-zzasnum ,
zzlocationorroad LIKE ekpo-zzlocationorroad ,
zzcinemaname LIKE ekpo-zzcinemaname ,
zzcapacity LIKE ekpo-zzcapacity ,
zzfield2 LIKE ekpo-zzfield2 ,
zzfield3 LIKE ekpo-zzfield3 ,
date1(10),
date2(10),
date3(10),
date4(10),
date5(10),
date6(10),
date7(10),
END OF str.
DATA :package(10) TYPE n VALUE '4747'.
DATA :subpackage(10) TYPE n VALUE '4748'.
DATA : l_po_header LIKE bapimepoheader.
DATA : l_po_headerx LIKE bapimepoheaderx.
DATA : l_purchaseorder LIKE bapimepoheader-po_number.
DATA : t_po_account LIKE bapimepoaccount OCCURS 0 WITH HEADER LINE.
DATA : t_po_accountx LIKE bapimepoaccountx OCCURS 0 WITH HEADER LINE.
DATA : t_po_servalue LIKE bapiesklc OCCURS 0 WITH HEADER LINE.
DATA : BEGIN OF t_po_items OCCURS 0.
INCLUDE STRUCTURE bapimepoitem.
DATA : END OF t_po_items.
DATA : BEGIN OF t_po_itemsx OCCURS 0.
INCLUDE STRUCTURE bapimepoitemx.
DATA : END OF t_po_itemsx.
DATA : BEGIN OF t_return OCCURS 0.
INCLUDE STRUCTURE bapiret2.
DATA : END OF t_return.
DATA : BEGIN OF t_po_services OCCURS 0.
INCLUDE STRUCTURE bapiesllc.
DATA : END OF t_po_services.
DATA: l_item(5) TYPE n,l_last_po(10).
*TABLES : zerror.
DATA lcounter(3) TYPE n.
DATA : l_errflag.
SELECTION-SCREEN:BEGIN OF BLOCK b1 WITH FRAME.
PARAMETER:x_lifnr LIKE ekko-lifnr .
PARAMETER:x_ekorg LIKE ekko-ekorg DEFAULT '9000' .
PARAMETER:x_ekgrp LIKE ekko-ekgrp .
PARAMETER:x_bukrs LIKE ekko-bukrs DEFAULT '0101' .
PARAMETER:x_bsart LIKE ekko-bsart DEFAULT 'ZNB1'.
PARAMETER:x_sdate LIKE ekko-bedat.
PARAMETER : x_edate LIKE ekko-bedat.
PARAMETER: pr_fn1 LIKE ibipparms-path OBLIGATORY.
PARAMETER: rad1 RADIOBUTTON GROUP gr1.
PARAMETER: rad2 RADIOBUTTON GROUP gr1.
PARAMETER: rad3 RADIOBUTTON GROUP gr1.
PARAMETER: rad4 RADIOBUTTON GROUP gr1.
PARAMETER: rad5 RADIOBUTTON GROUP gr1.
PARAMETER: rad6 RADIOBUTTON GROUP gr1.
PARAMETER: rad7 RADIOBUTTON GROUP gr1.
PARAMETER: rad8 RADIOBUTTON GROUP gr1.
SELECTION-SCREEN:END OF BLOCK b1 .
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pr_fn1.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = pr_fn1.
MOVE pr_fn1 TO w_fname1.
START-OF-SELECTION.
IF rad1 = 'X'.
PERFORM table_upload TABLES itab1.
ELSEIF rad2 = 'X'.
PERFORM table_upload TABLES itab2.
ELSEIF rad3 = 'X'.
PERFORM table_upload TABLES itab3.
ELSEIF rad4 = 'X'.
PERFORM table_upload TABLES itab4.
ELSEIF rad5 = 'X'.
PERFORM table_upload TABLES itab5.
ELSEIF rad6 = 'X'.
PERFORM table_upload TABLES itab6.
ELSEIF rad7 = 'X'.
PERFORM table_upload TABLES itab7.
ELSEIF rad8 = 'X'.
PERFORM table_upload TABLES itab8.
ENDIF.
LOOP AT str.
SHIFT str-srvpos RIGHT DELETING TRAILING ' '.
OVERLAY str-srvpos WITH '00000000000000000'.
MODIFY str.
ENDLOOP.
CLEAR : l_po_header.
PERFORM create_po_header.
LOOP AT str FROM 2 .
PERFORM append_item.
ENDLOOP.
PERFORM create_po.
WAIT UP TO 5 SECONDS.
SELECT * FROM ekpo INTO CORRESPONDING FIELDS OF TABLE iekpo WHERE ebeln = l_purchaseorder.
COMMIT WORK.
WAIT UP TO 5 SECONDS.
LOOP AT iekpo.
l_item = sy-tabix + 1.
READ TABLE str INDEX l_item.
iekpo-zzfield2 = str-zzfield2 .
iekpo-zzfield3 = str-zzfield3 .
iekpo-zzformat = str-zzformat .
iekpo-zzmeansofad = str-zzmeansofad .
iekpo-zzedition = str-zzedition .
iekpo-zzcolorhue = str-zzcolorhue .
iekpo-zztypeofad = str-zztypeofad .
iekpo-zzcity = str-zzcity .
iekpo-zzlangu = str-zzlangu .
iekpo-zzdaysofwk = str-zzdaysofwk .
iekpo-zzasnum = str-zzasnum .
iekpo-zzlocationorroad = str-zzlocationorroad .
iekpo-zzcinemaname = str-zzcinemaname .
iekpo-zzcapacity = str-zzcapacity .
iekpo-zzcampaign = str-zzcampaign .
iekpo-zzillumination = str-zzillumination .
iekpo-zztrafficdirtn = str-zztrafficdirtn .
iekpo-zzstore = str-zzstore .
iekpo-zzcasting = str-zzcasting .
iekpo-zzgenre = str-zzgenre .
iekpo-zzsection = str-zzsection .
iekpo-zznumberofdays = str-zznumberofdays .
iekpo-zzprogramname = str-zzprogramname .
iekpo-zzdealstructure = str-zzdealstructure .
iekpo-zztimeband = str-zztimeband .
iekpo-zzdate = str-zzdate .
MODIFY iekpo.
ENDLOOP.
WAIT UP TO 2 SECONDS.
COMMIT WORK.
WAIT UP TO 15 SECONDS.
UPDATE ekpo FROM TABLE iekpo.
COMMIT WORK.
WAIT UP TO 2 SECONDS.
SELECT * FROM ekko INTO CORRESPONDING FIELDS OF TABLE iekko WHERE ebeln = l_purchaseorder.
LOOP AT iekko.
iekko-kdatb = x_sdate.
iekko-kdate = x_edate.
MODIFY iekko.
ENDLOOP.
UPDATE ekko FROM TABLE iekko.
COMMIT WORK.
WAIT UP TO 1 SECONDS.
CLEAR l_item.
l_item = 10.
LOOP AT str FROM 2 .
CONCATENATE str-date1+6(4) str-date1+3(2) str-date1(2) INTO wabldat1.
CONCATENATE str-date2+6(4) str-date2+3(2) str-date2(2) INTO wabldat2.
CONCATENATE str-date3+6(4) str-date3+3(2) str-date3(2) INTO wabldat3.
CONCATENATE str-date4+6(4) str-date4+3(2) str-date4(2) INTO wabldat4.
CONCATENATE str-date5+6(4) str-date5+3(2) str-date5(2) INTO wabldat5.
CONCATENATE str-date6+6(4) str-date6+3(2) str-date6(2) INTO wabldat6.
CONCATENATE str-date7+6(4) str-date7+3(2) str-date7(2) INTO wabldat7.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '001'.
ipodates-podat = wabldat1.
APPEND ipodates.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '002'.
ipodates-podat = wabldat2.
APPEND ipodates.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '003'.
ipodates-podat = wabldat3.
APPEND ipodates.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '004'.
ipodates-podat = wabldat4.
APPEND ipodates.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '005'.
ipodates-podat = wabldat5.
APPEND ipodates.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '006'.
ipodates-podat = wabldat6.
APPEND ipodates.
ipodates-ebeln = l_purchaseorder.
ipodates-ebelp = l_item.
ipodates-linno = '007'.
ipodates-podat = wabldat7.
APPEND ipodates.
l_item = l_item + 10.
ENDLOOP.
WAIT UP TO 1 SECONDS.
MODIFY zcta_podates FROM TABLE ipodates.
COMMIT WORK.
WAIT UP TO 2 SECONDS.
ipodates-podat,ipodates-ebeln,ipodates-ebelp,ipodates-linno.
WAIT UP TO 5 SECONDS.
LOOP AT t_return.
WRITE :/ t_return-message.
ENDLOOP.
free : ipodates,iekpo,str,itab1,itab2,itab3,itab4,itab5,itab6,itab7,itab8.
*& Form create_po_header
FORM create_po_header .
l_po_header-comp_code = '0101'. " Company Code
l_po_header-doc_type = x_bsart. "'ZNB1'. " Order Typr BSART
l_po_header-creat_date = sy-datum. " P.O Dt - BEDAT
l_po_header-doc_date = sy-datum.
l_po_header-vendor = x_lifnr.
l_po_header-vper_start = x_sdate.
l_po_header-vper_end = x_edate.
l_po_header-purch_org = '9000'. " Purch. Org - EKKO-EKORG
l_po_header-pur_group = x_ekgrp. " Purch Group - EKKO-EKGRP
l_po_header-currency_iso = 'INR'.
CLEAR : l_po_headerx.
l_po_headerx-po_number = 'X'.
l_po_headerx-comp_code = 'X'." Company Code
l_po_headerx-doc_type = 'X'. " Order Typr BSART
l_po_headerx-vendor = 'X'. "Vendor - EKKO-LIFNR
l_po_headerx-purch_org = 'X'. " Purch. Org - EKKO-EKORG
l_po_headerx-pur_group = 'X'. " Purch Group - EKKO-EKGRP
l_po_headerx-currency_iso = 'X'. " Currency Default field for Enjoy
l_po_headerx-ref_1 = 'X'.
ENDFORM. " create_po_header
*& Form APPEND_ITEM
FORM append_item .
package = package + 2.
subpackage = package + 1.
l_item = l_item + 10.
t_po_items-po_item = l_item.
t_po_items-acctasscat = 'K'.
t_po_items-item_cat = 'D'.
t_po_items-short_text = str-txz01. .
t_po_items-plant = str-werks . " P
t_po_items-tax_code = 'S1'.
t_po_items-pckg_no = package. " 4748. "package.
APPEND t_po_items.
CLEAR t_po_items.
t_po_itemsx-po_item = l_item.
t_po_itemsx-po_itemx = 'X'.
t_po_itemsx-acctasscat = 'X'.
t_po_itemsx-item_cat = 'X'.
t_po_itemsx-short_text = 'X'.
t_po_itemsx-plant = 'X'.
t_po_itemsx-tax_code = 'X'.
t_po_itemsx-pckg_no = 'X'.
APPEND t_po_itemsx.
CLEAR t_po_itemsx.
t_po_account-po_item = l_item.
t_po_account-serial_no = 1.
t_po_account-quantity = 1.
t_po_account-distr_perc = '00'.
t_po_account-costcenter = '0006079000'. " 'BR034'.
t_po_account-gl_account = '0054014071'. "'0000135075'.
t_po_account-co_area = '1001'.
APPEND t_po_account.
CLEAR t_po_account.
t_po_accountx-po_item = l_item.
t_po_accountx-serial_no = 1.
t_po_accountx-quantity = 'X'.
t_po_accountx-distr_perc = 'X'.
t_po_accountx-costcenter = 'X'.
t_po_accountx-gl_account = 'X'.
t_po_accountx-co_area = 'X'.
APPEND t_po_accountx.
CLEAR t_po_accountx.
t_po_services-pckg_no = package. "'4748'.
t_po_services-line_no = '0000000001' .
t_po_services-ext_line = '0000000000' .
t_po_services-outl_level = '0'.
t_po_services-outl_no = ' '.
t_po_services-outl_ind = 'X'.
t_po_services-subpckg_no = subpackage . "'4749'.
APPEND t_po_services. CLEAR t_po_services .
t_po_services-pckg_no = subpackage . "'4749'.
t_po_services-line_no = '0000000002' .
t_po_services-ext_line = '10' .
t_po_services-outl_level = '0'.
t_po_services-service = str-srvpos. "'000000000003000045'.
t_po_services-gr_price = str-gross. "'2000.00'.
t_po_services-form_val1 = str-val1. "'10.000'.
t_po_services-form_val2 = str-val2. "'33.000'.
if rad1 = 'x'.
t_po_services-form_val3 = str-val3. " '3.000'.
endif.
t_po_services-tax_code = 'S1'.
APPEND t_po_services. CLEAR t_po_services .
t_po_servalue-pckg_no = subpackage . "'4749'.
t_po_servalue-line_no = '0000000002' .
t_po_servalue-serial_no = '01'.
APPEND t_po_servalue . CLEAR t_po_servalue.
ENDFORM. " APPEND_ITEM
*& Form create_po
FORM create_po .
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
poheader = l_po_header
poheaderx = l_po_headerx
IMPORTING
exppurchaseorder = l_purchaseorder
TABLES
return = t_return
poitem = t_po_items
poitemx = t_po_itemsx
poaccount = t_po_account
poaccountx = t_po_accountx
poservices = t_po_services
posrvaccessvalues = t_po_servalue
WAIT UP TO 15 SECONDS.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
ENDFORM. " create_po
*& Form TABLE_UPLOAD
FORM table_upload TABLES p_itab1. " structure < itab1 #local# >
"Insert correct name for <...>.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = w_fname1
filetype = 'ASC'
has_field_separator = 'X'
read_by_line = 'X'
replacement = '#'
TABLES
data_tab = p_itab1.
LOOP AT p_itab1.
MOVE-CORRESPONDING p_itab1 TO str.
APPEND str.
CLEAR p_itab1.
ENDLOOP.
* WAIT UP TO 5 SECONDS.
ENDFORM. " TABLE_UPLOADHi,
Check this sample code..how to use the BAPI_PO_CREATE1.
REPORT Z_TEST_PO .
*DATA DECLARATION
CONSTANTS : C_X VALUE 'X'.
*Structures to hold PO header data
DATA : HEADER LIKE BAPIMEPOHEADER ,
HEADERX LIKE BAPIMEPOHEADERX .
*Structures to hold PO account data
DATA : ACCOUNT LIKE BAPIMEPOACCOUNT OCCURS 0 WITH HEADER LINE ,
ACCOUNTX LIKE BAPIMEPOACCOUNTX OCCURS 0 WITH HEADER LINE .
*Internal Tables to hold PO ITEM DATA
DATA : ITEM LIKE BAPIMEPOITEM OCCURS 0 WITH HEADER LINE,
ITEMX LIKE BAPIMEPOITEMX OCCURS 0 WITH HEADER LINE,
*Internal table to hold messages from BAPI call
RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE,
*Internal table to hold messages from BAPI call
POCONTRACTLIMITS LIKE BAPIESUCC OCCURS 0 WITH HEADER LINE.
DATA : W_HEADER(40) VALUE 'PO Header',
PURCHASEORDER LIKE BAPIMEPOHEADER-PO_NUMBER,
DELIVERY_DATE LIKE BAPIMEPOSCHEDULE-DELIVERY_DATE.
DATA : WS_LANGU LIKE SY-LANGU.
*text-001 = 'PO Header' - define as text element
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS : COMPANY LIKE HEADER-COMP_CODE DEFAULT '122' ,
DOCTYP LIKE HEADER-DOC_TYPE DEFAULT 'NB' ,
CDATE LIKE HEADER-CREAT_DATE DEFAULT SY-DATUM ,
VENDOR LIKE HEADER-VENDOR DEFAULT '2000000012' ,
PUR_ORG LIKE HEADER-PURCH_ORG DEFAULT 'PU01' ,
PUR_GRP LIKE HEADER-PUR_GROUP DEFAULT '005' .
*sociedad like HEADER-COMP_CODE default '122' ,
*vendedor like HEADER-SALES_PERS default 'sale person'.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
PARAMETERS : ITEM_NUM LIKE ITEM-PO_ITEM DEFAULT '00010',
MATERIAL LIKE ITEM-MATERIAL DEFAULT '12000000' ,
TIPO_IMP LIKE ITEM-ACCTASSCAT DEFAULT 'K' ,
*pos_doc like ITEM-ITEM_CAT default 'F' ,
SHORTTXT LIKE ITEM-SHORT_TEXT DEFAULT 'PRUEBA BAPI' ,
GRUP_ART LIKE ITEM-MATL_GROUP DEFAULT '817230000' ,
PLANT LIKE ITEM-PLANT DEFAULT '3001' ,
MPE LIKE ITEM-TRACKINGNO DEFAULT '9999' ,
*contrato like ITEM-AGREEMENT default '4904000003' ,
*quantity like ITEM-QUANTITY default 1 .
PO_UNIT LIKE ITEM-PO_UNIT DEFAULT 'EA'.
SELECTION-SCREEN END OF BLOCK B2.
* Par?mnetros de imputaci?n
SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-004.
PARAMETERS : CENTRO LIKE ACCOUNT-COSTCENTER DEFAULT '1220813150',
CUENTA LIKE ACCOUNT-GL_ACCOUNT DEFAULT '6631400' ,
NUM_POS LIKE ACCOUNT-PO_ITEM DEFAULT '10' ,
SERIAL LIKE ACCOUNT-SERIAL_NO DEFAULT '01' ,
IND_IMP LIKE ACCOUNT-TAX_CODE DEFAULT 'I2' .
SELECTION-SCREEN END OF BLOCK B3.
START-OF-SELECTION.
*DATA POPULATION
WS_LANGU = SY-LANGU. "Language variable
*POPULATE HEADER DATA FOR PO
*HEADER-COMP_CODE = sociedad .
HEADER-DOC_TYPE = DOCTYP .
HEADER-VENDOR = VENDOR .
HEADER-CREAT_DATE = CDATE .
HEADER-CREATED_BY = 'TD17191' .
HEADER-PURCH_ORG = PUR_ORG .
HEADER-PUR_GROUP = PUR_GRP .
HEADER-COMP_CODE = COMPANY .
HEADER-LANGU = WS_LANGU .
*HEADER-SALES_PERS = vendedor .
*HEADER-CURRENCY = 'DOP' .
*HEADER-ITEM_INTVL = 10 .
*HEADER-PMNTTRMS = 'N30' .
*HEADER-EXCH_RATE = 1 .
*POPULATE HEADER FLAG.
HEADERX-COMP_CODE = C_X.
HEADERX-DOC_TYPE = C_X.
HEADERX-VENDOR = C_X.
HEADERX-CREAT_DATE = C_X.
HEADERX-CREATED_BY = C_X.
HEADERX-PURCH_ORG = C_X.
HEADERX-PUR_GROUP = C_X.
HEADERX-LANGU = C_X.
*HEADERX-sales_pers = c_x.
*HEADERX-CURRENCY = c_x.
*HEADER-ITEM_INTVL = c_x.
*HEADER-PMNTTRMS = c_x.
*HEADER-EXCH_RATE = c_x.
*HEADER-EXCH_RATE = c_x.
*POPULATE ITEM DATA.
ITEM-PO_ITEM = ITEM_NUM.
ITEM-QUANTITY = '1'.
*ITEM-MATERIAL = material .
ITEM-SHORT_TEXT = 'prueba bapi_po_create1'.
*ITEM-TAX_CODE = ''.
ITEM-ACCTASSCAT = 'K' .
*ITEM-ITEM_CAT = 'D' .
ITEM-MATL_GROUP = '817230000' .
ITEM-PLANT = '3001' .
ITEM-TRACKINGNO = '99999'.
ITEM-PREQ_NAME = 'test'.
*ITEM-AGREEMENT = '' .
*ITEM-AGMT_ITEM = ''.
ITEM-QUANTITY = '1' .
ITEM-PO_UNIT = 'EA'.
*ITEM-ORDERPR_UN = 'EA'.
ITEM-CONV_NUM1 = '1'.
ITEM-CONV_DEN1 = '1'.
ITEM-NET_PRICE = '1000000' .
ITEM-PRICE_UNIT = '1'.
ITEM-GR_PR_TIME = '0'.
ITEM-PRNT_PRICE = 'X'.
ITEM-UNLIMITED_DLV = 'X'.
ITEM-GR_IND = 'X' .
ITEM-IR_IND = 'X' .
ITEM-GR_BASEDIV = 'X'.
*ITEM-PCKG_NO = '' .
APPEND ITEM. CLEAR ITEM.
*POPULATE ITEM FLAG TABLE
ITEMX-PO_ITEM = ITEM_NUM.
ITEMX-PO_ITEMX = C_X.
*ITEMX-MATERIAL = C_X.
ITEMX-SHORT_TEXT = C_X.
ITEMX-QUANTITY = C_X.
*ITEMX-TAX_CODE = C_X.
ITEMX-ACCTASSCAT = C_X.
*ITEMX-ITEM_CAT = c_x.
ITEMX-MATL_GROUP = C_X.
ITEMX-PLANT = C_X.
ITEMX-TRACKINGNO = C_X.
ITEMX-PREQ_NAME = C_X.
*ITEMX-AGREEMENT = C_X.
*ITEMX-AGMT_ITEM = c_x.
ITEMX-STGE_LOC = C_X.
ITEMX-QUANTITY = C_X.
ITEMX-PO_UNIT = C_X.
*ITEMX-ORDERPR_UN = C_X.
ITEMX-CONV_NUM1 = C_X.
ITEMX-CONV_DEN1 = C_X.
ITEMX-NET_PRICE = C_X.
ITEMX-PRICE_UNIT = C_X.
ITEMX-GR_PR_TIME = C_X.
ITEMX-PRNT_PRICE = C_X.
ITEMX-UNLIMITED_DLV = C_X.
ITEMX-GR_IND = C_X .
ITEMX-IR_IND = C_X .
ITEMX-GR_BASEDIV = C_X .
APPEND ITEMX. CLEAR ITEMX.
*POPULATE ACCOUNT DATA.
ACCOUNT-PO_ITEM = ITEM_NUM.
ACCOUNT-SERIAL_NO = SERIAL .
ACCOUNT-CREAT_DATE = SY-DATUM .
ACCOUNT-COSTCENTER = CENTRO .
ACCOUNT-GL_ACCOUNT = CUENTA .
ACCOUNT-GR_RCPT = 'tester'.
APPEND ACCOUNT. CLEAR ACCOUNT.
*POPULATE ACCOUNT FLAG TABLE.
ACCOUNTX-PO_ITEM = ITEM_NUM .
ACCOUNTX-PO_ITEMX = C_X .
ACCOUNTX-SERIAL_NO = SERIAL .
ACCOUNTX-SERIAL_NOX = C_X .
ACCOUNTX-CREAT_DATE = C_X .
ACCOUNTX-COSTCENTER = C_X .
ACCOUNTX-GL_ACCOUNT = C_X .
ACCOUNT-GR_RCPT = C_X.
APPEND ACCOUNTX. CLEAR ACCOUNTX.
*BAPI CALL
CALL FUNCTION 'DIALOG_SET_NO_DIALOG'.
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
POHEADER = HEADER
POHEADERX = HEADERX
IMPORTING
EXPPURCHASEORDER = PURCHASEORDER
TABLES
RETURN = RETURN
POITEM = ITEM
POITEMX = ITEMX
POACCOUNT = ACCOUNT
POACCOUNTX = ACCOUNTX.
*Confirm the document creation by calling database COMMIT
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'
* IMPORTING
* RETURN =
END-OF-SELECTION.
*Output the messages returned from BAPI call
LOOP AT RETURN.
WRITE / RETURN-MESSAGE.
ENDLOOP.
Regards
vijay -
Bapi for createing purchase order
Hi,
when i'm creating PO by BAPI BAPI_PO_CREATE1
given error message is comming
No instance of object type PurchaseOrder has been created. External reference:
PO header data still faulty
can any body help me out.
thanks
mukeshThanks for reply , pl. help me.
THIS IS MY HEADER PARAMETER
poheaderx-po_number = 'X'.
POHEADERx-PURCH_ORG = 'X' .
POHEADERx-PUR_GROUP = 'X'.
*POHEADER-CURRENCY =
*POHEADER-CURRENCY_ISO
*POHEADER-EXCH_RATE
POHEADERX-ITEM_INTVL = 'X'.
POHEADERx-DOC_DATE = 'X'.
POHEADERx-DOC_TYPE = 'X' .
POHEADERx-COMP_CODE = 'X'.
POHEADERx-CREAT_DATE = 'X'.
POHEADERx-VENDOR = 'X' .
POHEADERx-CREATED_BY = 'X' .
POHEADERx-PMNTTRMS = 'X'.
POHEADERx-INCOTERMS1 = 'X' .
POHEADERx-INCOTERMS2 = 'X' .
POHEADERX-LANGU = 'X'.
POHEADERX-EXCH_RATE = 'X'.
POHEADERX-STATUS = 'X'.
POHEADERX-SUPPL_VEND = 'X'.
poheaderx-delete_ind = 'X'.
poheaderx-our_ref = 'X'.
poheaderx-currency_iso = 'X'.
poheaderx-dscnt1_to = 'X'.
poheaderx-dscnt2_to = 'X'.
poheaderx-dscnt3_to = 'X'.
poheaderx-dsct_pct1 = 'X'.
poheaderx-dsct_pct2 = 'X'.
poheaderx-LANGU_ISO = 'X'.
poheaderx-CURRENCY = 'X'.
poheaderx-EX_RATE_FX = 'X'.
poheaderx-VPER_START = 'X'.
poheaderx-VPER_END = 'X'.
poheaderx-WARRANTY = 'X'.
poheaderx-QUOTATION = 'X'.
poheaderx-QUOT_DATE = 'X'.
poheaderx-REF_1 = 'X'.
poheaderx-SALES_PERS = 'X'.
poheaderx-LOGSYSTEM = 'X'.
poheaderx-SUBITEMINT = 'X'.
poheaderx-PO_REL_IND = 'X'.
poheaderx-REL_STATUS = 'X'.
poheaderx-VAT_CNTRY = 'X'.
poheaderx-VAT_CNTRY_ISO = 'X'.
poheaderx-REASON_CANCEL = 'X'.
poheaderx-REASON_CODE = 'X'.
POHEADER-PURCH_ORG = 'DUPO' .
POHEADER-PUR_GROUP = 'D01'.
POHEADER-CURRENCY = 'AED'.
*POHEADER-CURRENCY_ISO
POHEADER-ITEM_INTVL = '00001'.
POHEADER-DOC_DATE = SY-DATUM.
POHEADER-DOC_TYPE = 'N10' . "NB
POHEADER-COMP_CODE = 'BSGL'.
POHEADER-CREAT_DATE = SY-DATUM.
POHEADER-VENDOR = '0000351466' .
POHEADER-CREATED_BY = sy-uname.
POHEADER-PMNTTRMS = '0001'.
POHEADER-INCOTERMS1 = 'EXW' .
POHEADER-INCOTERMS2 = 'PLANT' .
POHEADER-LANGU = sy-langu.
POHEADER-EXCH_RATE = '1'.
POHEADER-STATUS = '9'.
POHEADERX-SUPPL_VEND = '0000351466'.
poheader-our_ref = 'REF'.
ITEM LEVEL PARAMETERS
POITEM-EMATERIAL = WMATNR .
POITEM-MATERIAL = WMATNR .
POITEM-PLANT = 'DUBI' .
POITEM-QUANTITY = '1' .
POITEM-PO_UNIT = 'MTS' .
POITEM-NET_PRICE = '2500' .
POITEM-TAX_CODE = 'DT'.
POITEM-BATCH = '0001331951'.
POITEM-matl_group = '48200'.
POITEM-PO_ITEM = '0001' .
POITEM-stge_loc = 'DU01'.
POITEM-ITEM_CAT = '0'.
APPEND POITEM.
POITEMX-EMATERIAL = 'X'.
POITEMX-MATERIAL = 'X' .
POITEMX-PLANT = 'X' .
POITEMX-QUANTITY = 'X' .
POITEMX-price_unit = 'X' .
POITEMX-NET_PRICE = 'X' .
POITEMX-TAX_CODE = 'X'.
POITEMX-BATCH = 'X'.
POITEMX-PO_ITEM = '0001' .
POITEMX-item_cat = 'X'.
POITEMX-ITEM_CAT = 'X' .
poitemx-matl_group = 'X' .
APPEND POITEMX. -
Bapi for release purchase order
Hi Experts
Is there any BAPI available to release the Purchae Order.
Pls advise me to do the same.
regards
rajaramhi,
check this fm.
ME_RELEASE_PURCHASE_DOCUMENT.
WOD1_RELEASE_PURCHASE_ORDER. -
Record Purchase order confirmation via FM
Hi all,
I'm searching for FM for recording Purchase order confirmation.
Any suggestions ?
Thanks,
Shai E.ME_CONFIRMATION_UPDATE ...but its tricky its does direct table update ..(EKES table will be updated directly)
-
FM / BAPI Inbound delivery creation for a Purchase Order without material
Dear All,
I have a requirement to create a Inbound Delivery for a Purchase order without material number. The Purchase Order has only Material text and no material number. Please let me know a BAPI or FM to create inbound delivery in this case where there is no material defined on PO. I require BAPI / FM since I have to make a web-service for the same.
Thanks in advance!
AbhishekHi I did a coding in one of the userexit. If ekpo-matnr is empty then fill
KOMDLGN-UMVKZ = 1
KOMDLGN-UMVKN = 1
KOMDLGN-MEINS = EKPO-MEINS
This parameters i.e. Qty conversion are necessary and since MATNR does not exists it has to be filled. -
Problem for Goods Receipt for Subcontracting Purchase Order
Dear all,
Presently, we are using SAP version 4.6C and we need to introduce GR for
Subcontracting Purchase Order. We have developed a ABAP program to handle
subcon Goods Receipt by uploading flat-files from our subcontractor. The
scenario is as follows :
Goods Receipt for Subcontracting Purchase Order
1. In the ABAP program, function BAPI_GOODSMVT_CREATE will be used for goods
movement.
2. Data provided to the function are as follows :
- Posting date
- Document date
- Material number
- Plant
- Storage location
- Batch
- Movement type (101)
- Quantity
- Purchase order number
- Purchase order item
- Movement indicator (B - Goods receipt for purchase order)
3. The function will do data verification and automatically determine GI
item for subcon stock:
- Movement type (543)
- Special stock (O - parts prov. vendor)
- Material
- Quantity
- Plant
Our problem is that :
Only the GR item in the interface is to be transferred and the GI item is
determined by the system. So, the quantity for subcon stock cannot be
changed using this BAPI. Then the system will continue processing the goods
receipt and create material document.
Manually, by using transaction code MIGO, the user can display the subcon
stock data and then change the quantity.
By using transaction code MB01, after the user fills in all the GR fields,
the system comes to line item 002 (subcon stock data) and then quantity can
be changed.
As per user requirement, quantity for GI item must be same with the quantity
that has been transferred to subcon vendor in Delivery for Subcon
(transaction code VL02N).
We cannot achieve this requirement by using the BAPI mentioned above. Would
appreciate any valuable help from anyone who is able to help us on this
matter. Are there any other BAPI's that can help us to achieve the same
result ?
Thank you in advance and best regards.As far as i understood the problem I suggest u to create the
BDC according to user actions that are performed in he manual
operation.
I can't say that the BAPI performs the exac solution what you want.
I have done some BDC work using MB01 and suggest you to be careful
and try to keep the complete in the logic as some chages in rows in BDC will
change the complete scenario.And throw correct quantity val in correct
material
row.
This methodology will help u even in mass uploads.
Or in case of automation u can perform the call transaction BDC in
background mode.
so As per my understanding bdc program is the solution. pls try and let me
know. -
Regarding Purchase order Confirmation
Hi,
I have a flat file from which we have to update the Purchase Order Confirmations at item level.
Is there any Function Module for this ? Because right now i am using BDC for this ?Hi Manju,
i have got the requirement to change the PO items at confirmation tab, i tried with bapi but it is not working, can u please forward the piece of code if u have.
Regards,
D. Raghu Ram. -
Create, Update, Delete purchase order confirmations
Hi all,
How can I maintain confirmations data for a purchase order ?
I'm looking for a function module or a BAPI to do this ...
I tried to update data in SAP table EKES but I have a lot of problems when I access to my modified PO with transaction ME22(23)N, moreover data are false in MD04.
Regards Julien.Hi,
check out this link for BAPI's:
http://www.sapbapi.com/bapi-list/
and check out this link for FM's:
http://www.erpgenie.com/abap/functions.htm
With luck,
Pritam. -
Data Migration for Open Purchase Order
Hi, All,
Is there anyone know how to Count the volume for Open Purchase Order. What's the normal strategy for the Data Migration and Cut-over stage?
My client want to know how many Open Purchase Order in the legacy system and then determine manual or automatic data migration. If manual, how to do? If automatic, how to do? Because all materials and vendors, plants are different number. How to track? How to find out to match between new and old?
Thank you very muchJC,
Sounds a bit early to be making decisions about the realization phase. It doesn't sound like you have finished the Blueprinting phase yet, much less the testing phase.
Anyhow, in my experience I typically use LSMW (Legacy system migration workbench) to load MM master data (material masters), Inventory (WIP, RM, FG, etc) Purchasing Master data (Vendors, Purchase Info Records, Source Lists, Quota Arrangements), and Purchasing transactional documents (POs, PurReqs, Scheduling Agreements, etc). Depending on the complexity and volume of data, it may be necessary to write custom programs to load the data. You will find this out during your requirements gathering.
It is uncommon but possible to load all of these data manually. I have never run across a client that wants to pay a consultant's hourly rate to sit at a terminal to peck away loading master data, so if the client intends to have his own users enter the data manually, the project manager should make provision that there will be qualified TRAINED client employees available for this data entry. I did help with a portion of a conversion once manually; of Sales Credits, but there were only about 30 SD docs to load. I did this the evening before go-live day, while I was waiting for some of my LSMW projects to complete in the background.
A good opportunity to 'practice' your data loads is right after you have completed your development and customization, and you have gotten the approval from the client to proceed from the pilot build to the full test environment. Once you have moved your workbench and customization into the client's test environment, but before integration testing, you can mass load all, or a substantial portion of your conversion data into the qual system. You can treat it like a dry run for go-live, and fine tune your processes, as well as your LSMW projects.
Yes, it is good practice to generate comparisons between legacy and SAP even if the client doesn't ask for it. For Purchase orders on the SAP side, you could use any of the standard SAP Purchasing reports, such as ME2W, ME2M, ME2C, ME2L, ME2N. If these reports do not meet the requirements of the client, you could write a query to display the loaded data, or have an ABAPer write a custom report.
You didn't ask, but you should also do comparisons of ALL loaded data - including master data.
It sounds like you are implying that the client wants YOU to extract the legacy data. For an SAP consultant, this is not very realistic (unless the legacy system is another SAP system). Most of us do not understand the workings of the myriad legacy systems. The client is usually expected to produce one or more legacy system technical experts for you to liase with. You normally negotiate with the technical expert about every facet of of the data migration. In addition, you will liase with business users, who will help you and the implementation team to logically validate that the final solution (turnkey SAP production system, fully loaded with data) will meet the client's business needs.
Finally, you mentioned how do you track the mapping of master data between legacy and SAP. There are many ways to do this. I normally try to get the legacy person do the conversion on his end, eg, when he gives you the load file, you would like to have already translated the master data and inserted the SAP relevant values into the file. If this is not possible, I usually use MS Access databases to maintain a master map, and I perform the mapping on a PC. If your data package is small, you can probably get by using MS Excel or similar.
Good Luck,
DB49
Maybe you are looking for
-
Enable of Goods Receipt Indicator in PO
Hi Experts, When I am using the combination of Account Assgt. Category "N" (Network) and item category "D" (service) in ECC 6.0 to create PO (ME21N) for Invoicing Plan in item details of "Delivery" tab, the Goods Receipt indicator was made in checke
-
Having trouble connecting Blackberry to computer
When I first got the phone I was able to connect the USB wire to my mac with ease and transfer photos, pictures, etc. I connected it again and when asked to connect I hit "Don't ask this question again" and accidently hit no. So now when I hook up my
-
Can't get photo gallery to work
Hello, Whatever help anyone can give me, is very much appreciated. I'm a novice to Dreamweaver and coding, and just can't get the photo gallery to work. I've printed out and studied a lot of Adobe Spry tutorials & samples but still can't figure out w
-
Can't start computer because of coloured wheel
Can't start computer because of coloured wheel
-
Localboot rules after ZDM7SP1IR4_HP2
Problem: Imaging rules on another product except "Dell 760" cannot run with "c1" rules or "put an image on this workstation on next boot" after the last service pack ZDM7SP1IR4_HP2 (localBoot) Environement: Before: Zenworks 7 sp1R3A Desktop managemen