Adding order Text using BAPI_SALESORDER_CREATEFROMDAT2
Hi All ,
How can we add order text at header level to a sales using bapi BAPI_SALESORDER_CREATEFROMDAT2 ,
There is this structure ORDER_TEXT STRUCTURE BAPISDTEXT , But looks like this is used for adding text item level .
Thanks in advance .
Vinay Kolla
No.we cannot leave blank.otherwise your without sales activity how can we expect SO.
you must fill all sales regarding information in
Sales Document Type
Collective Number
Sales Organization
Distribution Channel
Division
Sales Group
Sales Office
Amit.
Similar Messages
-
Purchse Order Text using SECATT
Dear all
I am using SECATT for material master uploading. I want to upload Purchase Order Text using SECATT
Please suggest me how can I upload same using SECATT.
VipinHi,
According to my knowledge with help of SECATT purchase order text cannot be uploaded. Because purchase order text is not stored in any table. Its better to follow BDC program to upload thr purchase order text. Ihope this will help you. thanks. -
Error in creation of sales order bu using BAPI_SALESORDER_CREATEFROMDAT2
Hi ,
I am trying to create sales order by using bapi.
after passing all the parameters to bapi iam getting message as shown below.
SALES_HEADER_IN has been processed successfully
SALES_ITEM_IN has been processed successfully
<b>Order receipt/delivery not possible, credit customer blocked</b>
I had passed scedule line data ,and BAPI_TRANSACTION_COMMIT
also still iam getting this message.
please help me out of this problem.
Thanks,
Shuja.Hi Shuja
I guess the message is just a warning eventhough the order is created. The warning message states that Auto-Delivery can not be created.
Please check below to understand how the customer is blocked:
1. Manual Block -> Transaction XD03
-->Menupath: Extras->Blocking Data
2. Credit Block -> Transaction FD33
--> In the overview screen check the difference of value between Credit Limit & Credit Exposure
I guess in the case whereby Credit Limit value is less than Credit Exposure also this can happen.
Please try using a different Customer. Also simulate via transaction VA01.
Hope this helps.
Kind Regards
Eswar -
Error in sales order creation using BAPI_SALESORDER_CREATEFROMDAT2
Hi all,
Pl look into below code :
Here order is getting created , however ship to party and sold to party shows the same value.
*& Report ZSD_SALEORDCRE
report zsd_saleordcre.
Order header:*
- Order type: OR Important you must use the german code TA*
- Sales org: 1000*
- Distrb. chan.: 10*
- Division: 00*
- Sold to party: 1032*
- Ship to party: 1032*
- Purch order: DG-19970626-3*
Order item:*
- Material: P-100*
- Qty: 1*
data:
Order partners*
li_order_partners type standard table of bapiparnr,
l_order_partners like bapiparnr,
Structures for order header*
l_order_header_in like bapisdhd1,
l_order_header_inx like bapisdhd1x,
Tables for order items*
li_order_items_in type standard table of bapisditm,
l_order_items_in like bapisditm,
li_order_items_inx type standard table of bapisditmx,
l_order_items_inx like bapisditmx,
schedules*
li_order_schedules_in type standard table of bapischdl,
l_order_schedules_in like bapischdl,
li_order_schedules_inx type standard table of bapischdl,
l_order_schedules_inx like bapischdl,
Return table from bapi call*
li_return type standard table of bapiret2,
l_return type bapiret2,
Sales document number*
l_vbeln like bapivbeln-vbeln,
Error flag*
l_errflag(1) type c.
start-of-selection.
Build partner information*
clear l_order_partners.
l_order_partners-partn_role = 'WE'. "Remember German codes !
l_order_partners-partn_numb = '0000000101'.
append l_order_partners to li_order_partners.
l_order_partners-partn_role = 'SP'. "Remember German codes !
l_order_partners-partn_numb = '0000000107'.
append l_order_partners to li_order_partners.
Build order header*
Update flag*
l_order_header_inx-updateflag = 'I'.
Sales document type*
l_order_header_in-doc_type = 'ZOD2'. "Remember German codes !
l_order_header_inx-doc_type = 'X'.
Sales organization*
l_order_header_in-sales_org = '1100'.
l_order_header_inx-sales_org = 'X'.
Distribution channel*
l_order_header_in-distr_chan = '20'.
l_order_header_inx-distr_chan = 'X'.
Division*
l_order_header_in-division = '10'.
l_order_header_inx-division = 'X'.
Purchase order*
l_order_header_in-purch_no_c = 'DG-19970626-300'.
l_order_header_inx-purch_no_c = 'X'.
l_order_header_in-purch_date = '20090817'.
l_order_header_inx-purch_date = 'X'.
Build order item(s) - Only 1 is used in this example*
l_order_items_in-itm_number = '10'.
l_order_items_inx-itm_number = 'X'.
l_order_items_in-material = '29019501AA'.
l_order_items_inx-material = 'X'.
l_order_items_in-plant = 'WH03'.
l_order_items_inx-plant = 'X'.
append l_order_items_in to li_order_items_in.
l_order_items_in-itm_number = '20'.
l_order_items_inx-itm_number = 'X'.
l_order_items_in-material = '29066641'.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = l_order_items_in-material
importing
output = l_order_items_in-material.
l_order_items_inx-material = 'X'.
l_order_items_in-plant = 'WH03'.
l_order_items_inx-plant = 'X'.
append l_order_items_in to li_order_items_in.
l_order_items_inx-updateflag = 'I'.
append l_order_items_inx to li_order_items_inx.
l_order_schedules_in-itm_number = '10'.
l_order_schedules_in-req_qty = '10.00'.
append l_order_schedules_in to li_order_schedules_in.
l_order_schedules_in-itm_number = '20'.
l_order_schedules_in-req_qty = '20.00'.
append l_order_schedules_in to li_order_schedules_in.
CALL Bapi*
call function 'BAPI_SALESORDER_CREATEFROMDAT2'
exporting
order_header_in = l_order_header_in
order_header_inx = l_order_header_inx
testrun = ' '
importing
salesdocument = l_vbeln
tables
return = li_return
order_items_in = li_order_items_in
order_items_inx = li_order_items_inx
order_partners = li_order_partners
order_schedules_in = li_order_schedules_in.
order_schedules_inx = li_order_schedules_inx.*
end-of-selection.
Check and write Return table*
clear l_errflag.
write: / 'Sales dcoument: ', l_vbeln.
loop at li_return into l_return.
write: / l_return-type, l_return-message(50).
if l_return-type = 'E'.
l_errflag = 'X'.
endif.
endloop.
No errors - Commit*
if l_errflag is initial.
call function 'BAPI_TRANSACTION_COMMIT'.
endif.
What could be problem ?
Pl help
Regards
NagarajanHi,
Go through this sample code
LOOP AT t_salesorder INTO wa_salesorder.
t_header-sales_org = wa_salesorder-vkorg.
t_header-distr_chan = wa_salesorder-vtweg.
t_header-division = wa_salesorder-spart.
t_header-doc_type = wa_salesorder-auart.
APPEND t_header.
t_headerx-sales_org = 'X'.
t_headerx-distr_chan = 'X'.
t_headerx-division = 'X'.
t_headerx-doc_type = 'X'.
APPEND t_headerx.
t_itemx-material = 'X'.
t_itemx-target_qty = 'X'.
APPEND t_itemx.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = wa_salesorder-kunnr
IMPORTING
output = wa_alpha-kunnr.
wa_partner-partn_role = 'AG'.
wa_partner-partn_numb = wa_alpha-kunnr.
APPEND wa_partner TO t_partner.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = wa_salesorder-kunnr1
IMPORTING
output = wa_alpha-kunnr1.
wa_partner-partn_role = 'WE'.
wa_partner-partn_numb = wa_alpha-kunnr1.
APPEND wa_partner TO t_partner.
wa_item-po_itm_no = wa_salesorder-bstnk.
wa_item-itm_number = wa_salesorder-posnr.
wa_item-material = wa_salesorder-matnr.
wa_item-target_qty = wa_salesorder-kwmeng.
APPEND wa_item TO t_item.
CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
EXPORTING
order_header_in = t_header
order_header_inx = t_headerx
IMPORTING
salesdocument = gv_doc_no
TABLES
return = t_return
order_items_in = t_item[]
order_items_inx = t_itemx
order_partners = t_partner[].
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'
IMPORTING
return = t_return.
ENDLOOP.
Please paste only the portion of your code that gives you trouble. -
Creating sales order by using BAPI_SALESORDER_CREATEFROMDAT2
Hi friends
i am creating sales order by usign this bapi BAPI_SALESORDER_CREATEFROMDAT2. But I have create the sales order with reference to quotation. So ia m passing all req parametes and also the quotation no in ref-doc field. i am abel to create the sale order But what ever teh lines items we have in the quotation(va23).i am not gettnig the lines items in the sales order.But SO no is generated. Could ou pleae let me know whats teh prb or do i need to do anything for geetting the line items
Regard,
SaiAs you suggested i have passed the suggested parameters in item level..But this time i was not ablet to create the SO also..earlier i am able to creat SO but not line item, But now ia m not able to creat salesdocuement also.
Return talbe filled with belwo messages.
S V4 233 SALES_HEADER_IN has been processed successfully
E V1 320 No item category available (Table T184 ZKB TEXT )
E V4 248 Error in SALES_ITEM_IN 000000
W V1 555 The sales document is not yet complete: Edit data
E V4 219 Sales document was not changed -
Upload Purchase order text using BDC while updating Material Master MM02
Hi All,
Please help me out with sample code upload PO Txt ( long text...which is more than 72 chars)using MM02. Its very urgent
I am not able to pass data into following fields seen in recording,
RSTXT-TXLINE(02),
RSTXT-TXLINE(03),
RSTXT-TXLINE(04),
RSTXT-TXLINE(05), as we can see only RSTXT-TXLINE field in the RSTXT structure......
how to split the long text into 72 chrs each and pass into data into the RSTXT-TXLINE(02), RSTXT-TXLINE(03), RSTXT-TXLINE(04)....correspondingly........
Thanks in advance.....
Reagards,
Prasad KR.Hi
see the sample program
REPORT zmm_longtext
NO STANDARD PAGE HEADING
LINE-SIZE 255.
Internal Table for Upload of Long Texts Data
DATA: BEGIN OF itab1 OCCURS 0,
matnr LIKE mara-matnr, " Material
text1 LIKE tline-tdline, " Long Text
text2 LIKE tline-tdline, " Long Text
text3 LIKE tline-tdline, " Long Text
text4 LIKE tline-tdline, " Long Text
text5 LIKE tline-tdline, " Long Text
text6 LIKE tline-tdline, " Long Text
text7 LIKE tline-tdline, " Long Text
text8 LIKE tline-tdline, " Long Text
text9 LIKE tline-tdline, " Long Text
text10 LIKE tline-tdline, " Long Text
text11 LIKE tline-tdline, " Long Text
text12 LIKE tline-tdline, " Long Text
text13 LIKE tline-tdline, " Long Text
text14 LIKE tline-tdline, " Long Text
text15 LIKE tline-tdline, " Long Text
text16 LIKE tline-tdline, " Long Text
text17 LIKE tline-tdline, " Long Text
text18 LIKE tline-tdline, " Long Text
text19 LIKE tline-tdline, " Long Text
text20 LIKE tline-tdline, " Long Text
text21 LIKE tline-tdline, " Long Text
text22 LIKE tline-tdline, " Long Text
text23 LIKE tline-tdline, " Long Text
text24 LIKE tline-tdline, " Long Text
text25 LIKE tline-tdline, " Long Text
END OF itab1.
Internal Table for Upload of Long Texts Data
DATA: BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr, " Material
text LIKE tline-tdline, " Long Text
END OF itab.
To create Long Text lines for CREATE_TEXT function module
DATA:BEGIN OF dt_lines OCCURS 0.
INCLUDE STRUCTURE tline. " Long Text
DATA:END OF dt_lines.
Variable declarations for CREATE_TEXT function module
DATA : dl_name TYPE thead-tdname, " Object Name
dl_lan TYPE thead-tdspras, " Language
gv_matnr TYPE matnr.
Constants
CONSTANTS:
Object ID for Long Text of Material Basic Data 1
c_best TYPE thead-tdid VALUE 'GRUN',
c_material TYPE thead-tdobject VALUE 'MATERIAL'. " Object
Parameters
PARAMETERS p_file LIKE rlgrap-filename.
At selection-screen on Value Request for file Name
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
Get the F4 Values for the File
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
IMPORTING
file_name = p_file.
Start Of Selection
START-OF-SELECTION.
*To Upload Flat file
CALL FUNCTION 'UPLOAD'
EXPORTING
filename = p_file
filetype = 'DAT'
TABLES
data_tab = itab1
EXCEPTIONS
conversion_error = 1
invalid_table_width = 2
invalid_type = 3
no_batch = 4
unknown_error = 5
gui_refuse_filetransfer = 6
OTHERS = 7.
SORT itab1 BY matnr.
LOOP AT itab1.
CLEAR gv_matnr.
SELECT SINGLE matnr INTO gv_matnr
FROM mara WHERE bismt = itab1-matnr.
IF itab1-text25 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text25.
APPEND itab.
ENDIF.
IF itab1-text24 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text24.
APPEND itab.
ENDIF.
IF itab1-text23 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text23.
APPEND itab.
ENDIF.
IF itab1-text22 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text22.
APPEND itab.
ENDIF.
IF itab1-text21 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text21.
APPEND itab.
ENDIF.
IF itab1-text20 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text20.
APPEND itab.
ENDIF.
IF itab1-text19 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text19.
APPEND itab.
ENDIF.
IF itab1-text18 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text18.
APPEND itab.
ENDIF.
IF itab1-text17 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text17.
APPEND itab.
ENDIF.
IF itab1-text16 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text16.
APPEND itab.
ENDIF.
IF itab1-text15 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text15.
APPEND itab.
ENDIF.
IF itab1-text14 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text14.
APPEND itab.
ENDIF.
IF itab1-text13 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text13.
APPEND itab.
ENDIF.
IF itab1-text12 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text12.
APPEND itab.
ENDIF.
IF itab1-text11 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text11.
APPEND itab.
ENDIF.
IF itab1-text10 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text10.
APPEND itab.
ENDIF.
IF itab1-text9 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text9.
APPEND itab.
ENDIF.
IF itab1-text8 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text8.
APPEND itab.
ENDIF.
IF itab1-text7 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text7.
APPEND itab.
ENDIF.
IF itab1-text6 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text6.
APPEND itab.
ENDIF.
IF itab1-text5 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text5.
APPEND itab.
ENDIF.
IF itab1-text4 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text4.
APPEND itab.
ENDIF.
IF itab1-text3 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text3.
APPEND itab.
ENDIF.
IF itab1-text2 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text2.
APPEND itab.
ENDIF.
IF itab1-text1 NE ' '.
itab-matnr = gv_matnr.
itab-text = itab1-text1.
APPEND itab.
ENDIF.
CLEAR itab.
ENDLOOP.
DELETE itab WHERE matnr EQ ' '.
Upload the Texts
SORT itab BY matnr.
LOOP AT itab.
dt_lines-tdformat = 'ST'.
dt_lines-tdline = itab-text.
APPEND dt_lines.
dl_lan = sy-langu.
dl_name = itab-matnr.
Call the Function Module to Create Text
CALL FUNCTION 'CREATE_TEXT'
EXPORTING
fid = c_best
flanguage = dl_lan
fname = dl_name
fobject = c_material
save_direct = 'X'
fformat = '*'
TABLES
flines = dt_lines
EXCEPTIONS
no_init = 1
no_save = 2
OTHERS = 3.
IF sy-subrc <> 0.
WRITE:/ 'Long Text Creation failed for Material'(001),
itab-matnr.
ELSE.
WRITE:/ 'Long Text Created Successfully for Material'(002),
itab-matnr.
ENDIF.
AT END OF matnr.
REFRESH dt_lines.
ENDAT.
ENDLOOP.
Reward points for useful Answers
Regards
Anji -
Sales order creation using BAPI_SALESORDER_CREATEFROMDAT2
Hi,
I'm using the bapi 'BAPI_SALESORDER_CREATFROMDAT2' to create sales order. I need to pass the COST CENTER value to the header data of the sales order.
The salesheader structure of the bapi does not support this field.
How do I go about it?
I need to pass this field to the bapi to process my sales orders.
Please help.
Regards,
Shibu Mathew.Hi Shibu,
Welcome to SDN.
I never tried but you can pass the cost center information to BAPI_SALESORDER_CREATFROMDAT2 via <b>EXTENSIONIN</b>.
Please check SAP Note <b>143580</b> for more information on how to implement this enhancement.
Hope this will help.
Regards,
Ferry Lianto
Please reward point if helpful. -
Upload of purchase order text in the material master
Now we have information of Purchase order text for all the material.
Is it possible to upload the Purchase order text using LSMW.
Some friends were telling that LSMW is not possible for Purchase Order text.
Can anyone suggest how I can upload this purchase order text for all 1000
material using LSMW program.
/if not LSMW is there any other method to upload it
thanks in advance
deepak.s.gouraDear Deepak,
there is standard direct upload i believe
go to lsmw
Execute 1st option
then inLSMW:Object Attribute screen
in standard batch/ direct input
firsr radio button
select object 005
and method 003
Program name RSTXLITF.
Then go by normal process i.e source field , field mapping...
In this way u can also upload Text in the Material master.
Rewards if helpful
Regards
Sanjay L -
How to add new line item to SO using BAPI_SALESORDER_CREATEFROMDAT2
Hi,
I have sales order A with 1 line item, now i want to add new line item with material x and quantity y to the existing sales order A
using BAPI_SALESORDER_CREATEFROMDAT2.
Line item no for new line item should be generated by SAP internally.Please let me know the mandatory parameters to be passed to the BAPI to fulfill the requirement.
DATA: order_header TYPE bapisdhd1,
order_inx TYPE bapisdhd1x,
partners TYPE TABLE OF bapiparnr,
wa_partners TYPE bapiparnr.
CLEAR: salesdocument,order_header_inx,wa_in, wa_inx.
REFRESH: item_in, item_inx.
salesdocument = wa_vbup-vbeln.
order_header_inx-updateflag = 'X'.
wa_in-itm_number = ' '.
wa_in-material = p_nmatnr.
wa_in-target_qty = gv_menge - gv_wemng.
APPEND wa_in TO item_in.
wa_inx-itm_number = ' '.
wa_inx-updateflag = 'U'.
wa_inx-target_qty = 'X'.
APPEND wa_inx TO item_inx.
CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
EXPORTING
salesdocumentin = salesdocument
order_header_in = order_header
order_header_inx = order_inx
IMPORTING
salesdocument = salesdocument
TABLES
return = return
order_items_in = item_in
order_items_inx = item_inx
order_partners = partners.
Thanks
BhuvanaHello,
You can use FM: BAPI_SALESORDER_CHANGE with update indicator I (insert)
call function 'BAPI_SALESORDER_CHANGE'
exporting
salesdocument = l_vbeln
order_header_inx = l_wa_order_header_inx
simulation = l_simulation
tables
return = l_i_return
order_item_in = l_i_order_item
order_item_inx = l_i_order_item_inx
partners = l_i_partners
schedule_lines = l_i_schedule_lines
schedule_linesx = l_i_schedule_linesx
extensionin = l_i_extensionin.
Thanks
Subhankar -
Mass Update for Purchase Order & Sales Order Text
Hi,
Can be change the Purchase Order & Sales Order Text using MASS.
Regards,Hi,
I am also surprised by the behaviour of the BDC.
This is first time when I am facing the problem since I have been using SAP.
I am able to update the PO Text manually , but BDC is giving the problem for only few Materials.
It does sound stupid, but this is the fact here with me.
Regards,
Edited by: PK on Nov 5, 2009 12:58 PM -
Error when creating sales order using BAPI_SALESORDER_CREATEFROMDAT2
Hello!
I am using BAPI_SALESORDER_CREATEFROMDAT2 for creating the Sales order. But I have a problem when Iu2019m trying to create configuration. I think that parameter order_items_in-material should be generated before calling BAPI described above. I try to use order_items_in-mat_entrd, but BAPI return error message id = V1, number = 320 (No item category available (Table T184 ZAPC TEXT )).
Help me please, How I can solve this problem?<P><STRONG>FUNCTION Z_SD_GET_TEH_COST.<BR>"----<BR>" IMPORTING<BR>" REFERENCE(IS_COST_ORDER) TYPE ZWCLIF_COST_ORDER<BR>" EXPORTING<BR>" REFERENCE(EV_KBETR) TYPE KBETR<BR>"----
</STRONG></P>
<P><STRONG> DEFINE fill_prizn.<BR> IF is_cost_order-&1 IS NOT INITIAL.<BR> CLEAR: ls_cfgs_value-charc,<BR> ls_cfgs_value-value.<BR> ls_cfgs_value-charc = &2.<BR> ls_cfgs_value-value = is_cost_order-&1.<BR>* ls_cfgs_value-valcode = '1'.<BR> APPEND ls_cfgs_value TO lt_cfgs_value.<BR> ENDIF.<BR> END-OF-DEFINITION.</STRONG></P>
<P><STRONG>DATA: ls_header_in TYPE bapisdhd1,<BR> ls_header_inx TYPE bapisdhd1x,</STRONG></P>
<P><STRONG> lt_partners TYPE TABLE OF bapiparnr,<BR> ls_partners TYPE bapiparnr,</STRONG></P>
<P><STRONG> lt_items_in TYPE TABLE OF bapisditm,<BR> lt_items_inx TYPE TABLE OF bapisditmx,</STRONG></P>
<P><STRONG> ls_items_in TYPE bapisditm,<BR> ls_items_inx TYPE bapisditmx,</STRONG></P>
<P><STRONG> ls_cfgs_ref TYPE bapicucfg,<BR> lt_cfgs_ref TYPE TABLE OF bapicucfg,</STRONG></P>
<P><STRONG> lt_cfgs_value TYPE TABLE OF bapicuval,<BR> ls_cfgs_value TYPE bapicuval,</STRONG></P>
<P><STRONG> lt_schedules_in TYPE TABLE OF bapischdl,<BR> ls_schedules_in TYPE bapischdl,</STRONG></P>
<P><STRONG> lt_schedules_inx TYPE TABLE OF bapischdlx,<BR> ls_schedules_inx TYPE bapischdlx,</STRONG></P>
<P><STRONG> lt_cfgs_inst TYPE TABLE OF bapicuins,<BR> ls_cfgs_inst TYPE bapicuins,<BR> lt_cfgs_partof TYPE TABLE OF bapicuprt,<BR> ls_cfgs_partof TYPE bapicuprt,</STRONG></P>
<P><STRONG> lv_vbeln TYPE bapivbeln-vbeln,<BR> lt_return TYPE TABLE OF bapiret2.</STRONG></P>
<P><STRONG>* fill header<BR> ls_header_in-doc_type = 'ZAPC'.<BR> ls_header_in-sales_org = is_cost_order-vkorg.<BR> ls_header_in-distr_chan = is_cost_order-vtweg.<BR> ls_header_in-division = '01'.<BR> ls_header_in-sales_off = '1011'.</STRONG></P>
<P><STRONG> ls_header_inx-updateflag = 'I'.<BR> ls_header_inx-doc_type = 'X'.<BR> ls_header_inx-sales_org = 'X'.<BR> ls_header_inx-distr_chan = 'X'.<BR> ls_header_inx-division = 'X'.<BR> ls_header_inx-sales_off = 'X'.</STRONG></P>
<P><STRONG>* fill partners<BR> ls_partners-partn_role = 'AG'.<BR> ls_partners-partn_numb = '1000000031'. " фиктивный заказчик<BR> APPEND ls_partners TO lt_partners.</STRONG></P>
<P><STRONG>* ls_items_in-material = is_cost_order-matnr.<BR> ls_items_in-mat_entrd = is_cost_order-matnr.<BR> ls_items_in-target_qty = '1'.<BR> ls_items_in-itm_number = '000001'.<BR> ls_items_in-po_itm_no = '000001'.<BR> ls_items_in-item_categ = 'ZCRM'.<BR> SELECT SINGLE meins INTO ls_items_in-target_qu<BR> FROM mara<BR> WHERE matnr = is_cost_order-matnr.<BR> APPEND ls_items_in TO lt_items_in.</STRONG></P>
<P><STRONG> ls_items_inx-itm_number = '000001'.<BR> ls_items_inx-item_categ = 'X'.<BR> ls_items_inx-po_itm_no = 'X'.<BR>* ls_items_inx-material = 'X'.<BR> ls_items_inx-mat_entrd = 'X'.<BR> ls_items_inx-target_qty = 'X'.<BR> ls_items_inx-target_qu = 'X'.<BR> ls_items_inx-updateflag = 'I'.<BR> APPEND ls_items_inx TO lt_items_inx.</STRONG></P>
<P><STRONG>* fill configuration<BR> ls_cfgs_ref-posex = '000001'.<BR> ls_cfgs_ref-config_id = '000001'.<BR> ls_cfgs_ref-root_id = '00000001'.<BR> APPEND ls_cfgs_ref TO lt_cfgs_ref.</STRONG></P>
<P><STRONG> ls_cfgs_value-config_id = '000001'.<BR> ls_cfgs_value-inst_id = '00000001'.</STRONG></P>
<P><STRONG> fill_prizn kod_prod 'KOD_PROD'.<BR> fill_prizn tlot_min 'TLOT_MIN'.<BR> fill_prizn tlot_max 'TLOT_MAX'.<BR> fill_prizn shot_min 'SHOT_MIN'.<BR> fill_prizn shot_max 'SHOT_MAX'.<BR> fill_prizn dlot_min 'DLOT_MIN'.<BR> fill_prizn dlot_max 'DLOT_MAX'.<BR> fill_prizn marka 'MARKA'.<BR> fill_prizn stndrt_marka 'STNDRT_MARKA'.<BR> fill_prizn stndrt_prod 'STNDRT_PROD'.<BR> fill_prizn tprk 'TPRK'.<BR> fill_prizn grot 'GROT'.<BR> fill_prizn vityazhka 'VITYAZHKA'.<BR> fill_prizn krom 'KROM'.<BR> fill_prizn chisl_st_pokr 'CHISL_ST_POKR'.<BR> fill_prizn kls_tol_pokr 'KLS_TOL_POKR'.<BR> fill_prizn proch_izg_t_lic_max 'PROCH_IZG_T_LIC_MAX'.<BR> fill_prizn priz_zasch_pov 'PRIZ_ZASCH_POV'.<BR> fill_prizn vid_pokr 'VID_POKR'.<BR> fill_prizn mark_pokr 'MARK_POKR'.<BR> fill_prizn mat_pokr_lic 'MAT_POKR_LIC'.<BR> fill_prizn plsk 'PLSK'.<BR> fill_prizn vid_postavki 'VID_POSTAVKI'.<BR> fill_prizn dressir 'DRESSIR'.<BR> fill_prizn travl 'TRAVL'.<BR> fill_prizn fsfr_min 'FSFR_MIN'.<BR> fill_prizn fsfr_max 'FSFR_MAX'.<BR> fill_prizn krmn_min 'KRMN_MIN'.<BR> fill_prizn krmn_max 'KRMN_MAX'.<BR> fill_prizn mrgn_min 'MRGN_MIN'.<BR> fill_prizn mrgn_max 'MRGN_MAX'.<BR> fill_prizn almn_min 'ALMN_MIN'.<BR> fill_prizn almn_max 'ALMN_MAX'.<BR> fill_prizn cugl_min 'CUGL_MIN'.<BR> fill_prizn cugl_max 'CUGL_MAX'.</STRONG></P>
<P><STRONG> ls_schedules_in-itm_number = '000001'.<BR>* ls_schedules_in-req_date = sy-datum.<BR> ls_schedules_in-sched_line = '0001'.<BR> ls_schedules_in-req_qty = '1'.<BR> APPEND ls_schedules_in TO lt_schedules_in.</STRONG></P>
<P><STRONG> ls_schedules_inx-itm_number = '000001'.<BR> ls_schedules_inx-sched_line = '0001'.<BR>* ls_schedules_inx-req_date = 'X'.<BR> ls_schedules_inx-req_qty = 'X'.<BR> ls_schedules_inx-updateflag = 'I'.<BR> APPEND ls_schedules_inx TO lt_schedules_inx.</STRONG></P>
<P><STRONG> ls_cfgs_partof-parent_id = '00000001'.<BR> ls_cfgs_partof-inst_id = '00000001'.<BR> ls_cfgs_partof-class_type = '300'.<BR> ls_cfgs_partof-obj_type = 'MARA'.<BR> ls_cfgs_partof-obj_key = is_cost_order-matnr.<BR> APPEND ls_cfgs_partof TO lt_cfgs_partof.</STRONG></P>
<P><STRONG> ls_cfgs_inst-config_id = '000001'.<BR> ls_cfgs_inst-inst_id = '00000001'.<BR> ls_cfgs_inst-obj_type = 'MARA'.<BR> ls_cfgs_inst-class_type = '300'.<BR> ls_cfgs_inst-obj_key = is_cost_order-matnr.<BR> APPEND ls_cfgs_inst TO lt_cfgs_inst.</STRONG></P>
<P><STRONG> CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'<BR> EXPORTING<BR> order_header_in = ls_header_in<BR> order_header_inx = ls_header_inx<BR>* testrun =<BR> IMPORTING<BR> salesdocument = lv_vbeln<BR> TABLES<BR> return = lt_return<BR> order_items_in = lt_items_in<BR> order_items_inx = lt_items_inx<BR> order_partners = lt_partners<BR> order_schedules_in = lt_schedules_in<BR> order_schedules_inx = lt_schedules_inx<BR> order_cfgs_ref = lt_cfgs_ref<BR> order_cfgs_inst = lt_cfgs_inst<BR> order_cfgs_part_of = lt_cfgs_partof<BR> order_cfgs_value = lt_cfgs_value<BR> .</STRONG></P>
<P><STRONG> READ TABLE lt_return TRANSPORTING NO FIELDS WITH KEY type = 'E'.<BR> IF sy-subrc = 0.<BR> CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'<BR> .<BR> ELSE.<BR> CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'<BR> EXPORTING<BR> wait = 'X'<BR> .<BR> ENDIF.</STRONG></P>
<P><STRONG>ENDFUNCTION.</STRONG></P>
<P><STRONG></STRONG> </P>
<P><STRONG></STRONG> </P> -
Use LFA1-KONZS to determine additional purchase Order Text to print.
Dear All,
I have been asked to group vendors and for different groups the purchase order texts to change based on what group they belong to. I would think that this has been done before somewhere.
Without doing any customization I was thinking of using the LFA1-KONZS. This is where I get stuck.
Do I get the print program to look at the KONZS and select additional text with an if statement?
Does this info need to be copied to a PO table? User exit need to be changed?
Please advise,
Thanks,
IanThanks for your input John,
Your questions provides the solution, this is what I did.
I created the standard text (SO10) to be added to the terms section in the PO. The current status is this:
I found the program and the form. Looking at the form I can see where the current terms text is called.
This prints fine.
IF &EKKO-BUKRS& EQ '0010'
INCLUDE ZENG0010 OBJECT TEXT ID ST LANGUAGE E PARAGRAPH 'TX'
ENDIF
I added an if statement to this one:
IF &EKKO-BUKRS& EQ '0010'
INCLUDE ZENG0010 OBJECT TEXT ID ST LANGUAGE E PARAGRAPH 'TX'
ENDIF
IF &LFA1-KONZS& EQ 'A1A'
INCLUDE ZENG001X OBJECT TEXT ID ST LANGUAGE E PARAGRAPH 'TX'
ENDIF
Again, thanks for your support.
Regards,
Ian -
Upload Purchase order text tab using BDC
Is it possible to upload Purchase order text tab in material master (tcode mm01) using a BDC.
If so pls tell me how to upload the same, what is the field name of the box.
Regards,
Senthilu need to use READ_TEXT or SAVE_TEXT or WRITE_TEXT or COMMIT_TEXT to upload text into SAP.
-
Order schedule lines not created using BAPI_SALESORDER_CREATEFROMDAT2
Hi experts,
I am creating sales order using BAPI_SALESORDER_CREATEFROMDAT2. I want to update the Order quantity in VBAP-KWMENG.I got the information from SDN when including the Schedule line in BAPI 'BAPI_SALESORDER_CREATEFROMDAT2 '.
I tried by using Update flag = 'I'.I am not able to update, what are the values to be passed and how to update the field.
Is there any other way..Please suggest me..
Thanks&Regards,
Karthik.Hi, In the BAPI if you look at the tables parameter you will find ORDER_ITEMS_IN and ORDER_ITEMS_INX as well as ORDER_SCHEDULES_IN and ORDER_SCHEDULES_INX. To update KWMENG you will have to pass that value to ORDER_ITEMS_IN-TARGET_QTY and update the same in the table ORDER_ITEMS_INX (ORDER_ITEMS_INX-TARGET_QTY) with 'X'.
For updating schedule line go for ORDER_SCHEDULES_IN-SCHED_LINE and update X for the same in ORDER_SCHEDULES_INX.
Try looking into the following code, I am filling in both the Item data as well as the Schedule line data.
loop at t_mdata into fs_mdata.
fs_item-itm_number = fs_mdata-posnr.
fs_itemx-itm_number = c_flag.
fs_item-material = fs_mdata-matnr.
fs_itemx-material = c_flag.
fs_item-target_qty = fs_mdata-kwmeng.
fs_itemx-target_qty = c_flag.
fs_item-item_categ = fs_mdata-pstyv.
fs_itemx-item_categ = c_flag.
fs_itemx-updateflag = c_flag.
APPEND fs_item TO t_item.
APPEND fs_itemx TO t_itemx.
fs_sline-ITM_NUMBER = fs_mdata-posnr.
fs_slinex-ITM_NUMBER = c_flag.
fs_sline-SCHED_LINE = c_sline.
fs_slinex-SCHED_LINE = c_flag.
fs_sline-REQ_QTY = fs_mdata-kwmeng.
fs_slinex-REQ_QTY = c_flag.
APPEND fs_sline TO t_sline.
APPEND fs_slinex TO t_slinex.
endloop. " Loop t_mdata
c_flag contains 'X'.
fs_item is of structure ORDER_ITEMS_IN.
fs_sline is of structure ORDER_SCHEDULES_IN. -
Creating Sales order texts while using BDC session method is not working
Hi All,
I have an existing program which creates sales order using BDC session method.( Actual program uses BAPI to create sales order and in case if any error occurs during creation of sales order BDC session is generated so that user can process it later and i am facing issues in this part of code where it uses BDC)
I wanted to modify this BDC sesion to update the sales order text also. I tried recording VA01 for creationg sales order text unfortunatly it is not capturing the data i am entering in the text fields.
Please suggest if there is any way to create sales order using BDC.
Regards
SheebaHi Madhu,
'=TP_CREATE' is the OK code i am getting for creating TEXTS. But the text entered are not captured in BDC.
Part of BDC program generated for cretaing sales order texts.
perform bdc_dynpro using 'SAPMV45A' '4003'.
perform bdc_field using 'BDC_OKCODE'
'=%_GC 128 22'.
perform bdc_field using 'LV70T-SPRAS'
'EN'.
perform bdc_dynpro using 'SAPMV45A' '4003'.
perform bdc_field using 'BDC_OKCODE'
'=TP_CREATE'.
perform bdc_field using 'LV70T-SPRAS'
'EN'.
perform bdc_dynpro using 'SAPMV45A' '4003'.
perform bdc_field using 'BDC_OKCODE'
'=%_GC 128 22'.
perform bdc_field using 'LV70T-SPRAS'
'EN'.
perform bdc_dynpro using 'SAPMV45A' '4003'.
perform bdc_field using 'BDC_OKCODE'
'=TP_CREATE'.
perform bdc_field using 'LV70T-SPRAS'
'EN'.
perform bdc_dynpro using 'SAPMV45A' '4003'.
perform bdc_field using 'BDC_OKCODE'
'/EBACK'.
perform bdc_field using 'LV70T-SPRAS'
'EN'.
perform bdc_dynpro using 'SAPMV45A' '4001'.
perform bdc_field using 'BDC_OKCODE'
'=SICH'.
Regards,
Sheeba
Maybe you are looking for
-
How do I connect my macbook pro to apple tv?
I have a Macbook Pro 2.7 GHz i7 that I purchased last Summer and I want to wirelessly connect it to my TV via Apple TV. I'm running the lastest OS X 10.7.3 I watched a couple youtube videos and those people had an icon next to the wifi signal that a
-
Creation of Purchase Requisition from a BID
Hi, I am trying to create a purchase requisition from a bid instead of a purchase order. Does anyone have any idea on this? Thanks Sunny
-
SAP NetWeaver 7.01 SR1 SP3 ABAP Trial Version ERROR in importing ABAP phase
Hi all, I am trying to instal this trial version on my computer. I have tried with Windows XP Pro SP2 and with Windows XP Pro SP3 and I get the same error, in both cases, in the phase 18 wich is: Importing ABAP. These are the errors I get: Import Mon
-
So what do we do when Windows 7 comes out?
I mean regarding the One Key Partition on our system. If we put Windows 7 on our systems, do you think Lenovo will work on some updates to the One Key to make Windows 7 take advantage of it?
-
where shud we add two additional fields in SAP query ? actually i am not able to locate the query but i have the program whch is generated along it . so in whch section of the query i shud write the logic to get two additional fields ?