UTF-8 "no BOM" with URLLoader
How can I pull this off? The XML file is structured perfectly
but it's encoded with no Byte Order Marker. I really just wish I
could load the file in as binary and re-encode it so that it could
be properly parsed and used with EX4.
Any help would be awesome.
"visualstylee" <[email protected]> wrote in
message
news:gchf81$nea$[email protected]..
> yes, that is true. If I saved it. I'm trying to read a
file that is
> generated by safari.
>
> History.plist
>
> it's just XML but without BOM
Read it in as a string and add the BOM, then convert it to
XML...?
Similar Messages
-
Required output File In UTF -8 NO BOM format
Hi,
I am Working with Idoc to File scenario.
Where the some of the data for the file will be in Chiniese.
So i used the file encoding parameters as GB18030 in file reciever.
But the legacy system to get process the format of the file should be UTF -8 NO BOM format.
So what encoding parameter should be used to get the output file in UTF -8 NO BOM and chiniese format.
Regards,
Manojthis might be helfulll check........
Under File Encoding, specify a code page.
The default setting is to use the system code page that is specific to the configuration of the installed operating system. The file content is converted to the UTF-8 code page before it is sent.
Permitted values for the code page are the existing Charsets of the Java runtime. According to the SUN specification for the Java runtime, at least the following standard character sets must be supported:
■ US-ASCII
Seven-bit ASCII, also known as ISO646-US, or Basic Latin block of the Unicode character set
■ ISO-8859-1
ISO character set for Western European languages (Latin Alphabet No. 1), also known as ISO-LATIN-1
■ UTF-8
8-bit Unicode character format
■ UTF-16BE
16-bit Unicode character format, big-endian byte order
■ UTF-16LE
16-bit Unicode character format, little-endian byte order
■ UTF-16
16-bit Unicode character format, byte order
More at - http://help.sap.com/saphelp_nw04/helpdata/en/e3/94007075cae04f930cc4c034e411e1/content.htm -
Need to produce all webhelp files as UTF-8 No BOM - RH-7 does not do that.
RoboHelp 7 seems to produce some HTML files and javascript files (*.js) in ANSI European encoding. My company needs all the webhelp code to be UTF-8 no BOM. The webhelp is managed through Perforce.
I tried on my own to use FAR 4.3 to change the encoding from ANSI to UTF-8 no BOM for all of my htm and js webhelp files for a particular webhelp – I used Auto-detect using BOM signature. FAR changed the files to UTF-8 with BOM. I tried to turn off the BOM by converting with Assume UTF-8 if no BOM signature – that did not work at all (FAR assumed all files were already UTF-8 and did not convert them).
Is there some way to change this in RoboHelp 7? Can RoboHelp 9 solve this problem?
If not, is there a post webhelp production solution that can convert all the webhelp in one “batch?”UTF-8 was introduced in RoboHelp 8 but I don't think the BOM can be avoided.
RoboHelp 9 allows you to choose your encoding but the UTF-8 option is Unicode (UTF-8). There is also a Unicode option but it's outside my area to know if that is what you want.
See www.grainge.org for RoboHelp and Authoring tips
@petergrainge -
Comparing prices for a BOM with selling and distribution price
Good day
I have been working on a query to bring information for a crystal report required by a client they want to compare the finished BOM with the selling price or distribution price of that BOM. I am not understanding a scenario where this BOM is sold to a particular BP price will definitely vary with BP depending on the terms and special prices. Can anyone help me enhance my query to have valuable results.
SELECT
Distinct T0.Father AS [BOM Product N0.],
T0.Code AS [BOM Item Component],
T2.ItemName AS [BOM Description],
T0.Quantity AS [Component Qty],
T0.Price AS [Comp Cost],
(Select (t3.Factor * t0.Price * t0.Quantity)
from OPLN t3
where t3.ListName = '1.selling price' ) [Selling Price],
(Select (t3.Factor * t0.Price * t0.Quantity)
from OPLN t3
where t3.ListName = '3.distPriceList' ) [Distribution Price],
T0.PriceList AS [Comp Price List],
T1.ListName AS [Price List Name],
T2.AvgPrice
FROM ITT1 T0
INNER JOIN OPLN T1
ON T0.PriceList = T1.ListNum
INNER JOIN OITM T2
ON T0.Code = T2.ItemCode
Where T2.ItmsGrpCod NOT IN (101,110,105)Hi,
Special price is in OSPP / SPP1 /SPP2 tables. Check the table to find the link.
Thanks,
Gordon -
While trying to change a BOM with transaction CS02, a runtime error appears
While trying to change a BOM with transaction CS02, a runtime error appears.
In intial screen he entered material ,plant BOM usage and date valid from after executed then id displayed item list in that he wantu2019s delete one item, he has been deleted selected item after that when he was saving he is getting runtime error
Developer trace
ABAP Program SAPLKED1_WRITE_CE4_BPS1 .
Source LKED1_WRITE_CE4_BPS1U01 Line 30.
Error Code SAPSQL_ARRAY_INSERT_DUPREC.
Module $Id: //bas/640_REL/src/krn/runt/absapsql.c#17 $ SAP.
Function HandleRsqlErrors Line 775.
RABAX: level LEV_RX_STDERR completed.
RABAX: level LEV_RX_RFC_ERROR entered.
RABAX: level LEV_RX_RFC_ERROR completed.
RABAX: level LEV_RX_RFC_CLOSE entered.
RABAX: level LEV_RX_RFC_CLOSE completed.
RABAX: level LEV_RX_IMC_ERROR entered.
RABAX: level LEV_RX_IMC_ERROR completed.
RABAX: level LEV_RX_DATASET_CLOSE entered.
RABAX: level LEV_RX_DATASET_CLOSE completed.
RABAX: level LEV_RX_RESET_SHMLOCKS entered.
RABAX: level LEV_RX_RESET_SHMLOCKS completed.
RABAX: level LEV_RX_ERROR_SAVE entered.
RABAX: level LEV_RX_ERROR_SAVE completed.
RABAX: level LEV_RX_ERROR_TPDA entered.
RABAX: level LEV_RX_ERROR_TPDA completed.
RABAX: level LEV_RX_PXA_RELEASE_RUDI entered.
RABAX: level LEV_RX_PXA_RELEASE_RUDI completed.
RABAX: level LEV_RX_LIVE_CACHE_CLEANUP entered.
RABAX: level LEV_RX_LIVE_CACHE_CLEANUP completed.
RABAX: level LEV_RX_END entered.
RABAX: level LEV_RX_END completed.
RABAX: end RX_RFC
In sm21
Perform rollback
Run-time error "SAPSQL_ARRAY_INSERT_DUPREC" occurred
Short dump "090618 110101 donalda 11557 " generated
Runtime Error SAPSQL_ARRAY_INSERT_DUPREC
Exception CX_SY_OPEN_SQL_DB
Occurred on 18.06.2009 at 11:01:01
The ABAP/4 Open SQL array insert results in duplicate database records.
What happened?
Error in ABAP application program.
The current ABAP program "SAPLKED1_WRITE_CE4_BPS1" had to be terminated because
one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
What can you do?
Print out the error message (using the "Print" function)
and make a note of the actions and input that caused the
error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
Error analysis
An exception occurred. This exception is dealt with in more detail below
. The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was
neither
caught nor passed along using a RAISING clause, in the procedure
"RKE_WRITE_CE4__BPS1" "(FUNCTION)"
Since the caller of the procedure could not have expected this exception
to occur, the running program was terminated.
The reason for the exception is:
If you use an ABAP/4 Open SQL array insert to insert a record in
the database and that record already exists with the same key,
this results in a termination.
(With an ABAP/4 Open SQL single record insert in the same error
situation, processing does not terminate, but SY-SUBRC is set to 4.)
How to correct the error
The exception must either be prevented, caught within the procedure
"RKE_WRITE_CE4__BPS1"
"(FUNCTION)", or declared in the procedure's RAISING clause.
To prevent the exception, note the following:
Use an ABAP/4 Open SQL array insert only if you are sure that none of
the records passed already exists in the database.
You may able to find an interim solution to the problem
in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"SAPSQL_ARRAY_INSERT_DUPREC" CX_SY_OPEN_SQL_DBC
"SAPLKED1_WRITE_CE4_BPS1" or "LKED1_WRITE_CE4_BPS1U01"
"RKE_WRITE_CE4__BPS1"
If you cannot solve the problem yourself, please send the
following documents to SAP:
1. A hard copy print describing the problem.
To obtain this, select the "Print" function on the current screen.
2. A suitable hardcopy prinout of the system log.
To obtain this, call the system log with Transaction SM21
and select the "Print" function to print out the relevant
part.
3. If the programs are your own programs or modified SAP programs,
supply the source code.
To do this, you can either use the "PRINT" command in the editor or
print the programs using the report RSINCL00.
4. Details regarding the conditions under which the error occurred
or which actions and input led to the error.Hi ,
you are getting beacuse u are trying to do mass update to database.
Please check that below note are applicable to your system.
Note 453313 - DBIF_RSQL_ERROR_INTERNAL for mass insert
Note 869534 - AFS MRP doesn't work properly with all BOM item categories
Thanks Rishi Abrol -
Error while creating BOM with FM CSAP_MAT_BOM_MAINTAIN
Hi All,
While creating the bom with the FM "CSAP_MAT_BOM_MAINTAIN" using change number i am getting the below error message.
" Processing of this object is not supported with change number."
Please help me out.
Regards
Sureshcall function 'CSAP_MAT_BOM_MAINTAIN'
exporting
material = material
plant = plant
bom_usage = usage
alternative = alternat
valid_from = y_date
* CHANGE_NO = "<----Have u used this field for creating ?
* REVISION_LEVEL =
i_stko = l_stko
* FL_NO_CHANGE_DOC = ' '
fl_commit_and_wait = 'X'
fl_bom_create = 'X'
fl_new_item = ' '
fl_complete = ' '
* IMPORTING
* FL_WARNING =
* O_STKO =
CSAP_MAT_BOM_CREATE would be an ideal one for creation and CSAP_MAT_BOM_MAINTAIN for change
Regards,
Mithun Shetty. -
Error while changing BOM with change number
Hi ALL, Please help me with followed error message, I am using ECM. I created ECR and converted to ECO and then released.
Object management record cannot be generated
Message no. 29046
Diagnosis
You want to change the BOM with the entered change number.
One of the following situations triggered this error message:
1. The indicator that allows automatic generation is not set for object type BOM in the change master.
2. The indicator generation only on initial creation is set for object type BOM
3. You are processing a change request.
System response
The system checks whether the indicator object management record will be generated is set in the change master.
If the indicator generation only on initial creation is set, the system checks whether the BOM exists in the system.
Procedure
If you are authorized to change the change master, execute the following steps:
For 1.)
Set this indicator for object type BOM or create the control record in the change master.
For 2.)
If the BOM already exists in the system and the generation only on initial creation indicator is set, the system can no longer generate the control record automatically.
In this case you have to add the object control record to the change master first, then you can change the BOM in relation to the change number.
For 3.)
You cannot generate any object control records for a change request.Hi
With your question regarding changing BOM with change number it looks lke there may be problem in defining the Object types,objects.Moreover whenever converted to ECO you need to enter into cs02 tcode for changing the bom with relevant change number and valid from date.
Hope this gives you a clear idea.let me know if you need anyfurther inputs.
Regards
Praveen -
Hi friends,
The issue my user is having is that he has created a subcontracting PO ...and later while issuing thro MB1b 541... the system throws an error... PO HAS NO ITEMS..
But PO has a BOM exploded ...when i check it has item category T instead of an L... By the time i could check CS03, the user has deleted the BOM .,so i suggested to create a new one with item category L...The issue got resolved.
But my doubt is how this item category T has appeared in the BOM, since when i try creating a BOM with T i cannot enter matl code but my BOM which had popped in the PO had all details with matl code, desc , qty and item category as T..
Pls kindly advise and help me understand..
Thanks
nanduWhen creating your material BOM with Item category T, do not enter the material number.
Only enter decripiton qty. and uom. This should allow you to create the BOM. You would then see this BOM in your Sub-Contract PO. I don't think it was possible you saw the material item in the BOM from your original T category items, as this would not be allowed per standard functionality, as you noted when trying to recreate the incorrect BOM. -
hi
am not tht experience in sap as well not tht expert as u guys but i was just wondering while practicing sap tht can v do bom with free goods as even my faculty who is a reall timmer couldnt solve this probs
i did tried every possible way tried item category determinatino n all but couldnt
it would b great if u solve this n email me back witht the solution
can mail me the solution on
[email protected]
thnks a lottwell exactly true i just wanted to see tht this forum really works n it does with some great experts neways mr ram very much thankful to u n basically i been trying this for 4 months but couldnt ya can do it 1 way u can do it manually in the sales order by changing the item category to tann at item level
try this 1 n ya mr ram do u work in us
if so thn b in touch
bye irfan
[email protected] -
BOM with Same Parent Number But Different WH
Hello fellow SAP B1ers!
I have a question and hope someone can help. This point has us scratching our heads on how to do this.
A customer has two warehouses (WH 1 and a newly-built WH5) producing the same product (Product A) but at different costs per warehouses. They want to create two Bill of Materials (BOM) u2013 one for each warehouse. For Example: BOM of Product A in WH1 and BOM of Product A in WH5. The item cost is maintained at the warehouse level and, with it being a new warehouse, of course the item costs are different on the Item Master Data (Inventory Tab). I cannot believe SAP B1 2007 cannot handle this, as this is Production 101 for any company. Creating fake new and/or phantom products is certainly not the answer, because that could lead to an unbelievable amount of double work. Besides, they want to be able to see the Product A information together.
We have researched both SAP Help and Documentation and in both areas, it says (a direct quote) u2013
If the parent item already has a Bill of Materials, the components are displayed. However, you can still create a new Bill of Materials for that parent item.
So, how do we create a NEW Bill of Material for that parent item?
We have tried to enter a new BOM with the parent item and WH5 and same components, but we receive an error that the item is already on the table. When we use the duplication drop-down function, change the WH number on the header, and change the WH on the lines for components, the original BOM Product A WH1 is gone. For some reason it also duplicates the components (but that is easily fixed). I would imagine that a BOM table would need to have part of the key as ItemCode and WhsCode u2013 maybe a mistake in thinking?
Can someone help us and tell us what we are missing???
Many thanks for responses - ZalHi Zal,
Product Code is same as item code as it is unique so it is not possible to have two BOM for same one item .
I think help file to pointing towards special production order where you define new BOM for same product
But I think it is too much work if you have a lot.....
So I think you have to look for add on to solve your issue ...
A thought for your problem
Thank you
Bishal -
Material BOMs with document items using RCSBI010
Has anyone uploaded material BOMs with document items using RCSBI010? I set the item category to D, but receive an error in LSMW when I attempt to convert the data. The error specifies that the document items are not valid material numbers. They are not material numbers. They are document info records.
Found the problem. The document number was being mapped to BOM Component IDNRK instead of document number DOKNR.
-
Character conversion error: "Unconvertible UTF-8 character beginning with 0
Hi All,
I developed an Adapter Module and added to Adapter Framework.
package sample;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.ejb.CreateException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import com.sap.aii.af.mp.module.Module;
import com.sap.aii.af.mp.module.ModuleContext;
import com.sap.aii.af.mp.module.ModuleData;
import com.sap.aii.af.mp.module.ModuleException;
import com.sap.aii.af.ra.ms.api.Message;
import com.sap.aii.af.ra.ms.api.XMLPayload;
@ejbHome <{com.sap.aii.af.mp.module.ModuleHome}>
@ejbLocal <{com.sap.aii.af.mp.module.ModuleLocal}>
@ejbLocalHome <{com.sap.aii.af.mp.module.ModuleLocalHome}>
@ejbRemote <{com.sap.aii.af.mp.module.ModuleRemote}>
@stateless
public class SetAttachmentName implements SessionBean, Module {
private SessionContext myContext;
private String mailFileName = "UStN";
public void ejbRemove() {
public void ejbActivate() {
public void ejbPassivate() {
public void setSessionContext(SessionContext context) {
myContext = context;
public void ejbCreate() throws CreateException {
public ModuleData process(
ModuleContext moduleContext,
ModuleData inputModuleData)
throws ModuleException {
// create a second attachment for the receiver mail adapter
try {
// get the XI message from the environment
Message msg = (Message) inputModuleData.getPrincipalData();
// creating parsable XML document
InputStream XIStreamData = null;
XMLPayload xmlpayload = msg.getDocument();
XIStreamData = xmlpayload.getInputStream();
DocumentBuilderFactory docBuilderFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
Document doc = docBuilder.parse(XIStreamData);
// finding the tag's name from the Modules tab in the Directory that will hold the attachment's name
String absenderIDTag = null;
absenderIDTag = moduleContext.getContextData("<RCVPRN>");
// finding the content of the tag that will be used as the attachment's name (assuming it's the only tag with this name)
Element element = doc.getDocumentElement();
NodeList list = doc.getElementsByTagName(absenderIDTag);
mailFileName += "_" + list.item(0).getFirstChild().toString();
String anIDTag = null;
anIDTag = moduleContext.getContextData("<CREDAT>");
element = doc.getDocumentElement();
list = doc.getElementsByTagName(anIDTag);
mailFileName += "_" + list.item(0).getFirstChild().toString();
Date date = new Date(System.currentTimeMillis());
// Add date to the Message
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
mailFileName += "_" + dateFormat.format(date);
String belegNummerTag = null;
belegNummerTag = moduleContext.getContextData("<BULK_REF>");
element = doc.getDocumentElement();
list = doc.getElementsByTagName(belegNummerTag);
mailFileName += "_" + list.item(0).getFirstChild().toString();
// creating the attachment
byte by[] = xmlpayload.getText().getBytes();
XMLPayload attachmentPDF = msg.createXMLPayload();
attachmentPDF.setName(mailFileName);
attachmentPDF.setContentType("application/pdf");
attachmentPDF.setContent(by);
//adding the message to the attachment
msg.addAttachment(attachmentPDF);
// provide the XI message for returning
inputModuleData.setPrincipalData(msg);
} catch (Exception e) {
// raise exception, when an error occurred
ModuleException me = new ModuleException(e);
throw me;
// return XI message
return inputModuleData;
I get the following error
Character conversion error: "Unconvertible UTF-8 character beginning with 0xaa" (line number may be too low).
Any tips, pointers ?
Thanks in Advance
MukhtarHi Henrique,
I am using .getNodeValue()
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.ejb.CreateException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import com.sap.aii.af.mp.module.*;
import com.sap.aii.af.ra.ms.api.*;
@ejbHome <{com.sap.aii.af.mp.module.ModuleHome}>
@ejbLocal <{com.sap.aii.af.mp.module.ModuleLocal}>
@ejbLocalHome <{com.sap.aii.af.mp.module.ModuleLocalHome}>
@ejbRemote <{com.sap.aii.af.mp.module.ModuleRemote}>
@stateless
public class UStNAttachmentName3 implements SessionBean, Module {
private SessionContext myContext;
private String mailFileName = "UStN";
public void ejbRemove() {
public void ejbActivate() {
public void ejbPassivate() {
public void setSessionContext(SessionContext context) {
myContext = context;
public void ejbCreate() throws CreateException {
public ModuleData process(
ModuleContext moduleContext,
ModuleData inputModuleData)
throws ModuleException {
// create a second attachment for the receiver mail adapter
try {
// get the XI message from the environment
Message msg = (Message) inputModuleData.getPrincipalData();
// creating parsable XML document
InputStream XIStreamData = null;
XMLPayload xmlpayload = msg.getDocument();
XIStreamData = xmlpayload.getInputStream();
DocumentBuilderFactory docBuilderFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
Document doc = docBuilder.parse(XIStreamData);
// finding the tag's name from the Modules tab in the Directory that will hold the attachment's name
String absenderIDTag = null;
absenderIDTag = moduleContext.getContextData("<RCVPRN>");
// finding the content of the tag that will be used as the attachment's name (assuming it's the only tag with this name)
Element element = doc.getDocumentElement();
NodeList list = doc.getElementsByTagName(absenderIDTag);
mailFileName += "_" + list.item(0).getFirstChild().getNodeValue();
String anIDTag = null;
anIDTag = moduleContext.getContextData("<CREDAT>");
element = doc.getDocumentElement();
list = doc.getElementsByTagName(anIDTag);
mailFileName += "_" + list.item(0).getFirstChild().getNodeValue();
Date date = new Date(System.currentTimeMillis());
// Add date to the Message
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
mailFileName += "_" + dateFormat.format(date);
String belegNummerTag = null;
belegNummerTag = moduleContext.getContextData("<BULK_REF>");
element = doc.getDocumentElement();
list = doc.getElementsByTagName(belegNummerTag);
mailFileName += "_" + list.item(0).getFirstChild().getNodeValue();
// creating the attachment
byte by[] = xmlpayload.getText().getBytes();
XMLPayload attachmentPDF = msg.createXMLPayload();
attachmentPDF.setName(mailFileName);
attachmentPDF.setContentType("application/pdf");
attachmentPDF.setContent(by);
//adding the message to the attachment
msg.addAttachment(attachmentPDF);
// provide the XI message for returning
inputModuleData.setPrincipalData(msg);
} catch (Exception e) {
// raise exception, when an error occurred
ModuleException me = new ModuleException(e);
throw me;
// return XI message
return inputModuleData;
Still I get the same error.
org.xml.sax.SAXParseException: Character conversion error: "Unconvertible UTF-8 character beginning with 0xaa" (line number may be too low).
Adapter-Framework: Character conversion error: "Unconvertible UTF-8 character beginning with 0xaa" (line number may be too low).
Regards,
Mukhtar -
Authorization to change BOM with history requirements
Hi Techies,
I m facing an issue now with respect to authorisation of changing BOM with history requirements. Our quality system was a copy from a production server which was used for CRM before. Usually in SAP when we change a BOM with a change number we cant again change it back without a change number.
In our case it is not providing an error but it is providing a warning. Now my requirement is to change this warning message to error message. So that people wont change BOM without a change number.
I tried to enter the transaction SU24 and found the authorizaton C_STUE_NOH with proposal YS. Then i tried to change the filed value to ' ' (NO) and saved it.
But still i m not able to change the warning message to error message.
Is there any other setting i need to carry out for this.
Please help me with this issue.
Thanking you in advance.
Regards,
Kris.SDear Krishu,
Below has been mentioned in OSS note: 420878. Check once again you have save as NO. Then go to tcode SU03 Object Class PP/ C_STUE_ROH
Summary
Symptom
In Customizing of the BOM, the history requirement is set or a BOM requires a history. Despite this, it is possible to process BOMS without engineering change management. The system only processes a warning message (29 045) which can be skipped.
Additional key words
CS02, change number, OS27, W045(29)
Cause and prerequisites
Authorization profile
Solution
Check the authorization profile of the respective user.
Example:
C_STUE_NOH <OBJ>
&_SAP_ALL <AUT>
NOHIS <FLD>
would have the authorization to process BOMs requiring history without a change number. In this case, if you change '*' to ' ' in NOHIS, you will no longer receive a warning, but rather an error message.
Regards / US -
How to update BOM with diff. ECN
Hi Team
During change in BOM using ECM, I am allowed to change it with same ECN. If we change it with diff. ECN, it keeps the history of previous ECN.
Foe example a BOM has 3 diff. items, which is created with ECN: 001.
Now if we delete 2 items & add 1 item, then system displays all the items with respective change no.
i.e. Total 6 line items are displayed.
Pls suggest solution.
ThanksHi Bhushan,
For your case you need to :
Create a different Change Number through T Code: CC01 and create a new BOM (for the same material as it exists without ECN agaist any components) with this new change number. If you now delete / add some components (after you enter the BOM with this new ECN) ;it will be exclusively be recorded with this ECN.
If you use the same ECN; and do further changes at the components; all chages till date will be recorded as you have mentioned.
Thanks,
Ravi. -
Simple BOM with sub-items (very very urgent)--1 item & 2 subitem
Hi all,
i am creating a BOM with sub-items using 'BAPI_MATERIAL_BOM_GROUP_CREATE'. while creating sub-item, it is taking only one subitem. but i am giving multiple sub-items per item.
i am giving a program where i am assigning 2 subitems to one item.
after tha bapi call, 1 subitem is creating.
i have tried so many times by clearing the work area & calling the bapi for each sub-item.but it is creating only one sub-item only.
i am giving an example of my report.plz correct it if i am wrong.it is veryt very urgent.
any idea will be highly appreaciated.
Regards
pabitra
REPORT ZTEST_CHIN message-id 01.
This code will create a material BoM for the material
MAINMATERIAL with the components COMPON1 and COMPON2.
Data Declaration
DATA:
it_bomgroup LIKE bapi1080_bgr_c OCCURS 0 WITH HEADER LINE,
it_variants LIKE bapi1080_bom_c OCCURS 0 WITH HEADER LINE,
it_items LIKE bapi1080_itm_c OCCURS 0 WITH HEADER LINE,
it_matrel LIKE bapi1080_mbm_c OCCURS 0 WITH HEADER LINE,
it_itemas LIKE bapi1080_rel_itm_bom_c OCCURS 0 WITH HEADER LINE,
it_return LIKE bapiret2 OCCURS 0 WITH HEADER LINE,
it_subitems LIKE bapi1080_sui_c OCCURS 0 WITH HEADER LINE,
it_subitemas LIKE BAPI1080_REL_SUI_ITM_C OCCURS 0 WITH HEADER LINE.
Fill the data
Material BoM Group Header Data
CLEAR it_bomgroup.
it_bomgroup-bom_group_identification = 'BAPI_SMP_COL1'.
it_bomgroup-object_type = 'BGR'.
it_bomgroup-object_id = 'SIMPLE1'.
it_bomgroup-bom_usage = '1'. " YOU COULD CHANGE THE BOM USAGE TO YOUR
it_bomgroup-ltxt_lang = sy-langu.
it_bomgroup-technical_type = ' '.
it_bomgroup-bom_text = 'Simple BoM - FM'.
APPEND it_bomgroup.
Header Details of the different variants
CLEAR it_variants.
it_variants-bom_group_identification = 'BAPI_SMP_COL1'.
it_variants-object_type = 'BOM'.
it_variants-object_id = 'SIMPLE1'.
it_variants-alternative_bom = '01'.
it_variants-bom_status = '01'.
it_variants-base_qty = '1.000'.
it_variants-valid_from_date = sy-datum.
it_variants-function = 'NEW'.
APPEND it_variants.
Details of the materials of the different variants
CLEAR it_matrel.
it_matrel-bom_group_identification = 'BAPI_SMP_COL1'.
it_matrel-material = 'BAPIBOMFG1'.
it_matrel-bom_usage = '1'.
it_matrel-alternative_bom = '01'.
APPEND it_matrel.
Linking subitems to the corresponding variants
CLEAR it_subitemas.
it_subitemas-bom_group_identification = 'BAPI_SMP_COL1'.
it_subitemas-sub_object_type = 'SUI'.
it_subitemas-sub_object_id = 'SIM1'.
it_subitemas-super_object_type = 'ITM'.
it_subitemas-super_object_id = 'SIMPLE1'.
APPEND it_subitemas.
Linking items to the corresponding variants
CLEAR it_itemas.
it_itemas-bom_group_identification = 'BAPI_SMP_COL1'.
it_itemas-sub_object_type = 'ITM'.
it_itemas-sub_object_id = 'SIMPLE1'.
it_itemas-super_object_type = 'BOM'.
it_itemas-super_object_id = 'SIMPLE1'.
it_itemas-valid_from_date = sy-datum.
it_itemas-function = 'NEW'.
APPEND it_itemas.
Details of the items of the variants
CLEAR it_items.
it_items-bom_group_identification = 'BAPI_SMP_COL1'.
it_items-object_type = 'ITM'.
it_items-object_id = 'SIMPLE1'.
it_items-item_no = '0010'.
it_items-item_cat = 'L'.
it_items-component = 'BAPIBOMRW1'.
it_items-comp_qty = '2'.
it_items-valid_from_date = sy-datum.
APPEND it_items.
CLEAR it_subitems.
it_subitems-bom_group_identification = 'BAPI_SMP_COL1'.
it_subitems-object_type = 'SUI'.
it_subitems-object_id = 'SIM1'.
it_subitems-subitem_no = '0001'.
it_subitems-INSTALLATION_POINT = 'ab1'.
it_subitems-subitem_qty = '1'.
APPEND it_subitems.
CALL FUNCTION 'BAPI_MATERIAL_BOM_GROUP_CREATE'
EXPORTING
all_error = 'X'
TABLES
bomgroup = it_bomgroup
variants = it_variants
items = it_items
materialrelations = it_matrel
itemassignments = it_itemas
subitems = it_subitems
subitemassignments = it_subitemas
return = it_return.
CLEAR it_subitems.
it_subitems-bom_group_identification = 'BAPI_SMP_COL1'.
it_subitems-object_type = 'SUI'.
it_subitems-object_id = 'SIM1'.
it_subitems-subitem_no = '0002'.
it_subitems-INSTALLATION_POINT = 'ab2'.
it_subitems-subitem_qty = '1'.
APPEND it_subitems.
CALL FUNCTION 'BAPI_MATERIAL_BOM_GROUP_CREATE'
EXPORTING
all_error = 'X'
TABLES
bomgroup = it_bomgroup
variants = it_variants
items = it_items
materialrelations = it_matrel
itemassignments = it_itemas
subitems = it_subitems
subitemassignments = it_subitemas
return = it_return.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
LOOP AT it_return.
WRITE:/ it_return-type, it_return-id, it_return-number,
it_return-message.
ENDLOOP.Hi rich,
Thanks. i will do the same.can u plz suggest me , where i am doing mistake in my coding to create sub-items in a BOM?
Thanks & Regards
pabi
Maybe you are looking for
-
Hi at all, I extrakted initial data from source system and get a warning "No data in source system". I checked the system and it is ok. Plz help me
-
I had done something like this before, but successfully, with no errors. Any idea why I'm getting the error now? It's telling me I have failed to declare the package name. Here's the code PROCEDURE insert_vote_dev (p_ctid IN NUMBER, p_busvp IN VAR
-
I am trying to finish the installation of Reader from Adobe Creative Suite 5.5 Design Premium and it will not let me proceed because it says "Please close the following applications to continue. Google Chrome.exe" , I don't have any Chrome applicati
-
I want to download the "FREE" iPhoto duplicate remover software, but the download process keeps asking me for my payment information. I have tried it several times.. But it says I cannot download this app unless I give my payment information.. So I w
-
Sound not functioning in Windows 7 after Arch install
I installed Arch about a week ago, and since then, I have not had any sound output from my headphone jack in Windows. My speakers work perfectly fine. I have since reinstalled all sound drivers, and even ran a system restore to the time before I inst