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

Creating Contracts using BAPI_CONTRACT_CREATEFROMDATA

0 Likes
2,220

Hi All,

I am trying to create Contract using the BAPI

BAPI_CONTRACT_CREATEFROMDATA. I encountered errors

saying

SALES_HEADER_IN has been processed successfully

Please enter order quantity in quantity field of the same name

Error in SALES_ITEM_IN 000010

The Sales document is not yet complete

Sales document was not changed

I don't see any order qty field or there is no way to send the schedule line details.

Any body faced this problem...

Thanx in advance.

7 REPLIES 7
Read only

Former Member
0 Likes
1,480

Hi Ratish,

Well you have to populate the table CONTRACT_ITEMS_IN, where you store the line items. In this table you'll have to put in the quantity and the unit in the fields TARGET_QTY and TARGET_QU for all the corresponding line items.

Also make sure that you populate the fields TARGET_QTY and TARGET_QU in the table CONTRACT_ITEMS_INX to 'X'.

This is required to tell the BAPI which all fields in the line item you'd like to populate in the contract account.

Hope it helps.

Thanks, Debasish

Read only

0 Likes
1,480

Hi Debasish,

I did as you said, see the code

data: lv_con_hdr_in like bapisdhd1.

data: lv_return like bapiret2.

data: lv_docu_no like BAPIVBELN-VBELN.

data: lv_tgt_qty type DZMENG value 1.

data: conf_id type char6 value '000010',

inst_id type char8 value '00000001',

salesordernumber type vbeln.

data: begin of it_con_returns occurs 0.

include structure bapiret2.

data: end of it_con_returns.

data: begin of it_con_itm_in occurs 0.

include structure BAPISDITM.

data: end of it_con_itm_in.

data: begin of it_con_itm_chk_in occurs 0.

include structure BAPISDITMX.

data: end of it_con_itm_chk_in.

data: begin of it_con_partners occurs 0.

include structure BAPIPARNR.

data: end of it_con_partners.

data: begin of it_con_cfg_ref occurs 0.

include structure BAPICUCFG.

data: end of it_con_cfg_ref.

data: begin of it_con_cfg_inst occurs 0.

include structure BAPICUINS.

data: end of it_con_cfg_inst.

data: begin of it_con_cfg_part_of occurs 0.

include structure BAPICUPRT.

data: end of it_con_cfg_part_of.

data: begin of it_con_cfg_val occurs 0.

include structure BAPICUVAL.

data: end of it_con_cfg_val.

  • filling header data

lv_con_hdr_in-doc_type = 'ZBC'.

lv_con_hdr_in-sales_org = '1214'.

lv_con_hdr_in-distr_chan = '10'.

lv_con_hdr_in-division = '10'.

  • filling items details

it_con_itm_in-itm_number = '000010'.

it_con_itm_in-hg_lv_item = '000000'.

it_con_itm_in-material = 'KDRECLOSER'.

it_con_itm_in-alt_to_itm = '000000'.

it_con_itm_in-DLV_GROUP = '000'.

it_con_itm_in-add_val_dy = '00'.

it_con_itm_in-eXCHG_RATE = 0.

it_con_itm_in-TRG_QTY_NO = '0'.

it_con_itm_in-TRGQTY_DEN = '0'.

  • it_con_itm_in-RNDDLV_QTY = 0.

  • it_con_itm_in-COMP_QUANT = 1.

*

it_con_itm_in-MAXDEVAMNT = 0.

it_con_itm_in-MAXDEVPER = 00.

it_con_itm_in-MAXDEV_DAY = 0.

it_con_itm_in-OVERDLVTOL = 0.

it_con_itm_in-UNDDLV_TOL = 0.

it_con_itm_in-SALQTYNUM = 0.

it_con_itm_in-SALQTYDEN = 0.

it_con_itm_in-GROSS_WGHT = 0.

it_con_itm_in-NET_WEIGHT = 0.

it_con_itm_in-VOLUME = 0.

it_con_itm_in-DLV_PRIO = '00'.

it_con_itm_in-plant = '1237'.

it_con_itm_in-target_qty = 1.

it_con_itm_in-target_qu = 'EA'.

append it_con_itm_in.

    • filling items check in details

it_con_itm_chk_in-itm_number = 'X'.

it_con_itm_chk_in-hg_lv_item = 'X'.

it_con_itm_chk_in-material = 'X'.

it_con_itm_chk_in-plant = 'X'.

it_con_itm_chk_in-target_qty = 'X'.

it_con_itm_chk_in-target_qu = 'X'.

  • it_con_itm_chk_in-itm_number = '000010'.

it_con_itm_chk_in-UPDATEFLAG = 'U'.

*

append it_con_itm_chk_in.

  • filling partners details

it_con_partners-partn_role = 'AG'.

it_con_partners-partn_numb = '0000022140'.

it_con_partners-itm_number = '000000'.

append it_con_partners.

it_con_partners-partn_role = 'WE'.

it_con_partners-partn_numb = '0000022140'.

it_con_partners-itm_number = '000000'.

append it_con_partners.

    • filling config inst

it_con_cfg_ref-POSEX = '000010'.

it_con_cfg_ref-CONFIG_ID = conf_id.

it_con_cfg_ref-ROOT_ID = inst_id.

append it_con_cfg_ref.

  • filling config inst

it_con_cfg_inst-config_id = conf_id.

it_con_cfg_inst-inst_id = inst_id.

it_con_cfg_inst-obj_type = 'MARA'.

it_con_cfg_inst-class_type = 300.

it_con_cfg_inst-obj_key = 'KDRECLOSER'.

it_con_cfg_inst-obj_txt = 'D TYPE RECLOSER SINGLE PHASE, 15KV'.

it_con_cfg_inst-quantity = '1'.

append it_con_cfg_inst.

  • filling config partof

it_con_cfg_part_of-config_id = conf_id.

it_con_cfg_part_of-parent_id = inst_id.

it_con_cfg_part_of-inst_id = inst_id.

it_con_cfg_part_of-obj_type = 'MARA'.

it_con_cfg_part_of-class_type = 300.

it_con_cfg_part_of-obj_key = 'KDRECLOSER'.

append it_con_cfg_part_of.

  • filling config value

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_TANKS'.

it_con_cfg_val-charc_txt = 'TANK OPTIONS'.

it_con_cfg_val-value = 'STANDARD'.

it_con_cfg_val-value_txt = 'STANDARD TANK ASSEMBLY'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_ACCESSORYS'.

it_con_cfg_val-charc_txt = 'MISCELLANEOUS ACCY OPTIONS'.

it_con_cfg_val-value = 'NONE'.

it_con_cfg_val-value_txt = 'NONE REQUIRED'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_STENCILS_OR_DELINEATORS'.

it_con_cfg_val-charc_txt = 'STENCIL AND DELINEATOR OPTIONS'.

it_con_cfg_val-value = 'NONE'.

it_con_cfg_val-value_txt = 'NO STENCILS/DEL'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'PL003_TESTING'.

it_con_cfg_val-charc_txt = 'PRODUCTION TEST OPTIONS'.

it_con_cfg_val-value = 'STANDARD'.

it_con_cfg_val-value_txt = 'STANDARD TESTIN'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'PL003_TEST_REPORTS'.

it_con_cfg_val-charc_txt = 'TEST REPORT OPTIONS'.

it_con_cfg_val-value = 'NONE'.

it_con_cfg_val-value_txt = 'NO TEST REPORT'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'PL003_INSPECTION'.

it_con_cfg_val-charc_txt = 'INSPECTION OPTIONS'.

it_con_cfg_val-value = 'NO INSPECTION'.

it_con_cfg_val-value_txt = 'NO CUSTOMER INS'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KYLE_PACKAGING'.

it_con_cfg_val-charc_txt = 'KYLE PRODUCT SHIPMENT TYPE:'.

it_con_cfg_val-value = 'DOMESTIC'.

it_con_cfg_val-value_txt = 'DOMESTIC SHIPME'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_DOMESTIC_PACKAGING'.

it_con_cfg_val-charc_txt = 'DOMESTIC PACKAGING OPTIONS'.

it_con_cfg_val-value = 'KIE433'.

it_con_cfg_val-value_txt = 'STANDARD DOMEST'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'PRODUCT_EXTENDED_VALUES'.

it_con_cfg_val-charc_txt = 'ALL PRODUCTS EXTENDED VALUES'.

it_con_cfg_val-value = 'STANDARD VALUES'.

it_con_cfg_val-value_txt = 'SHOW STANDARD V'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_SWITCHES'.

it_con_cfg_val-charc_txt = 'LOCKOUT AND REMOTE INDICATION'.

it_con_cfg_val-value = 'NONE'.

it_con_cfg_val-value_txt = 'NO L/O OR REMOT'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_RECLOSER_BASIC_TYPE'.

it_con_cfg_val-charc_txt = 'KD GROUP BASIC TYPE'.

it_con_cfg_val-value = 'KD'.

it_con_cfg_val-value_txt = 'KD TYPE D RE'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_CURRENT_RATING'.

it_con_cfg_val-charc_txt = 'CONTINUOUS CURRENT RATING'.

it_con_cfg_val-value = '100'.

it_con_cfg_val-value_txt = '100 AMP SERIE'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_DELAYED_TIME_CURVE'.

it_con_cfg_val-charc_txt = 'DELAYED TIME-CURRENT YYYYY'.

it_con_cfg_val-value = 'B'.

it_con_cfg_val-value_txt = 'B DELAYED TIME'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_FAST_A_OPERATIONS'.

it_con_cfg_val-charc_txt = 'NUMBER OF FAST A-CURVE OPS'.

it_con_cfg_val-value = '2'.

it_con_cfg_val-value_txt = '2 FAST A CURVE'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_DELAYED_OPERATIONS'.

it_con_cfg_val-charc_txt = 'NUMBER OF DELAYED OPS'.

it_con_cfg_val-value = '2'.

it_con_cfg_val-value_txt = '2 DELAYED OPERA'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_CLOSING_COIL_CODE'.

it_con_cfg_val-charc_txt = 'CLOSING COIL CODE'.

it_con_cfg_val-value = '24'.

it_con_cfg_val-value_txt = '24 8.0-8.32 KV'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_BUSHINGS'.

it_con_cfg_val-charc_txt = 'BUSHING OPTIONS'.

it_con_cfg_val-value = 'KA126D'.

it_con_cfg_val-value_txt = 'KA126D 26&1/2'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KYLE_CUSTOM_ENGINEERING'.

it_con_cfg_val-charc_txt = 'CUSTOM ENGINEERING'.

it_con_cfg_val-value = 'STANDARD PRODUCT'.

it_con_cfg_val-value_txt = 'STANDARD PRODUC'.

append it_con_cfg_val.

it_con_cfg_val-config_id = conf_id.

it_con_cfg_val-inst_id = inst_id.

it_con_cfg_val-charc = 'KD_BUSHING_TERMINALS'.

it_con_cfg_val-charc_txt = 'BUSHING TERMINAL OPTIONS'.

it_con_cfg_val-value = 'NONE'.

it_con_cfg_val-value_txt = 'STANDARD BUSHIN'.

append it_con_cfg_val.

CALL FUNCTION 'BAPI_CONTRACT_CREATEFROMDATA'

EXPORTING

SALESDOCUMENTIN = lv_docu_no

CONTRACT_HEADER_IN = lv_con_hdr_in

  • CONTRACT_HEADER_INX =

  • SENDER =

  • BINARY_RELATIONSHIPTYPE = ' '

  • INT_NUMBER_ASSIGNMENT = ' '

  • BEHAVE_WHEN_ERROR = ' '

  • LOGIC_SWITCH =

  • TESTRUN =

  • CONVERT = ' '

  • IMPORTING

  • SALESDOCUMENT =

TABLES

RETURN = it_con_returns

CONTRACT_ITEMS_IN = it_con_itm_in

CONTRACT_ITEMS_INX = it_con_itm_chk_in

CONTRACT_PARTNERS = it_con_partners

  • CONTRACT_CONDITIONS_IN =

  • CONTRACT_CONDITIONS_INX =

CONTRACT_CFGS_REF = it_con_cfg_ref

CONTRACT_CFGS_INST = it_con_cfg_inst

CONTRACT_CFGS_PART_OF = it_con_cfg_part_of

CONTRACT_CFGS_VALUE = it_con_cfg_val

  • CONTRACT_CFGS_BLOB =

  • CONTRACT_CFGS_VK =

  • CONTRACT_CFGS_REFINST =

  • CONTRACT_DATA_IN =

  • CONTRACT_DATA_INX =

  • CONTRACT_TEXT =

  • CONTRACT_KEYS =

  • EXTENSIONIN =

  • PARTNERADDRESSES =

.

if lv_docu_no ne ''.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

IMPORTING

RETURN = lv_return.

else.

CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'

IMPORTING

RETURN = lv_return.

endif.

thankx

ratish

Read only

0 Likes
1,480

It is actually based on the Item Category configuration

Thanks and Regards

Ratish

Read only

0 Likes
1,480

Hi Ratish,

Have you created this program for uploading contracts through BAPIs? Could you share it here if you don't mind.

Read only

0 Likes
1,480

data: begin of it_con_cfg_ref occurs 0.

include structure BAPICUCFG.

data: end of it_con_cfg_ref.

data: begin of it_con_cfg_inst occurs 0.

include structure BAPICUINS.

data: end of it_con_cfg_inst.

What's the use of these two structures. I saw these in the function module also. But why exactly do we give these inputs? Any ideas? If we create contract by going to the transaction VA41 I don't remember giving these fields at all....So where are these fields and structures used in the contracts

Read only

0 Likes
1,480

data: begin of it_con_cfg_ref occurs 0.

include structure BAPICUCFG.

data: end of it_con_cfg_ref.

data: begin of it_con_cfg_inst occurs 0.

include structure BAPICUINS.

data: end of it_con_cfg_inst.

What's the use of these two structures. I saw these in the function module also. But why exactly do we give these inputs? Any ideas? If we create contract by going to the transaction VA41 I don't remember giving these fields at all....So where are these fields and structures used in the contracts

Read only

0 Likes
1,480

hey fellow abapers....any inputs