Follow-up material setting - not to cancel PrdOrd

Dear All,
Let's say the situation is the following:
1. materialA is in a BOM as component
2. materialB has been set as follow-up material in the material master record of materialA, discontinuation indicator is '1', no 'Eff-out' date hasn't been set (and I do not want to set this date because we'd like SAP to calculate this date).
3. I have a PrdOrd for materialA and I see exception message '20' (cancel) in MD04 (SAP want this PrdOrd to be cancelled).
How can we achieve that SAP should consider this PrdOrd and calculate with it? Now SAP ignores (doesn't calculate with) this PrdOrd.
Despite the follow-up setting I have to force SAP to consider this because only in this way will we get proper results for the procurement of materialB.
I'd like to ask your help in this issue.
Thanks,
Csaba

Dear All,
Thank you for your help.
I think there's some misunderstanding.
It's clear to me that how to carry out follow-up setting and it's also clear what is the difference if I set it in MM or in BOM.
The problem is that I have a production order for materialA (the old material I want to replace with materialB) and because of the follow-up setting SAP doesn't want to calculate with it and SAP gives an exception message (to cancel the mentioned order).
If there were no follow-up settings there would be no exception message for this PrdOrd.
SAP calculates only the stock of materialA and when we run out of this stock the requirements are considered for materialB automatically. But I'd like SAP to consider not only the stock but the open order(s) also.
So, my question is whether someone knows how to handle this situation, how could I achieve that the mentioned PrdOrd would be considered. How can I solve this issue.
(If it were a PO the situation would be the same I think. I want to change from materialA to materialB with considering not only stock on hand but open PrdOrds also).
Thanks in advance,
Csaba

Similar Messages

  • Production Order with follow-up material unble to save due to error CKBK009

    Dear Expert,
    When we apply discontintion/follow-up material setting, production order is not able to save. <b>Error message "CKBK009 - No price could be determine for material....."</b>.
    <b><u>SAP Help indicates :</u></b>
    "No price could be determined for material .......... Message no. CKBK009
    <b>Diagnosis :</b>
    The system could not determine a price for valuation view 0, because no valuation 
    strategy succeeded from valuation variant 006.
    <b>System Response :</b>
    Since the input quantity is zero for this material item, the costing result is not   
    affected by this error at the pricing stage.
    The standard system defines this message as an error message. However, you
    can use user-defined error management to specify that the message is a warning
    or an information message, or that it is not issed at all.
    <b>However, in Controlling's User-Defined Error Management, CKBK009 is already  warning only.
    What other setting is needed ?</b>
    Thanks for helping !

    Dear all,
            Manage to solve the problem via Note 1008643, per following.
           <b> THANK YOU for all your guidance & Have a nice day !</b>
    <u><b>NOTE 1008643 :</b></u>Symptom
    In a production order error message CKBK-009 is raised during cost calculation.
    This message cannot be modified into a warning or information message.
    Other terms
    CKBK009, CO01, CO02, CO03
    Reason and Prerequisites
    System design
    Solution
    Please make a new entry in TA OPR8 with the following characteristics:
    ErrorManagID    ApplicationArea   MsgNo  MinMsgType    MaxMsgType
    PPCO            CKBK              009
    Then run TA OPR4_PPCO to modify the message type for CKBK009.

  • What will happen if don't set follow-up material in material mas view MRP4

    Client get the information that some materials will not manifacture until one date. After this date, client want this material can't create BOM or PO anymore.
    I gave solution for set delete flag for this material so that when create BOM or PO error happens.
    But client want to use discontinue material in material master view MRP4, so that he can enter the last date when this material is out of use.
    Will discontinue material in material master view MRP4 can meet this requirement? enter discontinuation indicator and date then after this date will not create BOM or PO.

    As per my understanding discontinuation is related only to MRP (how system handles requirements).
    http://help.sap.com/erp2005_ehp_04/helpdata/EN/b1/c044d1439a11d189410000e829fbbd/frameset.htm
    If you want to disallow the creation of BOM / PrdOrd / etc, you have to apply to the suggested material status control or to your own solution (marking the material for deletion), etc.
    n my opinion discontinuation makes sense if the real situation is also discontinuation (you have a real follow-up material). In this case you can use it to manage the requirements properly.
    Edited by: Csaba Szommer on Sep 2, 2010 1:37 PM

  • Process Order is not picking the follow-up material

    Hi Gurus,
    We have changed a BOM by discontinuing a component and giving a follow-up material with the valid from dates as 18/5/09.  and then MRP is run on that nignt  ( mrp job set to run daily in the back ground). and on 19/05/09 a Process Order is created from the planned orders genereated by the MRP run.
    now, we found that the new componenet (follow-up) is not copied into the process order, but the old compomemt (discontinued) is removed. 
    MRP parameters are correctly defined (Planning mode is set to 2) .  Please let me know if we are missing anything.
    Thanks,
    N

    Hi
    Pl ensure that the Following requirements have been met before you can use the discontinuation functionality:
    1) Both materials must be planned using MRP.
    2) The base unit of measure of the follow-up material must be the same as the base unit of measure of the discontinued material.
    3) You must enter discontinuation data for the discontinued item and follow-up data for the follow-up item.
    and Also refer the SAP link for Complete Details
    http://help.sap.com/saphelp_45b/helpdata/en/b1/c044d1439a11d189410000e829fbbd/content.htm
    Regards
    Brahmaji

  • CK11N  Follow-up material not taken into account when costing

    We are running the standard cost with quantity structure and we have detected that all the follow-up information is not taken into account to determine the bill of materials that will be used to calculate the standard cost.
    SAP helpdesk has answered me the following:
    "The situation in product cost planning is we do not check availability of any material stocks, and therefore we cannot provide the same functionality as MRP. You will have to create a new BOM that includes
    the follow-up material or apply the modification to take into account the follow-up part."
    Please, if anyone knows any user-exit we could use to develop something to fix it, we would appreciate it very much. It is a normal process and we can not say it does not work.
    Regards, and waiting for any solution.
    Yolanda.

    Dear,
    Are you getting these reservation in MD04?
    Check the Planning file entry for these material in MD21 if not then create it through MD20 and take MRP run with planning mode -3 Deleted and recreated. And Processing key NETCH.
    Also check the The firmed receipt is within the rescheduling horizon. The rescheduling horizon is set in Customizing for the MRP group (Transaction OPPR, Table T438M). A default value can be predefined in the Customizing of plant data (Transaction OPPQ, Table T399D). define the longer duration for it.
    The firmed receipt (the MRP element) participates in the rescheduling check. You can set which MRP elements participate in the rescheduling check in the Customizing of the plant data (Transaction OPPQ).
    Else you can carry out modification A using the MD_CHANGE_MRP_DATA BAdI and the CONSIDER_RESB method without making a modification.
    Regards,
    R.Brahmankar

  • Material Master Update through BAPI - Follow up material not updated

    Hi Experts,
    I am updating the material master through a custom transaction using the BAPI  'BAPI_MATERIAL_SAVEDATA'. Rest of the fields are updating correctly except for discontinuation ind., effective out date & follow-up material.
    When I try to update it through MM02 it is working fine. However, when I pass the same data through BAPI it is throwing an error message that 'the material XXXXXX does not exist or is not activated'.
    Please advice.
    Thanks & Regards,
    Ashu Arora

    Some more fields need to be updated along with the discont. indicator. Now working fine.

  • Raw material Stock not reducing when cancelling Subcontracting MIGO

    Dear All,
    We are facing problem in subcontracting process. Suppose we have a HALB material X which is made up of material a and b.
    When we are receiving material X stock of material a and b is reducing at vendor end. but when we are cancelling MIGO or doing return delivery stock of material a and b is not increasing at vendor end.
    Due to this we are unable to get exact raw material stock lying at vendor end.
    It means when we are cancelling subcontracting MIGO stock of raw material is not increasing at vendor end instead of it HALB material stock is increasing at vendor end.
    Please suggest.
    rgds
    Awnindra Dutt Tiwary

    k

  • Discontinuation indicator and follow up material.

    Hi,
    I am facing the strange issue for which i need your expertise. The requirement is like:
    1. "X" material is discontinued and "Y" is as follow-up in two plants A & B. Discontinaution group and follow-up group has also been assigned in the BOM.
    2. Now The client want to reverse the settings . means "Y" should be discontinued and "X" should be follow-up in both plants A & B.
    Now I have removed the discontinuation indicator and follow up material from "X" in both plants. But when I am going to discontinue the "Y" material and putting " X" as a follow-up material, The system is giving the message "The specified follow-up material results in recursiveness
    Message no. M3609
    Diagnosis
    You have entered a follow-up material. However, the BOM explosion for the follow-up material leads to the discontinued material, resulting in unpermissible recursiveness.
    Procedure
    Enter another follow-up material or cancel the entry.
    Please suggest me where I am missing in my settings and what is the reason for this message.
    Regards
    Deepak Sharma

    Dear ,
    Check the following  :
    1.Validity of the Bill Of Material or any deletion flag is set in the present BOM.
    2.Please check the following SAP notes :
    Note 161742 - Consulting note: BOM recursion/low-level code 999
    Note 839879 - Trace 'BOM is recursive'
    Note 139517 - Recursiveness for follow-up materials
    Note 42891 - Recursiveness check
    Hope this will help you to figure it out
    Regards
    JH

  • Purchase Order Goods Receipt quantity tolerance setting not working.

    Team,
    We are using the IS-Oil solution, ECC 6.0 REL 605 SP LEVEL 009 .
    The issue that I have is as follows:
    Purchase Order Goods Receipt quantity tolerance setting not working, I had set up a 10% tolerance on QTY received in the GR process via the PIR and also the Purchase Value Key in the  material master and also changed the message to a warning in OMCQ for message number M0722.
    I  had performed a similar configuration and master data maintenance on a different NON IS-OIL client install and it worked fine.
    I believe it is the IS-OIL component in the Inventory update portion of the GR process that is causing the error.
    I have searched for OSS notes, however they mention that there is no solution.
    Setting the PO line item as Unlimited will not be best practice for the business and will not be used.
    Has anyone come across this issue? and how was it resolved, your help and guidance will be greatly appreciated.
    Thanks

    Hello,
    Please check the Tolerance levels in O588 
    Also you can use the BAdI OIB_QCI_ROUND_QTY: A new method, CHECK_TOLERANCE
    Best Regards,
    R.Brahmankar

  • Full BOM component qty when follow-up material is effected.

    Dear Experts,
             How to ensure discontinuation / follow-up is implemented on FULL BOM's
             component qty, and not partial.
              Example : A requires 3B, and B is follow-up with C upon discontinuation.
                             Planned order of A should only contain 3B or 3C, not mixture eg. 1B
                             and 2C etc.
              How can the control be implemented ?

    Dear Pradeep, Rajesha & all,
          Assume BOM of "A" indicates component B qty 10 is follow-up with component C qty 10.
          Material B (say, balance 1 qty) is received into Store Y (MRP Relevant). Thus to exclude material B from MRP, we have to manually transfer stock to store X (Not MRP Relevant).
          This would mean, we have to perform manual tracking such that this store transfer is done, to force SAP to direct to material C, so that we either accept 10B or 10C in planned order and nothing else.
         Not forgetting, I could have another follow-up in another bom such that 1B = 1C. Thus, the material 1B I transfered to store X (Not MRP relevant) can actually be use in this case.
    <b>    Thus, from BOM explosion, is there a way to control discontontinuation to follow-up, based on full component qty specified in BOM ?</b>
    <u><b>My Setting as follows :</b></u>
    <b>(1)</b> Material Master of "B" : MRP4 specify (a) Discontinuation Indicator "1", (b) effective-out date, (c) Follow-up material "C"
    <b>(2)</b> In Bom of "A" (parent of "B") :
    - Item "B", indicate discontinuation group "A1"
    - Create item "C" and indicate follow-up group "A1" and qty to be follow-up upon B discontinuation.
    Thank you for your guidance !

  • Same discontinue and follow up material?

    I have used before this function having a follow up material with indicator 1 and effective-out date. However, this time I have 3 materials A, B, C.
    The logic I want to use is the following but I'm not sure if SAP supports this:
    A = discontinue material and B = Follow-up material. Using indicator 1
    B = discontinue material and C = Follow -up material. Using indicator 1.
    So far, SAP is not allowing me to have B as discontinue and follow-up material at the same time. Any insights?
    Thanks for your help.

    Hi Lee,
    If you try to set the discontinuation for a follow-up material, then error message "Message no. 61224 -Multi Level Discontinuation not suported" will be generated when you try to run MRP. Refer Note 398238 - Error message 61224 for parts provided
    For more information on Discontinuation data, refer Concept of Discontinuation Data - Material Master and BOM
    Thanks & Regards,
    Ramagiri

  • Alternative item with follow-up material

    Hi,
    I have a finished product X for that component A-1 pc and B-1 pc is required.
    Now A cannot be used in next year thatu2019s why my client wants 1) to issue 2 pcs of A instead of A-1pc and B-1 pc until the stock of A is available. 2) If the stock for A is not available then only it goes for B.
    1) I have used alternative item grp with priority: 1, strategy : 2, usage probability 200% for A and priority: 2, strategy : 1, usage probability 0%  for B
    System issues 2 pc of A only
    2) Also maintained follow up material as B so if there is any shortage for A then system is looking for B.
    Problem is with the above setting the follow up material and alternative item is not working together.  System issues only 1 pc of A if I maintained B as follow up material. If I maintain only alternate item then it issues 2 pc of A but at the same time it will not check B if any shortage occur.
    Pls help.

    Hi,
    [Kindly check this link |http://help.sap.com/saphelp_47x200/helpdata/en/a0/1016bd4c8311d189520000e829fbbd/frameset.htm] which has information of the below.
    Alternative item group
    You can only define discontinuation data for a stock item or variable-size item that is not assigned to an alternative item group.
    Once you have maintained discontinuation data for an item, you can no longer assign the item to an alternative item group.
    reg
    dsk

  • Follow up Material (different BUoM)

    Dear Experts,
    We have a discontinuation setup here.  The PM1 will be replaced by PM2.  PM1 (sticker) has PCE as BUoM, while PM2 (Tape) has ROL in BUoM.   I tried putting the material as Followup, but system would not allow since they both have different BUoM. 
    Please help.  Thanks!

    Dear,
    The base unit of measure of the follow-up material is the same as the base unit of measure of the discontinued material.
    But try this:
    You can use follow-up setting (set PM2 as follow-up of PM1 in MRP 4 view of material master if this follow-up scenario is valid for all BOM) with discontinuation indicator '1', w/o effective-out date. In this case PM1's stock will run out (no PldOrd, PR, etc) will be created, and from the date, when PM1's stock runs out, MRP will calculate with PM2.
    As I told you, according to my best knowledge, you cannot realize this with different base unit of measures. (you have to change the BUOM of one of the related material masters or create a new material master if you cannot cope with BUOM-change).
    Check this and revert back.
    Regards,
    Alok Tiwari

  • Why do I get the following exception when I press the cancel buuton?

    My code is not complete as I am stubbing my code. Can someone tell me why i get the following exception
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
            at Phonebook.createNew(Phonebook.java:244)
            at Phonebook.actionPerformed(Phonebook.java:222)
            at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:19
    95)
            at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
    a:2318)
            at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
    .java:387)
            at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242
            at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
    istener.java:236)
            at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:2
    72)
            at java.awt.Component.processMouseEvent(Component.java:6038)
            at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
            at java.awt.Component.processEvent(Component.java:5803)
            at java.awt.Container.processEvent(Container.java:2058)
            at java.awt.Component.dispatchEventImpl(Component.java:4410)
            at java.awt.Container.dispatchEventImpl(Container.java:2116)
            at java.awt.Component.dispatchEvent(Component.java:4240)
            at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322
            at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
            at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
            at java.awt.Container.dispatchEventImpl(Container.java:2102)
            at java.awt.Window.dispatchEventImpl(Window.java:2429)
            at java.awt.Component.dispatchEvent(Component.java:4240)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThre
    ad.java:273)
            at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.
    java:183)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
    ad.java:173)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)in the following code whenever I press the cancel button in the part of code that tests fro when a user clicks the create button.
         Filename:     ContactsListInterface.java
         Date:           16 March 2008
         Programmer:     Yucca Nel
         Purpose:     Provides a GUI for entering names and contact numbers into a telephone directory.
                        Also allows options for searching for a specific name and deleting of data from the record
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.text.*;
    import java.io.*;
    import java.util.*;
    import java.text.*;
    public class Phonebook extends JFrame implements ActionListener
    { //start of class
         // construct fields, buttons, labels,text boxes, ArrayLists etc
         JTextPane displayPane = new JTextPane();
         JLabel listOfContacts = new JLabel("List Of Contacts");               // creates a label for the scrollpane
         JButton createButton = new JButton("Create");
         JButton searchButton = new JButton("Search");
         JButton modifyButton = new JButton("Modify");
         JButton deleteButton = new JButton("Delete");
         ArrayList fNameList = new ArrayList();
         ArrayList sNameList = new ArrayList();
         ArrayList hList = new ArrayList();
         ArrayList wList = new ArrayList();
         ArrayList cList = new ArrayList();
         public String name, surname, home, work, cell;
         // create an instance of the ContactsListInterface
         public Phonebook()
         { // start of cli()
              super("Phonebook Interface");
         } // end of cli()
         public JMenuBar createMenuBar()
         { // start of the createMenuBar()
              // construct and populate a menu bar
              JMenuBar mnuBar = new JMenuBar();                    // creates a menu bar
              setJMenuBar(mnuBar);
              JMenu mnuFile = new JMenu("File",true);               // creates a file menu in the menu bar which is visible
                   mnuFile.setMnemonic(KeyEvent.VK_F);
                   mnuFile.setDisplayedMnemonicIndex(0);
                   mnuFile.setToolTipText("File Options");
                   mnuBar.add(mnuFile);
              JMenuItem mnuFileExit = new JMenuItem("Save And Exit");     // creates an exit option in the file menu
                   mnuFileExit.setMnemonic(KeyEvent.VK_X);
                   mnuFileExit.setDisplayedMnemonicIndex(1);
                   mnuFileExit.setToolTipText("Close Application");
                   mnuFile.add(mnuFileExit);
                   mnuFileExit.setActionCommand("Exit");
                   mnuFileExit.addActionListener(this);
              JMenu mnuEdit = new JMenu("Edit",true);               // creates a menu for editing options
                   mnuEdit.setMnemonic(KeyEvent.VK_E);
                   mnuEdit.setDisplayedMnemonicIndex(0);
                   mnuEdit.setToolTipText("Edit Options");
                   mnuBar.add(mnuEdit);
              JMenu mnuEditSort = new JMenu("Sort",true);          // creates an option for sorting entries
                   mnuEditSort.setMnemonic(KeyEvent.VK_S);
                   mnuEditSort.setDisplayedMnemonicIndex(0);
                   mnuEdit.add(mnuEditSort);
              JMenuItem mnuEditSortByName = new JMenuItem("Sort By Name");          // to sort entries by name
                   mnuEditSortByName.setMnemonic(KeyEvent.VK_N);
                   mnuEditSortByName.setDisplayedMnemonicIndex(8);
                   mnuEditSortByName.setToolTipText("Sort entries by first name");
                   mnuEditSortByName.setActionCommand("Name");
                   mnuEditSortByName.addActionListener(this);
                   mnuEditSort.add(mnuEditSortByName);
              JMenuItem mnuEditSortBySurname = new JMenuItem("Sort By Surname");     // to sort entries by surname
                   mnuEditSortBySurname.setMnemonic(KeyEvent.VK_R);
                   mnuEditSortBySurname.setDisplayedMnemonicIndex(10);
                   mnuEditSortBySurname.setToolTipText("Sort entries by surname");
                   mnuEditSortBySurname.setActionCommand("Surname");
                   mnuEditSortBySurname.addActionListener(this);
                   mnuEditSort.add(mnuEditSortBySurname);
              JMenu mnuHelp = new JMenu("Help",true);                    // creates a menu for help options
                   mnuHelp.setMnemonic(KeyEvent.VK_H);
                   mnuHelp.setDisplayedMnemonicIndex(0);
                   mnuHelp.setToolTipText("Help options");
                   mnuBar.add(mnuHelp);
              JMenuItem mnuHelpHelp = new JMenuItem("Help");          // creates a help option for help topic
                   mnuHelpHelp.setMnemonic(KeyEvent.VK_P);
                   mnuHelpHelp.setDisplayedMnemonicIndex(3);
                   mnuHelpHelp.setToolTipText("Help Topic");
                   mnuHelpHelp.setActionCommand("Help");
                   mnuHelpHelp.addActionListener(this);
                   mnuHelp.add(mnuHelpHelp);
              JMenuItem mnuHelpAbout = new JMenuItem("About");     // creates a about option for info about api
                   mnuHelpAbout.setMnemonic(KeyEvent.VK_T);
                   mnuHelpAbout.setDisplayedMnemonicIndex(4);
                   mnuHelpAbout.setToolTipText("About this program");
                   mnuHelpAbout.setActionCommand("About");
                   mnuHelpAbout.addActionListener(this);
                   mnuHelp.add(mnuHelpAbout);
              return mnuBar;
         } // end of the createMenuBar()
         // create the content pane
         public Container createContentPane()
         { // start of createContentPane()
              //construct and populate panels and content pane
              JPanel labelPanel = new JPanel(); // panel is only used to put the label for the textpane in
                   labelPanel.setLayout(new FlowLayout());
                   labelPanel.add(listOfContacts);
              JPanel displayPanel = new JPanel();// panel is used to display all the contacts and thier numbers
                   setTabsAndStyles(displayPane);
                   displayPane = addTextToTextPane();
                   displayPane.setEditable(false);
              JScrollPane scrollPane = new JScrollPane(displayPane);
                   scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS); // pane is scrollable vertically
                   scrollPane.setWheelScrollingEnabled(true);// pane is scrollable by use of the mouse wheel
                   scrollPane.setPreferredSize(new Dimension(400,320));
              displayPanel.add(scrollPane);
              JPanel workPanel = new JPanel();// panel is used to enter, edit and delete data
                   workPanel.setLayout(new FlowLayout());
                   workPanel.add(createButton);
                        createButton.setToolTipText("Create a new entry");
                        createButton.addActionListener(this);
                   workPanel.add(searchButton);
                        searchButton.setToolTipText("Search for an entry by name number or surname");
                        searchButton.addActionListener(this);
                   workPanel.add(modifyButton);
                        modifyButton.setToolTipText("Modify an existing entry");
                        modifyButton.addActionListener(this);
                   workPanel.add(deleteButton);
                        deleteButton.setToolTipText("Delete an existing entry");
                        deleteButton.addActionListener(this);
              labelPanel.setBackground(Color.red);
              displayPanel.setBackground(Color.red);
              workPanel.setBackground(Color.red);
              // create container and set attributes
              Container c = getContentPane();
                   c.setLayout(new BorderLayout(30,30));
                   c.add(labelPanel,BorderLayout.NORTH);
                   c.add(displayPanel,BorderLayout.CENTER);
                   c.add(workPanel,BorderLayout.SOUTH);
                   c.setBackground(Color.red);
              // add a listener for the window closing and save
              addWindowListener(
                   new WindowAdapter()
                        public void windowClosing(WindowEvent e)
                             int answer = JOptionPane.showConfirmDialog(null,"Are you sure you would like to save all changes and exit?","File submission",JOptionPane.YES_NO_OPTION);
                             if(answer == JOptionPane.YES_OPTION)
                                  System.exit(0);
              return c;
         } // end of createContentPane()
         protected void setTabsAndStyles(JTextPane displayPane)
         { // Start of setTabsAndStyles()
              // set Font style
              Style fontStyle = StyleContext.getDefaultStyleContext().getStyle(StyleContext.DEFAULT_STYLE);
              Style regular = displayPane.addStyle("regular", fontStyle);
              StyleConstants.setFontFamily(fontStyle, "SansSerif");
              Style s = displayPane.addStyle("bold", regular);
              StyleConstants.setBold(s,true);
         } // End of setTabsAndStyles()
         public JTextPane addTextToTextPane()
         { // start of addTextToTextPane()
              Document doc = displayPane.getDocument();
              try
              { // start of tryblock
                   // clear previous text
                   doc.remove(0,doc.getLength());
                   // insert titles of columns
                   doc.insertString(0,"NAME\tSURNAME\tHOME NO\tWORK NO\tCELL NO\n",displayPane.getStyle("bold"));
              } // end of try block
              catch(BadLocationException ble)
              { // start of ble exception handler
                   System.err.println("Could not insert text.");
              } // end of ble exception handler
              return displayPane;
         } // end of addTextToTextPane()
         // code to process user clicks
         public void actionPerformed(ActionEvent e)
         { // start of actionPerformed()
              String arg = e.getActionCommand();
              // user clicks create button
              if(arg.equals("Create"))
                   createNew();
              if(arg.equals("Search"))
              if(arg.equals("Modify"))
              if(arg.equals("Delete"))
              if(arg.equals("Exit"))
         } // end of actionPerformed()
         // method to create a new contact
         public void createNew()
         { // start of create new contact()
              name = JOptionPane.showInputDialog(null,"Please enter the new contacts first name or press cancel to exit.");
              if(name == null)     finish();                         // if user clicks cancel
              if(name.length() <=0)
                   JOptionPane.showMessageDialog(null,"You did not enter a valid name.\nPlease make sure you enter data correctly.","Error",JOptionPane.ERROR_MESSAGE);
                   createNew();                                   // To return to the create method
              surname = JOptionPane.showInputDialog(null,"Please enter the new contacts surname or press cancel to exit.");
              if(surname == null)     finish();                         // if user clicks cancel
              if(surname.equals(""))
                   int answer = JOptionPane.showConfirmDialog(null,"You did not enter a surname.\nAre you sure you wish to leave the surname empty?","No data entered",JOptionPane.YES_NO_OPTION);   // Asks if data was valid
                   if(answer == JOptionPane.NO_OPTION)
                        surname = JOptionPane.showInputDialog(null,"Please enter the new contacts surname.");
              home = JOptionPane.showInputDialog(null,"Please enter the new contacts home number or press cancel to exit.");
              if(home == null)   finish();                    // if user clicks cancel
              work = JOptionPane.showInputDialog(null,"Please enter the new contacts work number or press cancel to exit.");
              if(work == null)     finish();                    // if user clicks cancel
              cell = JOptionPane.showInputDialog(null,"Please enter the new contacts cell number or press cancel to exit.");
              if(cell == null)     finish();                    // if user clicks cancel
         } // end of create new contact()
         // method to close applicatin
         public void finish()
         // method to search a contact
         public static void main(String[] args)
         { // start of main()
              // Set look and feel of interface
              try
              { // start of try block
                   UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
              } // end of try block
              catch(Exception e)
              { // start of catch block
                   JOptionPane.showMessageDialog(null,"There was an error in setting the look and feel of this application","Error",JOptionPane.INFORMATION_MESSAGE);
              } // end  of catch block
              Phonebook p = new Phonebook();
              p.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
              p.setJMenuBar(p.createMenuBar());
              p.setContentPane(p.createContentPane());
              p.setSize(520,500);
              p.setVisible(true);
              p.setResizable(false);
         } // end of main()
    } //end of class

    Yucca wrote:
    Line 244 is where I test for if the user actuallu entered a String at all. Is there an alternative way of writing that code?
    if(name.length() <=0)
                   JOptionPane.showMessageDialog(null,"You did not enter a valid name.\nPlease make sure you enter data correctly.","Error",JOptionPane.ERROR_MESSAGE);
                   createNew();                                   // To return to the create method
    Change:
    if(name == null)     finish();     To
    if(name == null) {
        finish();
        return;
    }

  • Follow-on documents are not visible in MIRO in TEST server, awsys = PRD300.

    Dear Experts ,
    The Test Server was refreshed around mid-June 2011 with data of
    Production Server. The follow-on documents are not visible for the
    invoice documents in MIRO in TEST server due to value in tables
    BKPF,RBKP : field : AWSYS = PRD300 .
    The newly created Purchase Orders after the refresh, the accounting
    documents can be seen for the Goods Receipt (MIGO_GR-display) and
    Invoice documents (MIRO).
    we had already raised this issue in March & got the feedback from SAP
    as shown below.
    accordingly we have developed & run the program "zzlogsys2" which
    updates the Logsys/Awsys field from PRD300 ( of production server ) to
    that of the current server i.e. TST300 as required.
    after which the FI documents for the material documents are visible in
    MIGO,but follow-on documents are not visible for the invoice documents
    in MIRO.
    we have Checked notes 781498 and 28958 to see if the logical system is
    correctly assigned , where we found that in table RBKP after entering document number, Fiscal Year , the
    Field AWSYS is "PRD300" & not "TST300" as it should be. We will take up the activity of updating table RBKP
    also as we are currently doing for tables MKPF & BKPF.
    But to have clear picture as to what we are doing is correct , pl
    advise about the following :
    1) Is it a correct process done by our SAP-Basis team , that every time
    any Server ( e.g. Test or Quality ) is refreshed with Production server
    data, the Field AWSYS in various transaction tables gets value as
    "PRD300" which then is required to replaced by running program such as
    ZZlogsys.
    REPORT ZZLOGSYS.
    TABLES: T000, MKPF.
    DATA: NEW_SYS LIKE MKPF-AWSYS.
    PARAMETER: OLD_SYS LIKE MKPF-AWSYS.
    SELECT SINGLE * FROM T000 WHERE MANDT EQ SY-MANDT.
    NEW_SYS = T000-LOGSYS.
    CHECK NOT NEW_SYS IS INITIAL.
    UPDATE MKPF SET AWSYS = NEW_SYS
    WHERE AWSYS = OLD_SYS.
    WRITE:/ 'Number of updates: ', SY-DBCNT.
    2) if the above process is correct & normal , then which are the other
    tables in a particular server ,apart from tables MKPF,BKPF,RBKP , which
    needs to be updated the value of field "AWSYS" in the same way
    replacing value "PRD300".
    3) if the process in point no. 1 is not correct , then what is the
    correct process that the Basis team can do while refreshing any target
    server with production data so that target server retains its value in
    Field AWSYS & not showing "PRD300".
    With 3 servers TEST,DEV & Quality , recently refreshed with production
    server to bring all servers in Sync for a HR patch application, we have
    this situation now in all 3 servers .
    Thanks in advance ,
    Anil Shanbhag

    It is appropriate to move this thread from ERP-MM to [Enterprise Resource Planning (ERP)|Enterprise Resource Planning (SAP ERP);
    Edited by: Jeyakanthan A on Jul 7, 2011 4:56 PM

Maybe you are looking for

  • Itunes app will not download after 1+ months

    So I downloaded an app to itunes (that I paid for thank you very much in case anyone thought I stole it) and it will not download onto my iphone 4.  I have downloaded other apps from itunes that have downloaded successfully.  Every time I try to down

  • Apple TV (A1469) Restore Fail

    I woke up yesterday morning to find my Apple TV (A1469) needed restoring. I was a little worried but had a day of lecturers so I said to myself that I would deal with the problem last night. Needless to say after 6 restore attempts last night I gave

  • Shipping point and storage location determination

    for one of my delivery type i had defined shipping point determination as per following. define shipping conditions define loading group assign shipping points: with combination of shipping conditionsloading groupplantprop shippping pointmanual shipi

  • Running Transaction MRIS system don't says amount to be paid

    Hello. When I perform transaction MRIS at Test Mode ON, the system don't says the amount to be paid.  Basically my client needs to know the amount before paying.   I appreciate any help. Thank you. Hector.

  • Hallo, can you help me we want to upgrade de firm ware of...

    hallo, can you help me we want to upgrade de firm ware of the wrt54gsv 1.1 but we dont know the right gplcode. when we try we get a list of possibilities wich one do we have to take thanks