Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

BAPI_PO_CREATE1 for conditions

Former Member
0 Likes
1,069

Hi,

I need to upload conditions data. i am able to create PO, But conditions data is not updating.

i am unable to map fields corectly.

i need to pass amount. that field is not available in POCOND tab.

can any one help me.

IF NOT wa_idata-cur2 IS INITIAL.

v_sno = v_sno + 1.

wa_pocond-itm_number = wa_idata-ebelp.

wa_pocond-cond_st_no = v_sno.

wa_pocond-cond_type = 'CUR2'.

wa_pocond-CONBASEVAL = wa_idata-cur2.

wa_pocond-change_id = 'U'.

wa_pocondx-itm_number = wa_idata-ebelp.

wa_pocondx-cond_st_no = v_sno.

wa_pocondx-cond_type = 'X'.

wa_pocondx-CONBASEVAL = 'X'.

wa_pocondx-change_id = 'X'.

APPEND wa_pocond TO i_pocond.

APPEND wa_pocondx TO i_pocondx.

CLEAR: wa_pocond, wa_pocondx.

ENDIF.

Regards,

Kiran.

1 ACCEPTED SOLUTION

Hi,

I need to upload conditions data. i am able to create PO, But conditions data is not updating.

i am unable to map fields corectly.

i need to pass amount. that field is not available in POCOND tab.

can any one help me.

IF NOT wa_idata-cur2 IS INITIAL.

v_sno = v_sno + 1.

wa_pocond-itm_number = wa_idata-ebelp.

wa_pocond-cond_st_no = v_sno.

wa_pocond-cond_type = 'CUR2'.

wa_pocond-CONBASEVAL = wa_idata-cur2.

wa_pocond-change_id = 'U'.

wa_pocondx-itm_number = wa_idata-ebelp.

wa_pocondx-cond_st_no = v_sno.

wa_pocondx-cond_type = 'X'.

wa_pocondx-CONBASEVAL = 'X'.

wa_pocondx-change_id = 'X'.

APPEND wa_pocond TO i_pocond.

APPEND wa_pocondx TO i_pocondx.

CLEAR: wa_pocond, wa_pocondx.

ENDIF.

Regards,

Kiran.

2 REPLIES 2
Read only

Former Member
0 Likes
781

CALL FUNCTION 'BAPI_PO_GETDETAIL1'

EXPORTING

PURCHASEORDER = WA_EKKO-EBELN

  • ACCOUNT_ASSIGNMENT = ' '

  • ITEM_TEXT = ' '

  • HEADER_TEXT = ' '

  • DELIVERY_ADDRESS = ' '

  • VERSION = ' '

  • SERVICES = ' '

IMPORTING

POHEADER = POHEADER

POEXPIMPHEADER = POEXPIMPHEADER

TABLES

RETURN = IT_RETURN

POITEM = IT_POITEM

  • POADDRDELIVERY =

  • POSCHEDULE =

  • POACCOUNT =

  • POCONDHEADER =

  • POCOND =

  • POLIMITS =

  • POCONTRACTLIMITS =

  • POSERVICES =

  • POSRVACCESSVALUES =

  • POTEXTHEADER =

  • POTEXTITEM =

  • POEXPIMPITEM =

  • POCOMPONENTS =

  • POSHIPPINGEXP =

  • POHISTORY =

  • POHISTORY_TOTALS =

  • POCONFIRMATION =

  • ALLVERSIONS =

  • POPARTNER =

  • EXTENSIONOUT =

.

*******************************************************************

IF POHEADER-PUR_GROUP = 'D01'.

  • PO_HEADER-PO_NUMBER = '4500002242' .

PO_HEADER-COMP_CODE = '5000'.

PO_HEADER-DOC_TYPE = 'NB'.

  • PO_HEADER-DELETE_IND = PO_HEADER-DELETE_IND

  • PO_HEADER-STATUS = PO_HEADER-STATUS .

  • PO_HEADER-CREAT_DATE = PO_HEADER-CREAT_DATE .

  • PO_HEADER-CREATED_BY = PO_HEADER-CREATED_BY

  • PO_HEADER-ITEM_INTVL PO_HEADER-ITEM_INTVL

PO_HEADER-VENDOR = '0000102710'.

  • PO_HEADER-PMNTTRMS = PO_HEADER-PMNTTRMS

  • PO_HEADER-DSCNT1_TO = PO_HEADER-DSCNT1_TO

  • PO_HEADER-DSCNT2_TO = PO_HEADER-DSCNT2_TO

  • PO_HEADER-DSCNT3_TO = PO_HEADER-DSCNT3_TO

  • PO_HEADER-DSCT_PCT1 = PO_HEADER-DSCT_PCT1

  • PO_HEADER-DSCT_PCT2 = PO_HEADER-DSCT_PCT2

PO_HEADER-PURCH_ORG = '1000'." PO_HEADER-PURCH_ORG

PO_HEADER-PUR_GROUP = 'E01'.

PO_HEADER-CURRENCY = 'USD'.

  • PO_HEADER-CURRENCY_ISO = PO_HEADER-CURRENCY_ISO

  • PO_HEADER-EXCH_RATE = PO_HEADER-EXCH_RATE

  • PO_HEADER-EX_RATE_FX = PO_HEADER-EX_RATE_FX

PO_HEADER-DOC_DATE = POHEADER-DOC_DATE - 1 .

  • PO_HEADER-VPER_START PO_HEADER-VPER_START

  • PO_HEADER-VPER_END PO_HEADER-VPER_END

  • PO_HEADER-WARRANTY PO_HEADER-WARRANTY

  • PO_HEADER-QUOTATION PO_HEADER-QUOTATION

  • PO_HEADER-QUOT_DATE PO_HEADER-QUOT_DATE

  • PO_HEADER-REF_1 PO_HEADER-REF_1

  • PO_HEADER-SALES_PERS PO_HEADER-SALES_PERS

  • PO_HEADER-TELEPHONE PO_HEADER-TELEPHONE

  • PO_HEADER-SUPPL_VEND PO_HEADER-SUPPL_VEND

  • PO_HEADER-CUSTOMER PO_HEADER-CUSTOMER

  • PO_HEADER-AGREEMENT PO_HEADER-AGREEMENT

  • PO_HEADER-GR_MESSAGE PO_HEADER-GR_MESSAGE

  • PO_HEADER-SUPPL_PLNT PO_HEADER-SUPPL_PLNT

  • PO_HEADER-INCOTERMS1 PO_HEADER-INCOTERMS1

  • PO_HEADER-INCOTERMS2 PO_HEADER-INCOTERMS2

  • PO_HEADER-COLLECT_NO PO_HEADER-COLLECT_NO

  • PO_HEADER-DIFF_INV PO_HEADER-DIFF_INV

  • PO_HEADER-OUR_REF PO_HEADER-OUR_REF

  • PO_HEADER-LOGSYSTEM PO_HEADER-LOGSYSTEM

  • PO_HEADER-SUBITEMINT PO_HEADER-SUBITEMINT

  • PO_HEADER-PO_REL_IND PO_HEADER-PO_REL_IND

  • PO_HEADER-REL_STATUS PO_HEADER-REL_STATUS

  • PO_HEADER-VAT_CNTRY PO_HEADER-VAT_CNTRY

  • PO_HEADER-VAT_CNTRY_ISO PO_HEADER-VAT_CNTRY_ISO

  • PO_HEADER-REASON_CANCEL PO_HEADER-REASON_CANCEL

  • PO_HEADER-REASON_CODE PO_HEADER-REASON_CODE

  • POHEADER-COMP_CODE = '5000'.

  • POHEADER-DOC_TYPE = 'ZIMP'.

**********************************************************************************************

LOOP AT IT_POITEM INTO WA_PO_ITEM WHERE DELETE_IND NE 'L'.

  • WA_ZMMSD_CYCLE-PILBUKRS = POHEADER-COMP_CODE.

  • WA_ZMMSD_CYCLE-PILEBELN = WA_EKKO-EBELN.

  • WA_ZMMSD_CYCLE-PILEBELP = WA_PO_ITEM-PO_ITEM.

  • WA_ZMMSD_CYCLE-PILMATNR = WA_PO_ITEM-MATERIAL.

  • WA_ZMMSD_CYCLE-PILMENGE = WA_PO_ITEM-QUANTITY.

WA_POITEM-PO_ITEM = WA_PO_ITEM-PO_ITEM.

  • WA_POITEM-DELETE_IND

  • WA_POITEM-SHORT_TEXT

WA_POITEM-MATERIAL = WA_PO_ITEM-MATERIAL.

  • WA_POITEM-MATERIAL_EXTERNAL

  • WA_POITEM-MATERIAL_GUID

  • WA_POITEM-MATERIAL_VERSION

  • WA_POITEM-EMATERIAL

  • WA_POITEM-EMATERIAL_EXTERNAL

  • WA_POITEM-EMATERIAL_GUID

  • WA_POITEM-EMATERIAL_VERSION

WA_POITEM-PLANT = '5001'.

WA_POITEM-STGE_LOC = 'CS01'.

  • WA_POITEM-TRACKINGNO

"WA_POITEM-MATL_GROUP = WA_PO_ITEM-MATL_GROUP.

  • WA_POITEM-INFO_REC

  • WA_POITEM-VEND_MAT

WA_POITEM-QUANTITY = WA_PO_ITEM-QUANTITY.

WA_POITEM-PO_UNIT = WA_PO_ITEM-PO_UNIT.

  • WA_POITEM-PO_UNIT_ISO

  • WA_POITEM-ORDERPR_UN

  • WA_POITEM-ORDERPR_UN_ISO

  • WA_POITEM-CONV_NUM1

  • WA_POITEM-CONV_DEN1

WA_POITEM-NET_PRICE = '1'.

  • WA_POITEM-PRICE_UNIT

  • WA_POITEM-GR_PR_TIME

WA_POITEM-TAX_CODE = WA_PO_ITEM-TAX_CODE.

  • WA_POITEM-BON_GRP1

"WA_POITEM-QUAL_INSP = WA_PO_ITEM-QUAL_INSP.

" WA_POITEM-INFO_UPD = WA_PO_ITEM-INFO_UPD.

WA_POITEM-PRNT_PRICE = WA_PO_ITEM-PRNT_PRICE.

  • WA_POITEM-EST_PRICE

  • WA_POITEM-REMINDER1

  • WA_POITEM-REMINDER2

  • WA_POITEM-REMINDER3

  • WA_POITEM-OVER_DLV_TOL

  • WA_POITEM-UNLIMITED_DLV

  • WA_POITEM-UNDER_DLV_TOL

" WA_POITEM-VAL_TYPE = WA_PO_ITEM-VAL_TYPE.

  • WA_POITEM-NO_MORE_GR

  • WA_POITEM-FINAL_INV

  • WA_POITEM-ITEM_CAT = WA_PO_ITEM-ITEM_CAT.

  • WA_POITEM-ACCTASSCAT = WA_PO_ITEM-ACCTASSCAT.

  • WA_POITEM-DISTRIB = WA_PO_ITEM-DISTRIB.

  • WA_POITEM-PART_INV

WA_POITEM-GR_IND = WA_PO_ITEM-GR_IND.

  • WA_POITEM-GR_NON_VAL = WA_PO_ITEM-GR_NON_VA.

WA_POITEM-IR_IND = WA_PO_ITEM-IR_IND.

  • WA_POITEM-FREE_ITEM

WA_POITEM-GR_BASEDIV = WA_PO_ITEM-GR_BASEDIV.

  • WA_POITEM-ACKN_REQD

  • WA_POITEM-ACKNOWL_NO

  • WA_POITEM-AGREEMENT

  • WA_POITEM-AGMT_ITEM

  • WA_POITEM-SHIPPING

  • WA_POITEM-CUSTOMER

  • WA_POITEM-COND_GROUP

  • WA_POITEM-NO_DISCT

  • WA_POITEM-PLAN_DEL

"WA_POITEM-NET_WEIGHT = WA_PO_ITEM-NET_WEIGHT.

"WA_POITEM-WEIGHTUNIT = WA_PO_ITEM-WEIGHTUNIT.

  • WA_POITEM-WEIGHTUNIT_ISO

  • WA_POITEM-TAXJURCODE

  • WA_POITEM-CTRL_KEY

  • WA_POITEM-CONF_CTRL

  • WA_POITEM-REV_LEV

  • WA_POITEM-FUND

  • WA_POITEM-FUNDS_CTR

  • WA_POITEM-CMMT_ITEM

  • WA_POITEM-PRICEDATE

  • WA_POITEM-PRICE_DATE

"WA_POITEM-GROSS_WT = WA_PO_ITEM-GROSS_WT.

  • WA_POITEM-VOLUME

  • WA_POITEM-VOLUMEUNIT

  • WA_POITEM-VOLUMEUNIT_ISO

  • WA_POITEM-INCOTERMS1

  • WA_POITEM-INCOTERMS2

  • WA_POITEM-PRE_VENDOR

  • WA_POITEM-VEND_PART

  • WA_POITEM-HL_ITEM

WA_POITEM-GR_TO_DATE = WA_PO_ITEM-GR_TO_DATE.

  • WA_POITEM-SUPP_VENDOR = WA_PO_ITEM-SUPP_VENDOR.

  • WA_POITEM-SC_VENDOR = WA_PO_ITEM-SC_VENDOR.

  • WA_POITEM-KANBAN_IND

  • WA_POITEM-ERS

  • WA_POITEM-R_PROMO

  • WA_POITEM-POINTS

  • WA_POITEM-POINT_UNIT

  • WA_POITEM-POINT_UNIT_ISO

  • WA_POITEM-SEASON

  • WA_POITEM-SEASON_YR

  • WA_POITEM-BON_GRP2

  • WA_POITEM-BON_GRP3

  • WA_POITEM-SETT_ITEM

  • WA_POITEM-MINREMLIFE

  • WA_POITEM-RFQ_NO

  • WA_POITEM-RFQ_ITEM

  • WA_POITEM-PREQ_NO

  • WA_POITEM-PREQ_ITEM

  • WA_POITEM-REF_DOC

  • WA_POITEM-REF_ITEM

  • WA_POITEM-SI_CAT

  • WA_POITEM-RET_ITEM

  • WA_POITEM-AT_RELEV

  • WA_POITEM-ORDER_REASON

  • WA_POITEM-BRAS_NBM

  • WA_POITEM-MATL_USAGE

  • WA_POITEM-MAT_ORIGIN

  • WA_POITEM-IN_HOUSE

  • WA_POITEM-INDUS3

  • WA_POITEM-INF_INDEX

  • WA_POITEM-UNTIL_DATE

  • WA_POITEM-DELIV_COMPL

  • WA_POITEM-PART_DELIV

  • WA_POITEM-SHIP_BLOCKED

WA_POITEM-PREQ_NAME = WA_PO_ITEM-PREQ_NAME.

  • WA_POITEM-PERIOD_IND_EXPIRATION_DATE

  • WA_POITEM-INT_OBJ_NO

  • WA_POITEM-PCKG_NO

  • WA_POITEM-BATCH = WA_PO_ITEM-BATCH.

  • WA_POITEM-VENDRBATCH

  • WA_POITEM-CALCTYPE

  • WA_POITEM-GRANT_NBR

  • WA_POITEM-CMMT_ITEM_LONG

  • WA_POITEM-FUNC_AREA_LONG

  • WA_POITEM-NO_ROUNDING

  • WA_POITEM-PO_PRICE

  • WA_POITEM-SUPPL_STLOC

  • WA_POITEM-SRV_BASED_IV

  • WA_POITEM-FUNDS_RES

  • WA_POITEM-RES_ITEM

  • WA_POITEM-ORIG_ACCEPT

  • WA_POITEM-ALLOC_TBL

  • WA_POITEM-ALLOC_TBL_ITEM

  • WA_POITEM-SRC_STOCK_TYPE

  • WA_POITEM-REASON_REJ

  • WA_POITEM-CRM_SALES_ORDER_NO

  • WA_POITEM-CRM_SALES_ORDER_ITEM_NO

  • WA_POITEM-CRM_REF_SALES_ORDER_NO

  • CRM_REF_SO_ITEM_NO

  • WA_POITEM-PRIO_URGENCY

  • WA_POITEM-PRIO_REQUIREMENT

  • WA_POITEM-REASON_CODE

WA_POITEMX-PO_ITEM = WA_PO_ITEM-PO_ITEM.

WA_POITEMX-PO_ITEMX = 'X'.

WA_POITEMX-MATERIAL = 'X'.

WA_POITEMX-PLANT = 'X'.

WA_POITEMX-STGE_LOC = 'X'.

WA_POITEMX-MATL_GROUP = 'X'.

WA_POITEMX-QUANTITY = 'X'.

WA_POITEMX-NET_PRICE = 'X'.

WA_POITEMX-PRICE_UNIT = 'X'.

WA_POITEMX-TAX_CODE = 'X'.

WA_POITEMX-PRNT_PRICE = 'X'.

  • WA_POITEMX-VAL_TYPE = 'X'.

  • WA_POITEMX-ITEM_CAT = 'X'.

  • WA_POITEMX-ACCTASSCAT = 'X'.

  • WA_POITEMX-DISTRIB = 'X'.

WA_POITEMX-GR_IND = 'X'.

WA_POITEMX-IR_IND = 'X'.

WA_POITEMX-PREQ_NAME = 'X'.

WA_POITEMX-GR_BASEDIV = 'X'.

  • WA_POITEMX-NET_WEIGHT = 'X'.

  • WA_POITEMX-WEIGHTUNIT = 'X'.

  • WA_POITEMX-GROSS_WT = 'X'.

WA_POITEMX-GR_TO_DATE = 'X'.

APPEND WA_POITEMX TO POITEMX.

APPEND WA_POITEM TO POITEM.

ENDLOOP.

  • W_POHEADERX-PO_NUMBER = 'X'.

W_POHEADERX-COMP_CODE = 'X'.

W_POHEADERX-DOC_TYPE = 'X'.

  • W_POHEADERX-CREAT_DATE = 'X'.

  • W_POHEADERX-CREATED_BY = 'X'.

  • W_POHEADERX-ITEM_INTVL = 'X'.

W_POHEADERX-VENDOR = 'X'.

  • W_POHEADERX-LANGU

  • W_POHEADERX-LANGU_ISO

  • W_POHEADERX-PMNTTRMS = 'X'.

  • W_POHEADERX-DSCNT1_TO = 'X'.

  • W_POHEADERX-DSCNT2_TO = 'X'.

  • W_POHEADERX-DSCNT3_TO = 'X'.

  • W_POHEADERX-DSCT_PCT1 = 'X'.

  • W_POHEADERX-DSCT_PCT2 = 'X'.

W_POHEADERX-PURCH_ORG = 'X'.

W_POHEADERX-PUR_GROUP = 'X'.

W_POHEADERX-CURRENCY = 'X'.

  • W_POHEADERX-CURRENCY_ISO

  • W_POHEADERX-EXCH_RATE

  • W_POHEADERX-EX_RATE_FX

W_POHEADERX-DOC_DATE = 'X'.

  • W_POHEADERX-VPER_START

  • W_POHEADERX-VPER_END

  • W_POHEADERX-WARRANTY

  • W_POHEADERX-QUOTATION

  • W_POHEADERX-QUOT_DATE

  • W_POHEADERX-REF_1

  • W_POHEADERX-SALES_PERS

  • W_POHEADERX-TELEPHONE

  • W_POHEADERX-SUPPL_VEND

  • W_POHEADERX-CUSTOMER

  • W_POHEADERX-AGREEMENT

  • W_POHEADERX-GR_MESSAGE

  • W_POHEADERX-SUPPL_PLNT

  • W_POHEADERX-INCOTERMS1

  • W_POHEADERX-INCOTERMS2

  • W_POHEADERX-COLLECT_NO

  • W_POHEADERX-DIFF_INV

  • W_POHEADERX-OUR_REF

  • W_POHEADERX-LOGSYSTEM

  • W_POHEADERX-SUBITEMINT

  • W_POHEADERX-PO_REL_IND

  • W_POHEADERX-REL_STATUS

  • W_POHEADERX-VAT_CNTRY

  • W_POHEADERX-VAT_CNTRY_ISO

  • W_POHEADERX-REASON_CANCEL

  • W_POHEADERX-REASON_CODE

REFRESH IT_RETURN.

BREAK AAB_ABAP2.

CALL FUNCTION 'BAPI_PO_CREATE1'

EXPORTING

POHEADER = PO_HEADER

POHEADERX = W_POHEADERX

  • POADDRVENDOR =

  • TESTRUN =

  • MEMORY_UNCOMPLETE =

  • MEMORY_COMPLETE =

  • POEXPIMPHEADER =

  • POEXPIMPHEADERX =

  • VERSIONS =

  • NO_MESSAGING =

  • NO_MESSAGE_REQ =

  • NO_AUTHORITY =

  • NO_PRICE_FROM_PO =

IMPORTING

EXPPURCHASEORDER = EXPPURCHASEORDER

  • EXPHEADER =

  • EXPPOEXPIMPHEADER =

TABLES

RETURN = IT_RETURN

POITEM = POITEM

POITEMX = POITEMX

  • POADDRDELIVERY =

  • POSCHEDULE =

  • POSCHEDULEX =

  • POACCOUNT =

  • POACCOUNTPROFITSEGMENT =

  • POACCOUNTX =

  • POCONDHEADER =

  • POCONDHEADERX =

  • POCOND =

  • POCONDX =

  • POLIMITS =

  • POCONTRACTLIMITS =

  • POSERVICES =

  • POSRVACCESSVALUES =

  • POSERVICESTEXT =

  • EXTENSIONIN =

  • EXTENSIONOUT =

  • POEXPIMPITEM =

  • POEXPIMPITEMX =

  • POTEXTHEADER =

  • POTEXTITEM =

  • ALLVERSIONS =

  • POPARTNER =

  • POCOMPONENTS =

  • POCOMPONENTSX =

  • POSHIPPING =

  • POSHIPPINGX =

  • POSHIPPINGEXP =

.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = 'X'

  • IMPORTING

  • RETURN =

.

CLEAR : WA_RETURN.

READ TABLE IT_RETURN INTO WA_RETURN WITH KEY TYPE = 'S' .

IF SY-SUBRC = 0.

LOOP AT POITEM INTO WA_PO_ITEM WHERE DELETE_IND NE 'L'..

WA_ZMMSD_CYCLE-PILBUKRS = POHEADER-COMP_CODE.

WA_ZMMSD_CYCLE-PILEBELN = WA_EKKO-EBELN.

WA_ZMMSD_CYCLE-PILEBELP = WA_PO_ITEM-PO_ITEM.

WA_ZMMSD_CYCLE-PILMATNR = WA_PO_ITEM-MATERIAL.

WA_ZMMSD_CYCLE-PILMENGE = WA_PO_ITEM-QUANTITY.

WA_ZMMSD_CYCLE-PILMEINS = WA_PO_ITEM-PO_UNIT.

WA_ZMMSD_CYCLE-APMLBUKRS = PO_HEADER-COMP_CODE.

WA_ZMMSD_CYCLE-APMLEBELN = EXPPURCHASEORDER.

WA_ZMMSD_CYCLE-APMLEBELP = WA_PO_ITEM-PO_ITEM.

WA_ZMMSD_CYCLE-APMLMATNR = WA_PO_ITEM-MATERIAL.

WA_ZMMSD_CYCLE-APMLMENGE = WA_PO_ITEM-QUANTITY.

WA_ZMMSD_CYCLE-APMLMEINS = WA_PO_ITEM-PO_UNIT.

APPEND WA_ZMMSD_CYCLE TO IT_ZMMSD_CYCLE .

APPEND WA_ZMMSD_CYCLE TO IT_DATA.

CLEAR : WA_PO_ITEM,WA_ZMMSD_CYCLE.

ENDLOOP.

MODIFY ZMMSD_CYCLE FROM TABLE IT_ZMMSD_CYCLE.

COMMIT WORK.

WRITE : /' PO NUMBER', EXPPURCHASEORDER.

APPEND EXPPURCHASEORDER TO IT_EXPPURCHASEORDER.

ELSE.

WRITE : / 'ERRROR IN ITEM'.

ENDIF.

ENDIF.

CLEAR : PO_HEADER , WA_EKKO-EBELN,POHEADER, W_POHEADERX, POEXPIMPHEADER, EXPPURCHASEORDER.

REFRESH : IT_RETURN,

IT_POITEM,

POITEM,

IT_ZMMSD_CYCLE,

POITEMX.

ENDLOOP.

HOPE THIS WILL HELP U