‎2011 Jan 31 9:49 AM
I am trying to create a purchase requsition by BAPI_REQUISITION_CREATE
but need to find a way to add components to the new purchase requisition.
‎2011 Feb 16 2:53 PM
Hi,
I've seen this code in some sites. See it might help you.
LOOP AT it_requisiton_items INTO wa_requisiton_items.
READ TABLE it_vbap
INTO wa_vbap
WITH KEY posnr = wa_requisiton_items-bnfpo.
v_matnr = wa_vbap-matnr18.
v_bamei = wa_requisiton_items-meins.
Build table for call to BAPI
wa_requisition_items_bapi-doc_type = eban_s-bsart.
wa_requisition_items_bapi-purch_org = v_ekorg.
wa_requisition_items_bapi-deliv_date = wa_requisiton_items-lfdat.
wa_requisition_items_bapi-preq_item = wa_requisiton_items-bnfpo.
wa_requisition_items_bapi-quantity = wa_requisiton_items-menge.
wa_requisition_items_bapi-unit = wa_requisiton_items-meins.
wa_requisition_items_bapi-material = v_matnr.
wa_requisition_items_bapi-item_cat = wa_requisiton_items-pstyp.
wa_requisition_items_bapi-acctasscat = wa_requisiton_items-knttp.
wa_requisition_items_bapi-des_vendor = wa_requisiton_items-lifnr.
wa_requisition_items_bapi-fixed_vend = wa_requisiton_items-flief.
wa_requisition_items_bapi-plant = wa_requisiton_items-werks.
wa_requisition_items_bapi-store_loc = wa_requisiton_items-lgort.
wa_requisition_items_bapi-c_amt_bapi = wa_requisiton_items-preis.
wa_requisition_items_bapi-price_unit = wa_requisiton_items-peinh.
wa_requisition_items_bapi-purch_org = wa_requisiton_items-ekgrp.
wa_requisition_items_bapi-mat_grp = wa_requisiton_items-matkl.
IF wa_requisition_items_bapi-deliv_date IS INITIAL.
wa_requisition_items_bapi-deliv_date = wa_vbap-erdat.
ENDIF. "wa_requisition_items_bapi-deliv_date
APPEND wa_requisition_items_bapi TO it_requisition_items_bapi.
CLEAR wa_requisition_items_bapi.
ENDLOOP. "it_requisiton_items into wa_requisiton_items
CALL FUNCTION 'BAPI_REQUISITION_CREATE'
EXPORTING
SKIP_ITEMS_WITH_ERROR =
IMPORTING
number = preq_no
TABLES
requisition_items = it_requisition_items_bapi
requisition_account_assignment = it_requisition_assignment
REQUISITION_ITEM_TEXT =
REQUISITION_LIMITS =
REQUISITION_CONTRACT_LIMITS =
REQUISITION_SERVICES =
REQUISITION_SRV_ACCASS_VALUES =
return = it_return
REQUISITION_SERVICES_TEXT =
REQUISITION_ADDRDELIVERY =
EXTENSIONIN =
.
COMMIT WORK.
‎2011 Feb 16 2:53 PM
Hi,
I've seen this code in some sites. See it might help you.
LOOP AT it_requisiton_items INTO wa_requisiton_items.
READ TABLE it_vbap
INTO wa_vbap
WITH KEY posnr = wa_requisiton_items-bnfpo.
v_matnr = wa_vbap-matnr18.
v_bamei = wa_requisiton_items-meins.
Build table for call to BAPI
wa_requisition_items_bapi-doc_type = eban_s-bsart.
wa_requisition_items_bapi-purch_org = v_ekorg.
wa_requisition_items_bapi-deliv_date = wa_requisiton_items-lfdat.
wa_requisition_items_bapi-preq_item = wa_requisiton_items-bnfpo.
wa_requisition_items_bapi-quantity = wa_requisiton_items-menge.
wa_requisition_items_bapi-unit = wa_requisiton_items-meins.
wa_requisition_items_bapi-material = v_matnr.
wa_requisition_items_bapi-item_cat = wa_requisiton_items-pstyp.
wa_requisition_items_bapi-acctasscat = wa_requisiton_items-knttp.
wa_requisition_items_bapi-des_vendor = wa_requisiton_items-lifnr.
wa_requisition_items_bapi-fixed_vend = wa_requisiton_items-flief.
wa_requisition_items_bapi-plant = wa_requisiton_items-werks.
wa_requisition_items_bapi-store_loc = wa_requisiton_items-lgort.
wa_requisition_items_bapi-c_amt_bapi = wa_requisiton_items-preis.
wa_requisition_items_bapi-price_unit = wa_requisiton_items-peinh.
wa_requisition_items_bapi-purch_org = wa_requisiton_items-ekgrp.
wa_requisition_items_bapi-mat_grp = wa_requisiton_items-matkl.
IF wa_requisition_items_bapi-deliv_date IS INITIAL.
wa_requisition_items_bapi-deliv_date = wa_vbap-erdat.
ENDIF. "wa_requisition_items_bapi-deliv_date
APPEND wa_requisition_items_bapi TO it_requisition_items_bapi.
CLEAR wa_requisition_items_bapi.
ENDLOOP. "it_requisiton_items into wa_requisiton_items
CALL FUNCTION 'BAPI_REQUISITION_CREATE'
EXPORTING
SKIP_ITEMS_WITH_ERROR =
IMPORTING
number = preq_no
TABLES
requisition_items = it_requisition_items_bapi
requisition_account_assignment = it_requisition_assignment
REQUISITION_ITEM_TEXT =
REQUISITION_LIMITS =
REQUISITION_CONTRACT_LIMITS =
REQUISITION_SERVICES =
REQUISITION_SRV_ACCASS_VALUES =
return = it_return
REQUISITION_SERVICES_TEXT =
REQUISITION_ADDRDELIVERY =
EXTENSIONIN =
.
COMMIT WORK.