JTabbedPane with JSplitPane - HELP !!!

What am I missing??? I have a JSplitPane in a TabbedPane. The topComponent contains a JComboBox with Key values, the Bottom Component will display details based on the key value passed. The bottomComponent has 2 constructors: one default and one accepting an Argument. The default constructor instantiate the class that would represent the data and formats the bottomComponent. The second constructor retrieves the data from the Oracle database and formats the BottomComponent using the same method. I put System.out messages and the values are showing using the Second constructor. Your help is greatly appreciated.

This is the complete set of code. I hope you can follow the logic. I tried your last suggestion without any success. Maybe by reviewing the code you can see a problem. I appreciate your help greatly. Thanks.
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
public class Management extends JPanel implements ChangeListener{
//private JFrame dlframe;
private JTabbedPane propPane;
public Management(){
propPane = new JTabbedPane(SwingConstants.TOP);
propPane.setSize(795, 550);
propPane.addChangeListener(this);
populateTabbedPane();
// getContentPane().add(propPane);
add(propPane);
} // end of constructor
// create tabs with titles
private void populateTabbedPane(){
     propPane.addTab("Management", null, new Mgmt(), "Management");
     propPane.addTab("Management Contact", null,
new Management_Contact(), "Management Contact");
} // end of populateTabbedPane
public void stateChanged(ChangeEvent e){
     System.out.println("\n\n ****** Management.java " + propPane.getSelectedIndex() + " " + propPane.getTabPlacement());
public static void main(String[] args){
Home dl = new Home();
dl.pack();
dl.setSize(800, 620);
dl.setBackground(Color.white);
dl.setVisible(true);
} // end of class Management
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
public class Management_Contact extends JPanel {
     Mgmt_Class mgmt = null;
     Mgmt_Contact mgmtContact = null;
     public Management_Contact() {
          JSplitPane split = new JSplitPane();
          split.setOrientation(JSplitPane.VERTICAL_SPLIT);
          Mgmt_Header hdr = new Mgmt_Header();
          split.setTopComponent(hdr);
          Mgmt_Contact mgmtContact = new Mgmt_Contact();
          JScrollPane scrollPane = new JScrollPane(mgmtContact,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
          JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
          scrollPane.setPreferredSize(new Dimension(650,300));
          split.setBottomComponent(scrollPane);
          add(split);
} // end of Management class
import java.util.Vector;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Mgmt_Header extends JPanel implements ActionListener{
private JComboBox cmbMgmt;
private JTextField txtMgmtCode;
private JTextField txtMgmtAddr1;
private JTextField txtMgmtAddr2;
private JTextField txtMgmtCity;
private JButton sel;
private JLabel lblBlk;
private JPanel pWork;
private Box vertBox;     
private Box topBox;     
private Box midBox;     
private Box botBox;     
JToolTip toolTip = null;
private Mgmt_Class mClass = null;
private Mgmt_Contact cnt = null;
Vector mgmtVct = null;
public Mgmt_Header(){
     vertBox = Box.createVerticalBox();
     topBox = Box.createHorizontalBox();
     midBox = Box.createHorizontalBox();
     botBox = Box.createHorizontalBox();
mClass = new Mgmt_Class();
mgmtVct = new Vector();
     cmbMgmt = new JComboBox();
     cmbMgmt.addItem(" ");
     mgmtVct = mClass.bldMgmtHeader();
     for (int x1=0; x1<mgmtVct.size() ;x1++ )
     mClass = (Mgmt_Class)mgmtVct.get(x1);
     cmbMgmt.addItem(mClass.getManagementName());
System.out.println("MgmtHeader " + mgmtVct.size() + " " + cmbMgmt.getItemCount());
     cmbMgmt.setEditable(false);
     cmbMgmt.setBackground(Color.white);
     cmbMgmt.setName("cmbMgmt");
     cmbMgmt.setPreferredSize(new Dimension(250,27));
     cmbMgmt.setFont(new Font("Times-Roman",Font.PLAIN,12));
     cmbMgmt.addActionListener(this);
     pWork = new JPanel();
     pWork.setLayout(new FlowLayout(FlowLayout.CENTER));
     pWork.setBorder(BorderFactory.createTitledBorder(" Select Management Name "));
     pWork.add(new JLabel("Name: "));
     pWork.add(cmbMgmt);
     topBox.add(pWork);
     txtMgmtAddr1 = new JTextField("Address line 1",15);
     txtMgmtAddr1.setEditable(false);
     txtMgmtAddr2 = new JTextField("Address line 2",15);
     txtMgmtAddr2.setEditable(false);
     txtMgmtCity = new JTextField("City",15);
     txtMgmtCity.setEditable(false);
     midBox.add(midBox.createVerticalStrut(10));
     botBox.add(new JLabel("Address:"));
     botBox.add(topBox.createHorizontalStrut(15));
     botBox.add(txtMgmtAddr1);
     botBox.add(topBox.createHorizontalStrut(15));
     botBox.add(txtMgmtAddr2);
     botBox.add(topBox.createHorizontalStrut(15));
     botBox.add(txtMgmtCity);
     vertBox.add(topBox);
     vertBox.add(midBox);
     vertBox.add(botBox);
     add(vertBox);
} // end of constructor
     public void actionPerformed(ActionEvent evt){
     if (evt.getSource() instanceof JComboBox){
     if (((JComboBox)evt.getSource()).getName() == "cmbMgmt"){
     int sel = ((JComboBox)evt.getSource()).getSelectedIndex();
     System.out.println("ActionListener " + sel + " " + ((JComboBox)evt.getSource()).getItemAt(sel) + " " + cmbMgmt.getItemAt(sel));
     Mgmt_Class mClass = (Mgmt_Class)mgmtVct.get(sel - 1);
     System.out.println("From Vector " + mClass.getAddress1() + " " + mClass.getAddress2() + " " + mClass.getManagementCode());
     txtMgmtAddr1.setText(mClass.getAddress1());
     txtMgmtAddr2.setText(mClass.getAddress2());
     txtMgmtCity.setText(City.getCityName(mClass.getCityCode()));
     System.out.println("\n\nListener " + ((JComboBox)evt.getSource()).getSelectedItem() + " " + (((JComboBox)evt.getSource()).getSelectedIndex()) );
     int mCode = mClass.getManagementCode();
     cnt = new Mgmt_Contact(mCode);
System.out.println("\n After new Mgmt_Contact constructor");
     } // end of JComboBox
} // end of actionPerformed
} // end of Mgmt_Header
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.io.*;
public class Mgmt_Contact extends JPanel implements KeyListener{
     private Mgmt_Contact_Class contact = null;
     private DefaultFocusManager mgr = null;
     private JTextField txtFName = null;
     private JTextField txtLName = null;
     private JTextField txtAddr1 = null;
     private JTextField txtAddr2 = null;
     private JButton btnUpd = null;
     private JButton btnNew = null;
     private JButton btnDel = null;
     private JButton btnNext = null;
     private JButton btnPrior = null;
     private JButton btnSel = null;
     private JPanel cntct = null;
     private JPanel pWork = null;
     private JPanel pWest = null;
     private JPanel pEast = null;
     private JPanel pNorth = null;
     private JPanel pSouth = null;
     private JPanel pCenter = null;
     public Mgmt_Contact() {
     System.out.println("\n MgmtContact default constructor");
          contact = new Mgmt_Contact_Class();
          bldPage();
     System.out.println("\n ******* After bldPage() routine");
     public Mgmt_Contact(int mCode) {
System.out.println("\n MgmtContact second constructor " + mCode);
     Vector mgmtVct = new Vector();
     contact = new Mgmt_Contact_Class();
     mgmtVct = contact.bldMgmtContactTbl(mCode);
     contact =(Mgmt_Contact_Class)mgmtVct.get(0);
System.out.println("\n ******* Management Contact Table *** " + contact.getFirstName());          
     bldPage();
System.out.println("\n ******* After bldPage() routine");
     public void bldPage(){
System.out.println("\n MgmtContact bldPage ");
          cntct = new JPanel();
          cntct.setLayout(new BorderLayout());
          pWest = new JPanel();
          pWest.setLayout(new GridLayout(0,1));
          pCenter = new JPanel();
          pCenter.setLayout(new GridLayout(0,1));
          pNorth = new JPanel();
          pNorth.setLayout(new FlowLayout(FlowLayout.CENTER));
          pSouth = new JPanel();
          pSouth.setLayout(new FlowLayout());
          pWork = new JPanel();
          pWork.setLayout(new FlowLayout(FlowLayout.LEFT));
          pWest.add(new JLabel("First :"));
          txtFName = new JTextField(15);
          txtFName.setText(contact.getFirstName());
System.out.println("\n First Name " + txtFName.getText() + " " + contact.getFirstName());
          txtFName.setPreferredSize(new Dimension(200,27));
          txtFName.addKeyListener(this);
          txtFName.setName("txtFName");
          pWork.add(txtFName);
          pWork.add(new JLabel("Last :"));
          txtLName = new JTextField(15);
          txtLName.setText(contact.getLastName());
          txtLName.setPreferredSize(new Dimension(200,27));
          txtLName.setName("txtLName");     
          txtLName.addKeyListener(this);
          pWork.add(txtLName);
          pCenter.add(pWork);
          pWork = new JPanel();
          pWork.setLayout(new FlowLayout(FlowLayout.LEFT));
          pWest.add(new JLabel("Address :"));
          txtAddr1 = new JTextField(15);
          txtAddr1.setText(contact.getAddress1());
          txtAddr1.setPreferredSize(new Dimension(200,27));
          txtAddr1.addKeyListener(this);
          txtAddr1.setName("txtAddr1");
          pWork.add(txtAddr1);
          pWork.add(new JLabel(" "));
          txtAddr2 = new JTextField(15);
          txtAddr2.setText(contact.getAddress2());
          txtAddr2.setPreferredSize(new Dimension(200,27));
          txtAddr2.setName("txtAddr2");
          txtAddr2.addKeyListener(this);
          pWork.add(txtAddr2);
          pCenter.add(pWork);
          pWork = new JPanel();
          pWork.setLayout(new FlowLayout(FlowLayout.LEFT));
          btnUpd = new JButton("Update");
          btnUpd.addActionListener(new ButtonListener());
          btnDel = new JButton("Delete");
          btnDel.addActionListener(new ButtonListener());
          btnNew = new JButton(" Add ");
          btnNew.addActionListener(new ButtonListener());
          btnNext = new JButton(" Next ");
          btnNext.addActionListener(new ButtonListener());
          btnPrior = new JButton(" Prior ");
          btnPrior.addActionListener(new ButtonListener());
          btnSel = new JButton(" Select ");
          btnSel.addActionListener(new ButtonListener());
          pSouth.add(btnNew);
          pSouth.add(btnUpd);
          pSouth.add(btnDel);
          pSouth.add(btnNext);
          pSouth.add(btnPrior);
          pSouth.add(btnSel);
          cntct.add("West", pWest);
          cntct.add("Center", pCenter);
          cntct.add("South", pSouth);
          add(cntct);
     class ButtonListener implements ActionListener{
     public void actionPerformed(ActionEvent e){
System.out.println("ButtonListener " + e.getActionCommand() + " " +
          contact.getString());
// KeyListener Interface
     public void keyPressed(KeyEvent e){
     public void keyReleased(KeyEvent e){
          mgr = new DefaultFocusManager();
          Component comp = e.getComponent();
          Object obj = ((JTextField)e.getSource());
          if ((ColUtils.isMaxField(obj))){
          mgr.focusNextComponent(comp);
     } // end of KeyReleased
     public void keyTyped(KeyEvent e){
          char num = e.getKeyChar();
          Object obj = ((JTextField)e.getSource());
          if (ColUtils.isDataValid(num, obj)){
          else {
          e.consume();
          System.out.println(num + " Rejected Data");
     } // end of keyTyped
} // end of Mgmt_Contact class

Similar Messages

  • How can i combine the JTabbedPane with JSplitPane?

    there is an example in Notepad++,where when 2 or more tabs are open,we can right-click the tab and choose the "go to another view" command.it's so good that we can check 2 files in two views.
    so i wanna know how to implement this function in java?and is there any example i can study?
    Thanks a lot!

    I just upgraded to version 8, hoping for a solution.
    I know that I can write an Advanced Action for every slide like this:
    It changes my variables and then advances to the right slide. But, I'll have 100+ slides when I'm done and I was hoping that could make this a little easier. AND, I can't track it on the branching view.
    I was hoping that I could make this work:
    I could use an Advanced Action to change my variables (I would only need a few) and then have it jump to a slide. This would show up in the Branching view. But, I can't get that work.
    Are there any other options?

  • Problem with JSplitPane

    Hi!
    I have the following problem with JSplitPane: Whenever I add two components to the splitpane and then add the splitpane to a JPanel, the left component is minimized, i.e. not visible. I always have to manually readjust the splitter in order to see the left component. I also tried a bunch of combinations of setSize, etc. but nothing seems to help.
    Here's some code:
    public void setTables(Vector<DBTable> vec)
              _panel.setSize(650, 500);
              DefaultListModel m = new DefaultListModel();
              _tableList = new JList(m);
              // _tableList.setSize(new Dimension(300, 400));
              _infoArea = new JTextArea();
              _infoArea.setEditable(false);
              // _infoArea.setSize(new Dimension(250, 300));
              MetaDataListener listener = new MetaDataListener(_infoArea, _tableList);
              _tableList.addListSelectionListener(listener);
              for (DBTable table : vec)
                   m.addElement(table);
              JScrollPane scroll1 = new JScrollPane(_tableList);
              JScrollPane scroll2 = new JScrollPane(_infoArea);
              JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true, scroll1, scroll2);
              split.setSize(new Dimension(600, 480));
              _panel.add(split, BorderLayout.CENTER);
              scroll1.setPreferredSize(new Dimension(300, 400));
              scroll1.setSize(new Dimension(300, 400));
              scroll2.setPreferredSize(new Dimension(300, 400));
              scroll2.setSize(new Dimension(300, 400));
              _panel.setVisible(true);
                                         //_frame referes to a JInternalFrame and _panel surprisingly to a JPanel
              _frame.getContentPane().add(_panel, BorderLayout.CENTER);
              _frame.setVisible(true);
              split.setDividerLocation(50.0);
         }Thanks!

    Nevermind I fixed it!

  • JTabbedpane with JRadiobutton?

    I have a JTabbedpane with 2 tabs (tab1, tab2).
    I have 2 radiobutton (JRadioButton).
    So for now, i want to when i click on radiobutton1 it will be show tab1
    when i click on radiobutton2 it will be show tab2.
    Here is my source code, please help me to slove it:
    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.GridBagLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.BorderFactory;
    import javax.swing.ButtonGroup;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JRadioButton;
    import javax.swing.JTabbedPane;
    import javax.swing.JTextField;
    public class JTablePaneTest extends JFrame implements ActionListener{
    private JTabbedPane pane;
    private JRadioButton radioButton1 = new JRadioButton("Radiobutton1", true);
    private JRadioButton radioButton2 = new JRadioButton("Radiobutton2", false);
    JPanel radioPanel =null;
    public JTablePaneTest() {
    super("TEST");
    this.setLayout(new BorderLayout());
    this.setSize(new Dimension(300,300));
    this.getContentPane().add(this.getAllRadioButton(), BorderLayout.SOUTH);
    this.getContentPane().add(this.getPane(), BorderLayout.CENTER);
    this.pack();
    this.setVisible(true);
    private JPanel getAllRadioButton(){
    if(radioPanel==null){
    radioPanel = new JPanel();
    radioPanel.setLayout(new FlowLayout());
    radioPanel.setBorder(BorderFactory.createEmptyBorder());
    ButtonGroup bg = new ButtonGroup();
    bg.add(radioButton1);
    bg.add(radioButton2);
    radioPanel.add(radioButton1);
    radioPanel.add(radioButton2);
    return radioPanel;
    private JTabbedPane getPane(){
    if(pane == null){
    pane = new JTabbedPane();
    pane.addTab("Tab1", null, panel1(), "Tab1");
    pane.addTab("Tab2", null, panel2(), "Tab2");
    return pane;
    private JPanel panel1(){
    JPanel panel1 = new JPanel();
    panel1.setLayout(new GridBagLayout());
    panel1.add(new JButton("TEST1"));
    return panel1;
    private JPanel panel2(){
    JPanel panel2 = new JPanel();
    panel2.setLayout(new GridBagLayout());
    panel2.add(new JTextField(12));
    return panel2;
    public static void main(String[] args) {
    new JTablePaneTest();
    @Override
    public void actionPerformed(ActionEvent e) {
    if(e.getSource() == radioButton1){
    //show tab1
    if(e.getSource() == radioButton2){
    //show tab2
    }Thanks you very much.
    Edited by: ecard104 on Sep 1, 2008 10:01 AM

    ecard104 wrote:
    can you tell me the method you want to say?I'd prefer to have you look at the API and the tutorial. It would be better for you in the long run. It's spelled out in the tutorial.
    [http://java.sun.com/docs/books/tutorial/uiswing/components/tabbedpane.html]
    [http://java.sun.com/javase/6/docs/api/javax/swing/JTabbedPane.html]
    Edited by: Encephalopathic on Sep 1, 2008 10:17 AM

  • A component within JTabbedPane with overlay layout

    Hi, I use the following solution to have a component within the upper right corner of the JTabbedPane: [http://forums.sun.com/thread.jspa?forumID=57&threadID=636289&start=2|http://forums.sun.com/thread.jspa?forumID=57&threadID=636289&start=2] . It works great, but when I'm resizing a window with the JTabbedPane with the JTabbedPane.WRAP_TAB_LAYOUT and width of all of the tabs is higher than size of the window the tabs are wrapped. But it should be wrapped when width of all tabs + width of the added component is higher than the size. I have no idea how to do this. Any ideas?
    Please see the screenshot: [http://img150.imageshack.us/img150/5629/btn.png|http://img150.imageshack.us/img150/5629/btn.png]

    Just a quick idea:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.plaf.*;
    class TabbedPaneTest {
      public JComponent makeUI() {
        UIManager.put("TabbedPane.tabAreaInsets",
                      new InsetsUIResource(6, 2, 0, 60));
        JSplitPane sp = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
        sp.setTopComponent(makeTabPanel(new JTabbedPane()));
        sp.setBottomComponent(makeTabPanel(new ClippedTitleTabbedPane()));
        sp.setPreferredSize(new Dimension(320, 240));
        return sp;
      private JPanel makeTabPanel(final JTabbedPane tab) {
        tab.addTab("asdfasd", new JLabel("456746"));
        tab.addTab("1234123", new JScrollPane(new JTree()));
        tab.addTab("6780969", new JLabel("zxcvzxc"));
        tab.setAlignmentX(1.0f);
        tab.setAlignmentY(0.0f);
        JButton b = new JButton(new AbstractAction("add") {
          @Override public void actionPerformed(ActionEvent e) {
            tab.addTab("test", new JScrollPane(new JTree()));
        b.setAlignmentX(1.0f);
        b.setAlignmentY(0.0f);
        JPanel p = new JPanel();
        p.setLayout(new OverlayLayout(p));
        p.add(b);
        p.add(tab);
        return p;
      public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
          @Override public void run() { createAndShowGUI(); }
      public static void createAndShowGUI() {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.getContentPane().add(new TabbedPaneTest().makeUI());
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    class ClippedTitleTabbedPane extends JTabbedPane {
      //XXX Nimbus NPE
      Insets tabInsets = UIManager.getInsets("TabbedPane.tabInsets");
      Insets tabAreaInsets = UIManager.getInsets("TabbedPane.tabAreaInsets");
      public ClippedTitleTabbedPane() {
        super(JTabbedPane.TOP);
        setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
        addComponentListener(new ComponentAdapter() {
          @Override public void componentResized(ComponentEvent e) {
            initTabWidth();
      @Override
      public void insertTab(String title, Icon icon, Component component,
                            String tip, int index) {
        super.insertTab(title, icon, component, tip==null?title:tip, index);
        JLabel label = new JLabel(title, JLabel.CENTER);
        Dimension dim = label.getPreferredSize();
        label.setPreferredSize(
            new Dimension(0, dim.height+tabInsets.top+tabInsets.bottom));
        setTabComponentAt(index, label);
        initTabWidth();
      private void initTabWidth() {
        Insets insets = getInsets();
        int areaWidth = getWidth() - tabAreaInsets.left - tabAreaInsets.right
                                   - insets.left        - insets.right;
        int tabCount = getTabCount();
        int tabWidth = 0;
        switch(getTabPlacement()) {
          case LEFT: case RIGHT:
          tabWidth = areaWidth/4;
          break;
          case BOTTOM: case TOP: default:
          tabWidth = areaWidth/tabCount;
        int gap = areaWidth - (tabWidth * tabCount);
        if(tabWidth>80) {
          tabWidth = 80;
          gap = 0;
        tabWidth = tabWidth - tabInsets.left - tabInsets.right - 3;
        for(int i=0;i<tabCount;i++) {
          JLabel l = (JLabel)getTabComponentAt(i);
          if(l==null) break;
          int h = l.getPreferredSize().height;
          l.setPreferredSize(new Dimension(tabWidth+((gap>0)?1:0), h));
          gap--;
        revalidate();
    }

  • JTabbedPane with two rows of tabs

    Hi,
    I need to create a JTabbedPane with layout policy as SCROLL_TAB_LAYOUT with two rows of tabs. The first level will have say 10 tabs and the all the remaining tabs (say 20) will be added in the next level. Please help me out on this, to how to proceed with it?
    Edited by: Soundarapandian on Nov 25, 2009 3:10 PM

    Soundarapandian wrote:
    I need to create a JTabbedPane with layout policy as SCROLL_TAB_LAYOUT with two rows of tabs. The first level will have say 10 tabs and the all the remaining tabs (say 20) will be added in the next level. Please help me out on this, to how to proceed with it?Try this (imho better) approach:
    create a new tabbedpane for each level and add each of these tabbedpanes to an upperlevel tabbedpane, thus allowing you to pre-select the desired level.

  • Error while adding a custom field with Input help via AET

    Hi All,
    I need to add two custom field under Service orders at Item level in component BT140I_SRVP.
    One field is required to have the input search help f4 and autopopulates the second field
    I am able to add one field(not requiring help) successfully through AET .
    I have created one Zsearch_help in se11 and its successfully running  and Autopopulating seocnd field while I am testing it
    While adding second field through AET,I need to enter following details as -
    field label,search relevant ,serach help etc.
    When I type the name of my 'Zsearch_help' against field search help it gives me following error
    'Search help is not compatible'.
    Secondly,not getting getter and setter methods for the attrributes in BTAdminI.
    Last,please tell me if i create zhelp and activate it,would it automatically appear in the list on AETwhile assiging it to input field?
    Please help me out.Kindly be detailed as I am new to SAP CRM.
    Thanks,
    Shivani

    The question is answered in CRM 7.0 forum:
    Getting error while adding a custom field (with input help) through AET

  • Creation of report with the help of report painter

    Dear Experts,
                         I need report painter material, if any body have  pls  farward to me.
    my intension to create controlling report with the help of report painter.
    I am ready to award full points.
    Thanks in advance
    Regards
    avudaiappan
    Moderator - Please read this:
    /thread/931177 [original link is broken]
    Thread locked

    Hello Chinasammy,
    Report Painter allows you to create reports using data from SAP application components, which you can adapt to meet your individual requirements.
    Many of your reporting requirements can already be met by using the standard reports provided by various SAP application components. If these SAP standard reports do not meet your reporting needs, Report Painter enables you to define your specific reports quickly and easily.
    When executing a Report Painter report, it is displayed by the system in Report Writer format. You thus have access to the same functions as for Report Writer reports defined in the same way, and can combine Report Painter and Report Writer reports together in a report group.
    Report Painter uses a graphical report structure, which forms the basis for your report definition and displays the rows and columns as they appear in the final report output.
    To facilitate report definition, you can use many of the standard reporting objects provided by SAP (such as libraries, row/column models, and standard layouts) in your own specific reports. When you define a Report Painter report you can use groups (sets). You can also enter characteristic values directly.
    Advantages of Report Painter include:
    Flexible and simple report definition
    Report definition without using sets
    Direct layout control: The rows and columns are displayed in the report definition as they appear in the final report output, making test runs unnecessary.
    =============================================
    Below mentioned is the process for creating reports using Report Painter as a tool.
    Selecting and maintaining a library for your report: As the transfer structure to Report Painter you use a report table, which is defaulted by SAP and can not be maintained. This table contains characteristics, key figures and predefined columns. In a library, you collect the characteristics, key figures, and predefined columns from the report table, which you need for your Report Painter reports.
    When you define a Report Painter report, you assign it to a library. Reports assigned to one library can only use the characteristics, key figures, and predefined columns selected for that library.
    When you create or maintain a library, the Position field determines the sequence in which the characteristics, key figures or (predefined) key figures appear in the Report Painter selection lists when you define a report. This allows you to position the objects that you use regularly in your reports at the beginning of the selection lists. If you do not make an entry in the Position field, you will not be able to use this object in Report Painter reports.
    You can use either the standard SAP libraries for your reports or define your own.
    (ii) Selecting or maintaining a standard layout for your report: Standard layouts determine report layout features and the format of your report data.If the SAP standard layouts do not meet your reporting requirements, you can create a new  standard layout or change an existing one.
    (iii) Defining row and column models: A model is a one-dimensional, predefined reporting structure that you can insert in either the rows or columns of your report.If you often use the same or similar row or column definitions in your reports, it is recommended that you create row or column models.
    You must define the row and/or column models that you want to include in your report definition before you define the report.
    You can also use the standard column models supplied by SAP.
    (iv) Defining the report: Defining a Report Painter report involves the following steps.
    (a) Define the report columns: You define the report columns using the characteristics, key figures, and predefined columns selected for the library that the report uses. Alternatively, you can use a column model for column definition. Column models are predefined column structures which you insert into your entire column definition, instead of defining each individual column.
    (b) Define the report rows: You define the report rows using the characteristics selected for the library selected for the report.
    Alternatively, you can use a row model for your row definition. Row models serve the same purpose as column models, but are used to define a report row.
    Edit and format the report rows and columns in line with your requirements. (For example, you can hide rows or columns, define the column width or define colors for your report rows).
    (iii)Define general data selection criteria for the selection of your report data: Selection criteria are the characteristics used to select data for the entire report. You cannot enter characteristics as data selection criteria if they are already being used in the report rows or columns.
    (iv) Assigning the report to a report group: Once you have defined a report, you must assign it to a report group. A report group can contain one or more reports from the same library. However, reports that share the same data will select data more quickly and improve processing time.
    Hopw this helps you. Please let me know if you need anything more and assign points.
    Rgds
    Manish

  • Custom report templates with the help of BI Publisher.

    Hi All,
    I have created custom report templates with the help of BI Publisher it is working as we excepted.
    refered : https://blogs.oracle.com/kyle/tags/reports
    But our requirement want to change the color of heading and include filters in output report, It is possible, if yes pls share you comments?
    Best Regards
    Pradeep

    how silly of me!
    just restarting the tomcat sorted the problem!!!

  • IPad 1 Safari crashes frequently. I went to many Apple stores in different countries and each Apple staff member had their own different opinions with no help. I had upgraded my iOS to 5.1.1 and the Safari crashing started about one year

    IPad 1 Safari crashes frequently. I went to many Apple stores in different countries and each Apple staff member had their own different opinions with no help. I had upgraded my iOS to 5.1.1 and the Safari crashing started about one year after the upgrade and some Apple staff blame this- but this started one year later after the iOS upgrade. Recently at the Apple Store in Vancouver an Apple staff reset my computer (erased everything and sent to iCloud to reset the iPad) and I hoped this would fix the problem. IPad Safari still crashes. Short of booking an appointment for taking it for repair to Apple technicians which will cost me money can anyone help me to fix this Safari crashing.

    Hi,
    You might have a 3rd party plugin that isn't compatible with Safari 4.0.4. Go here for help...
    Safari add-ons can cause performance issues or other situations
    If you are using a USB hub, try disconnecting and restarting with just your keyboard and mouse connected.
    From the Safari Menu Bar, click Safari / Empty Cache. When you are done with that...
    from the Safari Menu Bar, click Safari / Reset Safari. Select the top 5 buttons and click Reset.
    Mac OS: Web Browser Quits Unexpectedly or Stops Responding
    Also, you could download and install the 10.5.8 combo update (PowerPC) available here.
    http://support.apple.com/downloads/MacOS_X_10_5_8_ComboUpdate
    It contains fixes that might help. Then repair disk permissions.
    Quit any open applications/programs. Launch Disk Utility. (Applications/Utilities) Select MacintoshHD in the panel on the left, select the FirstAid tab. Click: Repair Disk Permissions. When it's finished from the Menu Bar, Quit Disk Utility and restart your Mac. If you see a long list of "messages" in the permissions window, it's ok. That can be ignored. As long as you see, "Permissions Repair Complete" when it's finished... you're done. Quit Disk Utility and restart your Mac.
    Carolyn

  • How do I reset the password that allows me to download reader - I worked with chat help - we rest my password and I can get into my adobe account but when I try to download reader and work my way through the process when I get to the password it will not

    How do I reset the password that allows me to download reader.. I worked with chat help two hours last night - we have reset a password that lets me into my adobe account but in the download reader process that password will not work - where it says Adobe reader wants to change something and please type in password, just vibrates with the dots glowing purple but will not open…. what do I do to reset that password or get it to function. they would not assist me further they said its a free download and I would need to seek help from forums ( all this is new to me )
    so "forums" help…what do I do ?
    thank you
    PL

    patricia here again:
    I am the system administrator - personal computer
    I have been able with your lead to find the password I need , and to have install happen
    however - when I then go to the website to download the Pdf document I need I get a screen with the big red adobe icon that says to complete and down load this document I must launch adobe reader a dn sign the terms of agreement , close browser and reopen.
    but thatscren has no choice buttons whatsoever, I cannot find anywhere a adobe reader image to launch - been into launch pad , preferences etc.
    so now the loop is the pdf document and the adobe screen saying I must do terms of agreement
    like is this Kafka like or what ...
    suggestions?
    thanks
    P.

  • Replication of Berkeley DB Xml Edition with the help of JAVA API

    hi,
    i am trying to replicate berkeley DB to 2 other replicas.with the help of small program which along with its documentation(of chapter 3). And i'm using java API for the same(specifically replication framework program.)
    All necessary files are get created at host side like log files, dll files, db files. But at replica(client) side nothing get created. Host and clients are placed in the same network.
    But unfortunately its not working. don't know the reason. And its not giving any sort of error. And i dont know how to go ahead. Or is there any other way should i proceed with.
    So could you help me out to get rid of this problem.
    Thanks

    What compiler are you running?
    See this message and thread:
    Re: Problem after update to 2.3.8
    It may be necessary to apply the -fno-strict-aliasing flag to the Berkeley DB Java library as well.
    Regards,
    George

  • I had to restore all the files on my pc using carbonite.  I reinstalled iTunes and was able to find my music with the help of Apple support.  How do I find my podcasts?

    I had to restore all the files on my pc using carbonite.  I reinstalled iTunes and was able to find my music with the help of Apple support.  How do I find my podcasts?

    This helped, I restored them, but when I go to iTunes they are not there.    Is there another step?

  • My 3 year-old macbook pro is very slow. I have run disk utility and virus scan with no improvement. The "beach ball" will spin for minutes at a time when opening, closing or changing windows. Apple Store looked at it a few months ago with no help.

    my 3 year-old macbook pro is very slow. I have run disk utility and virus scan with no improvement. The "beach ball" will spin for minutes at a time when opening, closing or changing windows. Apple Store looked at it a few months ago with no help. What can I do?

    Under CPU: 3.5% user; 5% system; 91% idle; 441 threads; 90 processes.
    Under System: out of 2GB - 54.7MB free; 530MB wired; 603MB active; 862MB inactive; 1.95GB used.
    Is too much of the system memory tied up? If so, what can I do to free some up?

  • Java Script Error while deploying a Model with Value Help

    Hi,
    I am using EP 7.0 SP 10.
    I am trying to deploy a model which includes the Value Help for an Input field, and i am trying to deploy this model.
    The model compiles successfully, but gives a Java Script Error while deploying the model,
    ! Error on Page
    When Click on this java script error, it shows that ,
    Line:14985
    Char 1: Error
    object does n't support this property or method.
    code
    URL: <serverhost>/VCRes/WebContent/VisualComposer6.0/bin/223334.htm?24102006.1712.
    The Same model works in dev server, and it fails in the production server.
    Thanks and Regards,
    Sekar

    Hi jakob,
    Thankyou for your quick response.
    I did a basic model with the help of a documentation which i got from this forums.I created a iView and from there i used Bapi "BAPI_SALESORDER ".
    I created a Input Form and a outpot form (table view).I tested model and am able to get the output.but when i try to deploy it is giving me the error.
    And i think am not paring any formulas here.
    Please guide me.
    thanks and regrads
    Pradeep.B

Maybe you are looking for

  • Open same port for multiple servers.

    I am sorry if this sounds rudimentary, but I wanted to make sure. I want to open up port 80 to more than one web server. I already have port 80 open on one public IP address and have another one ready to use for another server. My assumption is that

  • ITunes application reopens after I quit

    I don't know if anybody else has had this problem but when I close my iTunes application, suddenly a few minutes later or so it reopens out of no where. It's becoming a real annoyance as of late. I am running the latest iTunes along with the latest M

  • Update UnderLine Data in SQL Server

    hi... i have "startBalance" Table that contain  startBalance Stock and price  my application calculate the cost price based on inventory average cost price , after 4 months of work the user figure out that the start price is wrong and want to update

  • How to Create link to trigger on composition/slideshow

    Hello. It's very simple the idea: I want to click on a link on the homepage, that directs to another page, and to a specific trigger on a composition on that page. FYI: i have a composition with 9 triggers; each trigger is a product. By default it op

  • Spam filters in DMZ and Multiple Gateways

    Hello All, I am trying to set up my mail environment for redundancy including dual ISP's. Currently using Exchange 2007 and moving to 2013 DAGS. I have Barracuda spam filters in my 2 DMZ's I am OK with Multiple MX Records. I hope to not have any sing