Help required for creating Row Renderer for JTable

Hi all,
I am trying to create customize row renderer for JTable.
My requirements are as below.
|-----------------|-------------------|------------------|------------------|-------|----------------|
|Category | Product ID |Description | Unit Price |Qty | Sub-Total |
|-----------------|-------------------|------------------|------------------|-------|----------------|
I have designed a combobox for category and product ID columns inside JTable. I want to put a listener on Category ID such that product IDs in selected categories will be visible in product ID drop down of selected row keeping other rows unchanged.
Column renderer is defining a class for entire column but by setting that im getting same values in all the rows for product IDs. And if I update values for one product ID dropdown, entire column data is changing.
Even im not able to put array of combobox for product ID column as number of rows are not fixed and increasing runtime.
Can anyone suggest me how can i customize Cells under particular column with JComboBox?
Regards,
Mahesh Kedari
Fidus Technologies Ltd.
Edited by: m1JustM1 on Feb 8, 2010 4:48 AM

Start by reading [this |http://java.sun.com/docs/books/tutorial/uiswing/components/table.html#editrender] tutorial. If you still have questions afterward, feel free to post an SSCCE .

Similar Messages

  • Urgent help: how to create data source for Weblogic RMI driver

    Hi,
    Please let me how to create data source for Weblogic RMI driver using Administrator
    console.
    I understand that the following steps are required:
    1.Create connection pool for the RMI driver by specfiying URL as
    jdbc:weblogic:rmi and Driver as weblogic.jdbc.rmi.Driver. Now
    comes the problem.. what do put in properties text area? I am
    talking about key/value pairs required?
    2. Having done step 1 ( which I was not able to do) , create a new DataSource
    mapping to the connection pool created from step 1.
    How to accomplish step 1 ? I want to finally connect to Oracle
    database. Please help me.
    pradeep bhat

    DataSource will internally do that for you (It will use RMI internaly) . You
    dont have to worry about the details of using RMI driver. Thats what is a
    DataSource is for.
    sree
    "pradeep bhat" <[email protected]> wrote in message
    news:[email protected]...
    Hi Sree,
    What u have written is abt configuting Datasource for type 2 and
    4 drivers.
    But I want to know how to create data source for RMI driver. If
    I map this datasource to connection pool that is created for
    type 2 or 4 drivers, i don't understand why RMI drivers are
    required in first place. If i do map the data source to connection pool
    created
    for type 2 or 4 drivers then where i
    would not have used the URL as jdbc:weblogic:rmi and Driver as
    weblogic.jdbc.rmi.Driver.
    Hope u will help me.
    pradeep bhat
    "Sree Bodapati" <[email protected]> wrote:
    Hi Pradeep
    To create a connection pool you have to use a database driver not RMI
    driver. So use a thin driver or the WebLogic jDriver for Oracle to setup
    your connection pool. Once the connection pool is created you can create
    a
    DataSource and use this datasource to connect to the database.
    The RMI driver can be used to get connections from the database via the
    connection pool and in that case you dont need a datasource. Recommended
    approach is to use a DataSource.
    hth
    sree
    "PRADEEP BHAT" <[email protected]> wrote in message
    news:[email protected]...
    Hi,
    Please let me how to create data source for Weblogic RMI driver using
    Administrator
    console.
    I understand that the following steps are required:
    1.Create connection pool for the RMI driver by specfiying URL as
    jdbc:weblogic:rmi and Driver as weblogic.jdbc.rmi.Driver. Now
    comes the problem.. what do put in properties text area? I am
    talking about key/value pairs required?
    2. Having done step 1 ( which I was not able to do) , create a new
    DataSource
    mapping to the connection pool created from step 1.
    How to accomplish step 1 ? I want to finally connect to Oracle
    database. Please help me.
    pradeep bhat

  • Urgent help: how to create data source for Weblogic T3 driver

    Hi,
    Please let me how to create data source for Weblogic T3 driver
    using Administrator console.
    I understand that the following steps are required:
    1.Create connection pool for the RMI driver by specfiying URL
    as jdbc:weblogic:rmi and Driver as weblogic.jdbc.rmi.Driver.
    Now comes the problem.. what do put in properties text area?
    I am talking about key/value pairs required?
    2. Having done step 1 ( which I was not able to do) , create a
    new DataSource mapping to the connection pool created from
    step 1.
    How to accomplish step 1 ? I want to finally connect to Oracle database. Please
    help me.
    pradeep bhat

    Hi,
    Please let me how to create data source for Weblogic T3 driver
    using Administrator console.
    I understand that the following steps are required:
    1.Create connection pool for the RMI driver by specfiying URL
    as jdbc:weblogic:rmi and Driver as weblogic.jdbc.rmi.Driver.
    Now comes the problem.. what do put in properties text area?
    I am talking about key/value pairs required?
    2. Having done step 1 ( which I was not able to do) , create a
    new DataSource mapping to the connection pool created from
    step 1.
    How to accomplish step 1 ? I want to finally connect to Oracle database. Please
    help me.
    pradeep bhat

  • URGENT HELP REQUIRED _ Creating Labels for Triangle

    Hi everyone... the code below is my application - Pythagoras Theorem.. or rather displaying it.. But i have not been able to get the Vertex of the triangle Labelled as A B C... I need to do that and change the Triangle Table data to A B C insted of Horizontal Vertical and Hypotenuise and as the triangle is stretched on screen A B And C keep moving as well ...
    Besides i need to Show this in the tabel
    - Values of A ^ 2 , B^2 and C ^2 as welll as a row showing A^2+B^2 = C^2
    the code is as follows..
    This is the main class called Geometry
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import java.text.NumberFormat;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.DefaultTableCellRenderer;
    import java.lang.*;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseMotionListener;
    import java.awt.FileDialog;
    import java.io.*;
    import java.awt.BorderLayout;
    import java.awt.Container;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseMotionListener;
    import javax.swing.JFrame;
    public class Geometry {
        CardLayout cards;
        JPanel panel;
        public Geometry() {
            cards = new CardLayout();
            panel = new JPanel(cards);
            addCards();
            JFrame f = new JFrame("Geometry");
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.setJMenuBar(getMenuBar());
            f.getContentPane().add(panel);
            f.setSize(500,500);
            f.setLocation(0,0);
            f.setVisible(true);
            f.addMouseMotionListener(
            new MouseMotionListener() { //anonymous inner class
                //handle mouse drag event
                public void mouseMoved(MouseEvent e) {
                   System.out.println("Mouse  " + e.getX() +","  + e.getY());
                public void mouseDragged(MouseEvent e) {
                    System.out.println("Draggg: x=" + e.getX() + "; y=" + e.getY());
            //            public void mouseMoved(MouseEvent me) {
            //                System.out.println("Moving: x=" + me.getX() + "; y=" + me.getY());
            //        panel.addMouseMotionListener(
            //        new MouseMotionListener() { //anonymous inner class
            //            //handle mouse drag event
            //           public void mouseDragged(MouseEvent me) {
            //               setTitle("Dragging: x=" + me.getX() + "; y=" + me.getY());
            //            public void mouseMoved(MouseEvent me) {
            //                setTitle("Moving: x=" + me.getX() + "; y=" + me.getY());
        private void addCards() {
            // card one
            TriangleModel tri = new TriangleModel(175,100,175,250,325,250);
            TriangleView view  = new TriangleView(tri);
            JPanel panelOne = new JPanel(new BorderLayout());
            panelOne.add(view.getUIPanel(), "North");
            panelOne.add(view);
            panelOne.add(view.getTablePanel(), "South");
            panelOne.setName("Pythagoras's Theorem");
            panel.add("Pythagoras's Theorem", panelOne);
                  view.addMouseMotionListener(
            new MouseMotionListener() { //anonymous inner class
                //handle mouse drag event
                 public void mouseMoved(MouseEvent e) {
                    System.out.println("Mouse at " + e.getX() +","  + e.getY());
               public void mouseDragged(MouseEvent e) {
                   System.out.println("Dragging: x=" + e.getX() + "; y=" + e.getY());
            // card two
            TestModel trin = new TestModel(175,100,175,250,325,250);
            TestView viewn  = new TestView(trin);
            JPanel panelTwo = new JPanel(new BorderLayout());
            panelTwo.add(viewn.getUIPanel(), "North");
          // panelTwo.setBackground(Color.blue);
            panelTwo.setName("Similar Triangles");
            panelTwo.add(viewn);
            panelTwo.add(viewn.getTablePanel(), "South");
                  viewn.addMouseMotionListener(
            new MouseMotionListener() { //anonymous inner class
                //handle mouse drag event
                 public void mouseMoved(MouseEvent e) {
                    System.out.println("Mouse at " + e.getX() +","  + e.getY());
               public void mouseDragged(MouseEvent e) {
                   System.out.println("Dragging: x=" + e.getX() + "; y=" + e.getY());
            panel.add("Similar Triangles", panelTwo);
            JPanel panelThree = new JPanel();
            panelThree.setBackground(Color.white);
            panelThree.setName("Circle Theorem1");
            panel.add("Circle Theorem1", panelThree);
        private JMenuBar getMenuBar() {
            JMenu File = new JMenu("File");
            JSeparator separator1 = new JSeparator();
            JMenuItem Open = new JMenuItem("Open");
    //         Open.addActionListener(new java.awt.event.ActionListener() {
    //            public void actionPerformed(java.awt.event.ActionEvent evt) {
    //                openActionPerformed(evt);
            JMenuItem Save = new JMenuItem("Save");
            JMenuItem Print = new JMenuItem("Print");
            JMenuItem Exit = new JMenuItem("Exit");
            Exit.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    ExitActionPerformed(evt);
            JMenu theorem = new JMenu("Theorem");
            ActionListener l = new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    JMenuItem item = (JMenuItem)e.getSource();
                    String name = item.getActionCommand();
                    cards.show(panel, name);
            Component[] c = panel.getComponents();
            for(int j = 0; j < panel.getComponentCount(); j++) {
                String name = c[j].getName();
                JMenuItem item = new JMenuItem(name);
                item.setActionCommand(name);
                item.addActionListener(l);
                theorem.add(item);
            JMenuBar menuBar = new JMenuBar();
            JMenuBar menuBar1 = new JMenuBar();
            menuBar.add(File);
            File.add(Open);
            File.add(separator1);
            File.add(Save);
            File.add(Print);       
            File.add(Exit);
            menuBar.add(theorem);
            return menuBar;
    //    private void openActionPerformed(java.awt.event.ActionEvent evt) {
    //        FileDialog fileDialog = new FileDialog(this, "Open...", FileDialog.LOAD);
    //        fileDialog.show();
    //        if (fileDialog.getFile() == null)
    //            return;
    //        fileName = fileDialog.getDirectory() + File.separator + fileDialog.getFile();
    //        FileInputStream fis = null;
    //        String str = null;
    //        try {
    //            fis = new FileInputStream(fileName);
    //            int size = fis.available();
    //            byte[] bytes = new byte [size];
    //            fis.read(bytes);
    //            str = new String(bytes);
    //        } catch (IOException e) {
    //        } finally {
    //            try {
    //                fis.close();
    //            } catch (IOException e2) {
    //        if (str != null)
    //            textBox.setText(str);
        private void ExitActionPerformed(java.awt.event.ActionEvent evt) {
            // TODO add your handling code here:
            System.exit(0);
        public static void main(String[] args) {
            new Geometry();
    }import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import java.text.NumberFormat;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.DefaultTableCellRenderer;
    public class Triangle
    public Triangle()
    TriangleModel tri = new TriangleModel(175,100,175,250,325,250);
    TriangleView view = new TriangleView(tri);
    JFrame f = new JFrame();
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.getContentPane().add(view.getUIPanel(), "North");
    f.getContentPane().add(view);
    f.getContentPane().add(view.getTablePanel(), "South");
    f.setSize(500,500);
    f.setLocation(200,200);
    f.setVisible(true);
    import java.awt.Point;
    import java.awt.Rectangle;
    import java.awt.event.MouseEvent;
    import javax.swing.JTable;
    import javax.swing.event.MouseInputAdapter;
    * TriangleControl.java
    * Created on 06 February 2005, 01:19
    * @author  Rahindra Naidoo
    public class TriangleControl extends MouseInputAdapter
        TriangleView view;
        TriangleModel model;
        Point start;
        boolean dragging, altering;
        Rectangle lineLens;            // used for line selection
        public TriangleControl(TriangleView tv)
            view = tv;
            model = view.getModel();
            dragging = altering = false;
            lineLens = new Rectangle(0, 0, 6, 6);
        public void mousePressed(MouseEvent e)
            Point p = e.getPoint();
            lineLens.setLocation(p.x - 3, p.y - 3);
            // are we over a line
            if(model.isLineSelected(lineLens))
                start = p;
                altering = true;
            // or are we within the triangle
            else if(model.contains(p))
                start = p;
                dragging = true;
        public void mouseReleased(MouseEvent e)
            altering = false;
            dragging = false;
            view.getCentroidLabel().setText("centroid location: " +
                                             model.findCentroid());
            view.repaint();  // for the construction lines
        public void mouseDragged(MouseEvent e)
            Point p = e.getPoint();
            if(altering)
                int x = p.x - start.x;
                int y = p.y - start.y;
                model.moveSide(x, y, p);
                updateTable();
                view.repaint();
                start = p;
            else if(dragging)
                int x = p.x - start.x;
                int y = p.y - start.y;
                model.translate(x, y);
                view.repaint();
                start = p;
        private void updateTable()
            String[] lengths = model.getLengths();
            String[] squares = model.getSquares();
            String[] angles  = model.getAngles();
            JTable table = view.getTable();
            for(int j = 0; j < angles.length; j++)
                table.setValueAt(lengths[j], 1, j + 1);
                table.setValueAt(squares[j], 2, j + 1);
                table.setValueAt(angles[j],  3, j + 1);
            view.getCentroidLabel().setText("centroid location: " +
                                             model.findCentroid());
    * TriangleModel.java
    * Created on 06 February 2005, 01:18
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import java.text.NumberFormat;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.DefaultTableCellRenderer;
    * @author  Rahindra Naidoo
    public class TriangleModel                      //  (x1, y1)
    {                                         //      |\
        static final int SIDES = 3;         //      | \
        private int cx, cy;                  //      |  \
        Polygon triangle;                     //      |_ _\ (x3, y3)
        int selectedIndex;                   //  (x2, y2)
        NumberFormat nf;
        Line2D[] medians;
        Point2D centroid;
        public TriangleModel(int x1, int y1, int x2, int y2, int x3, int y3)
            int[] x = new int[] { x1, x2, x3 };
            int[] y = new int[] { y1, y2, y3 };
            triangle = new Polygon(x, y, SIDES);
            nf = NumberFormat.getNumberInstance();
            nf.setMaximumFractionDigits(1);
        public boolean contains(Point p)
            // Polygon.contains doesn't work well enough
            return (new Area(triangle)).contains(p);
        public boolean isLineSelected(Rectangle r)
            Line2D line = new Line2D.Double();
            for(int j = 0; j < SIDES; j++)
                int[] x = triangle.xpoints;
                int[] y = triangle.ypoints;
                int x1 = x[j];
                int y1 = y[j];
                int x2 = x[(j + 1) % SIDES];
                int y2 = y[(j + 1) % SIDES];
                line.setLine(x1, y1, x2, y2);
                if(line.intersects(r))
                    selectedIndex = j;
                    return true;
            selectedIndex = -1;
            return false;
         * Only works for right triangle with right angle at (x2, y2)
        public void moveSide(int dx, int dy, Point p)
            int[] x = triangle.xpoints;
            int[] y = triangle.ypoints;
            switch(selectedIndex)
                case 0:
                    x[0] += dx;
                    x[1] += dx;
                    break;
                case 1:
                    y[1] += dy;
                    y[2] += dy;
                    break;
                case 2:
                    double rise  = y[2] - y[0];
                    double run   = x[2] - x[0];
                    double slope = rise/run;
                    // rise / run == (y[2] - p.y) / (x[2] - p.x)
                    x[2] = p.x + (int)((y[2] - p.y) / slope);
                    // rise / run == (p.y - y[0]) / (p.x - x[0])
                    y[0] = p.y - (int)((p.x - x[0]) * slope);
        public void translate(int dx, int dy)
            triangle.translate(dx, dy);
        public Polygon getTriangle()
            return triangle;
        public String findCentroid()
            int[] x = triangle.xpoints;
            int[] y = triangle.ypoints;
            // construct the medians defined as the line from
            // any vertex to the midpoint of the opposite line
            medians = new Line2D[x.length];
            for(int j = 0; j < x.length; j++)
                int next = (j + 1) % x.length;
                int last = (j + 2) % x.length;
                Point2D vertex = new Point2D.Double(x[j], y[j]);
                // get midpoint of line opposite vertex
                double dx = ((double)x[last] - x[next])/2;
                double dy = ((double)y[last] - y[next])/2;
                Point2D oppLineCenter = new Point2D.Double(x[next] + dx,
                                                           y[next] + dy);
                medians[j] = new Line2D.Double(vertex, oppLineCenter);
            // centroid is located on any median 2/3 the way from the
            // vertex (P1) to the midpoint (P2) on the opposite side
            double[] lengths = getSideLengths();
            double dx = (medians[0].getX2() - medians[0].getX1())*2/3;
            double dy = (medians[0].getY2() - medians[0].getY1())*2/3;
            double px = medians[0].getX1() + dx;
            double py = medians[0].getY1() + dy;
            //System.out.println("px = " + nf.format(px) +
            //                 "\tpy = " + nf.format(py));
            centroid = new Point2D.Double(px, py);
            return "(" + nf.format(px) + ",  " + nf.format(py) + ")";
        public String[] getAngles()
            double[] lengths = getSideLengths();
            String[] vertices = new String[lengths.length];
            for(int j = 0; j < lengths.length; j++)
                int opp  = (j + 1) % lengths.length;
                int last = (j + 2) % lengths.length;
                double top = lengths[j] * lengths[j] +
                             lengths[last] * lengths[last] -
                             lengths[opp] * lengths[opp];
                double divisor = 2 * lengths[j] * lengths[last];
                double vertex = Math.acos(top / divisor);
                vertices[j] = nf.format(Math.toDegrees(vertex));
            return vertices;
        public String[] getLengths()
            double[] lengths = getSideLengths();
            String[] lengthStrs = new String[lengths.length];
            for(int j = 0; j < lengthStrs.length; j++)
                lengthStrs[j] = nf.format(lengths[j]);
            return lengthStrs;
        public String[] getSquares()
            double[] lengths = getSideLengths();
            String[] squareStrs = new String[lengths.length];
            for(int j = 0; j < squareStrs.length; j++)
                squareStrs[j] = nf.format(lengths[j] * lengths[j]);
            return squareStrs;
        private double[] getSideLengths()
            int[] x = triangle.xpoints;
            int[] y = triangle.ypoints;
            double[] lengths = new double[SIDES];
            for(int j = 0; j < SIDES; j++)
                int next = (j + 1) % SIDES;
                lengths[j] = Point.distance(x[j], y[j], x[next], y[next]);
            return lengths;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import java.text.NumberFormat;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.DefaultTableCellRenderer;
    * TriangleView.java
    * Created on 06 February 2005, 01:21
    public class TriangleView extends JPanel
        private TriangleModel model;
        private Polygon triangle;
        private JTable table;
        private JLabel centroidLabel;
        private boolean showConstruction;
        TriangleControl control;
        public TriangleView(TriangleModel model)
            this.model = model;
            triangle = model.getTriangle();
            showConstruction = false;
            control = new TriangleControl(this);
            addMouseListener(control);
            addMouseMotionListener(control);
        public void paintComponent(Graphics g)
            super.paintComponent(g);
            Graphics2D g2 = (Graphics2D)g;
            g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                                RenderingHints.VALUE_ANTIALIAS_ON);
            g2.draw(triangle);
            if(model.medians == null)
                centroidLabel.setText("centroid location: " + model.findCentroid());
            // draw medians and centroid point
            if(showConstruction && !control.dragging)
                g2.setPaint(Color.red);
                for(int j = 0; j < 3; j++)
                    g2.draw(model.medians[j]);
                g2.setPaint(Color.blue);
                g2.fill(new Ellipse2D.Double(model.centroid.getX() - 2,
                                             model.centroid.getY() - 2, 4, 4));
        public TriangleModel getModel()
            return model;
        public JTable getTable()
            return table;
        public JLabel getCentroidLabel()
            return centroidLabel;
        public JPanel getUIPanel()
            JCheckBox showCon = new JCheckBox("show construction");
            showCon.addActionListener(new ActionListener()
                public void actionPerformed(ActionEvent e)
                    boolean state = ((JCheckBox)e.getSource()).isSelected();
                    showConstruction = state;
                    repaint();
            JPanel panel = new JPanel();
            panel.add(showCon);
            return panel;
        public JPanel getTablePanel()
            String[] headers = new String[] { "", "", "", "" };
            // row and column data labels
            String[] rowHeaders = {
                "sides", "lengths", "squares", "angles", "degrees"
            String[] sidesRow = { "vertical", "horizontal", "hypotenuse" };
            String[] anglesRow = { "hyp to ver", "ver to hor", "hor to hyp" };
            // collect data from model
            String[] angles  = model.getAngles();
            String[] lengths = model.getLengths();
            String[] squares = model.getSquares();
            String[][] allData = { sidesRow, lengths, squares, anglesRow, angles };
            int rows = 5;
            int cols = 4;
            Object[][] data = new Object[rows][cols];
            for(int row = 0; row < rows; row++)
                data[row][0] = rowHeaders[row];
                for(int col = 1; col < cols; col++)
                    data[row][col] = allData[row][col - 1];
            table = new JTable(data, headers)
                public boolean isCellEditable(int row, int col)
                    return false;
            DefaultTableCellRenderer renderer =
                (DefaultTableCellRenderer)table.getDefaultRenderer(String.class);
            renderer.setHorizontalAlignment(JLabel.CENTER);
            centroidLabel = new JLabel("centroid location:  ", JLabel.CENTER);
            Dimension d = centroidLabel.getPreferredSize();
            d.height = table.getRowHeight();
            centroidLabel.setPreferredSize(d);
            JPanel panel = new JPanel(new BorderLayout());
            panel.setBorder(BorderFactory.createTitledBorder("triangle data"));
            panel.add(table);
            panel.add(centroidLabel, "South");
            return panel;
    }PLEASE HELP ---- Also does any one know how to draw a Triangle on a screen which can be controlled by a JSlider such that as and whenits incremented the triangle increase and vice versa... I need to prove Similarity in triangles using A Jslider that controls one triangle while the other triangle is Still on screen

    Sharan,
    The code given was part of the assignment and you are supposed to make the changes for your part right?
    Please give details of what you have done so far and not expect us to do your assignment for you. We'll be glad to help answer questions and point to the right direction, but giving us the entire assignment and saying, very nicely I might add, "Please do it for me." Just seems to make a mockery of the hours, days, and years that many of us has spent earning our degrees and learning our skills.
    Work on it and ask specific questions with examples of what you have done and you'll get a much better response.

  • Urgent help required - linked subreport keeps asking for parameter value

    Greetings,
    I have developed a report in the Crystal Reports bundled with Visual Studio 2005. The data is obtained from a stored procedure. One of the fields in the result set is named "Id".
    I have embedded a subreport in the details row of the main report. The subreport also gets its information from a stored procedure. This stored procedure has one parameter named "OpportunityId". This field is linked to the field named "Id" above. the subreport has been set to supress blank subreports.
    In the development environment and running the executable of the application on the development machine the report works perfectly. The subreport displays as it should and all is well.
    When I deploy the report onto user machines where they have the crystal runtime installed, the report keeps asking for a parameter value for the subreport.
    I cannot get this to stop happening.
    This report is urgently required. PLEASE could someone help me out here.
    I am at my wits end.
    I have attached a zipe file containing the following:
    - the two stored procedure
    - the rpt file
    - a sample report
    - a screen showing the report having just been generated
    Thanks in advance,
    Robert Lancaster

    <p>Hi Robert,</p><p>I see your report template and stored procedures. All seems to be ok. <br /></p><p>The most important is to assign the report parameters for all linked subreports (only one in your case).</p><p> </p><p>Try this (in C#, in VB.NET the code are very similary): </p><p>ReportDocument report = new ReportDocument(@"TopFortyReport.rpt");</p><p>AssignParameters(report, paramCollection);</p><p>// and now assign parameters to all linked subreports </p><p>foreach( CrystalDecisions.CrystalReports.Engine.Section section in report.ReportDefinition.Sections)</p><p>{</p><p>    foreach (CrystalDecisions.CrystalReports.Engine.ReportObject reportObject in section.ReportObjects)<br />    {</p><p>        if (reportObject.Kind == ReportObjectKind.SubreportObject) </p><p>        {</p><p>            SubreportObject subReport = (SubreportObject)reportObject;</p><p>            ReportDocument subDocument = subReport.OpenSubreport(subReport.SubreportName);                                               AssignParameters(subDocument, paramsCollection);</p><p>        }</p><p>} </p><p> </p><p>void AssignParameters(ReportDocument report, object[] paramsCollection)</p><p>{</p><p>    int nParams = paramsCollection.Length;</p><p>    for (int iParamIndex = 0; iParamIndex < nParams; iParamIndex++)</p><p>    {</p><p>        if (report.DataDefinition.ParameterFields[iParamIndex].IsLinked())</p><p>            continue;</p><p>        report.SetParameterValue(iParamIndex, paramsCollection[iParamIndex]);</p><p>    }</p><p>}</p><p> </p><p> </p>

  • PLEASE HELP: PDF Forms, creating average formula for text?

    Hello,
    I really hope somone can help. I cannot find any answers to my questions on the internet, google etc.
    First time using Acrobat. Im pretty quick learning on compters however the formulas my boss has asked me to do I have no idea if they are possible.
    We have a report form for exams and each section I need to calculate the average mark for that section.
    There are 3 questions for the first section. There are dropdowns for distinction, Merit, Pass and Below pass to select for each questions.
    Please see picture attached to show you what I mean.
    I want to be able to calculate the most selected/average dropdowns selected and not count the N/A's into award1 field?
    The fields must be text and cannot be numbers.
    so for example, track 1 got a distinction, track 2 got a Merit, Track 3 got a distiction. all other fields left n/a
    is there anyway to do this also is there any way to exactly the same as above as check boxes? - please see picture attached
    I appriciate any help. I am working on a mac
    Thanks
    Lauren

    Thank you so much reply
    Yes on the dropdowns the distincion, merit, pass or below pass values are in the correct areas ready for selection. For example on the distiction row you can only drop down for distinction and so on for Merit row dropdowns etc
    Check box is the way I rather do it as its quicker, however I created the dropdown option just incase check boxes average was not possible
    On the check boxes if i select merit for rtack 1 I would just tick the box and leave the the rest of the colum blank with no ticks. So just by seeing the tick I know its in the merit section for Track 1. However I donts know if I can do an average formula for with check boxes.
    If I check boxed/slected distinction for track 1, distnction for track 2 and merit for track 3 (obvisley any box could be ticked depeneding how the exam went so need then all in the script). I would like it to then calculate the avergae mark which would be distinction in the award1 field. While the none ticked boxes or N/A fields not affecting the average.
    This is just the start to a huge form Im doing Im dreading the rest of formulas I have to do lol
    sorry if im confusing you

  • Help me in creating a Trigger for Insert and Update Options

    Hi
    Please help me in creating a Trigger .
    My requirement is that after insert or update on a Table , i want to fire an event .
    I have started this way ,but doesn't know how to fully implement this .
    say i have a dept table
    CREATE TRIGGER DepartmentTrigger
    AFTER INSERT ON Dept
    BEGIN
    INSERT INTO mytable VALUES("123","Kiran");
    END DepartmentTrigger;
    Please tell me how can i put the Update option also .
    Thanks in advance .

    Please tell me how can i put the Update option also .Add "Or Update". ;-)
    Here are a few suggestions, but you definitely need to refer to the manual page that the previous poster suggested.
    CREATE OR REPLACE TRIGGER DepartmentTrigger
    AFTER INSERT Or Update ON Dept
    BEGIN
    INSERT INTO mytable VALUES(:new.Dept,'DEPT ADDED OR CHANGED');
    END DepartmentTrigger;
    The "Or Replace" means you can replace the trigger while you're developing without having to type in a drop statement every time. Just change and rerun your script, over and over until you get it right.
    Adding "Or Update" or "Or Delete" makes the trigger fire for those events too. Note, you may want seperate triggers in different scripts and with different names for each event. You have to decide if your design really does the same thing whether it's an insert or an update.
    :new.Dept is how you would refer to the changed vale of the Dept column (:old.Dept is the prior value). I changed the double quotes on the string in the VALUES clause to single quotes.
    Andy

  • Help needed for creating 1 invoice for 2 different material types.

    Dear, Gurus
    I really need help here I have spent 3 days cracking my head trying to solve the problem. Problem is client was creating invoice with reference to order and while invoice was being made it would cause an invoice split. The materials involved are Trading Good and Service Material. They would like only 1 invoice. Note nothing was different except material group and item cat. of the material. payment terms billing dates partners everything is same.
    Current item config for Trading Good material is ZMPI-project item cat.
    Copying requirements   023  Item ord.ref. w/o AZ        Billing quantity     A
    Data VBRK/VBRP         000                                           Pos./neg. quantity   +
                                                                                    Pricing type         K
                                                                                    PricingExchRate type
                                                                                    Price source
    Current item config for service Material is TAD-Service
    Copying requirements   002  Item/order-related          Billing quantity     A
    Data VBRK/VBRP         001  Inv.split (sample)            Pos./neg. quantity   +
                                                                                    Pricing type         G
                                                                                    PricingExchRate type
                                                                                    Price source
    I was told to change Data VBRK/VBRP to 003 One Invoice which I did in both of these item cat. and yes they worked perfectly but at time of creating the invoice for service material the qty that showed was 11. Note: In sales order it is 1 qty. So I went back into the config of item cat TAD and changed copying requirement to 023 instead of 002 but nothing changed. Seems a qty of 10 is referencing something else which I have no idea what or where it is picking this up from. Just to see or test things I went into the sales order and tried changing the service material qty then a weird popup appears and says service order 12344456 has been blocked. (Seriously I have no idea why this would happen or should be existing at all.) Even if for some reason it is being referenced the service order that is existing is qty 1.
    I really really do need help and if someone can help me that would be god sent.
    Regards, Ali

    You did not mention what value is maintained in the field billing quantity in the copy control->Item settings. Check for the service item, what value is assigned. Put value A and re-test.
    Note that whenever you change any settings in configuration side, you need to create a new documents to test the results of the settings. You should not use the existing documents.
    When you say the document is blocked, then check the status of the sales order to find the reason for blocking (like credit block, approval etc)..
    Regards,

  • Align for multi-header renderer in JTable

    Hi,
    I have a question about multi-header renderer in JTable. Here is the problem, please help me:
    I used the MultiLineHeaderRenderer class example from
    http://www2.gol.com/users/tame/swing/examples/JTableExamples1.html
    This example makes the header to be centered (as setHorizontalAlignment(JLabel.CENTER)). Also, it is for the all the headers with 2 lines (i don't know how to describe it).
    In my project, I have just a few header with 2 lines, most of them are one line. By using this example renderer class, I have the header height is bigger, of course because of some 2 lines headers, and one line header is automatically set as the TOP. What I want is to make one line header to be set as the BOTTOM just like in EXCEL.
    Please help me, sorry for my technical explaination (poor huh?)
    Thanks in advance.

    If I understand correctly just put a space then a new line before your text for your cell that you want the text at the bottom.
    like this: " \nBottom Text"
    You'll need the leading space because of how StringTokenizer works.

  • Need help for creating sharepoint sites for both internet and intranet users

    We would like to know what is the best approach to create SharePoint sites for our customers(internet users) and internal employees(intranet users) on the same SharePoint server. Here is the scenario:
    1) A customer posts a document from internet.
    2) This triggers a approval workflow that can only be accessed and executed in the intranet environment. This approval process requires approval's possible modifications to the customer's document.
    3) We would like the customer not to able to check the approval state and the modified document until the document is fully approved and finalized.
    We are pondering if we need to create two sites, one site for customer and the other site is for internal approvers. Or one site is possible. It also looks like we need to somehow copy customer's original document to intranet site and triggers the workflow.
    Any design ideas are helpful. Thank you advance!

    Hi Jason,
    Though it is perfectly possible to have both intranet and internet on the server, it is not a recommended practice. Having both on the same server would have multiple problems, instead me detailing it out, here is a forum thread on which Trevor had given
    enough reasons -
    http://social.msdn.microsoft.com/Forums/sharepoint/en-US/9b550c33-6f5f-4cd9-8762-8ff389b747d9/sharepoint-2013-one-farm-to-host-intranet-extranet-internet?forum=sharepointadmin
    If you have valid reason to go with single server, then you can also explore email enabled lists as one option and another one would be using custom sharepoint designer workflow.
    you can also try using event receivers to send documents to intranet site from internet site, process everything and update the document in the internet site.
    Hope this helps!
    Ram - SharePoint Architect
    Blog - SharePointDeveloper.in
    Please vote or mark your question answered, if the reply helps you

  • How to create validation only for created rows in tabular form

    Hi all,
    I have a simple question. Is it possible to create a validation for tabular form which will be fired only for created?
    There is a possibility in APEX 4.1 to choose two types of "*Execution scope*" first is "*For created and Modified Rows*" and second is "*All Submitted Rows*".
    Thanks in advance!
    Regards,
    Jiri

    Hello Jiri,
    >> Is it possible to create a validation for tabular form which will be fired only for created?
    You can still use the scope of For created and Modified Rows and use a PL/SQL Expression condition of:
    :APEX$ROW_STATUS = 'C'You also need to change Execute Condition to For Each Row .
    Hope it helps,
    Arie.
    Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.

  • Hi..I have a requirement to create An opportunity for the multiple campains

    I have a requirement to create an single opportunity for the multiple campaingns..how can we do this..??
    regards
    B.Mani

    Hi Nizam,
                       You can check the component 'BT111H_OPPT' view 'BT111H_OPPT/ItemsList ', context node 'BTADMINI' has onclick action implemented for item list in opporrtunity transaction. In the same way you can do the coding.
    Hope this helps.
    Regards,
    Ruby.

  • [ADF Help] How to create a view for multiple tables

    Hi,
    I am using Jdeveloper 11G and ADF framework, and trying to create a view to update multiple tables.
    ex:
    Table A has these fields: ID, Name
    Table B has these fields: ID, Address
    A.ID and B.ID are primary keys.
    B.ID has FK relationship with A.ID
    (basically, these tables have one-to-one relation)
    I want to create a view object, which contains these fields: B.ID (or A.ID), A.Name, B.Address.
    So I can execute C,R,U,D for both tables.
    I create these tables in DB, and create entity objects for these tables.
    So there are 2 entity objects and 1 association.
    Then I create a view object based on B and add fields of A into the view:
    If the association is not a "Composition Association",
    when I run the model ("Oracle Business Component Browser") and try to insert new data, fields of A can't edit.
    If the association is a "Composition Association", and click the insert button, I will get
    "oracle.jbo.InvalidOwnerException: JBO-25030: Failed to find or invalidate owning entity"
    If I create a view object based on A and add filed of B into the view:
    When I run the model and try to insert new data, fields of B can't edit, no matter the association is or is not a composition association.
    So... how can I create a view for multiple tables correctly?
    Thanks for any advices!
    Here are some pictures about my problem, if there is any unclear point, please let me know.
    http://leonjava.blogspot.com/2009_10_01_archive.html
    (A is Prod, B is CpuSocket)
    Edited by: user8093176 on Oct 25, 2009 12:29 AM

    Hi Branislav,
    Thanks, but the result is same ....
    In the step 2 of creating view object, I can select entity objects to be added in to the view.
    If I select A first, and then select B (the "Source Usage" of B is A), then finishing the wizards.
    When I try to create a new record in the view, I can't edit any properties of B (those files are disabled).
    If I select B first, and then select A in crating view object, the result is similar ...
    Thanks for any further suggestion.
    Leon

  • Help required in reading freight price for PO item. See below code.

    H All,
    I have a requirement to read frieght cost for each PO item.
    Please see the below code and let me know is this approach is correct or not.
    * Fetch PO header details for selected criteria
      SELECT ebeln                         "Purchasing document
             bstyp
             bsart
             loekz
             lifnr                         "Vendor
             ekgrp                         "Purchasing group
             bedat                         "Document date
             knumv
        INTO TABLE t_ekko
        FROM ekko
       WHERE ebeln IN s_ebeln
         AND lifnr IN s_lifnr
         AND ekgrp IN s_ekgrp
         AND bedat IN s_bedat.
      IF sy-subrc EQ 0.
        DELETE t_ekko
         WHERE ( bstyp NE c_bstyp_f
           AND bsart NE c_bsart_nb
           AND loekz NE space ).
        SELECT knumv
               kposn
               kdatu
               kbetr
               kwert
               lifnr
          INTO TABLE t_konv
          FROM konv
           FOR ALL ENTRIES IN t_ekko
         WHERE knumv EQ t_ekko-knumv
           AND lifnr EQ t_ekko-lifnr
           AND kdatu EQ t_ekko-bedat
           AND kappl EQ c_kappl_m
           AND kschl EQ c_kschl_frc1.
    *  Fetch PO item details for the retrieved purchase orders
        SELECT ebeln                       "Purchasing document
               ebelp                       "PO item
               txz01                       "Short text
               matnr                       "Material
               matkl                       "Material group
               menge                       "PO quantity
               meins                       "UOM
               netpr                       "Net price
               netwr                       "Net value
         INTO TABLE t_ekpo
         FROM ekpo
          FOR ALL ENTRIES IN t_ekko
        WHERE ebeln EQ t_ekko-ebeln
          AND matnr IN s_matnr
          AND loekz EQ space
          AND matkl IN s_matkl.
    LOOP AT t_ekpo INTO fs_ekpo.
    * Read header details from EKKO for each PO item
        READ TABLE t_ekko
              INTO fs_ekko
              WITH KEY ebeln = fs_ekpo-ebeln.
        IF sy-subrc EQ 0.
          MOVE:
            fs_ekpo-ebeln TO fs_poitems-ebeln,
            fs_ekpo-ebelp TO fs_poitems-ebelp,
            fs_ekko-lifnr TO fs_poitems-lifnr,
            fs_ekko-ekgrp TO fs_poitems-ekgrp,
            fs_ekko-bedat TO fs_poitems-bedat,
            fs_ekpo-txz01 TO fs_poitems-txz01,
            fs_ekpo-matnr TO fs_poitems-matnr,
            fs_ekpo-menge TO fs_poitems-menge,
            fs_ekpo-meins TO fs_poitems-meins,
            fs_ekpo-netpr TO fs_poitems-netpr,
            fs_ekpo-netwr TO fs_poitems-netwr.
    * Read table KONV for fetching fieght charge
          READ TABLE t_konv
                INTO fs_konv
                WITH KEY  kposn = fs_poitems-ebelp
                          kdatu = fs_poitems-bedat
                          lifnr = fs_poitems-lifnr.
          IF sy-subrc EQ 0.
            MOVE:
              fs_konv-kwert TO fs_poitems-fri_val.
          ENDIF.                           " if sy-subrc eq 0.
    Please suggest me.
    Thanks,
    Jwala
    Edited by: Rob Burbank on Mar 12, 2009 12:09 PM
    Please use code tags

    Hi,
    I believe the approach is good, I would have done similar.
    Regards,
    Gilberto Li
    Edited by: Gilberto Li on Mar 12, 2009 5:13 PM

  • Please help me to create .exe file for my VI.. thanks in million

    Dear all,
    The software I have is LV6.1 full version, so I cant make .exe file.
    Can someone help me to crate .exe file for the attach library thanks.
    I need it for my presentation and the skol PC dont have LV.
    if the file is big, pls send to [email protected]
    thanks in million.
    maymaythar
    When you feel sad, laugh
    Attachments:
    voltage regulator analysis.llb ‏687 KB

    As has been mentioned, you need LabVIEW professional or higher. (If you only have base or full, you need to buy the application builder extra).
    Building an application is as easy as selecting "tools...built application or shared library", and specify the desired source VIs, built settings and installer settings.
    All diagrams and unneeded front panels are removed. The process is thus irreversible and you cannot recreate the original VIs from the application.
    LabVIEW Champion . Do more with less code and in less time .

Maybe you are looking for

  • ITunes Refuses to Add Certain Songs

    I've been reluctantly using iTunes ever since I got an iPod and have been having a number of problems. The most recent is that iTunes will simply refuse to add certain songs. My entire 35 gig library is unprotected MP3's and in this case, I have a fo

  • DivElement columnWidth

    Hi, I have an application where I would like to create a TextFlow with a heading and body text such as: Heading Title Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras posuere posuere sem... And I would like the body text to appear in mul

  • Merge jpeg into pdf problems

    I bought a new Nikon S9700 Coolpix and took 150 jpegs about 500kb each of istoric documents. Tried to merge them to a pdf for transcription with my Adobe Acrobat Pro 9 and it "stops working" when it tries to open the first image file. I tested older

  • Material master for job work material

    Hi all!   We are doing only job work for our customers and the products are not regular one . Its a one time job work.. i.e each time different material will come.. So each time i cant create a material master since the frequency is high That is we r

  • Visited Links

    I am working on a JSF/JSP website. Its purpose is to search through our pdf files on a server and, like google, display them on the page according to relevance. When you click on the link it opens the PDF in another window. My problem is the link doe