How to use BAPI_QUOTATION_CHANGEBOS bapi.
Hi All,
I have created quotation using transaction VA21, I want to use bapi BAPI_QUOTATION_CHANGEBOS
to change the version & text of header data in the workflow.
Can anyone please suggest me the necessary parameter to pass into this bapi to get the desired change in quotation.
Is there any more bapis to do this.
Regards,
Brajesh
hi,
kindly chk the program <b>RVOBJ003</b>.
IN THE PRGRAM THIS FM IS USED.
IF HELPED PLS MARK POINTS.
rgds
anver
Similar Messages
-
How to Use PM BAPI for equipment Master upload : BAPI_EQUIPMENT_SAVEREPLICA
Hi ,
How to use PM BAPI for equipment Master upload : BAPI_EQUIPMENT_SAVEREPLICA.
May i know what are the input parameters & fields mandatory
for each Table structures ct_data , ct_datax , it_descript , it_longtext.
Can any one explain me Step by Step Process.
B'cos i tried with below code. Equipment is not getting created.
wa_itab-equipment_ext = '000000000100000001'.
wa_itab-descript = 'Test 2 -> Lube Oil Pump'.
wa_itab-text_language = 'EN'.
wa_itab-sdescript = 'Short Description'.
APPEND wa_itab TO it_itab.
CLEAR wa_itab.
LOOP AT it_itab INTO wa_itab.
ct_data-ta_guid = '000000000000000001'.
ct_data-equipment_ext = wa_itab-equipment_ext.
ct_data-descript = wa_itab-descript .
ct_data-valid_date = sy-datum.
ct_data-equicatgry = 'M'.
APPEND ct_data.
CLEAR ct_data.
ct_datax-ta_guid = '000000000000000001'.
ct_datax-equipment_ext = 'X'.
ct_datax-equipment = 'X'.
APPEND ct_datax.
CLEAR ct_datax.
it_descript-ta_guid = '000000000000000001'.
it_descript-text_language = wa_itab-text_language.
it_descript-descript = wa_itab-sdescript .
APPEND it_descript.
CLEAR it_descript.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'LTXT'.
it_longtext-text_line = 'SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS'.
APPEND it_longtext.
CLEAR it_longtext.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'INTV'.
it_longtext-text_line = 'aaaaaaaaaaaaaaa'.
APPEND it_longtext.
CLEAR it_longtext.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'INTV'.
it_longtext-text_line = 'bbbbbbbbbbbb'.
APPEND it_longtext.
CLEAR it_longtext.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'INTV'.
it_longtext-text_line = 'cccccccccccccccc'.
APPEND it_longtext.
CLEAR it_longtext.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
call BAPI-function in this system
CALL FUNCTION 'BAPI_EQUIPMENT_SAVEREPLICA'
TABLES
ct_data = ct_data
ct_datax = ct_datax
it_descript = it_descript
it_longtext = it_longtext
return = return
EXCEPTIONS
OTHERS = 1.
IF sy-subrc = 0.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
WRITE : 'Successful'.
ENDIF.
IF NOT return IS INITIAL.
LOOP AT return.
IF return-type = 'A' OR return-type = 'E'.
WRITE : 'Error'.
ENDIF.
ENDLOOP.
ENDIF.
REFRESH return.
ENDLOOP.
Regards
SUrendarHi ,
How to use PM BAPI for equipment Master upload : BAPI_EQUIPMENT_SAVEREPLICA.
May i know what are the input parameters & fields mandatory
for each Table structures ct_data , ct_datax , it_descript , it_longtext.
Can any one explain me Step by Step Process.
B'cos i tried with below code. Equipment is not getting created.
wa_itab-equipment_ext = '000000000100000001'.
wa_itab-descript = 'Test 2 -> Lube Oil Pump'.
wa_itab-text_language = 'EN'.
wa_itab-sdescript = 'Short Description'.
APPEND wa_itab TO it_itab.
CLEAR wa_itab.
LOOP AT it_itab INTO wa_itab.
ct_data-ta_guid = '000000000000000001'.
ct_data-equipment_ext = wa_itab-equipment_ext.
ct_data-descript = wa_itab-descript .
ct_data-valid_date = sy-datum.
ct_data-equicatgry = 'M'.
APPEND ct_data.
CLEAR ct_data.
ct_datax-ta_guid = '000000000000000001'.
ct_datax-equipment_ext = 'X'.
ct_datax-equipment = 'X'.
APPEND ct_datax.
CLEAR ct_datax.
it_descript-ta_guid = '000000000000000001'.
it_descript-text_language = wa_itab-text_language.
it_descript-descript = wa_itab-sdescript .
APPEND it_descript.
CLEAR it_descript.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'LTXT'.
it_longtext-text_line = 'SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS'.
APPEND it_longtext.
CLEAR it_longtext.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'INTV'.
it_longtext-text_line = 'aaaaaaaaaaaaaaa'.
APPEND it_longtext.
CLEAR it_longtext.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'INTV'.
it_longtext-text_line = 'bbbbbbbbbbbb'.
APPEND it_longtext.
CLEAR it_longtext.
it_longtext-ta_guid = '000000000000000001'.
it_longtext-text_language = wa_itab-text_language.
it_longtext-text_id = 'INTV'.
it_longtext-text_line = 'cccccccccccccccc'.
APPEND it_longtext.
CLEAR it_longtext.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
call BAPI-function in this system
CALL FUNCTION 'BAPI_EQUIPMENT_SAVEREPLICA'
TABLES
ct_data = ct_data
ct_datax = ct_datax
it_descript = it_descript
it_longtext = it_longtext
return = return
EXCEPTIONS
OTHERS = 1.
IF sy-subrc = 0.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
WRITE : 'Successful'.
ENDIF.
IF NOT return IS INITIAL.
LOOP AT return.
IF return-type = 'A' OR return-type = 'E'.
WRITE : 'Error'.
ENDIF.
ENDLOOP.
ENDIF.
REFRESH return.
ENDLOOP.
Regards
SUrendar -
How to use two BAPIs in webdynpro Applicaiton?
Hi All,
I'm developing one webdynpro application which is using BAPI_FLIGHT_GETLIST for gettting list of flights and then using an other bapi BAPI_FLIGHT_GETDETAIL for getting details of particular flight which is selected from getlist bapi.
how can use these two BAPI in single application? How to get the flight details after selecting the one row in getlist view?
please provide me the procedure.
Regards
Srikanthhi
First create two models Bapi_flight_getlist, Bapi_flight_getDetails.
Add these models in your component.
Do the model binding on Component Controller.
Comp.Controller>apply template>servicecontroller>flightlist>choose
Airlineid
Maxrows
Expand Output node.
select Flight_List node.
ServiceController will automatically generate the method,choose ok.
Repeat the same for second bapi also.
choose
Airlineid
Connectionid
Flightdate
and select Flightdata
(you can find it by expanding output node).
after completion of all these steps u will have Getdetilas and getlist bapi details in comp.Controller.
To avoid overloading in selecting particular node specify different name for node.(eg:output-->output1)
Contextmapping.
you do the contextmapping between Comp.Controller and view by choosing appropriate details from comp.controller.
now you will have GetDetail and GetList nodes data.
do the view binding.
Apply template-->select Airlineid
Maxrows from getlist node.
again do the
Apply template-->select Flightdata from getdetailnode.
onleadselect of table you call the execute methods from comp.controller generated by service Controller.
Layouttab>table>properties-->onleadselect Event
create action for it.
in onleadselect<actionname>
wdThis.wdGetFirstCompController().executeBapi_Flight_Getdetail_Input();
wdThis.wdGetFirstCompController().executeBapi_Flight_Getlistl_Input();
in the output Getlist table will be displayed.
by clicking on table row,onLeadselectaction will be called.
you will get the flightdetails.
i hope this will solve your problem.
Regards
sowmya -
Material Master workflow - how to use a BAPI?
Hi,
I need some help with a material master workflow.
My requirement is to automate some changes to the material master as steps in the workflow, they are:
Set the Cross plant material status
Set the material deletion flag
I see that the BAPI SAVEDATA is available as a method of BOR BUS1001006. I have created a task with this method but I cannot work out how to automate the changes to the material in the workflow using it?
Has anyone used this BAPI method in a workflow before, how do I automate the changes to the material using it? or is there another way to make changes to the material as a background step in my workflow?
Many thanks,
NeilAll,
thanks ever so much for all your input... I have fixed the problem and it was obscure!
Firstly my binding was wrong... I should not have bound the clientdata and the clientdatax
since the settings I was trying to default (material status an del flag) from the master task were actually being overwritten with this binding. bit of a schoolboy error that one.
Secondly I created 1 brand new task and reused 1 old task for the purposes of setting the material status and the deletion flag respectively.
I managed to get the first one working this morning by removing the binding, the second one still errored with the message about source and target structures being different... which got me thinking, so I created a brand new task for setting the deletion flag and ... it worked!
So why? ... then I realised.
We just upgraded to EHP7 and this workflow existed prior to EHP7. I copied the workflow and edited it for my new business requirements. Reading some of the release notes it turns out the structures have changed and there were conversion routines for fixing them.
All sorted now! -
How to use the BAPI BAPI_ALM_ORDER_MAINTAIN
HI experts,
I am using BAPI_ALM_ORDER_MAINTAIN to update the Object list in ECC 6.0 for a service order txn code IE31.
I dont know how to use this BAPI_ALM_ORDER_MAINTAIN for object list updation.
It will be very helpful if anyone who worked on this or know about BAPI_ALM_ORDER_MAINTAIN how to use, plz reply this thread.
I am really searching for along time about the bapi, but couldnt getany thing.
the doc of BAPI_ALM_ORDER_MAINTAIN is very vague, that i m not able to understand.
So, sap persons, plz reply this thread,
NtkFriends,
I am getting the following message with the FM BAPI_ALM_ORDER_MAINTAIN, "Order is changed, but not created".
But when i see the Service Order, im not able to see the new equipments added in the Object tab.
Here is my code...
DATA: l_alm_bapi TYPE c,
T_METHODS TYPE STANDARD TABLE OF bapi_alm_order_method,
ls_methodS TYPE bapi_alm_order_method,
LS_OBJ type bapi_alm_order_objectlist,
lt_OBJ type standard table of bapi_alm_order_objectlist,
lt_operation
TYPE STANDARD TABLE OF bapi_alm_order_objectlist,
ls_operation TYPE bapi_alm_order_objectlist,
lt_oBJ_up
TYPE STANDARD TABLE OF bapi_alm_order_olist_up,
ls_oBJ_up TYPE bapi_alm_order_olist_up,
lt_return TYPE STANDARD TABLE OF bapiret2,
lt_return1 like BAPIRET2,
ls_return TYPE bapiret2,
LS_NUMBERS TYPE BAPI_ALM_NUMBERS,
T_NUMBERS TYPE STANDARD TABLE OF BAPI_ALM_NUMBERS.
CLEAR T_METHODS.
LS_METHODS-REFNUMBER = 1.
LS_METHODS-OBJECTTYPE = ''.
LS_METHODS-METHOD = 'SAVE'.
LS_METHODS-OBJECTKEY = '%00000000001'..
APPEND LS_METHODS TO T_METHODS.
LS_METHODS-REFNUMBER = 1.
LS_METHODS-OBJECTTYPE = 'OBJECTLIST'.
LS_METHODS-METHOD = 'CHANGE'.
LS_METHODS-OBJECTKEY = '%00000000001'..
APPEND LS_METHODS TO T_METHODS.
CLEAR T_NUMBERS.
LS_NUMBERS-AUFNR_IN = '000004010558'..
APPEND LS_NUMBERS TO T_NUMBERS.
LS_OBJ-COUNTER = 1.
LS_OBJ-FUNCT_LOC = '5619'.
LS_OBJ-EQUIPMENT = '0000010000292'.
LS_OBJ-SORTFIELD = 'X'.
ls_oBJ-PROCESSING_IND = 'X'.
ls_oBJ-SERIALNO = ''.
ls_oBJ-SERMAT = '0010-30000'.
ls_oBJ-DESCRIPTN = 'MAIN UNIT DR300'.
APPEND LS_OBJ TO LT_OBJ.
LS_OBJ_UP-SORTFIELD = 'X'.
LS_OBJ_UP-PROCESSING_IND = 'X'.
APPEND LS_OBJ_UP TO LT_OBJ_UP.
CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'
TABLES
IT_METHODS = T_METHODS
IT_HEADER =
IT_HEADER_UP =
IT_HEADER_SRV =
IT_HEADER_SRV_UP =
IT_USERSTATUS =
IT_PARTNER =
IT_PARTNER_UP =
IT_OPERATION =
IT_OPERATION_UP =
IT_RELATION =
IT_RELATION_UP =
IT_COMPONENT =
IT_COMPONENT_UP =
IT_OBJECTLIST = LT_OBJ
IT_OBJECTLIST_UP = LT_OBJ_UP
IT_OLIST_RELATION =
IT_TEXT =
IT_TEXT_LINES =
IT_SRULE =
IT_SRULE_UP =
IT_TASKLISTS =
EXTENSION_IN =
RETURN = LT_RETURN
ET_NUMBERS = T_NUMBERS.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT =
IMPORTING
RETURN = lt_return1.
Kindly help me out anyone who has worked with these FM. I am not able to do this. -
How to use a BAPI function module in programs?
Hi,
I have developed a BAPI enabled Function module & object type in 4.7. I want to use it to retrieve data from table T001 in 4.7 and display the output in 5.0. I am not able to get the data into 5.0. Please suggest me how to do this.
A program example would be appreciated.Hi Prabhu,
Firstly to say Bapis are version independent though the version is changed it does nt effect .. But as u said u want to fetch the data frm 4.7 tht too from table t005 observe tht the table data is not independent it is dependent tht is the reason why u r able to call the bapi but not able to display the data here . hope u know the procedue to call it in editor ...So now try it and check tht wether data is present in tht 5.0 version table ...t005 . thn it will be solved..if at all it is not working thn it might be problem with the bapi business object u created might be wrong check...
Regards,
Sana.
reward if useful ... -
How to use the bapi BAPI_PO_CREATE1
HI,
CAN ANY ONE TELL ME HOW TO GET THIS FM WORK TO CREATE A PURCHASE ORDER.Hi Preeti,
Refer sample code:
*& Report YDM_PO_CREATE *
REPORT ydm_po_create.
*-- Input File Declaration
TYPES: BEGIN OF ty_input_file,
column1 TYPE char50,
column2 TYPE char50,
column3 TYPE char50,
column4 TYPE char50,
column5 TYPE char50,
column6 TYPE char50,
column7 TYPE char50,
column8 TYPE char50,
column9 TYPE char50,
column10 TYPE char50,
column11 TYPE char50,
column12 TYPE char50,
column13 TYPE char50,
column14 TYPE char50,
column15 TYPE char50,
column16 TYPE char50,
column17 TYPE char50,
column18 TYPE char50,
END OF ty_input_file.
DATA: i_input_file TYPE STANDARD TABLE OF ty_input_file,
wa_input_file TYPE ty_input_file.
CONSTANTS: c_path TYPE char20 VALUE 'C:\',
c_mask TYPE char9 VALUE ',*.*,*.*.',
c_mode TYPE char1 VALUE 'O',
c_filetype TYPE char10 VALUE 'ASC',
c_x TYPE char01 VALUE 'X'.
PARAMETERS : p_fname LIKE rlgrap-filename.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
*-- Browse Presentation Server
PERFORM f4_presentation_file.
START-OF-SELECTION..
*-- Read presentation server file
PERFORM f1003_upload_file.
IF NOT i_input_file[] IS INITIAL.
PERFORM split_data.
ENDIF.
*& Form f4_presentation_file
*& F4 Help for presentation server
FORM f4_presentation_file .
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
def_path = c_path
mask = c_mask
mode = c_mode
title = text-001
IMPORTING
filename = p_fname
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " f4_presentation_file
*& Form f1003_upload_file
*& Upload File
FORM f1003_upload_file .
DATA: lcl_filename TYPE string.
lcl_filename = p_fname.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = lcl_filename
filetype = c_filetype
has_field_separator = c_x
TABLES
data_tab = i_input_file
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
EXIT.
ENDIF.
ENDFORM. " f1003_upload_file
*& Form split_data
Collect data for creating Purchase Order
FORM split_data .
DATA: i_poitem TYPE STANDARD TABLE OF bapimepoitem,
i_poitemx TYPE STANDARD TABLE OF bapimepoitemx,
i_poitem_sch TYPE STANDARD TABLE OF bapimeposchedule,
i_poitem_schx TYPE STANDARD TABLE OF bapimeposchedulx,
i_acct_*** TYPE STANDARD TABLE OF bapimepoaccount,
i_acct_assx TYPE STANDARD TABLE OF bapimepoaccountx,
i_services TYPE STANDARD TABLE OF bapiesllc ,
i_srvacc TYPE STANDARD TABLE OF bapiesklc,
i_return TYPE STANDARD TABLE OF bapiret2,
wa_header TYPE bapimepoheader,
wa_headerx TYPE bapimepoheaderx,
wa_poitem TYPE bapimepoitem,
wa_poitemx TYPE bapimepoitemx,
wa_poitem_sch TYPE bapimeposchedule,
wa_poitem_schx TYPE bapimeposchedulx,
wa_acct_*** TYPE bapimepoaccount,
wa_acct_assx TYPE bapimepoaccountx,
wa_services TYPE bapiesllc,
wa_srvacc TYPE bapiesklc,
wa_return TYPE bapiret2,
ws_po TYPE bapimepoheader-po_number.
break gbpra8.
wa_services-pckg_no = 10.
wa_services-line_no = 1.
wa_services-outl_no = '0'.
wa_services-outl_ind = c_x.
wa_services-subpckg_no = 20.
APPEND wa_services TO i_services.
wa_srvacc-pckg_no = 10.
wa_srvacc-line_no = 1.
wa_srvacc-serno_line = 01.
wa_srvacc-serial_no = 01.
wa_srvacc-percentage = 100.
APPEND wa_srvacc TO i_srvacc.
LOOP AT i_input_file INTO wa_input_file.
IF wa_input_file-column2 EQ 'HD'.
wa_header-doc_type = wa_input_file-column3.
wa_header-creat_date = sy-datum.
wa_header-created_by = sy-uname.
wa_header-vendor = wa_input_file-column4.
PERFORM conversion_output USING wa_header-vendor
CHANGING wa_header-vendor.
wa_header-comp_code = 'DE03'.
wa_header-purch_org = 'DE03'.
wa_header-pur_group = 'DE1'.
wa_header-vper_start = wa_input_file-column9.
wa_header-vper_end = wa_input_file-column10.
wa_headerx-comp_code = c_x.
wa_headerx-doc_type = c_x.
wa_headerx-creat_date = c_x.
wa_headerx-created_by = c_x.
wa_headerx-vendor = c_x.
wa_headerx-purch_org = c_x.
wa_headerx-pur_group = c_x.
wa_headerx-vper_start = c_x.
wa_headerx-vper_end = c_x.
ENDIF.
IF wa_input_file-column2 EQ 'IT'.
wa_poitem-po_item = wa_input_file-column3.
wa_poitem-short_text = wa_input_file-column6.
wa_poitem-plant = wa_input_file-column8.
wa_poitem-quantity = '1'.
wa_poitem-tax_code = 'V0'.
wa_poitem-item_cat = 'D'.
wa_poitem-acctasscat = 'K'.
wa_poitem-matl_group = wa_input_file-column7.
wa_poitem-pckg_no = '10'.
APPEND wa_poitem TO i_poitem .
wa_poitemx-po_item = wa_input_file-column3.
wa_poitemx-po_itemx = c_x.
wa_poitemx-short_text = c_x.
wa_poitemx-plant = c_x.
wa_poitemx-quantity = c_x.
wa_poitemx-tax_code = c_x.
wa_poitemx-item_cat = c_x.
wa_poitemx-acctasscat = c_x.
wa_poitemx-matl_group = c_x.
wa_poitemx-pckg_no = c_x.
APPEND wa_poitemx TO i_poitemx.
wa_poitem_sch-po_item = wa_input_file-column3.
wa_poitem_sch-delivery_date = sy-datum.
APPEND wa_poitem_sch TO i_poitem_sch.
wa_poitem_schx-po_item = wa_input_file-column3.
wa_poitem_schx-po_itemx = c_x.
wa_poitem_schx-delivery_date = c_x.
APPEND wa_poitem_schx TO i_poitem_schx.
wa_acct_***-po_item = 10.
wa_acct_***-serial_no = 01.
wa_acct_***-gl_account = '0006360100'.
wa_acct_***-co_area = '1000'.
wa_acct_***-costcenter = 'KC010000'.
APPEND wa_acct_*** TO i_acct_***.
wa_acct_***-po_item = 10.
wa_acct_***-serial_no = 02.
wa_acct_***-gl_account = '0006360100'.
wa_acct_***-co_area = '1000'.
wa_acct_***-costcenter = 'KC010000'.
APPEND wa_acct_*** TO i_acct_***.
wa_acct_assx-po_item = 10.
wa_acct_assx-serial_no = 01.
wa_acct_assx-po_itemx = c_x.
wa_acct_assx-serial_nox = c_x.
wa_acct_assx-gl_account = c_x.
wa_acct_assx-co_area = c_x.
wa_acct_assx-costcenter = c_x.
APPEND wa_acct_assx TO i_acct_assx.
wa_acct_assx-po_item = 10.
wa_acct_assx-serial_no = 02.
wa_acct_assx-po_itemx = c_x.
wa_acct_assx-serial_nox = c_x.
wa_acct_assx-gl_account = c_x.
wa_acct_assx-co_area = c_x.
wa_acct_assx-costcenter = c_x.
APPEND wa_acct_assx TO i_acct_assx.
wa_services-pckg_no = 20.
wa_services-line_no = 2.
wa_services-service = wa_input_file-column9.
wa_services-quantity = '100'.
wa_services-gr_price = '100'.
wa_services-userf1_txt = wa_input_file-column13.
APPEND wa_services TO i_services.
wa_srvacc-pckg_no = 20.
wa_srvacc-line_no = 1.
wa_srvacc-serno_line = 02.
wa_srvacc-serial_no = 02.
wa_srvacc-percentage = 100.
APPEND wa_srvacc TO i_srvacc.
ENDIF.
ENDLOOP.
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
poheader = wa_header
poheaderx = wa_headerx
POADDRVENDOR =
TESTRUN =
MEMORY_UNCOMPLETE =
MEMORY_COMPLETE =
POEXPIMPHEADER =
POEXPIMPHEADERX =
VERSIONS =
NO_MESSAGING =
NO_MESSAGE_REQ =
NO_AUTHORITY =
NO_PRICE_FROM_PO =
IMPORTING
exppurchaseorder = ws_po
EXPHEADER =
EXPPOEXPIMPHEADER =
TABLES
return = i_return
poitem = i_poitem
poitemx = i_poitemx
POADDRDELIVERY =
poschedule = i_poitem_sch
poschedulex = i_poitem_schx
poaccount = i_acct_***
POACCOUNTPROFITSEGMENT =
poaccountx = i_acct_assx
POCONDHEADER =
POCONDHEADERX =
POCOND =
POCONDX =
POLIMITS =
POCONTRACTLIMITS =
poservices = i_services
posrvaccessvalues = i_srvacc
POSERVICESTEXT =
EXTENSIONIN =
EXTENSIONOUT =
POEXPIMPITEM =
POEXPIMPITEMX =
POTEXTHEADER =
POTEXTITEM =
ALLVERSIONS =
POPARTNER =
break gbpra8.
LOOP AT i_return INTO wa_return.
ENDLOOP.
ENDFORM. " split_data
*& Form conversion_output
Conversion exit input
FORM conversion_output USING p_ip
CHANGING p_op.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = p_ip
IMPORTING
output = p_op.
ENDFORM. " conversion_output
Suggest you to Search in <b>SDN with key - BAPI_PO_CREATE1</b>
Will get few more useful related Posts.
Reward points if this Helps.
Manish -
How to use the BAPI:BAPI_PAYM_ITEM_POST_CLEARING
Hi,
What are the input parameters to give for the BAPI BAPI_PAYM_ITEM_POST_CLEARING..and what it Returns ?.Can you give me small example?.
Regards,
Kiran.
Edited by: SPY SPY on Jan 22, 2008 11:06 AMYou have to pass Header and GM code as the INput parameters for uing this BAPI....GM code would be structure.
Also you have to pass the INternal table Item for the goods mvt cxreate which will contains
BATCH.
MOVE_TYPE.
ENTRY_QNT.
MOVE_PLANT.
MOVE_STLOC.
MOVE_BATCH.
MOVE_REAS
these parameters.
Regards,
Sushil. -
How to use ENQUE and DEQUE BAPI in Visual Composer
Hi All,
We are planning to update employee Address through Portal for that one we did one BAPI which supports ADDRESS Change of an employye, through Visual Composer we developed the application and we integrated into SAP Portal but we are not able to update our records, then we found BAPI_EMPLOYEE_ENQUE and BAPI_EMPLOYEE_DEQUE, but we don't know how to use thease BAPI's in Visual Composer i mean how to make connection between out input form and thease BAPI''s and our custom BAPI's.
If any one having this experience please let me know.
Thanks in Advance.
Thanks and Regards,
Abhi.Hi,
Nice to see your reply, we got this error in R/3 it self, when we are trying to excuting SAP Standard BAPI we are getting this error "Employee/applicant is not locked yet". I think this is bug from SAP itself, do you have any idea about this one? is there any settings we need to do in R/3 for resolving this one or else is there any data we need to maintaine for our Employee Records.
Please resolve my issue.
Thanks in Advance.
Thanks and Regards,
Abhi. -
HOW TO USE BAPI BAPI_BILLINGDOC_CREATEMULTIPLE
HI ALL:
I want to create billing num. in t-code 'VF01'. It is just to input a delivery num.
then press zhe 'save' button.
How to use the bapi BAPI_BILLINGDOC_CREATEMULTIPLE, I mean which
variable should be given. Is there any examples.
THANKS FIRST.Hi,
Following is the documentation provided by SAP in the BAPI transaction:
Functionality
This method can be used to create billing documents.
As input parameters, you are expected to enter information on the items to be processed in the table BILLING_DATA_IN. This data is processed and produces a batch of billing documents. You also have the option of transferring information for entry in the input structure CREATOR_DATA_IN. If this information is already determined, this is transferred into each billing document header. You can also enter optional conditions for the individual items to be processed in the input table CONDITION_DATA_IN, as well as means of payment information in the table CCARD_DATA_IN.
This method can be used in the simulation run (TESTRUN = 'X') and also in the update run including the update (TESTRUN = ' '). Both execution variants deliver errors that may have occurred back to the output table RETURN. Information on successful processing is sent back in the output table SUCCESS. This output table delivers the document numbers of the billing documents created in particular.
Notes
Required entries :
BILLING_DATA_IN-SALESORG
BILLING_DATA_IN-DISTR_CHAN
BILLING_DATA_IN-DIVISION
BILLING_DATA_IN-DOC_TYPE
BILLING_DATA_IN-ORDBILLTYP
BILLING_DATA_IN-SOLD_TO
BILLING_DATA_IN-ITEM_CATEG
BILLING_DATA_IN-REQ_QTY
BILLING_DATA_IN-SALES_UNIT
BILLING_DATA_IN-CURRENCY
If a material is billed for which a material master needs to be
determined (BILLING_DATA_IN-NO_MATMAST = ' '), you must make the
following entries :
BILLING_DATA_IN-PLANT
BILLING_DATA_IN-MATERIAL
If, on the other hand, a material is billed for which no material
master is to be determined (BILLING_DATA_IN_NO_MATMAST = 'X'), you
must make the following entries :
BILLING_DATA_IN-COUNTRY
BILLING_DATA_IN-MATERIAL
BILLING_DATA_IN-TAXCL_1MAT
COMMIT control :
In the update run (TESTRUN = ' ') the update is carried out by COMMIT
WORK as part of the method available.
I guess using this, you will be able to populate the required things to create the billing documents.
Thanks
Vijay -
How to use BAPI with Decision Dialogue
Hi Gurus
would you please let me know how to use BAPI with decision dialogue in guided procedure .
I have a BAPI checking logon credentials for the user . how to use this BAPI for making decisions that is if the logon is correct then perform one process else go to logon screen again .
Thanks in advance
Regards NamitaHi Namita,
1. Follow the steps mentioned in section <a href="http://help.sap.com/saphelp_crm50/helpdata/en/33/198141f906040de10000000a1550b0/frameset.htm">Exposing an RFC-Enabled Function Module as a Callable Object</a> to use the BAPI as a Callable Object.
2. Follow the steps mentioned in tutorial # 93 and 93a in the CAF Tutorial Center for the decision part.
Hope these helps.
Nilay -
How to use BAPI BAPI_PROJECTSTOCK_PRICE_CHANGE
Dear Sir,
Kindly help me about as how to use the BAPI "BAPI_PROJECTSTOCK_PRICE_CHANGE" . Kindly give the sample code for using this BAPI please .
Regards
SoniaFor basic information on BAPIs, refer
[http://www.sapnet.ru/m/list_BAPI.html] -
How to use Bapi BAPI_ACC_DOCUMENT_POST for g/l account document posting
Hi all,
I am using BAPI_ACC_DOCUMENT_POST bapi for g/l account documents posting.as I am first time using BAPI in my program.can anyone give details about how to use this BAPI for document postings.what importing parameters need to be passed , which exporting parameters need to be passed and which tables need to be used.
Thanks in advance.
Regards,
HarshadaModerator message - Please search before asking - post locked
Rob -
Standard Bapi... how to use them
Hi \
How to use standars Bapi's..
i need step by demo for the same...
Can any buddy ....give me the right way to play with Bapi's
Regads.
LakhanHi,
ABAP -> BAPI ->BAPI Step by Step Example
<b>Business Application Program Interface</b>
1. About the Example
2. STEP 1 - Define a structures for the BAPI
3. STEP 2 - Write Function Module
4. STEP 3 - Create the API Method Using the BAPI WIZARD
5. STEP 4 - Final steps
About the example
This BAPI reads system status for a production order from table JEST and system status text from table TJ02T
Name
ZGetOrderStatus
Function group ZBAPISTATUS
Function module: Z_BAPI_GET_ORDER_STATUS
Import parameters: ORDER_STATUS_IMPORT type ZBAPI_ORDER_STATUS_IMPORT:
AUFNR Order number (Keyfield)
SPRAS Language
ExcludeInactive - Checkbox - Exclude inactive status
Tables T_BAPISTAT type ZBAPISTAT:
OBJNR like JEST-OBJNR
STAT like JEST-STAT
INACT like JEST-INACT
TXT04 like TJ02T-TXT04
TXT30 likeTJ02T-TXT30
Export parameters RETURN like BAPIRETURN
<b>STEP 1 - Define a structures for the BAPI</b>
In this step a structures for the parameters and tables of the function module used for the BAPI are defined.
Use Data type -> Structure
Define the following structures:
ZBAPI_ORDER_STATUS_IMPORT which contains the following fields:
ORDERID Order number (Keyfield)
SPRAS Language
ExcludeInactive - Checkbox - Exclude inactive status
ZBAPISTAT:
OBJNR like JEST-OBJNR
STAT like JEST-STAT
INACT like JEST-INACT
TXT04 like TJ02T-TXT04
TXT30 likeTJ02T-TXT30
Important note:
You will have to define a structure for every parameter in the BAPI. You cannot use the same structures used in existing applications because BAPI structures are frozen when BAPIs are released and then there are restrictions on changing them.
ZBAPI_ORDER_STATUS_IMPORT
ZBAPISTAT
<b>STEP 2 - Write Function Module</b>
Important notes:
Each BAPI must have its own function group.
Under the attributes tab remember to select Processing Type Remote Enabled module, otherwise the function module cannot be invoked via RFC and used as a BAPI
Import/Export parameters can only be BY VALUE for an RFC enabled function module
We are only creating one BAPI in this example, but you can create related BAPIs in the same function pool, so they will be able to share global data.
Attributes
Import Parameters
Export Parameters
Tables
Code
Notes:
The subroutine SET_RETURN_MESSAGE is a standard routine used for BAPIs that use the BAPIRETURN structure
In form Z_BAPI_GET_ORDER_SYSTEM_STATUS there is a test IF 1 = 2. If the test is true a message is displayed. The condition will obviously never be true, and we will never want to display a message in a BAPI. The reason why it is included is, that it create a reference for the message, so that the WHERE USED functionality can be used for the message. This is the SAP standard way to handle it, copied from the Company Code GetList BAPI.
INCLUDE LZBAPISTATUSUXX
THIS FILE IS GENERATED BY THE FUNCTION LIBRARY. *
NEVER CHANGE IT MANUALLY, PLEASE! *
INCLUDE LZBAPISTATUSU02.
"Z_BAPI_GET_ORDER_SYSTEM_STATUS
INCLUDE LZBAPISTATUSTOP - Global data
FUNCTION-POOL ZBAPISTATUS. "MESSAGE-ID Z3
Types:
begin of Type_tj02t,
istat like tj02t-istat,
txt04 like tj02t-txt04,
txt30 like tj02t-txt30,
end of type_tj02t.
DATA:
Declarations for TABLE parameter
T_BAPISTAT like ZBAPISTAT occurs 0,
G_BAPISTAT like ZBAPISTAT,
Table for object texts
t_tj02t type type_tj02t occurs 0,
g_tj02t type type_tj02t.
Structure for return messages
DATA:
BEGIN OF MESSAGE,
MSGTY LIKE SY-MSGTY,
MSGID LIKE SY-MSGID,
MSGNO LIKE SY-MSGNO,
MSGV1 LIKE SY-MSGV1,
MSGV2 LIKE SY-MSGV2,
MSGV3 LIKE SY-MSGV3,
MSGV4 LIKE SY-MSGV4,
END OF MESSAGE.
INCLUDE LZBAPISTATUSF01 - Subroutines
***INCLUDE LZBAPISTATUSF01 .
*& Form SET_RETURN_MESSAGE
This routine is used for setting the BAPI return message.
The routine is a standard routine for BAPIs that handles the message
structure for the BAPIRETURN structure. It has been copied from the
BAPI Company Code Getlist
-->P_MESSAGE text
<--P_RETURN text
form SET_RETURN_MESSAGE USING VALUE(P_MESSAGE) LIKE MESSAGE
CHANGING P_RETURN LIKE BAPIRETURN.
CHECK NOT MESSAGE IS INITIAL.
CALL FUNCTION 'BALW_BAPIRETURN_GET'
EXPORTING
TYPE = P_MESSAGE-MSGTY
CL = P_MESSAGE-MSGID
NUMBER = P_MESSAGE-MSGNO
PAR1 = P_MESSAGE-MSGV1
PAR2 = P_MESSAGE-MSGV2
PAR3 = P_MESSAGE-MSGV3
PAR4 = P_MESSAGE-MSGV4
LOG_NO = ' '
LOG_MSG_NO = ' '
IMPORTING
BAPIRETURN = P_RETURN
EXCEPTIONS
OTHERS = 1.
endform. " SET_RETURN_MESSAGE
FUNCTION Z_BAPI_GET_ORDER_STATUS
FUNCTION z_bapi_get_order_system_status.
""Local interface:
*" IMPORTING
*" VALUE(I_AUFNR) TYPE AUFNR
*" VALUE(I_SPRAS) TYPE SPRAS DEFAULT SY-LANGU
*" VALUE(I_EXCLUDEINACTIVE) TYPE CHAR1 OPTIONAL
*" EXPORTING
*" VALUE(RETURN) TYPE BAPIRETURN
*" TABLES
*" T_BAPISTAT STRUCTURE ZBAPISTAT
*"Local interface:
*" IMPORTING
*" VALUE(I_AUFNR) TYPE AUFNR
*" VALUE(I_SPRAS) TYPE SPRAS DEFAULT SY-LANGU
*" VALUE(I_EXCLUDEINACTIVE) TYPE CHAR1 OPTIONAL
*" EXPORTING
*" VALUE(RETURN) TYPE BAPIRET2
*" TABLES
*" T_BAPISTAT STRUCTURE ZBAPISTAT
DATA:
l_aufnr LIKE afko-aufnr,
l_objnr LIKE jest-objnr.
Check if order exists
SELECT SINGLE aufnr
FROM afko
INTO l_aufnr
WHERE aufnr = BAPI_ORDER_STATUS_IMPORT-orderid.
IF sy-subrc NE 0.
CLEAR message.
message-msgty = 'E'.
message-msgid = 'Z3'.
message-msgno = '000'.
message-msgv1 = BAPI_ORDER_STATUS_IMPORT-orderid.
PERFORM set_return_message USING message
CHANGING return.
IF 1 = 2.
The only reason to include this statement, that will obviously
never execute, is that it will create a referecence so that you
can find out where a particular message is being used. This
functionality is used by the BAPIs programmed by SAP
MESSAGE e000(z3).
ENDIF.
ENDIF.
CHECK return IS INITIAL.
Read order status
CONCATENATE 'OR' BAPI_ORDER_STATUS_IMPORT-orderid INTO l_objnr.
IF BAPI_ORDER_STATUS_IMPORT-i_excludeinactive = 'X'.
SELECT objnr stat inact
FROM jest
INTO TABLE t_bapistat
WHERE objnr = l_objnr AND
inact <> 'X'.
ELSE.
SELECT objnr stat inact
FROM jest
INTO TABLE t_bapistat
WHERE objnr = l_objnr.
ENDIF.
IF sy-subrc <> 0.
No object status found
CLEAR message.
message-msgty = 'E'.
message-msgid = 'Z3'.
message-msgno = '001'.
message-msgv1 = BAPI_ORDER_STATUS_IMPORT-orderid.
PERFORM set_return_message USING message
CHANGING return.
IF 1 = 2.
MESSAGE e001(z3).
ENDIF.
ENDIF.
CHECK return IS INITIAL.
Read order status texts
SELECT istat txt04 txt30
FROM tj02t
INTO TABLE t_tj02t
FOR ALL ENTRIES IN t_bapistat
WHERE istat = t_bapistat-stat AND
spras = BAPI_ORDER_STATUS_IMPORT-i_spras.
SORT t_tj02t BY istat.
LOOP AT t_bapistat INTO g_bapistat.
READ TABLE t_tj02t
WITH KEY istat = g_bapistat-stat BINARY SEARCH
INTO g_tj02t.
IF sy-subrc = 0.
MOVE:
g_tj02t-txt04 TO g_bapistat-txt04,
g_tj02t-txt30 TO g_bapistat-txt30.
MODIFY t_bapistat FROM g_bapistat TRANSPORTING txt04 txt30.
ENDIF.
ENDLOOP.
ENDFUNCTION.
<b>STEP 3 - Create the API Method Using the BAPI WIZARD</b>
The BAPI wizard is used toTo expose the remote function module as a BAPI. The wizard will generate some additional code, so the function module is a valid method of the BOR. This allows the BAPi to be called as a workflow method in addition to be called by an outside program.
Note: Each functionmodule corresponds to a method in the BOR
Go to the Busines Object Builder SWO1.
You can either create the new Object type as a subtype of an existing business object or create a new business object from scratch. In this example it would be obvious to create the Object type as a subtype of BUS2005 Production order. However, to illustrate how to create a new Object type from scratch, we will do this.
In the Object/Interface type field write the name of the new Business Object: ZORDERSTAT. Press enter and fill in the additional fields necessary to create the object type.
Supertype: Not relevant because we are creating our object from scratch
Program. This is the name of the program where the wizard generates code for the Object type, NOT the function module we craeted earlier. The program name must not be the name of an existinbg program.
Press enter and create the new business object. Note that when you create the business object a standard interface, an attribute ObjectType and the methods ExistenceCheck and Display are automatically generated. These cannot be changed !
The next step is to add the Z_BAPI_GET_ORDER_STATUS method to the business object. Select Utillities -> API methods -> Add method and write the name of the functionmodule in the dialogbox. Next the dialogbox show below will be shown. This is the start screen of the BAPI wizard. Proceed with wizard by pressing the button.
After you have finished the wizard, tyou will notice that the ZGetOrderStatus has been added to the business object:
You can doubleclick on the method to see its properties. To use the business object you must change the Object type status to Implemented. Use menu Edit->Change releases status->Object type->To implemented. No you can test thge object (Press F8).
Note that the BAPI wizard has added a wrapper class for the function module so it can be sued as method in the business object. Choose menu Goto->Program to display the program:
Implementation of object type ZORDERSTAT *****
INCLUDE <OBJECT>.
BEGIN_DATA OBJECT. " Do not change.. DATA is generated
only private members may be inserted into structure private
DATA:
" begin of private,
" to declare private attributes remove comments and
" insert private attributes here ...
" end of private,
KEY LIKE SWOTOBJID-OBJKEY.
END_DATA OBJECT. " Do not change.. DATA is generated
BEGIN_METHOD ZGETORDERSTATUS CHANGING CONTAINER.
DATA:
BAPIORDERSTATUSIMPORT LIKE ZBAPI_ORDER_STATUS_IMPORT,
RETURN LIKE BAPIRETURN,
TBAPISTAT LIKE ZBAPISTAT OCCURS 0.
SWC_GET_ELEMENT CONTAINER 'BapiOrderStatusImport'
BAPIORDERSTATUSIMPORT.
SWC_GET_TABLE CONTAINER 'TBapistat' TBAPISTAT.
CALL FUNCTION 'Z_BAPI_GET_ORDER_STATUS'
EXPORTING
BAPI_ORDER_STATUS_IMPORT = BAPIORDERSTATUSIMPORT
IMPORTING
RETURN = RETURN
TABLES
T_BAPISTAT = TBAPISTAT
EXCEPTIONS
OTHERS = 01.
CASE SY-SUBRC.
WHEN 0. " OK
WHEN OTHERS. " to be implemented
ENDCASE.
SWC_SET_ELEMENT CONTAINER 'Return' RETURN.
SWC_SET_TABLE CONTAINER 'TBapistat' TBAPISTAT.
END_METHOD.
<b>STEP 4 - Final steps</b>
When the Business object has been checked and the documentation created, the following steps must be carried out:
Release the BAPI function module (in the Function Builder).
Release the business object type (in the BOR ObjectType -> Change release status to -> Implemented ).
Release the BAPI as a method in the BOR (Release the methods you has created - Set the cursor on the method then
Edit -> Change release status -> Object type component -> To released )
For potential write BAPIs: Release the IDoc and its segments
You can now display the BAPI in the BAPI Explorer:
Pls reward points.
Regards,
Ameet -
How to use the BAPI_GOODSMVT_CREATE for Transfer posting Sales order
Hi Friends,
How to use the Bapi BAPI_GOODSMVT_CREATE for transfer posting sales order to sales order.
pls, send the list of parameteres to pass to the bapi, if program avail please send it to me.
Thanks in advance
ShankarYou have to pass Header and GM code as the INput parameters for uing this BAPI....GM code would be structure.
Also you have to pass the INternal table Item for the goods mvt cxreate which will contains
BATCH.
MOVE_TYPE.
ENTRY_QNT.
MOVE_PLANT.
MOVE_STLOC.
MOVE_BATCH.
MOVE_REAS
these parameters.
Regards,
Sushil.
Maybe you are looking for
-
Hi All, the scenario is : when customer comes to store and book a product then some amount is taken as down payment and rest of the payment is divided in installments. The system should allow to do billing if a fixed no of installments are paid by c
-
I updated to Firefox 4 yesterday. If in Google I type say LON it gives a drop down box offering choices like 'London underground', 'London tube map'. If I want to choose one such option, I click on it, but the Firefox/Google search does nothing. I ha
-
"Tab" control and Tab order of controls inside the tab
Hello everybody, I have created the tab control with 6 'tabs', inside every tab I have some controls, like edit fields etc. I wanted to make an order of controls for every tab, so I have selected the option "Tab-order settings" from menu "Edit" (sorr
-
Multiple Groups in Cross Tab Workbook
I have one worksheet like -------------------------XXXX----------YYYY-------------ZZZZ ------------------------NO %----------NO %------------NO % A1--------------------1 1-------------- 4 4----------------5 5 A2--------------------1 1---------------4
-
ITunes is not recognizing my new Apple TV in device list.
I upgraded fro 1st gen Apple TV to a new Apple TV and iTunes 11.1 is not recognizing it in the device list on Tunes. When I open Preferences it says it is synching, but it shows it as my 1st gen unit.