Referencing custom filled column (labelFunction) in datagrid

I got a column in a datagrid which is filled with data using some calculations done in a labelFunction.
now i got a second column, which need the data of the previous mentioned column.
normally you would type:  item.Data or something, but that does not work for the calculated field.
how would i reference the first mentioned column in the labelFunction of the second?
thnx

The cheap way is to reference the the other column's labelFunction and call
it again.  It means that the labelFunction will be called twice per row.
You can get to the columns via DataGrid(owner).columns[]
Another possibility is to add the labelFunction to the data objects or a
subclass of the data objects.

Similar Messages

  • Formatting a column in a datagrid

    If I want to format some data in a column of a datagrid is
    there a preferred way of doing that? I have used both an
    itemRenderer and a labelFunction
    Is there a preference to one or the other?

    lableFunction can be used when the tweaking required is very
    trivial and you want to modify some text getting displayed.
    (custom) itemRenderers can be used when we want to display
    something complex within a cell like few controls, icons, labels,
    links etc.

  • WebService get list 750 records with 8 columns in mx:DataGrid atleast 2 minutes

    I am using WebService (ASP.NET) to get a list of customers (around 750) records with 8 columns using mx:DataGrid. It takes to list data in the mx grid atleast 2 minutes from offline development data server[SQL SERVER 2005]. It could be better if the list populate the datagrid with-in 1 minute. I didn't find how to resolve the problem. My WebService returns the ArrayCollection within 1 minute.
    Any hints would appreciate!
    T. Ghosh

    It doesn’t matter how many records, what matters is how many attributes and sub-objects.  One customer returned 100 records, each with a transaction history of some 10,000 transactions, although the transactions were not displayed in the datagrid (it would be later in the detail view).  Then the app was configured to convert the records to typed objects.  As one would expect, it took forever.  You might have to create a custom converter or just use the SOAP/XML.

  • When labelFunction for datagrid is called?

    I have a datagrid with three columns, and there is a
    labelFunction for one of the columns.
    I add a breakpoint in side of the labelFunction, I found that
    the labelFunction is called 4 times.
    when labelFunction for datagrid column is called? why there
    is so many calls of labelFunction
    PS:
    I set data provider for datagrid in creationComplete event of
    the datagrid, and the data provider just contains one item.

    labelFunction is called for every row/item, and for each
    column that has the labelFunction specified.
    Sometimes I have found the label function is called with a
    null item. I am in the habit of checking for null in all
    labelFunctions.
    Tracy

  • Tab between custom meta columns in the project panel

    If you've got a custom meta column in the project panel and you use are editing the previous column and then use the keyboard tab key to move to the next column (the custom meta field), that column is selected but not you can't edit it with out clicking in it with the mouse. This is not the case with built in meta columns such as the "comment" field.
    Does anyone know of any way to tab into a custom meta field and then have a further keyboard shortcut that puts the field into edit mode?

    Ok, found the answer already. Tab and then tab a second time.
    Obviously this seems wrong and would be better if the first tab allowed you to edit immediately.
    UPDATE: Spoke too soon. This is definitely a buggy mess. Sometime tabbing into a custom field makes it editable immediately. Other times, a second tab makes the field editable, sometime the second tab just moves you to the next field. And there seems to be no pattern, I can tab and shift-tab back and forth between custom fields and the behave seems to change at random. I'll log it as another custom meta bug!

  • F2 key not working with custom JTable Column

    I have a custom JTable Column (which is a JPanel with a JTextfield and JButton). Everything works as expected, except when the user presses "F2" to start editing the custom column cell. When the user presses F2, the custom cell goes into editing mode, but I am unable to type anything in it.
    Below is the SSCCE.
    Steps to Reproduce problem:
    1) Run the Program
    2) Select any cell in first Column.
    3) Press "F2" and try to type into the cell. Can't type anything.
    package com.ns;
    import java.awt.BorderLayout;
    import java.awt.Component;
    import java.awt.Dimension;
    import java.awt.Point;
    import java.awt.Toolkit;
    import java.awt.event.ActionEvent;
    import java.awt.event.KeyEvent;
    import java.util.EventObject;
    import javax.swing.DefaultCellEditor;
    import javax.swing.JButton;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.JTextField;
    import javax.swing.SwingUtilities;
    import javax.swing.UIManager;
    import javax.swing.WindowConstants;
    import javax.swing.table.DefaultTableModel;
    import javax.swing.table.TableCellRenderer;
    public class TextButtonCellFrame extends javax.swing.JFrame {
        // Variables declaration - do not modify                    
        private JTextField inputText;
        private JScrollPane jScrollPane1;
        private JPanel testPanel;
        private JTable testTable;
        // End of variables declaration                  
        public TextButtonCellFrame() {
            initComponents();
        @SuppressWarnings("unchecked")
        // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
        private void initComponents() {
            testPanel = new JPanel();
            jScrollPane1 = new JScrollPane();
            testTable = new JTable();
            inputText = new JTextField();
            setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            testTable.setModel(new DefaultTableModel(
                new Object [][] {
                    {null, null, null, null},
                    {null, null, null, null},
                    {null, null, null, null},
                    {null, null, null, null}
                new String [] {
                    "Title 1", "Title 2", "Title 3", "Title 4"
            testTable.setCellSelectionEnabled(true);
            testTable.setRowHeight(52);
            testTable.setSurrendersFocusOnKeystroke(true);
            testTable.getColumnModel().getColumn(0).setCellRenderer(new MyTableCellRenderer());
            testTable.getColumnModel().getColumn(0).setCellEditor(new MyTableCellEditor(new JTextField()));
            testTable.getColumnModel().getColumn(0).setPreferredWidth(200);
            jScrollPane1.setViewportView(testTable);
            testPanel.add(jScrollPane1);
            inputText.setPreferredSize(new Dimension(50, 20));
            testPanel.add(inputText);
            getContentPane().add(testPanel, BorderLayout.CENTER);
            Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
            setBounds((screenSize.width-576)/2, (screenSize.height-417)/2, 576, 417);
        }// </editor-fold>                       
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new TextButtonCellFrame().setVisible(true);
        public class MyTableCellRenderer extends JPanel implements TableCellRenderer {
            Point point;
            JButton button1 = new JButton("Test 1");
            JTextField txtField = new JTextField();
            public MyTableCellRenderer() {
                setLayout(new BorderLayout());
                this.add(button1, BorderLayout.EAST);
                this.add(txtField,BorderLayout.CENTER);
            public Component getTableCellRendererComponent(JTable table, Object value,
                    boolean isSelected, boolean hasFocus, int rowIndex, int vColIndex) {
                if (isSelected) {
                    txtField.setBackground(testTable.getSelectionBackground());
                    txtField.setBorder(UIManager.getBorder("Table.focusCellHighlightBorder"));
                else {
                    txtField.setBackground(testTable.getBackground());
                    txtField.setBorder(null);
                return this;
        public class MyTableCellEditor extends DefaultCellEditor {
            JPanel panel = new JPanel();
            JButton button1 = new JButton ("Test 1");
            JTextField txtField;
            MyTableCellEditor(JTextField txtField) {
                super (txtField);
                this.txtField = txtField;
                panel.setLayout(new BorderLayout());
                panel.add(button1, BorderLayout.EAST);
                panel.add(txtField,BorderLayout.CENTER);
            public void actionPerformed(ActionEvent e) {
                if (e.getSource() == button1)
                    JOptionPane.showMessageDialog(null, "Action One Successful");
            public Component getTableCellEditorComponent(JTable table, Object value,
                                        boolean isSelected, int row, int column) {
                return panel;
           public boolean isCellEditable(final EventObject anEvent) {
              if (anEvent instanceof KeyEvent) {
                 final KeyEvent keyEvent = (KeyEvent) anEvent;
                 SwingUtilities.invokeLater(new Runnable() {
                    public void run() {
                       if (!Character.isIdentifierIgnorable(keyEvent.getKeyChar())) {
                          txtField.setText(txtField.getText() + keyEvent.getKeyChar());
                       txtField.setCaretPosition(txtField.getText().length());
                       txtField.requestFocusInWindow();
                return super.isCellEditable(anEvent);
    }The code for isCellEditable(final EventObject anEvent) which is needed to edit the cell using keyboard was provided by DarrylBurke here
    regards,
    nirvan.

    The F2 key when pressed generates an action event (either JTable generates it or some other component). I am not sure how to handle the action event in the isCellEditable() method. Also, F(X) range of keys other than F2 dump some junk character in the JTextfield when pressed. I am now stuck at this point and don't know how handle F(X) range of keys.
    regards,
    nirvan.

  • Sqlldr - filler columns exceeds maximum length

    Hi All,
    DB version : 10.2.0.1.0
    We are getting a CSV file with 127 fields. We require to load first 9 fields and the 127th field using SQLLDR. What is the best way to specify this in Control file?
    Currently we are giving like
       C10 filler,
       C11 filler,
       C127 filler,
       column_name
       1. Is there any other better approach available?
    2. We are gettiing issues when, filler columns exceeds maximum length. We tried to give like
                  c10 char(4000) filler  ,
       But it gives sybtax error.What is the work around for this?
    Thanks in advance,
    Jeneesh
    Please note that using EXTERNAL TABLEs or other methods is not feasible for us.

    Hi jeneesh,
    Did you try,
    c10 filler char(4000)from docs
    The syntax for a filler field is same as that for a column-based field, except that a filler field's name is followed by FILLER.Best regards
    Peter

  • Custom JTable column (JCheckBox) not included in row selection.

    I am trying to use JCheckBox (for display only data) as one of my JTable columns. I have written custom cell renderer for the same. Every thing is working fine except that when I select a row, the new custom JCheckBox column is not included in selection. Here is the code that I am using.
        protected class CheckBoxColumnRenderer extends DefaultTableCellRenderer {
            JCheckBox ckb = new JCheckBox();
            public Component getTableCellRendererComponent(JTable table, Object value,
                        boolean isSelected, boolean hasFocus, int row, int column) {
                if (value instanceof Boolean) { // Boolean
                  ckb.setSelected(((Boolean) value));
                  ckb.setHorizontalAlignment(JLabel.CENTER);
                  ckb.setBackground(super.getBackground());
                  if (isSelected || hasFocus) {
                      ckb.setBackground(table.getSelectionBackground());
                return ckb;
        }How can I include the custom cell in the row selection.
    regards,
    nirvan.

    they have lots of dependencies and it is not always easy to strip out an SSCCE without a considerable effort.Exactly. And is the cause of the problem the dependencies or something else. The only way to know for sure is to strip out the code and simplify the problem, that way you truly understand what the problem is.
    The majority of time this can be done with minimal effort as in this case.
    Some times we are sure that the problem is with certain part of the code Is the problem the code or the way the code is invoked? How do we know the TableModel is created properly or that the column class is overwritten correctly when we can't see it?
    someone having a third look at it may actually find the enhancement required with ease.Exactly, but we need to see the big picture.
    So are you sure that I should post an SSCCE with every possible question where coding is involved ?In the majority of cases a SSCCE is easily created in 5-10 minutes, so if you want the fastest help then yes.
    Just twice this past week I was ready to ask a question on the forum and was preparing a SSCCE to post and sure enough both times the creation of the SSCCE caused me to look at the problem differently and I solved it. I would much rather solve a problem on my own then post a question and wait for hours (days) hoping someone else knows the answer.

  • Custom table column based on value scale

    I want to custom table column based on the vaules.
    I understood I need to to /1000000 in the column definition and custom ###,###,###M.
    But sometimes it can be Kilos and sometimes Billions.
    I don't want to display 0.02M or 200000M.
    How can I define conditional custom according to the current value?

    Try doing what I said here and see if it works for you...
    Re: Represent numbers in thousands

  • SQLLDR - Filler column has length 4000

    Hi All,
    This is a continuation of below threa, which is already marked as answered.
    Re: sqlldr - filler columns exceeds maximum length
    DB version : 10.2.0.1.0
    We are getting a CSV file with 127 fields. We require to load first 9 fields and the 127th field using SQLLDR. What is the best way to specify this in Control file?
    Currently we are giving like
       C10 filler char(4000),
       C11 filler,
       C126 filler,
       column_name
       1. Is there any other better approach available?
    2. We are gettiing issues when, filler columns exceeds maximum length(4000). We tried to give like
                  c10  filler  "substr(:c10,1,100)",
       But it gives syntax error.What could be the work around for this?
    Thanks in advance,
    Jeneesh

    Tried like
    C115 filler char(4000) TERMINATED BY "||",
    C115 filler TERMINATED BY "||",Both taking as
    C115                                 NEXT  4000      O(") CHARACTER           
      (FILLER FIELD)
        Terminator string : '||'
    {code}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Locking middle or last column in a datagrid

    Does anyone know how to lock say the middle or last column in
    a datagrid. What i really need is for the first and fifth column to
    be locked in a datagrid or Advanced datagrid. Is this possible or
    do i need to put two datagrids next to each other and try to sync
    the vertical scroll??
    Thanks,
    -Jay

    >>For this, I have read that I can use Width="Auto" in all the columns and in the last column width="*", but in this case all the coloumns has a very low width so I can't read anything.
    Can't you just set an explicit width for the first two columns then?, e.g.:
    <DataGrid.Columns>
    <DataGridTextColumn Header="Column01" Binding="{Binding Property1, Mode=OneWay}" Width="100"/>
    <DataGridTextColumn Header="Column02" Binding="{Binding Property2, Mode=OneWay}" Width="100"/>
    <DataGridTextColumn Header="Column03" Binding="{Binding Property3, Mode=OneWay}" Width=""*"/>
    </DataGrid.Columns>
    There is also a MinWidth property that you can use to prevent the columns from being to narrow:
    <DataGrid.Columns>
    <DataGridTextColumn Header="Column01" Binding="{Binding Property1, Mode=OneWay}" Width="Auto" MinWidth="100"/>
    <DataGridTextColumn Header="Column02" Binding="{Binding Property2, Mode=OneWay}" Width="Auto" MinWidth="100"/>
    <DataGridTextColumn Header="Column03" Binding="{Binding Property3, Mode=OneWay}" Width=""*"/>
    </DataGrid.Columns>
    Hope that helps.
    Please remember to mark helpful posts as answer to close your threads and then start a new thread if you have a new question.

  • MSS ECM - how to retrieve custom OADP column in Webdynpro java application

    Great day to all,
    We have created custom OADP column for MSS ECM planning in SPRO.
    In Portal, ECM Plan Table, the column is visible. User enters values into that and toggles the tabstrip.
    Before submitting, i need to capture that value in Webdynpro java.
    My Question is,
    How can i make use of that column in my ECM Application using webdynpro java??
    or how can i retrieve the custom OADP columns in webdynpro java with out using RFC??
    Need ur great help... thanks alot in advance...
    Thanks
    Malla

    In OADP ,there are two types of columns , functional column which cannot be edited in web dynpro java application and another type is application column which can be edited in application and the value of this column is handled in application using rfc enabled function module. MSS ECM comes with certain application column whose values are handled in MSS-ECM application . If you are trying to add custom application column you will have to handle that column value in your Z function module and also at OADP level you should not configure supply function for that column.
    In order to call custom Z function module to handle custom application column I would suggest to create a seperate Software component and development component  and in that handle the logic for calling Z Function module. Also you will have to define the usage of custom Development component in the MES-ECM standard component.

  • Link column in a datagrid

    Hi Dear;
    how can i create an A/R invoice link buttuon as column in as datagrid?
    regards;

    Hi
    it has been already discussed
    anyway Use this code
    dim oLink as SAPbouiCOM.EditTextColumn
    oLink=oGrid.Columns.Item(0)
    oLink.LinkedObjectType = "13" 'please check object type for Ar invoice
    Hope it helps you
    Regards
    Vishnu

  • Bargraph,icon and a numeric value, together in a single column of advance datagrid

    Hiii,
    I am trying to embed an icon, a bargraph with two values and a numeric value in a single column of advance datagrid. can anybody help me out in giving a solution for this...I have read a  blog where the code explains about the bargraph in advance datagrid, I want to embed numeric value and icon too including bargraph in the column. I am looking for a Bargraph which  takes two values
    In the above image, the graph and rate is shown in a separate column , I require graph to be shown along with the numeric value and a icon in a single column.
    The blog which i refered and got the above output is placed below, it can be used for the reference.
    http://symmetri.blogsome.com/2009/05/22/render-a-bar-graph-within-a-datagrid/

    RVR,
    This is a great exercise to get familiar with LabVIEW's array functions.  A great place to start is actually the LabVIEW help on arrays, located here:
    http://zone.ni.com/reference/en-XX/help/371361B-01/lvconcepts/grouping_data_with/
    Depending on your data format, you can probably use the Read From Spreadsheet File VI to bring your data into a 2-d array.  You could then use the index array VI to pull your column out.  You could do this in a For loop and use Autoindexing to build your 1,000 column resulting array.  I would leave everything as a String format until I'm done. 
    This doesn't sound like a very difficult task.  Good luck!
    --Paul Mandeltort
    Automotive and Industrial Communications Product Marketing

  • Change log of customer filled with garbage with inbound ADRMAS IDOC

    Hi gurus,
    when i process inbound IDOC ADRMAS for updating customer addres then Change log of customer filled with garbage.
    the idoc is having FAX segment PAGER segment etc etc and if no data change even then there are many entries in change log with Delete..
    Please help..
    regards

    Hello,
            If it is a Custom Posting Program, please verify that your code is clearing the Log before it takes in any new content.
            Also, check the Data and try posting it again.
    Thanks and Regards,
    Venkat Phani Prasad Konduri

Maybe you are looking for