Sales BOM its possible edit the quantity for child items in Sales Order
Hello friends, this is my issue
I need to use a Sales BOM but the problem is that the child items in any Document marketing, such as Sales Order, the quantity for that child items it´s possible to edit independant of the father item code, and I don´t want this because allows to users to change diferent quantity for child items versus the quantity of the father item code.
Thanks in advance
Thanks Gordon yes I know even with this solution the problem is the with transaction notification is not possible determine that event to block, or if you know how or get some tip, please send me, because I analyze the requirement and I couldn´t develop.
Tks
Similar Messages
-
Avoid printing child items of Sales BOM in AR Invoice
Hi All,
I have a requirement to edit the print layout of AR Invoice to see only the parent item of the Sales BOM in SAP 2005.
In SAP 2007, there is an option to Hide BOM Components in Print Out but how do I avoid printing child items in SAP 2005.
Please advise.
Thanks for your help!
Regards,
PayalHi Payal,
As a definition of B1, the children of the Sales BOM will always be shown in a marketing document.
However, we can change the template to hide them from the printouts. Please kindly follow the steps as below:
Print template editing for removing child items of Sales BOM
1.Add a new Text Field with Text 'I' in the Repetitive Area. ('I' is the attribute for child items)
2.Add a new Data Field in the Repetitive Area as below:
a)In the Content tab, chose Table A/R Invoice # Rows and Column BOM Type
3. Add a Formula in the Repetitive Area as below In the Content tab, chose:
i.Source Type: Formula
ii.In the Formula Editor, insert Field 1: the newly created Data field
iii.Operation: !=
iv.Field 2: the newly created Text field e.g. Field_316!=Field_315
4.Set the three fields added as Invisible, in order to set it as invisible, please uncheck the Visible box under General tab
5.Set Link to Field on the General tab of every field in the Repetitive Area (Row Level) to the exclusive number of the newly created calculation field.
6.Double-click the Repetitive Area to open Repetitive Area Property, Check Area Height Adjustment box under Format tab to hide the blank lines.
7 Save template and set as default, print preview.
You will find that the row number is the original, not successive, number. It is better to hide the row number field.
I hope it shall help.
Regards,
Varun
SAP Business One Forum Team. -
Possible to edit the metadata for iTunes music?
I'm trying to consolidate my iTunes libraries from 3 computers onto one. I used senuti to transfer my music from my MBP and another iMac onto my main iMac via my iPod and must not have specified that I wanted to import the metadata along with the tunes themselves. I now need to sort my music by "date added" and find that a whole chunk of my library shows the date/time of the senuti imports instead of the date the songs were originally added to iTunes. As a result, since all of the imported songs show the exact same date and time of being added, when I sort by "date added" I get a long alphabetical listing of all the songs I imported, instead of listing them album-by-album.
Is there a way to edit the metadata for the music I senutied, so I can have the correct "date added" info for the albums?Sorry I wasn't clear about the Time Machine reference. I was explaining my reluctance to roll back to a previous version of my main library if the changes I had made to the MBP library were going to prevent me from importing its .xml.
Chris CA wrote:
Once you import the songs, you should be able to import the iTunes library.xml file from the other libraries to update this info with the songs you just added.
How exactly do I do this? As a test, I tried making a new library and importing just a few songs, all of which came in with today's date. Using the WAG approach to importing the .xml, I tried using "add to library" and selecting the .xml of the real iTunes library. Nothing happened. I then tried "import playlist" and selecting the real library's .xml, which triggered the import of all of my songs, all with today's date. I suppose that today's date could be a function of using a just-created library for my test, but...
Clearly my guesses were off the mark, so I could use a little more guidance. -
I can no longer edit the info for my songs, movies and tv shows. This occurred since I loaded Windows 7 Pro on my C drive, and then fownloaded ITunes 10. Why will the program not allow me to access the track info to edit it?
Ah yes school boy error there out of frustration and discontent..
My issue is with music/apps/films etc not downloading from iTunes / App Store.
They initially fail and message is displayed stating unable to download / purchase at this time, yet if I retry it says I've already purchased (?) or alternatively I go to the purchased section and there they are waiting with the cloud symbol..
However some items get frozen in the download window and cannot be retried or deleted. Message appears stating to tap to retry, but even if you stole every bath and sink in the uk you'd still not have enough taps.
I post here as the iTunes guys are useless in there 'help' and have only advised posting here or phoning apple, at my expense, to explain a problem that could be rectified by forwarding my original email to a techie. However the tech team apparently don't have an email address as they're from ye olde Middle Ages..!
Anyways I digress.
So I tried sync to pc, but instead of showing the file as ready to listen/use/view, the iCloud symbol shows and I'm back to square one as the item is unable to download..
At frustration station waiting for a train from pain...
All my software is up to date, and had all worked fine prior to the last big iOS update that resulted in all the changes in display and dismay.
Answers in a postcard :-)
Much love -
Editing the Parameters for Transport Application
Hi all
we are trying to import portal object into portal.we are getting the message
"Root directory for import not found: Check the transport application configuration"
please lt us know how can we edit the Parameters for Transport Application and where?????????
Regards
zaidHi,
You need to change the pcdStartup.properties file.
This file is the place where settings for folder like import and export are defined.
Please have a look
Re: portal transport import question
http://help.sap.com/saphelp_nw04/helpdata/en/10/082840f3ddee01e10000000a155106/frameset.htm
Thanks,
Sekhar -
I m unable to create an apple id for iCloud as its showing that the limit for creating a free id is no longer available on your device
Yes. On the other iPhone go to Settings>iCloud, scroll to the bottom and tap Delete Account. This will delete the account from the phone but not from iCloud. Any data being synced with iCloud on this phone will be deleted from it when you delete the account, but will sync back with you sign back in later.
After deleting the account, set up a new one with a different Apple ID. Then delete this account from the phone and sign back into the original account to sync the iCloud data back to this phone. You can then go to the other phone (the one that doesn't have any remaining accounts on it) and sign into the new account you just created on your other phone using the ID you used to create it. -
Errors while editing the xsl for dataview web part
while modifying a dataview webpart in sharepoint designer, i finding the issues for the below line
<xsl:for-each select="$Rows[substring-before(substring-after(substring-after(@FullName, '?ID='), '>'), '<') = $FullName]">
errors:
the tag is marked invalid because it is missing quote for '>' and '<'
the tag is marked invalid because it has an extra quote ">Hi ,
According to your description, my understanding is that you got an error when you edited the xsl for dataview web part.
Please try to change
<xsl:for-each select="$Rows[substring-before(substring-after(substring-after(@FullName, '?ID='), '>'), '<') = $FullName]">
To
<xsl:for-each select="$Rows[substring-before(substring-after(substring-after(@FullName, '?ID='), '>'), '<') = $FullName]">
Best Regards,
Wendy
Wendy Li
TechNet Community Support -
'BAPI_SALESORDER_CHANGE - Want to change the Quantity on Line Item in SO
Hi
I am facing a problem. The requirement is to change the Sales Order Item Quantity. I basically planned to update the quantity of Schedule Item which needs to be changed. When I run the below code, it works and says the Sales Order changed succesfully. However I get an express message saying the Database update failure. I don't get any sort of technical information.
Appreciate if you could help me finding the error.
Thanks
regards
girish
Note --> I am trying to change the Quantity for 2 line item in SO '56' to 40 Units.
REPORT ZBAPI_SALESORD_CHANGE.
data : zBAPISDHD type /AFS/BAPISDHD,
zORDER_HEADER_INX TYPE /AFS/BAPISDHDX,
zSALESDOCUMENT type BAPIVBELN-VBELN.
data : zORDER_ITEMS_IN like /AFS/BAPISDITM occurs 0 with header line,
zORDER_ITEM_INX like /AFS/BAPISDITMX occurs 0 with header line,
zORDER_SCHEDULES_IN like /AFS/BAPISDSCHD occurs 0 with header line,
ZSCHEDULE_LINESX LIKE /AFS/BAPISDSCHDX occurs 0 with header line,
zORDER_PARTNERS like BAPIPARNR occurs 0 with header line,
zRETURN like BAPIRET2 occurs 0 with header line,
so_no type BAPIVBELN-VBELN,
zPARTNERCHANGES like BAPIPARNRC occurs 0 with header line.
data : l_comp_qty like zORDER_ITEMS_IN-COMP_QUANT.
data : g_qty like /AFS/BAPISDSCHD-REQ_QTY.
g_qty = 40.
l_comp_qty = 40.
clear : zBAPISDHD.
so_no = '0000000056'.
zBAPISDHD-REFOBJTYPE = '/AFS/ORDER'.
zBAPISDHD-SALES_ORG = 'BP01'.
zBAPISDHD-DISTR_CHAN = '02'.
zBAPISDHD-DIVISION = '01'.
zBAPISDHD-PMNTTRMS = '0001'.
zORDER_HEADER_INX-UPDATEFLAG = 'U'.
zORDER_HEADER_INX-SALES_ORG = 'X'.
zORDER_HEADER_INX-DISTR_CHAN = 'X'.
zORDER_HEADER_INX-DIVISION = 'X'.
zORDER_HEADER_INX-PMNTTRMS = 'X'.
**********ITEM ***************************************
zORDER_ITEMS_IN-ITM_NUMBER = '00020'.
zORDER_ITEMS_IN-MATERIAL = 'F1202'.
zORDER_ITEMS_IN-PLANT = 'BP01'.
zORDER_ITEMS_IN-ITEM_CATEG = 'TAS'.
zORDER_ITEMS_IN-SHIP_POINT = 'BP01'.
zORDER_ITEMS_IN-COMP_QUANT = l_comp_qty.
zORDER_ITEMS_IN-TARGET_QTY = l_comp_qty.
zORDER_ITEMS_IN-TARGET_QU = 'ST'.
append zORDER_ITEMS_IN.
zORDER_ITEM_INX-ITM_NUMBER = '00020'.
zORDER_ITEM_INX-UPDATEFLAG = 'U'.
zORDER_ITEM_INX-MATERIAL = 'X'.
zORDER_ITEM_INX-PLANT = 'X'.
zORDER_ITEM_INX-ITEM_CATEG = 'X'.
zORDER_ITEM_INX-SHIP_POINT = 'X'.
zORDER_ITEM_INX-COMP_QUANT = 'X'.
zORDER_ITEM_INX-TARGET_QTY = 'X'.
zORDER_ITEM_INX-TARGET_QU = 'X'.
append zORDER_ITEM_INX.
*********SCHEDULE LINE******************************
refresh zORDER_SCHEDULES_IN.
clear zORDER_SCHEDULES_IN.
zORDER_SCHEDULES_IN-ITM_NUMBER = '000020'.
zORDER_SCHEDULES_IN-SCHED_LINE = '0001'.
zORDER_SCHEDULES_IN-REQ_DATE = '20070525'.
zORDER_SCHEDULES_IN-DATE_TYPE = '1'.
zORDER_SCHEDULES_IN-SCHED_TYPE = 'CS'.
zORDER_SCHEDULES_IN-GRID_VALUE = 'BLK2728'.
zORDER_SCHEDULES_IN-REQ_CATEGORY = '1DE'.
zORDER_SCHEDULES_IN-REFOBJTYPE = '/AFS/ORDER'.
zORDER_SCHEDULES_IN-REQ_QTY = g_qty.
append zORDER_SCHEDULES_IN.
refresh ZSCHEDULE_LINESX.
clear ZSCHEDULE_LINESX.
ZSCHEDULE_LINESX-ITM_NUMBER = '000020'.
ZSCHEDULE_LINESX-SCHED_LINE = '0001'.
ZSCHEDULE_LINESX-UPDATEFLAG = 'U'.
ZSCHEDULE_LINESX-REQ_DATE = 'X'.
ZSCHEDULE_LINESX-DATE_TYPE = 'X'.
ZSCHEDULE_LINESX-SCHED_TYPE = 'X'.
ZSCHEDULE_LINESX-GRID_VALUE = 'X'.
ZSCHEDULE_LINESX-REQ_CATEGORY = 'X'.
ZSCHEDULE_LINESX-REFOBJTYPE = 'X'.
ZSCHEDULE_LINESX-REQ_QTY = 'X'.
append ZSCHEDULE_LINESX.
CALL FUNCTION '/AFS/BAPI_SALESORD_CHANGE'
EXPORTING
SALESDOCUMENT = so_no
ORDER_HEADER_IN = zBAPISDHD
ORDER_HEADER_INX = zORDER_HEADER_INX
SIMULATION =
BEHAVE_WHEN_ERROR = ' '
INT_NUMBER_ASSIGNMENT = ' '
LOGIC_SWITCH =
TABLES
RETURN = zRETURN
ORDER_ITEM_IN = zORDER_ITEMS_IN
ORDER_ITEM_INX = zORDER_ITEM_INX
ORDER_SCHEDULE_LINES = zORDER_SCHEDULES_IN
ORDER_SCHEDULE_LINESX = ZSCHEDULE_LINESX.
PARTNERS =
PARTNERCHANGES = zPARTNERCHANGES
PARTNERADDRESSES =
ORDER_CFGS_REF =
ORDER_CFGS_INST =
ORDER_CFGS_PART_OF =
ORDER_CFGS_VALUE =
ORDER_CFGS_BLOB =
ORDER_CFGS_VK =
ORDER_CFGS_REFINST =
ORDER_TEXT =
ORDER_KEYS =
CONDITIONS_IN =
CONDITIONS_INX =
EXTENSIONIN =
*CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
SALESDOCUMENT = so_no
ORDER_HEADER_IN = zBAPISDHD
ORDER_HEADER_INX = zORDER_HEADER_INX
TABLES
RETURN = zRETURN
ORDER_ITEM_IN = zORDER_ITEMS_IN
ORDER_ITEM_INX = zORDER_ITEM_INX
PARTNERS = zORDER_PARTNERS
PARTNERCHANGES = zPARTNERCHANGES
PARTNERADDRESSES =
ORDER_CFGS_REF =
ORDER_CFGS_INST =
ORDER_CFGS_PART_OF =
ORDER_CFGS_VALUE =
ORDER_CFGS_BLOB =
ORDER_CFGS_VK =
ORDER_CFGS_REFINST =
SCHEDULE_LINES = zORDER_SCHEDULES_IN
SCHEDULE_LINESX = ZSCHEDULE_LINESX.
ORDER_TEXT =
ORDER_KEYS =
CONDITIONS_IN =
CONDITIONS_INX =
EXTENSIONIN =
data : s_BAPIRET2 like BAPIRET2.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
importing
return = s_bapiret2.Hi,
Refer this code: Marked in bold
Get Line Item Details which are to be deleted
The line items fetched but not matching with ALV data
are the one which are copied from Reference Order
and should be deleted from our Sales Order
PERFORM get_line_item_details.
To get all the uploaded data
i_upload_2[] = i_upload[].
This is to be executed only if the SALES ORDER
IS CREATED WITH REFERENCE & User has selected
the record in ALV for Order Creation
LOOP AT i_upload INTO wa_upload_1
WHERE chkbx = 'X'
AND vbeln NE space.
MOVE wa_upload_1 TO wa_upload.
Clear Work Area/Local variables & Internal tables
CLEAR : l_sales_no,
l_item_number,
wa_header_in,
wa_header_inx,
wa_curr,
l_currency,
l_count,
l_counter.
REFRESH : i_cond,
i_cond_inx,
i_sch_in,
i_sch_inx,
i_items_in,
i_items_inx,
i_return,
i_partner_inx.
AT NEW seqno.
Get the Sales Order Number for corresponding record
READ TABLE i_result_all INTO wa_result_all WITH KEY
ref_no = wa_upload-vbeln
seqno = wa_upload-seqno.
IF sy-subrc EQ 0.
IF NOT wa_result_all-vbeln IS INITIAL.
l_sales_no = wa_result_all-vbeln.
ENDIF.
ELSE.
CONTINUE.
ENDIF.
READ TABLE i_curr INTO wa_curr
WITH KEY vbeln = l_sales_no.
Header Data
CLEAR wa_header_in.
wa_header_in-sales_org = wa_upload-vkorg.
wa_header_in-distr_chan = wa_upload-vtweg.
wa_header_in-division = wa_upload-spart.
wa_header_in-ref_doc = wa_upload-vbeln.
wa_header_in-ref_doc_l = wa_upload-vbeln.
wa_header_in-purch_no_c = wa_upload-bstnk.
CLEAR : wa_header_inx.
wa_header_inx-updateflag = 'U'.
wa_header_inx-sales_org = 'X'.
wa_header_inx-distr_chan = 'X'.
wa_header_inx-division = 'X'.
wa_header_inx-purch_no_c = 'X'.
Check Business Object
CLEAR : l_bus_object.
IF wa_upload-auart = 'ZY01' OR
wa_upload-auart = 'ZY07' OR
wa_upload-auart = 'ZY08' OR
wa_upload-auart = 'ZY09' OR
wa_upload-auart = 'ZY18' OR
wa_upload-auart = 'ZY94' .
l_bus_object = 'BUS2032'.
ELSEIF
wa_upload-auart = 'ZY10' OR
wa_upload-auart = 'ZY11' OR
wa_upload-auart = 'ZY27' OR
wa_upload-auart = 'ZY28' OR
wa_upload-auart = 'ZY92' OR
wa_upload-auart = 'ZY93'.
l_bus_object = 'BUS2102'.
ELSEIF
wa_upload-auart = 'ZY16' OR
wa_upload-auart = 'ZY30'.
l_bus_object = 'BUS2094'.
ELSEIF
wa_upload-auart = 'ZY17' OR
wa_upload-auart = 'ZY31'.
l_bus_object = 'BUS2096'.
ELSEIF
wa_upload-auart = 'ZY06' OR
wa_upload-auart = 'ZY26'.
l_bus_object = 'BUS2032'.
ENDIF.
*Populate Ship-to-party
IF NOT wa_upload-scode IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = '000000'.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_we.
wa_partner_inx-p_numb_new = wa_upload-scode.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Bill to Party
IF NOT wa_upload-bparty IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = '000000'.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_re.
wa_partner_inx-p_numb_new = wa_upload-bparty.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Payer
IF NOT wa_upload-payer IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = '000000'.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_rg.
wa_partner_inx-p_numb_new = wa_upload-payer.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Sales Rep
IF NOT wa_upload-salesrep IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = '000000'.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_ys.
wa_partner_inx-p_numb_new = wa_upload-salesrep.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Check condition type & unit price
For the following Document Types,
Condition Type & Unit Price are mandatory
CLEAR : l_item_number,
wa_upload_2.
LOOP AT i_upload_2 INTO wa_upload_2
WHERE seqno = wa_upload-seqno
AND chkbx = 'X'.
CLEAR : wa_cond,
wa_result.
Get the POSNR
PERFORM conv_alpha_input USING wa_upload_2-matnr
CHANGING wa_upload_2-matnr.
CLEAR : wa_items.
READ TABLE i_items INTO wa_items
WITH KEY vbeln = l_sales_no
matnr = wa_upload_2-matnr.
Check condition types
IF wa_upload_2-auart = 'ZY16' OR
wa_upload_2-auart = 'ZY17' OR
wa_upload_2-auart = 'ZY30' OR
wa_upload_2-auart = 'ZY31'.
If error, then update the output table
IF wa_upload_2-kschl IS INITIAL OR
wa_upload_2-kbetr IS INITIAL.
CLEAR : wa_result_all.
READ TABLE i_result_all INTO wa_result_all WITH KEY
ref_no = wa_upload_2-vbeln
mat_no = wa_upload_2-matnr
kwmeng = wa_upload_2-kwmeng
charg = wa_upload_2-charg
seqno = wa_upload_2-seqno
vbeln = l_sales_no.
IF sy-subrc EQ 0.
wa_result_all-status = 'E'. " E
wa_result_all-remarks = text-007. " Condition Type & Unit
Price is mandatory
MODIFY i_result_all FROM wa_result_all INDEX sy-tabix.
ENDIF.
CLEAR : wa_result_all.
CONTINUE.
Else update the condition type & unit price
ELSE.
wa_cond-itm_number = wa_items-posnr. " ITEM NO.
wa_cond-cond_type = wa_upload_2-kschl. " CNDTION TYPE
wa_cond-cond_value = wa_upload_2-kbetr. " UNIT PRICE
wa_cond-currency = wa_curr-waerk. " Currency
APPEND wa_cond TO i_cond.
CLEAR : wa_cond,
wa_upload_2.
ENDIF.
ELSE.
For other document type, fill Condition type & Unit Price
wa_cond-itm_number = wa_items-posnr. " ITEM NO.
wa_cond-cond_type = wa_upload_2-kschl. " CNDTION TYPE
wa_cond-cond_value = wa_upload_2-kbetr. " UNIT PRICE
wa_cond-currency = wa_curr-waerk.
APPEND wa_cond TO i_cond.
CLEAR : wa_cond,
wa_upload_2.
ENDIF.
CLEAR : wa_cond_inx.
wa_cond_inx-itm_number = wa_items-posnr.
wa_cond_inx-cond_type = wa_upload_2-kschl.
wa_cond_inx-cond_value = 'X'.
wa_cond_inx-currency = 'X'.
APPEND wa_cond_inx TO i_cond_inx.
CLEAR : wa_upload_2.
ENDLOOP.
DELETE Item Data from VBAP which has no matching entires in ALV
if SAME Material occurs more than once in ALV for same key then
count the no. of times the material occurs
CLEAR : wa_upload_3,
l_counter.
l_counter = 0.
LOOP AT i_upload_2 INTO wa_upload_3
WHERE seqno = wa_upload-seqno
AND chkbx = 'X'
AND matnr = wa_upload-matnr.
l_counter = l_counter + 1.
CLEAR : wa_upload_3.
ENDLOOP.
PERFORM conv_alpha_input USING wa_upload-matnr
CHANGING wa_upload-matnr.
check the corresponding no. of line items
for the above material
CLEAR : l_count,
wa_items.
LOOP AT i_items INTO wa_items
WHERE matnr = wa_upload-matnr
AND vbeln = l_sales_no.
CLEAR : wa_items_in,
wa_items_inx.
IF l_count GE l_counter.
wa_items_in-itm_number = wa_items-posnr.
wa_items_in-material = wa_items-matnr.
APPEND wa_items_in TO i_items_in.
CLEAR wa_items_inx.
wa_items_inx-itm_number = wa_items-posnr.
wa_items_inx-updateflag = 'D'. " Delete Record
wa_items_inx-material = 'X'.
APPEND wa_items_inx TO i_items_inx.
ENDIF.
l_count = l_count + 1.
ENDLOOP.
Convert material nos. to 18 digit no.
REFRESH : i_upload_3.
CLEAR : wa_upload_3.
i_upload_3[] = i_upload_2[].
LOOP AT i_upload_3 INTO wa_upload_3
WHERE seqno = wa_upload-seqno
AND chkbx = c_x.
PERFORM conv_alpha_input USING wa_upload_3-matnr
CHANGING wa_upload_3-matnr.
MODIFY i_upload_3 FROM wa_upload_3.
CLEAR : wa_upload_3.
ENDLOOP.
Delete materials which are not in ALV but are in line items
for that sales order
CLEAR : wa_upload_3,
wa_items_in,
wa_items.
LOOP AT i_items INTO wa_items WHERE vbeln = l_sales_no.
PERFORM conv_alpha_input USING wa_items-matnr
CHANGING wa_items-matnr.
READ TABLE i_upload_3 INTO wa_upload_3
WITH KEY matnr = wa_items-matnr.
IF sy-subrc NE 0.
wa_items_in-itm_number = wa_items-posnr.
wa_items_in-material = wa_items-matnr.
APPEND wa_items_in TO i_items_in.
CLEAR wa_items_inx.
wa_items_inx-itm_number = wa_items-posnr.
wa_items_inx-updateflag = 'D'. " Delete Record
wa_items_inx-material = 'X'.
APPEND wa_items_inx TO i_items_inx.
ENDIF.
CLEAR : wa_items,
wa_items_in,
wa_items_inx,
wa_upload_3.
ENDLOOP.
UPDATE Item Data RECORDS
CLEAR : wa_upload_2,
wa_items_in,
wa_items,
wa_items_inx,
wa_sch_in,
wa_sch_inx,
l_item_number.
LOOP AT i_upload_2 INTO wa_upload_2 WHERE
seqno = wa_upload-seqno
AND chkbx = 'X'.
Read the Material no. from ALV & check whether the
corresponding material exists in VBAP, if YES, then
Update the line item data
PERFORM conv_alpha_input USING wa_upload_2-matnr
CHANGING wa_items_in-material.
POPULATE ITEM NO -- Update the record
If line item has same material twice,
then appropriate POSNR should be assigned
READ TABLE i_items INTO wa_items
WITH KEY vbeln = l_sales_no
matnr = wa_items_in-material.
IF sy-subrc EQ 0.
If Reference is not contract then the process to assign
POSNR is as follows :- Check the corresponding material
from ALV with data from ITEMS, the record which matches
the data is selected & POSNR is assigned to it
IF wa_upload_2-oreason NE 'C'.
CLEAR : wa_items_in1.
READ TABLE i_items_in INTO wa_items_in1
WITH KEY material = wa_items_in-material
itm_number = wa_items-posnr.
IF sy-subrc EQ 0.
CLEAR : wa_items1.
LOOP AT i_items INTO wa_items1
WHERE vbeln = l_sales_no
AND matnr = wa_items_in-material.
IF wa_items1-posnr GT wa_items-posnr.
wa_items-posnr = wa_items1-posnr.
CLEAR : wa_items_in1.
READ TABLE i_items_in INTO wa_items_in1
WITH KEY material = wa_items_in-material
itm_number = wa_items-posnr.
IF sy-subrc NE 0.
EXIT.
ENDIF.
ENDIF.
CLEAR : wa_items1.
ENDLOOP.
ENDIF.
ELSE.
If Reference is CONTRACT then the process to assign
POSNR is different. Here if ALV has same material
twice & ITEMS has it once, then the second occurrence
of material of ALV is assigned a new POSNR
CLEAR : wa_items_in1,
l_insert.
READ TABLE i_items_in INTO wa_items_in1
WITH KEY material = wa_items_in-material
itm_number = wa_items-posnr.
IF sy-subrc EQ 0.
CLEAR : l_lines,
l_insert,
wa_items_in1.
DESCRIBE TABLE i_items_in LINES l_lines.
READ TABLE i_items_in INTO wa_items_in1 INDEX l_lines.
wa_items-posnr = wa_items_in1-itm_number + 10.
l_insert = 'X'.
CLEAR : wa_items_in1.
ENDIF.
ENDIF.
<b> wa_items_in-itm_number = wa_items-posnr.
wa_items_in-target_qty = wa_upload_2-kwmeng.
wa_items_in-target_qu = wa_items-zieme.
wa_items_in-store_loc = wa_upload_2-lgort.
wa_items_in-plant = wa_upload_2-werks.
wa_items_in-batch = wa_upload_2-charg.
wa_items_in-route = wa_upload_2-route.
wa_items_in-sales_unit = wa_upload_2-vrkme.
wa_items_in-short_text = wa_upload_2-maktx.
APPEND wa_items_in TO i_items_in.</b>
CLEAR wa_items_inx.
wa_items_inx-itm_number = wa_items-posnr.
IF l_insert EQ c_x.
wa_items_inx-updateflag = c_i. " Insert Record
ELSE.
wa_items_inx-updateflag = 'U'. " Update Record
ENDIF.
wa_items_inx-material = 'X'.
wa_items_inx-target_qty = 'X'.
wa_items_in-target_qu = 'X'.
wa_items_inx-store_loc = 'X'.
wa_items_inx-plant = 'X'.
wa_items_inx-batch = 'X'.
wa_items_inx-route = 'X'.
wa_items_inx-short_text = 'X'.
APPEND wa_items_inx TO i_items_inx.
ENDIF.
*Populate Ship-to-party
IF NOT wa_upload_2-scode IS INITIAL
AND l_insert IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = wa_items-posnr.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_we.
wa_partner_inx-p_numb_new = wa_upload_2-scode.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Bill to Party
IF NOT wa_upload_2-bparty IS INITIAL
AND l_insert IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = wa_items-posnr.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_re.
wa_partner_inx-p_numb_new = wa_upload_2-bparty.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Payer
IF NOT wa_upload_2-payer IS INITIAL
AND l_insert IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = wa_items-posnr.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_rg.
wa_partner_inx-p_numb_new = wa_upload_2-payer.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Sales Rep
IF NOT wa_upload_2-salesrep IS INITIAL
AND l_insert IS INITIAL.
CLEAR wa_partner_inx.
wa_partner_inx-document = l_sales_no.
wa_partner_inx-itm_number = wa_items-posnr.
wa_partner_inx-updateflag = 'U'.
wa_partner_inx-partn_role = c_ys.
wa_partner_inx-p_numb_new = wa_upload_2-salesrep.
wa_partner_inx-refobjtype = l_bus_object.
APPEND wa_partner_inx TO i_partner_inx.
ENDIF.
Populate schedule Line
CLEAR : l_datum,
wa_sch_in.
For following condition types, schedule lines not required
IF wa_upload_2-auart EQ 'ZY16' OR
wa_upload_2-auart EQ 'ZY17' OR
wa_upload_2-auart EQ 'ZY30' OR
wa_upload_2-auart EQ 'ZY31'.
ELSE.
wa_sch_in-itm_number = wa_items-posnr.
wa_sch_in-sched_line = '0001'.
wa_sch_in-req_qty = wa_upload_2-kwmeng.
IF NOT wa_upload_2-vdatu IS INITIAL.
REPLACE ALL OCCURRENCES OF '.' IN wa_upload_2-vdatu WITH ' '.
CONDENSE wa_upload_2-vdatu NO-GAPS.
CLEAR : l_datum.
l_datum = wa_upload_2-vdatu.
wa_sch_in-req_date = l_datum.
ENDIF.
APPEND wa_sch_in TO i_sch_in.
CLEAR wa_sch_inx.
wa_sch_inx-itm_number = wa_items-posnr.
wa_sch_inx-sched_line = '0001'.
IF wa_upload_2-oreason = 'C'.
wa_sch_inx-updateflag = c_i.
ELSE.
wa_sch_inx-updateflag = 'U'.
ENDIF.
wa_sch_inx-req_qty = 'X'.
wa_sch_inx-req_date = 'X'.
APPEND wa_sch_inx TO i_sch_inx.
ENDIF.
CLEAR : wa_upload_2,
wa_items_in,
wa_items,
wa_items_inx,
wa_sch_in,
wa_sch_inx.
ENDLOOP. "LOOP AT i_upload to wa_UPLOAD_2
Change Sales Order
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
salesdocument = l_sales_no
order_header_in = wa_header_in
order_header_inx = wa_header_inx
SIMULATION =
BEHAVE_WHEN_ERROR = ' '
INT_NUMBER_ASSIGNMENT = ' '
LOGIC_SWITCH =
TABLES
return = i_return
order_item_in = i_items_in
order_item_inx = i_items_inx
partners = i_partner
partnerchanges = i_partner_inx
PARTNERADDRESSES =
ORDER_CFGS_REF =
ORDER_CFGS_INST =
ORDER_CFGS_PART_OF =
ORDER_CFGS_VALUE =
ORDER_CFGS_BLOB =
ORDER_CFGS_VK =
ORDER_CFGS_REFINST =
schedule_lines = i_sch_in
schedule_linesx = i_sch_inx
ORDER_TEXT =
ORDER_KEYS =
conditions_in = i_cond
conditions_inx = i_cond_inx
EXTENSIONIN =
COMMIT
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = ' '
IMPORTING
return = wa_commit.
WAIT UP TO 5 SECONDS.
Best regards,
Prashant -
Pricing For Text Item in Sales Order
Hi ,
How to give price for text item in sales order.
With regards.
AfzalHi Afzal,
consider to create a single service material as a generic one, type DIEN, with basic data and sales org views, with item category group LEIS (it will determine item category TAX in sales order). Material description could be "Don't forget to change me!" so in sales order user remembers to changes the description according to the especific sales order requirements.
Regards,
JM -
Deleting the reservations for components of a production order without TECO
Dear Gurus,
I forgot to activate the backflush indicator in the beginning. I activated the backflush indicator in between. But for the confirmations already made I had to issue the material as unplanned consumption for the order. This is not clearing the reservations for the material.
How to delete the reservations for components of a production order without TECOing the production order? My order is not completed.
Thanks and Regards,
RaghuHi Kumar,
I have a production order for 1000 header (A) qty. My control key is PP03 (auto goods receipt from confirmation in CO11N).
For this order the component B qty is 1000 (BOM consumption is 1:1)
Without doing GI, the confirmation is done for 300 A qty. I realized that auto GI is not done for the 300 qty of component B as there was no backflush indicator.
Now the backflush indicator is activated in the production order for component B.
In the next confirmation for another 300 A qty, automatic GI is posted for 300 B qty because of backflush now.
Now my confirmed and GR qty for A in two rounds is 300 + 300 = 600.
GI of component B done is only 300 (through backflush).
Qty yet to confirm = 400.
So I did GI of 300 B qty through MB1A (which is an unplanned issue). This does not update the withdrawn qty in the production order. Also the reservations for component B for this 300 qty are not reduced in the system.
Now the reservations against the order for component B = 1000 - 300 = 700 (which is 300 more than the qty yet to confirm).
Now when I run MRP for another 2000 qty of A, the procurement proposals for B will be 2000 + 300(undeleted reservations) = 2300. Though the system is behaving properly, this 300 is additional and unwanted.
For this reason I need to delete these reservations before the MRP run. As order is still open, I cannot TECO the order. Nor can I clear all open reservations from CO11N.
Thanks and Regards, -
Hi, my apple ID verification email does not contain the link for me to click in order to verify my account. Re-submitting has not worked, what can i do to verify/activate my account in order to access Icloud?
If you want to change your iCloud ID or password on your phone go to Settings>iCloud and tap Delete Account, then sign back in with your updated information. Note: this only deletes the account and any synced data from your phone, not from iCloud. Provided you are signing back into the same account and not changing accounts it will be synced back to your device when you sign back in.
-
Can u tell me the tables for field Cross company Purchase Order.
Can u tell me the tables for field Cross company Purchase Order.
check below link...
http://help.sap.com/bp_bblibrary/500/Documentation/J53_BPP_EN_DE.doc -
57F4 challan print - getting parent item no and po number for child item
Hi ,
In 57F4 challan, Subcontract components - i.e Child items are used for creating the challans.
However while printing needs the parent item no with the purchase order number for that child item number.
It is getting stored in RM07M structure.
Any inputs / suggestions how to retrive parent item number and purchase order number for child item i.e for subcontract items?
Thank you .
Prasad.Thank you for the reply. I checked the table RSEG table for material document and PO details, however the RSEG gets populated when there is credit or debit entries.
In this 57F4 challan there is no credit or debit enteries hence would not get in RSEG table.
Appreciate your inputs for any other alternative.
OR is there any table or Function Module to get the enteries of the struture of RM07M . -
Disabling the Qty field for Input for Sub items in Sales Order and Delivery
Hi..
I have a requirement, where by we need to disable the qty field vbap-kwmeng for input for sub items of the BOM.
I am planning to use the user exit USEREXIT_FIELD_MODIFICATION...in the include MV45AFZZ for sales orders.
But i need to disable the input only after the BOM Explosion and item category determination in the sales order.
Can i Use the same exit ?? what additional conditions i need to take into account.
also we need to disable the delivery quantity field also for the sub items of this sales bom.
I see that this User exit is not available in delivery procesing. How to acheive the required functionality in the delivery processing...
your advice is much appreciated in this matter.
Regards
Srinihi,
Route is determined
1.Country of Departure & Departure Zone taken from Shipping Point
2.Country of Destination & receiving Zone from Ship to party
3.Shipping condition from CMR
4.Transportation Group from MMR
5.Weight Group which is optional.
Check the above.
Route is determined in delivery.
ASHA -
Wrong Availability check for Header Item in Sales BOM after BOP
Hi Guys
I am stuck with a very weird problem. Request your advice:
I have a Sales BOM with one item Lets header is 'A' and Item 'B'. On creation of Sales Order ATP check is performed and both the line items (with A and B) the committed qty and committed date.
Now when BOP runs, it deletes the allocation of A and changes it to '0'
Details:
'A' is a non stockable product
Req:
1. I am not sure whether I should include A in BOP selection, however even running it only with B it deletes the allocation of A and the committed qty changes to '0'
Can you please suggest the solution or standard way of running BOP for Sales BOM
Thanks in advance
-RahulThanks for writing in Prasun
Yes I created a new Filter type however when you add a STO category and then you change the fields to include item category you will get the same error. I am also in V 5.0 of SCM
Normally we use SAP_NetChange filter type. So is it possible to restrict using item category for this filter some how!
On the otherhand I also wonder these should not ATP relevant as the header item is non stockable item! And I guess there should some catch to exclude if not item category as you mentioned!
So the order categories included are:
Customer Inquiry
Customer quotation
Sales Order
SD Scheduling Agreement
SD Scheduling agreement w/external
Contract
Delivery w/io charge
Independent requriement
Release from customer in plant
STO
Deplyometn release
TLB release for purc ord
Fields
Product
location
distribution centrer
MRP area
product Hierarchy
Location hierarchy
supplier location
These are std filter type and I cant be modified.. however we restrict our filter to location only!
Kindly advice!
Thanks in advance
-RK
Maybe you are looking for
-
Poor sound quality on podcasts after upgrading to leopard
I upgraded my Powerbook G4 to Leopard yesterday. Currently, my podcasts from Bloomberg on the Econonmy are almost uninteligible as they skipp words, have static etc. Before the update, everything worked fine. Is this a compresssion issue? What can I
-
Buying a PS4 - Game Recommendation list
I'm buying a PS4 in a few days. I'm looking for help in selecting games as I haven't really followed PS Titles over the past few years. I do own a few PS3 Titles, but it is quite limited. I've mostly been gaming on PC. However, I really *do* want to
-
Attempting to copy to the disk "My shortname's iPod" failed.
Attempting to copy to the disk "My shortname's iPod" failed. The disk could not be read from or written to. ^^^^^^ I get this error since i want to upgrade my music in my ipod 5th gen. I have done the 5 R's. I cannot believe my iPod gor ruined when i
-
IMovie clips freezing and lagging
I created an announcement video with music, multiple clips, and sound effects in it. When I preview and when I export it, the movie freezes in several locations no matter what I do. Is there a fix for this yet?
-
Data recovery from deleted trash
I must have accidently removed two documents from Apple Works. I then emptied my trash not realizing that those documents were in the trash. I have looked at the posted questions and don't seem to find one similar to mine. Is there software available