PLD Production Order need to add BOM lines

I have a need to add the comments from the BOM lines table (ITT1) to the production order.
As soon as I add the field (copied the definition from the BOM report) the lines go wild.  I go from 5 lines to 35 lines with the production components printing multiple times.
Any body have a way to link the BOM lines to the production order lines so I get the right lines printing?

I would suggest you create a user field at the Production Order Rows and use the following formatted search to copy the comments from the BOM definitions.
This user field can be easily added to the PLD and will help avoid duplicating rows which you are currently facing.
SELECT T0.Comment FROM  [dbo\].[ITT1\] T0  WHERE T0.Code = $\[$37.4.0]   AND  T0.Father = $\[$6.0.0]
Suda

Similar Messages

  • Gneration of multiple Production Order from multi level BOM

    Hi Experts,
    My customer has multi level BOM. meaning child item also has its own BOM - 4 Level.
    FG-Pack - Make
          FG - Make
               SFG - Make
                    RM - Buy
    Their process is once they create Production Order for final Finished Good, System should also create Production order for child which it self are of make type and has own BOM defined in system.
    They wish that once the create Production order for FG-Pack, system should automatic generate production order for FG and SFG as both of these has BOM defined and are of procurement type Make.
    So first they will close the chile production order and receives qty. in ware house, they will issue this child qty. against main production order, and then completes the main production order.
    So they remains informed about the child item stock.
    My question is SAP Business One supports creation of multiple Production Order?
    BR
    Samir Gandhi

    Hi Samir Gandhi,
    There is no build-in function for this task. You need add-on or SDK for the job.
    If the sub level BOM items are phantom, you can create a big production order including all sub BOM components. That is system supported.
    Thanks,
    Gordon

  • Exit for production order creation that update BOM explosion date

    Hi Guros
    does any one know a user exit for production order creation that update BOM explosion date = AUFLD.
    or a UE that run before the BOM explosion.
    thanks.

    Dear,
    I dont think user exist will work for you,
    You need to find BAdi for it, cl_exithandler=>get_class_name_by_interface .
    Or try with SE84,
    Enter the package name and check the " Enhancements"
    Regards,
    R.Brahmankar

  • WM-production order-need change the open quantity in Transfer order

    Hi,
       I created the production order (order quantity 1000).  i did material staging and generated TR. .
       But i need to change the open quantity in transfer order . i need to create the partial Transfer order
        against TR..
       KINDLY SUGGEST ME
       WITH REGARDS
       Dinesh

    Hi Dinesh,
    TO for partial qty is possible.
    When you are doing material staging with 319 mov.type, you create a transfer order for partial quantity as follows:
    You first create a manual transfer order using transaction LT04.
    You specify the TR number in the intial screen and navigate to the detail screen, system shows the Open TR quantity and the proposed TO quantity. By default, both these quantities are equal to the TR quantity.
    However, when you create by clicing the "Create TO button" (the icon with a plus sign in the tool bar of LT04 screen), system takes you to another screen where it asks for the "Requested Qty" on the top of the screen.  Here you can modify the qty as per your requirement; then you can check and confirm the storage type and storage bin for source and destination stocks & save.
    It is important that you give the correct source storage type & storage bin that is having stock or otherwise system might give error message.
    System will create a TO line item with the entered qty and propose the balance TR qty as the 2nd TO line item. You can skip this 2nd TO item or delete it from the TO.
    Once again, if you click the Save button, system will save the TO with the partial quantity.
    The balance quantity will be available in the TR as open quantity and this can be seen in the header data of transaction LB03.
    Regards
    Prabhu

  • Purchase order need to add to Standard program

    Hi Folks,
    i have standard program RFDEPL00, i have to copy this one into Zprogram and need to add the purchase order number and text into the output display(purchase order number will take from VBAK-BSTNK),
    could any one help me how to bild the logic for this and where to build?
    thanks in advance

    In include program FDEPL00_SHOW line 18, call the alv function module.The out put internal table is gt_data.I think you can debug the program and add find the right position to add new field to the gt_data table.
    But i found include program FDEPL00_READ use LDB method to get the vendor information.So i think it is not very easy to add code in FDEPL00_READ.
    Maybe you can add code before call alv function.
    Regards Chris.

  • Add BOM line items for printing those line items in  cs03 transaction

    User will display the BOM line items and when he go by menu path EXTRAS->More-> so at the end of sub menu we need to add one more option for View and Print for that we need to use the menu exit and accordingly we need to add code to capture the related function code and display respective BOM line items in the ALV format. Further on if user wants to print those he should be able to do the same.

    The BOM item node number STPO-STLKN is an 8 digit field therefore I would imagine that you could have a maximum of 99999999 items..
    But you could use multi-level BOMs which would allow you to organise your components better.
    PeteA

  • Query for Exploding all production orders needed to fulfil a sales order

    I am trying to write a query that explodes all the multiple levels BOMS and brings back a list of production orders that would need to be raised to fulfil a particular sales order.
    SELECT T0.[DocNum], T0.[CardCode], T0.[CardName], T1.[ItemCode], T1.[Dscription], T1.[Quantity], T2.[TreeType] FROM ORDR T0  INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry INNER JOIN OITM T2 ON T1.ItemCode = T2.ItemCode WHERE T0.[DocNum] = [%0] AND T2.[TreeType] = (N'P')
    This is what i have at the moment, this only goes down one level, i cant think how i might drill down to lower levels. Any ideas?
    Thanks

    It will be a tough query to build.
    Check this for just adding one level:
    SELECT T0.DocNum, T0.CardCode, T0.CardName, T1.ItemCode, T1.Dscription, T1.Quantity
    FROM ORDR T0
    INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry
    WHERE T0.DocNum = [%0\] AND T1.ItemCode IN (SELECT Code From OITT)
    UNION ALL
    SELECT T0.DocNum, T0.CardCode, T0.CardName, T3.Code, T4.ItemName, T1.Quantity*T3.Quantity
    FROM ORDR T0
    INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry
    INNER JOIN OITT T2 ON T1.ItemCode = T2.Code
    INNER JOIN ITT1 T3 ON T2.Code = T3.Father AND T3.Code IN (SELECT CODE FROM OITT)
    INNER JOIN OITM T4 ON T3.Code = T4.ItemCode
    WHERE T0.DocNum = [%0\]
    Thanks,
    Gordon

  • Need to add extra lines in email generating from oracle

    Hi!
    I am using Oracle 9i Enterprise Edition 9.2.0.6
    I am facing a problem while generating the email from Oracle
    Problem is that I want to display the data in following format
    Terminal Statistics From: 30-MAR-2008 15:39:00 To: 06-JUN-2008 16:59:00
    Containers Examined
    Export: 2
    Import: 30
    but email shows data in following format
    Terminal Statistics From: 30-MAR-2008 15:39:00 To: 06-JUN-2008 16:59:00 Containers Examined Export: 2 Import: 30
    System combines the all the data in one line, while I have used following function to add new line when and where needed, but unable to get my desired result.
    1. utl_tcp.CRLF
    2. chr(130) || chr(10)
    3. chr(10)
    I have used following procedure to generate the email.
    PROCEDURE send_html_email(
    p_module_name in varchar2,
    p_subject in varchar2,
    p_text in varchar2 default null,
    p_html in varchar2 default null
    IS
    l_boundary varchar2(32767) default 'a1b2c3d4e3f2g1';
    l_connection utl_smtp.connection;
    l_body_html clob := empty_clob; --This LOB will be the email message
    l_offset number;
    l_ammount number;
    l_temp varchar2(32767) default null;
    l_to varchar2(100);
    l_cc varchar2(100);
    l_bcc varchar2(100);
    t_v_stpt Number:=0;
    t_v_endpt Number:=0;
    c_v_stpt Number:=0;
    c_v_endpt Number:=0;
    b_v_stpt Number:=0;
    b_v_endpt Number:=0;
    l_subject varchar2(255);
    BEGIN
    /*Function to retrieve the E-mail recipients list according to the Module/application*/
    mail_recipient(p_module_name,l_to,l_cc,l_bcc);
    l_connection := utl_smtp.open_connection( pk_parameter.setting('MAILSVR'), 25 );
    utl_smtp.helo( l_connection, pk_parameter.setting('MAILSVR') );
    utl_smtp.mail( l_connection, pk_parameter.setting('MAILFROM') );
    l_temp := l_temp || 'MIME-Version: 1.0' || chr(13) || chr(10);
    LOOP
    t_v_stpt := t_v_stpt + 1;
    t_v_endpt := INSTR (l_to, ',', t_v_stpt, 1);
    IF l_to is null then
    EXIT;
    ELSIF t_v_endpt = 0 THEN
    UTL_SMTP.rcpt (l_connection, SUBSTR (l_to, t_v_stpt));
    EXIT;
    ELSE
    UTL_SMTP.rcpt (l_connection, SUBSTR (l_to, t_v_stpt, t_v_endpt -t_v_stpt));
    END IF;
    t_v_stpt := t_v_endpt;
    END LOOP;
    LOOP
    c_v_stpt := c_v_stpt + 1;
    c_v_endpt := INSTR (l_cc, ',', c_v_stpt, 1);
    IF l_cc is null then
    EXIT;
    ELSIF c_v_endpt = 0 THEN
    UTL_SMTP.rcpt (l_connection, SUBSTR (l_cc, c_v_stpt));
    EXIT;
    ELSE
    UTL_SMTP.rcpt (l_connection, SUBSTR (l_cc, c_v_stpt, c_v_endpt -c_v_stpt));
    END IF;
    c_v_stpt := c_v_endpt;
    END LOOP;
    LOOP
    b_v_stpt := b_v_stpt + 1;
    b_v_endpt := INSTR (l_bcc, ',', b_v_stpt, 1);
    IF l_bcc is null then
    EXIT;
    ELSIF b_v_endpt = 0 THEN
    UTL_SMTP.rcpt (l_connection, SUBSTR (l_bcc, b_v_stpt));
    EXIT;
    ELSE
    UTL_SMTP.rcpt (l_connection, SUBSTR (l_bcc, b_v_stpt, b_v_endpt -b_v_stpt));
    END IF;
    b_v_stpt := b_v_endpt;
    END LOOP;
    /*Header creation for email.*/
    IF l_to is not null or l_cc is not null or l_bcc is not null THEN
    l_temp := l_temp || 'To: ' || l_to || chr(13) || chr(10);
    l_temp := l_temp || 'CC: ' || l_cc || chr(13) || chr(10);
    l_temp := l_temp || 'BCC: ' || l_bcc || chr(13) || chr(10);
    l_temp := l_temp || 'From: ' || pk_parameter.setting('MAILFROM') || chr(13) || chr(10);
    l_temp := l_temp || 'Subject: ' || p_subject || chr(13) || chr(10);
    l_temp := l_temp || 'Reply-To: ' || pk_parameter.setting('MAILFROM') || chr(13) || chr(10);
    l_temp := l_temp || 'Content-Type: multipart/alternative; boundary=' ||
    chr(34) || l_boundary || chr(34) || chr(13) ||
    chr(10);
    -- Write the headers
    dbms_lob.createtemporary( l_body_html, false, 10 );
    dbms_lob.write(l_body_html,length(l_temp),1,l_temp);
    -- Write the text boundary
    l_offset := dbms_lob.getlength(l_body_html) + 1;
    l_temp := '--' || l_boundary || chr(13)||chr(10);
    l_temp := l_temp || 'content-type: text/plain; charset=us-ascii' ||
    chr(13) || chr(10) || chr(13) || chr(10);
    dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
    -- Write the plain text portion of the email
    l_offset := dbms_lob.getlength(l_body_html) + 1;
    dbms_lob.write(l_body_html,length(p_text),l_offset,p_text);
    -- Write the HTML boundary
    l_temp := chr(13)||chr(10)||chr(13)||chr(10)||'--' || l_boundary ||
    chr(13) || chr(10);
    l_temp := l_temp || 'content-type: text/html;' ||
    chr(13) || chr(10) || chr(13) || chr(10);
    l_offset := dbms_lob.getlength(l_body_html) + 1;
    dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
    -- Write the HTML portion of the message
    l_offset := dbms_lob.getlength(l_body_html) + 1;
    dbms_lob.write(l_body_html,length(p_html),l_offset,p_html);
    -- Write the final html boundary
    l_temp := chr(13) || chr(10) || '--' || l_boundary || '--' || chr(13);
    l_offset := dbms_lob.getlength(l_body_html) + 1;
    dbms_lob.write(l_body_html,length(l_temp),l_offset,l_temp);
    -- Send the email in 1900 byte chunks to UTL_SMTP
    l_offset := 1;
    l_ammount := 32767;
    utl_smtp.open_data(l_connection);
    while l_offset < dbms_lob.getlength(l_body_html) loop
    utl_smtp.write_data(l_connection, dbms_lob.substr(l_body_html,l_ammount,l_offset));
    l_offset := l_offset + l_ammount ;
    l_ammount := least(32767,dbms_lob.getlength(l_body_html) - l_ammount);
    end loop;
    utl_smtp.close_data(l_connection);
    utl_smtp.quit( l_connection );
    dbms_lob.freetemporary(l_body_html);
    END IF;
    END;
    Following procedure calls the above function and generate the email
    PROCEDURE generate_statistics
    IS
    l_minutes NUMBER:=0;
    l_sub_type cg_ref_codes.rv_meaning%type;
    l_gate_text VARCHAR2(5000);
    l_ves_text VARCHAR2(5000);
    l_exm_text VARCHAR2(5000);
    l_email_text VARCHAR2(5000);
    l_gate_tot NUMBER:=0;
    l_load_tot NUMBER:=0;
    l_discharge NUMBER:=0;
    l_exm_tot NUMBER:=0;
    /*Declare Cursor to get Examined Containers Summary*/
    CURSOR cur_examined_ctrs IS
    SELECT decode(eu.category,'I','Import','E','Export') Category, count(*) Total
    FROM service_events se, equipment_uses eu
    WHERE se.performed BETWEEN round(sysdate-l_minutes/1440,'mi')
    AND round(sysdate,'mi')
    AND se.tserv_id IN ('EXM')
    AND eu.gkey = se.equse_gkey
    AND eu.category IN ('I','E')
    GROUP BY eu.category;
    BEGIN
    /*Retrieve parameterized minutes*/
    l_minutes := nvl(pk_parameter.setting('STATSGMI'),0);
    /*Assign Values to generate email*/
    l_email_text := 'Terminal Statistics From: '||
    to_char(round(sysdate-l_minutes/1440,'mi'),'DD-MON-RRRR HH24:MI:SS')||
    ' To: '||to_char(round(sysdate,'mi'),'DD-MON-RRRR HH24:MI:SS')||
    chr(13) || chr(10)||chr(13) || chr(10);
    l_exm_text := 'Containers Examined'||utl_tcp.CRLF;
    FOR rec_examined_ctrs IN cur_examined_ctrs LOOP
    /*Generate Text for email - Vessel Activity Crane Wise Starts*/
    l_exm_text := l_exm_text ||rec_examined_ctrs.category ||': '||
    rec_examined_ctrs.total||utl_tcp.CRLF;
    l_exm_tot := l_exm_tot + rec_examined_ctrs.total;
    END LOOP;
    l_email_text := l_email_text||l_exm_text;
    pk_kictl_email.send_html_email('TERM STATISTICS',
    'Terminal Statistics Report',
    l_email_text,
    l_email_text
    END;
    I have been searching the reason and solution on net since last 2 days but hasn't find it yet.
    would anybody plz help me regarding this.
    Thanks
    Hassan

    I checked your suggestions after week end today and found that
    the suggestion of Nalla did not provide the result in my required format
    rewrite it as l_email_text := l_email_text||CHR(10)||l_exm_text;
    Peter & Krithika:
    I used html tag <BR> when and where needed and its gave me result in my required format
    e.g.: l_exm_text := l_exm_text ||'<br>'||rec_examined_ctrs.category ||': '||
    rec_examined_ctrs.total;
    Now I want to know if there any html tag thru which I can define the column number so that my text will start from there.
    means any html tag replacement of lpad (oracle funtion):
    Thanks
    Hassan

  • Overcharged and need to add a line

    I believe I am paying too much for my iPhone. I only have 150mg of data and pay $65 per month. I do not even use my iPhone as intended. I know a friend who has 2g and is paying $45. Besides  this I need to add my son to my plan. Any idea how much one extra line would cost for a smartphone? Maybe a basic I since I know it will roughly be $40 or so for the sp.Please help with any info!

        Asell1201,
    Great question, if you are on the MORE Everything Share Plan for an additional line it would be $30 for basic phone and $40 for smartphone. Does your employer offer discounts for Verizon Wireless? If so add the discount here: http://vz.to/1dGmv25
    KarenC_VZW
    Follow us on Twitter @VZWSupport

  • How do I print Avery labels?  I can do the address only using address book, but I need to add several lines of additional information.

    How do I print Avery mailing labels?  I can do them using my address book, but I need to have several lines of additional info. on the label.  Thanks.

    You chose a group of addresses you want to print and then use command-P. You will get a drop down menu where you have to select the Avery number or size of labels. It's pretty rigid.
    I can't stand the limitations of the Contacts method of printing address labels. I don't want to waste a partial sheet if my selection doesn't come out even with the number of labels. I'd like to duplicate addresses which I use often to fill up the partial sheet. I like being creative with fonts, colors and even borders or images. Your ability to be creative with Contacts printing is severely limited.
    I've used Pay&Play's Label Printer Pro software for years. I originally paid MUCH more for this program. It's extremely versitle. Design one label and you can copy it to the rest of the labels in the drop down menu with one click. Chose how many of whichever lablel you want to duplicate with a simple cut and paste to fill up the page.
    I can vouch that it works perfectly with Mountain Lion, v 10.8.2.
    Here's the link to their direct download from their website for $6.95:
    http://www.payplaysoftware.com/download.html
    Or you can look up Label Printer Pro 7 on the app store and pay $9.99.
    No, I don't work for or have any ties to the company other than being a satisfied customer of a product which suits my needs perfectly.

  • Need to add new line in Service Provider Agreement

    Hi All,
    In Change Service Provider (T Code- EEDMIDESERVPROV02) screen, under the agreement tab (Payment and Billing Data) I need to add the agreement details for respective Service Provider which I am getting through WebService Call (ABAP Proxy).
    Need to update existing or add new record programatically.
    Is there any standard function module or method to do the same ?
    Thanks in advance.

    Hi Ankit,
    There is a standard class for this - CL_ISU_IDE_DEREGSPAGREEMENT, which I believe should help you.
    Regards,
    Asif

  • Error on Production Orders Add-on when 2 or more users at the same time.

    Hi.
    Our add-on creates special production orders (SAPbobsCOM.BoProductionOrderTypeEnum.bopotSpecial) with no problem when used by one user, but if there are two or more users  everyone on his own SAPBO session it starts to throw different errors, we think it may be a concurrence problem due to several transactions.
    Here a short brief of the code sample and the process:
    (error handling and object members not included in the sample)
    oDoc.ProductionOrderType = SAPbobsCOM.BoProductionOrderTypeEnum.bopotSpecial
    If the oDoc.Add() is correct, We get the last production order created and release it:
    Me.sKey = Me.Company.GetNewObjectKey
    oDoc = Me.Company.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oProductionOrders)
    oDoc.GetByKey(Me.sKey)
    oDoc.ProductionOrderStatus = SAPbobsCOM.BoProductionOrderStatusEnum.boposReleased
    oDoc.Update()
    Then we go for an inventory Entry:
    oDoc = Me.Company.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oInventoryGenEntry)
    oDoc.DocDate = Date.Now
    oDoc.Lines.BaseEntry = Me.sKey
    oDoc.Add
    And Finally to close the production order:
    oDoc.ProductionOrderStatus = SAPbobsCOM.BoProductionOrderStatusEnum.boposClosed
    oDoc.Update()
    This works fine when only one user is using the add-on, but in the end there wil be at least eight users simultaneously  working with this add-on
    The test:
    We have four users creating production orders with the  add-on.
    Two of them get the usual success messages and the created documents in SAPBO are all correct.
    The other two users get diferrent errors messages during the process.
    If they wait and try again to run the process it works fine.
    Repeating the test get errors on different users depending on which one started the process first.
    Our client needs to generate beetwen 900 and 1200 production orders per day, so they can't wait until the process is free for each user to work with it.
    The common erros detected are:
    Changing the status of the production order:
    -5002 - The warehouse is not defined for the item.
    -4002 - To generate this document,
               first define the numbering series in the Administration module
    -1029 - Field cannot be updated
    Adding the production order and inventory entry:
    -2038
    -1116
    -5002
    Regards,
    Omar Fonseca

    The start transaction model didn't Fit well with all the process we are doing, but the idea of locking or holding the other users seems to work pretty fine, we are now using a flag to determine if someone is doing the process and put in hold the new ones.

  • Re-exploding BOM at conversion of planned order to production order

    Hi, all.
    I'd like to be able to specify that the planned orders I'm converting to production order re-explode the BOM on the scheduled date rather than the basic date of the production order.
    I want to be able to do this in customizing rather than specifying a BOM Explosion Date (fixed key date) in the planned order or independent requirements.  Is there anything in customizing that could do this?
    Thanks!
    Sarah

    Hi Sarah,
    I think you have checked the note:
    391846 Modif: Reading master data when converting planned order
    Because only with the modification of this note, you will be able to re-explode the BOM when converting the planned order to production order,  however, there is no way to set the BOM explosion date to the scheduled date during the conversion, there is no such customizing as the note only add three action for this function:
         ' '  Do not read
         '1'  Read with explosion date from planned order
         '2'  Read with newly determined explosion date
    So if you need such function, you may try to develop the modification by yourself.
    Regards,
    Rachel

  • Singale line in Production order

    Dear Experts..
    While doing MB1A (Material issue to production order) we are getting 2 lines that is required quntity and set up.
    We usually issue full quntity to production but while doint the entry the user need to seperate it and enter.
    This will couse a issue most of the time the user calculate worngly or enter it wrongly..
    Pls help me how I can get 1 single line that includes required qty and set up..

    Oh.. Experts..
    Set up  qty means fixed qty,  that is consumed before starting the mass production.
    Example if I  want to produce 10 stickers my raw material would be 1 meter of label.
    We will define in the BOM 1 meter for 10 stickers and another line fixed qty 0.5 meter while doing the production 0.5 meter will get waste and using another 1 meter we produce 10 stickers. while issuing  the material am getting 2 lines though its common raw material but  1 belongs to 1 meter qty another one fixed qty that is 0.5 meter.
    how I can combined..

  • Production order with pipe line material

    Production ordre created and got confirmed  and found pipe line materials got stuck in COGI and on analysis found in that specific ordrer ordre pipe line material are not activated with special stock key indicator i.e. 4.
    Due to this it got stuck in cogi and for the same material created an order and found there is a allocation and  activated with special stock key indicator i.e. 4.
    Help me to resolve the existing Goods issue from COGI and cause of not activated with special stock key indicator i.e. 4. in production order.

    Dear ,
    did the pipe line material is showing in  production reservation  as one of the BOM compoenent?
    If it is the case , then cancel the confirmation in CO13 and try to connfirm the operation with Clear Reservation Option .
    Refer the below thread which may help you to figure out the issue :
    Re : How to consider Power and Steam in power plants and paper mills
    Re : Power and steam
    Regards
    JH

Maybe you are looking for