Set cell value performance...

Hi,
I'm trying to find out if any of you have a faster way of setting values in Matrix as for any System cell value like ItemCode, not just UDF's
My actual code looks like that but I'm wondering if there's a faster way as right now, it is slow and having to set multiple values in matrix makes the addon very slow and unacceptable by customers
public static object SetCellValue(SAPbouiCOM.Matrix Matrix, object ColumnUID, int Row, object Value)
    SAPbouiCOM.Column Column = Matrix.Columns.Item(ColumnUID);
    SAPError = "";
    object Cell = null;
    switch (Column.Type)
        case (SAPbouiCOM.BoFormItemTypes.it_EDIT):
        case (SAPbouiCOM.BoFormItemTypes.it_EXTEDIT):
        case (SAPbouiCOM.BoFormItemTypes.it_LINKED_BUTTON):
            SAPbouiCOM.EditText Editor = (SAPbouiCOM.EditText)Column.Cells.Item(Row).Specific;
            Cell = Editor;
            Editor.Value = Value.ToString();
            break;
        case (SAPbouiCOM.BoFormItemTypes.it_COMBO_BOX):
            SAPbouiCOM.ComboBox ComboBox = (SAPbouiCOM.ComboBox)Column.Cells.Item(Row).Specific;
            Cell = ComboBox;
            ComboBox.Select(Value, SAPbouiCOM.BoSearchKey.psk_ByDescription);
            break;
        case (SAPbouiCOM.BoFormItemTypes.it_CHECK_BOX):
            SAPbouiCOM.CheckBox chk = (SAPbouiCOM.CheckBox)Column.Cells.Item(Row).Specific;
            Cell = chk;
            chk.Checked = bool.Parse(Value.ToString());
            break;
    return Cell;

Hi Marc,
The new method GetCellSpecific of the matrix object is much faster than casting a cell to a particular control type using its Specific property:
SAPbouiCOM.EditText Editor = (SAPbouiCOM.EditText)Matrix.GetCellSpecific(ColumnUID, Row);
This should be noticeably faster than the older method and works for system matrices as well as user-defined ones.
Kind Regards,
Owen

Similar Messages

  • Labview/excel: erreur -2147352567 dans Set Cell Value.vi

    Bonjour à tous,
    Je suis face à un problème insoluble.
    Je n'arrive plus à écrire dans une cellule excel.
    J'ai développé mon programme sous labview 2009 et fait des tests sur deux pc différents.
    Sur un, l'écriture cellule fonctionne  sur l'autre j'ai toujours l'erreur -2147352567 dans Set Cell Value.vi.
    J'ai changé de pc et je suis passé de XP à Seven, installé labview 2009, mon programme bloque toujours sur le vi Set Cell Value.
    Comment puis je solutionner mon problème? recompiler le programme?
    Tous vos retours seront les bienvenus.
    Cdlt
    Solved!
    Go to Solution.
    Attachments:
    test-ecrire-excel.pdf ‏139 KB
    essai_ecrire_excel.vi ‏29 KB

    Bjr à tous,
    Le problème vient des modes de compatibilités d'excel entre 2003 et 2007-2010.
    Vous ne pouvez pas gérer des fichiers en .xls ou .xlsx sur la même application.
    Cela peu fonctionner un temps mais cela ne dure pas.
    La solution ensuite est de convertir tous vos fichiers en extension .xlsx et tout rentre dans l'ordre.
    Tout ceci est la joie d'excel et des logiciels à licence.
    A+ pour un autre sujet de discussion.

  • Numbers set cell value

    Hi Guys, might be a weird question but here goes.
    am trying to create a formula that sets the values of other cells
    meaning:
    if A1 = 2
    in B1 i will put: =IF(A1=2,C1=2,D1=0) which will check if cell A1 has the value of 2 and if so put the value 2 in cell C1 and if not will put the value of 0 in D1.
    is that possible in numbers?
    is there a way to do the same but with 2 cells changed at the same time?
    meaning:
    =IF(A1=2,C1=2 AND D1=2,D1=0)
    thanks
    ben

    Hi Hubert (Ben),
    A formula can not put a value into another cell.
    Try this:
    B2 =IF(A2=2,2,0) and fill down
    In English:
    IF A2 is equal to 2, then make me (B2) equal to 2, else make me equal to 0
    To test for several conditions in the one formula, use one IF inside another (nested IFs), or use the AND() function.
    Have a look at the Function Browser on the toolbar in Numbers.
    Also the Numbers User Guide and the Formulas and Functions User Guide available from the Help Menu in Numbers
    Regards,
    Ian.

  • Setting cell values in DataGrid

    I have an application with a custom component called DataEntryDataGrid (which is a subclass of mx:DataGrid) that I based on this blog post:  http://blogs.adobe.com/aharui/2008/03/custom_arraycollections_adding.html
    The component works great, but in this particular datagrid I need some special functionality.   After the first row of data is entered and the user tabs into the next row, I need the first and second columns to be filled in based on the values of the previous row, and then I need it to automatically focus on the third column's cell.  While the first and second columns should be still editable, they will be largely repetitive, and it would help if the users didn't have to enter the same numbers again and again.  The first column in a new row should be the same value as the first column in the last row, and the second column in a new row should be (last row's value +1). Example:
    DataGrid:
    | Slide No. | Specimen No. | Age | Weight | Length |
    |    1      |     1        |  5  |  65    |  40    |  <- This row is manually entered, just text inputs
    |    1*     |     2*       |  #  |        |        |
    * = values set programatically, these cells should still be focusable and editable
    # = this is where the focus should be
    The problem I'm having is that when I tab into the next row, the first column value doesn't get set.  The second column gets set to the correct value and displayed correctly, and the focus is set to the correct cell (the third column), but the first column remains empty.  I'm not sure why this is.  If I set a breakpoint in the code during the function focusNewRow()  (which is called at the dataGrid's "itemFocusIn" event)  the value of "slideNo" (first column) is set to the correct value, but after the "focusNewRow" functions finishes, a trace of dataProvider[the current row].slideNo shows the value is blank.  Not null, just blank.  Traces of all other columns show the correct values.  Anyone have any ideas?  Here's the code for my main application:
    <?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
             xmlns:s="library://ns.adobe.com/flex/spark"
             xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" xmlns:components="components.*">
      <fx:Script>
        <![CDATA[
          import mx.controls.DataGrid;
          import mx.events.DataGridEvent;
          public function traceSlideNo():void {
            var i:int;
            var g:Object = myDataGrid.dataProvider;
            for(i = 0; i < g.length -1; i++) {
              trace("sl: " + g[i].slideNo + ", sp: " + g[i].specimenNo + ", age: " + g[i].age);
          public function focusNewRow(e:DataGridEvent):void {
            if(e.currentTarget.dataProvider.length > 0 && e.rowIndex != 0 && e.columnIndex == 0) {
              var dg:DataGrid = e.currentTarget as DataGrid;
              var lastItem:Object = dg.dataProvider[e.rowIndex - 1];
              var targetItem:Object = dg.dataProvider[e.rowIndex];
              if(targetItem.specimenNo == "") {
                var focusCell:Object = new Object();
                focusCell.rowIndex = e.rowIndex;
                focusCell.columnIndex = 2;
                dg.editedItemPosition = focusCell;
                targetItem.slideNo = int(lastItem.slideNo);
                targetItem.specimenNo = int(lastItem.specimenNo) + 1;
                callLater(dg.dataProvider.refresh);
        ]]>
      </fx:Script>
      <components:DataEntryDataGrid x="10" y="10" width="450" id="myDataGrid" itemFocusIn="focusNewRow(event)"
                      editable="true" rowHeight="25" variableRowHeight="false">
        <components:columns>
          <mx:DataGridColumn headerText="Slide No." dataField="slideNo" editable="true"/>
          <mx:DataGridColumn headerText="Specimen No." dataField="specimenNo" editable="true"/>
          <mx:DataGridColumn headerText="Age" dataField="age" editable="true"/>
          <mx:DataGridColumn headerText="Weight" dataField="weight" editable="true"/>
          <mx:DataGridColumn headerText="Length" dataField="length" editable="true"/>
        </components:columns>
      </components:DataEntryDataGrid>
      <s:Button x="10" y="195" label="Trace Slide Numbers" click="traceSlideNo()"/>
    </s:Application>
    And here's the custom component, DataEntryDataGrid, just for reference (placed in the "components" package in this example) :
    <?xml version="1.0" encoding="utf-8"?>
    <mx:DataGrid xmlns:fx="http://ns.adobe.com/mxml/2009"
           xmlns:s="library://ns.adobe.com/flex/spark"
           xmlns:mx="library://ns.adobe.com/flex/mx" initialize="init(event)"
           editable="true" wordWrap="true" variableRowHeight="true">
      <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
      </fx:Declarations>
      <fx:Script>
        <![CDATA[
          import components.NewEntryArrayCollection;
          import mx.controls.Alert;
          import mx.controls.dataGridClasses.DataGridColumn;
          import mx.events.DataGridEvent;
          import mx.events.DataGridEventReason;
          import mx.events.FlexEvent;
          import mx.utils.ObjectUtil;
          private var arr:Array = [];
          private var ac:NewEntryArrayCollection;
          private var dg:DataGrid;
          public var enableDeleteColumn:Boolean;
          private function generateObject():Object
            // Returns a new object to the datagrid with blank entries for all columns
            var obj:Object = new Object();
            for each(var item:Object in this.columns) {
              var df:String = item.dataField.toString();
              obj[df] = "";
            return obj;
          private function isObjectEmpty(obj:Object):Boolean
            // Checks to see if the current row is empty
            var hits:int = 0;
            for each(var item:Object in this.columns) {
              var df:String = item.dataField.toString();
              if(obj[df] != "" || obj[df] !== null) {
                hits++;
            if(hits > 0) {
              return false;
            return true;
          private function init(event:FlexEvent):void
            dg = this;                // Reference to the DataEntryDataGrid
            ac = new NewEntryArrayCollection(arr);  // DataProvider for this DataEntryDataGrid
            ac.factoryFunction = generateObject;
            ac.emptyTestFunction = isObjectEmpty;       
            dg.dataProvider = ac;
            // Renderer for the DELETE column and Delete Button Item Renderer
            if(enableDeleteColumn == true){
              var cols:Array = dg.columns;
              var delColumn:DataGridColumn = new DataGridColumn("del");
              delColumn.editable = false;
              delColumn.width = 35;
              delColumn.headerText = "DEL";
              delColumn.dataField = "delete";
              delColumn.itemRenderer = new ClassFactory(DeleteButton);
              cols.push(delColumn);
              dg.columns = cols;
              dg.addEventListener("deleteRow",deleteClickAccept);
          private function deleteClickAccept(event:Event):void { // Handles deletion of rows based on event dispatched from DeleteButton.mxml
            dg = this;
            ac = dg.dataProvider as NewEntryArrayCollection;
            if(dg.selectedIndex != ac.length - 1) {
              ac.removeItemAt(dg.selectedIndex);
              ac.refresh();
        ]]>
      </fx:Script>
    </mx:DataGrid>
    Also, the file NewEntryArrayCollection.as which is referenced by the custom component.  This also goes in the "components" package:
    package components
      import mx.collections.ArrayCollection;
      public class NewEntryArrayCollection extends ArrayCollection
        private var newEntry:Object;
        // callback to generate a new entry
        public var factoryFunction:Function;
        // callback to test if an entry is empty and should be deleted
        public var emptyTestFunction:Function;
        public function NewEntryArrayCollection(source:Array)
          super(source);
        override public function getItemAt(index:int, prefetch:int=0):Object
          if (index < 0 || index >= length)
            throw new RangeError("invalid index", index);
          if (index < super.length)
            return super.getItemAt(index, prefetch);
          if (!newEntry)
            newEntry = factoryFunction();
          return newEntry;
        override public function get length():int
          return super.length + 1;
        override public function itemUpdated(item:Object, property:Object = null,
                           oldValue:Object = null,
                           newValue:Object = null):void
          super.itemUpdated(item, property, oldValue, newValue);
          if (item != newEntry)
            if (emptyTestFunction != null)
              if (emptyTestFunction(item))
                removeItemAt(getItemIndex(item));
          else
            if (emptyTestFunction != null)
              if (!emptyTestFunction(item))
                newEntry = null;
                addItemAt(item, length - 1);
    Sorry for the length of this post, but I hate seeing people post without including enough information to solve the problem.  If there's anything I've left out, let me know.

    Problem solved.  Actually, the NewEntryArrayCollection pointed to an outside function within the DataEntryDataGrid component to be used as a factory function for new objects.  I just set the factory function to scan the previous row's values and base the new row's values off of them.  Thanks again, Flex!
    New private function generateObject() to replace the previous one in DataEntryDataGrid.mxml, just in case others are curious:
    private function generateObject():Object
      // Returns a new object to the datagrid with filled in slide and
      // specimen no. columns and the rest of the columns blank
      var obj:Object = new Object();
      var thisDP:Object;
      for each(var item:Object in this.columns) {
        var df:String = item.dataField.toString();
        if(df == "slideNo") {
          thisDP = this.dataProvider;
          var newSlideNo:int;
          if(thisDP.length > 1) {
         // looking for the last row of the DataGrid's dataProvider, but as
            // length is calculated differently in NewEntryArrayCollection.as
            // to account for the "dummy" row, we need to go back 2 rows.
            newSlideNo = int(thisDP[thisDP.length -2].slideNo);
          } else {
            newSlideNo = 1;
          obj[df] = newSlideNo;
        } else if(df == "specimenNo") {
          thisDP = this.dataProvider;
          var newSpecimenNo:int;
          if(thisDP.length > 1) {
            newSpecimenNo = int(thisDP[thisDP.length -2].specimenNo) + 1;
          } else {
            newSpecimenNo = 1;
          obj[df] = newSpecimenNo;
        } else {
          obj[df] = "";
      return obj;

  • To set a value in matrix cell which is linked

    In sales order if I enter  form no of TAX TAB as "form c" , each cell of the TAX Code column of the matrix of contents tab should be set the value as "CST". I have tried to set the value, but it is showing "Form item not editable". I have tried to make the cell as editable but still the error message is coming and it is not setting the defined value. How can this be solved?
    Thankx in advance

    Hi Priya Manoj
    Some notes you can find on this [Thread: Set Value in Itemcode in Purchase Order Form|Set Value in Itemcode in Purchase Order Form;.
    There are I has posted some examples in vbcode.
    Hope the notes can help you.
    Regards
    Sierdna S.
    Edited by: Sierdna S on Oct 22, 2008 9:45 AM

  • How to set default value and bg color of cross tab cell?

    Hi all
    Which way can I set default value and background color for a crosstab cell where there are no any data?
    I try to pass it in following way
    if isnull(CurrentFieldValue) then
    But is has no effect.

    Hi,
    If your field is numeric
    if currentfieldvalue =0 then cryellow else crnocolor
    if the field is numeric but you don't see the 0 check check if : Suppress if zero is ticked in the Number format tab.
    Regards

  • Iam using a table in numbers to plot daily graph lines. If I fill a cell with a text box  at say zero it plots the graph. I can't actually set the cell value until the actual day but the graph plots it at zero when I don't want it to plot anything. Is tho

    I am using a table in Numbers to plot daily graph lines. Mood swings of how I am on the day, i"m a depressive.
    If I fill a cell with a step box at say zero it plots the graph. I can't actually set the cell value until the actual day but the graph plots it at zero when I don't want it to plot anything. Is there a work around. so thatbgraph only plots on the day?

    The answer is (sort of) in your subject, but edited out of the problem statement in the body of your message.
    When you use a stepper or a slider, the value in the cell is always numeric, and is always placed on the chart if that cell is included in the range graphed by the chart.
    But if you use a pop-up menu cell, you can specify numeric or text values in the list of choices for in the menu. Numeric values will be shown on the chart. Text values will not.
    For the example, the values list for the pop-up menu was:
    5
    3
    1
    Choose
    -1
    -3
    -5
    The first pop-up was set to display Choose, then the cell was filled down the rest of the column. Any text value (including a single space, if you want the cell to appear blank) may be used instead of Choose.
    For charts with negative Y values, the X axis will not automatically appear at Y=0. If your value set will include negative values, I would suggest setting the Y axis maximum and minimum to the maximum and minimum values on your menu list, rather than letting Numbers decide what range to include on the chart. Place a line shape across the chart at the zero level, and choose to NOT show the X axis.
    Regards,
    Barry

  • Tables - How to get cell value? How to get/set UI controls properties?

    Hi,
    I want to get a the cell's value of row x and col y.
    The table is not bounded so I cannot use:
    Table1.Items(key).DataSourceRow.DataItem("ColID")
    Another question:
    How to I set the properties of a table column which contains UI elemtents that I create dynamically?
    for exmpale:
    c1 is a TableBodyCell
    tr is a tableRow
    c1 = New TableBodyCell(Table1, tr, 0)
    c1.TableCellContent = New InputField
    tr.Cells.Add(c1)
    How do I set/get the properties of the InputField?
    Thanks,
    Omri

    Thanks Reshef,
    My Table's scheme:
    Column 0 - TextView
    Column 1 - InputField
    I was able to get a cell value of type TextView by using what you suggested:
    Write(CType(Table1.Items(0).Cells(0).TableCellContent,TextView).Text)
    However, when I tried to do the exact thing to InputField I didn't get any value (nor error)
    Write(CType(Table1.Items(0).Cells(1).TableCellContent, InputField).Value)
    I fill the Input Field and then push "Execute" button which supposed to write the value.
    About my second question:
    By using the cast (CType) I can access the properties I need (like Width) so it kind of solve my problem.
    for example:
    CType(Table1.Items(1).Cells(1).TableCellContent, InputField).Width = "15px"

  • Permanently set Repeat cell values on table view obiee11g

    Hi,
    By default Analysis presentation Column comes with "Column Value Suppression" but we need to switch "Column Value Suppression" to "Repeat cell values" from source xml reference file
    Note:don't want to do it via analysis table/column properties(its manual work) ..just looking to change permanently by changing xml
    Thanks
    Deva

    Hi,
    What is that datatypeformats.xml ? couldn't find out. once again will explain my requirement
    Creating new analysis(Table/Pivot table view) and applying format as Repeat Cell by changing Table/Pivot Properties to set Enable alternating row "green bar" styling Repeat cell values on table/pivot view (instead of doing manual way)
    Refer the below image --> i just want to avoid manual enabling below Repeat cell option for entire table/pivot view option
    http://i.imgur.com/122wp.jpg?1
    Thanks
    Deva
    Edited by: Devarasu on Nov 26, 2012 5:06 PM

  • How to set ADF table cell value in managed bean

    Hi all,
    I have an ADF table on my page, let's assume with three columns with Input text box: col A, col B and col C where column C is hidden, when I click on Submit is possible to set in managed bean the value of column C for each rows?
    Thk in advance.
    L-

    Hi,
    you can create a button with an ActionListener. In the ActionListener you can iterate over the rows (using the iterator) and set the value on the attribute. If you need to save the changes you can call the commit operation binding.
    Linda

  • JTable Cell Value needs to hided

    Hi,
    I have 5 columns in a JTable. The first column is a checkbox. The second column is non editable. The third, fourth and fifth columns are editable. Whan I click a check box, I am performing a database operation and based on the output, I am setting values to for the column 3, 4 and 5.
    My requirement: I need to perform the database operation only for the first time of the check box click. If I uncheck the checkbox, the values in column 3, 4 and 5 needs to be disappeared. If I check the check box again, I need the values to be visible. Basically, I will do database calls only for the first time. From second time onwards, I need to just hide the text in the particular cells (if the checkbox is unchecked) and make the cell values visible (if the checkbox is checked) In JTable API, there are no methods to hide a cell value or I am unable to figure it out. Please help me.
    Regards
    subbu

    Alirght here is some code. This is a bit messy but I guess the solution is clear. It make use of a combination of renderers, ie the Sun's DefaultTableCellRenderer (for the first column to get the checkboxes) and a custom renderer for the rest of the columns.
    Also, a MouseListener is added so that on clicking the first column, a repaint is forced to ensure the values in the cells disappear.
    * @(#)CheckableRow.java
    * @author icewalker2g
    * @version 1.00 2007/12/27
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.*;
    import java.util.*;
    import java.io.*;
    public class CheckableRow extends JFrame {
        public JTable table;
        public DefaultTableModel model;
        public CheckableRow() {
            super("Checkable Row");
            createUI();
        public void createUI() {
            Vector<String> cols = new Vector<String>();
                cols.addElement("Col 1");
                cols.addElement("Col 2");
                cols.addElement("Col 3");
                cols.addElement("Col 4");
                cols.addElement("Col 5");
            Vector<Object> rows = new Vector<Object>();
            model = new DefaultTableModel(rows, cols);
            for(int i = 0; i < 5; i++) {
                Vector<Object> row = new Vector<Object>();
                    row.addElement( false );
                    row.addElement("Data");
                    row.addElement("Col 3 Data " + (i+1));
                    row.addElement("Col 4 Data " + (i+1));
                    row.addElement("Col 5 Data " + (i+1));
                model.addRow( row );
            table = new JTable(model) {
                CellValueRenderer renderer = new CellValueRenderer();
                public TableCellRenderer getCellRenderer(int row, int col) {
                    if(col > 1) {
                        return renderer;   
                    return super.getCellRenderer(row, col);
                public Class getColumnClass(int col) {
                    if( col == 0) {
                        return Boolean.class;
                    return super.getColumnClass(col);
                public boolean isCellEditable(int row, int col) {
                    if( col != 1 ){
                        return true;
                    return false;
            table.addMouseListener( new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    if( table.columnAtPoint( e.getPoint() ) == 0 ) {
                        table.repaint();
            getContentPane().add( new JScrollPane(table), BorderLayout.CENTER );
            pack();
            setLocationRelativeTo(null);
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            setVisible(true);
        public class CellValueRenderer extends DefaultTableCellRenderer {
            public CellValueRenderer() {
                super();
            public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
                boolean hasFocus, int row, int col) {
                DefaultTableCellRenderer renderer = (DefaultTableCellRenderer)
                super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, col);
                if( table.getValueAt(row, 0).toString().equals("true") && col > 1) {
                    renderer.setText("");
                } else {
                    renderer.setText( value == null ? "" : value.toString() );
                return renderer;
        public static void main(String[] args) {
            new CheckableRow();
    }ICE

  • Get Current Selected Cell Value in an af:table

    Using JDeveloper 11.1.1.3.0
    I currently have a requirement where i need to call a server method and pass the value of the current selected Cell value in my af:table.
    The reason why i can't just make use of the currentSelectedRow is because i have a set of Columns (NumericValue1,NumericValue12,...NumericValue1n) and my server method can't really tell which cell i picked.
    So far, what i did is that i utilized F. Nimphius's article about using contextMenu and passing a clientAttribute.
    Re: How to pass parameter to inline popup when mouse over
    I'm hoping to do the same thing but without raising a popup on right click. So basically, i'm hoping to select an outputText in the table and this value will be stored in a pageFlowScopeBean.
    Has anybody encountered something similar?
    Thanks.

    Hi Barbara,
    You're aproach sounds intersting.
    So you mean to say, i'll create a component which has a bindings to my pageDefinition which needs to have it's clientComponent attribute set to true i believe so that my javascript can find this component.
    Then, i'll write a javascript that handles the focus event which then stores the clientAttribute value and stores that in the hidden component mentioned earlier. I'm guessing that once i set the newValue to the hidden component, it should be posted to the pageDef bindings upon hitting server side calls.
    I'll try this out and give an update on it.

  • How  to set default value for Zfeild using statusprofile

    hi experts,
    I need to set a default value for a zfeild using status profile.Although we can default the values,using getter and setter methods,but in my requirement,the feild will be defaulted when the page is locked,also in display mode,which will require me to write code to unlock then set the value and then write a commit,as there wont be any user action performed.
    I have created a zstatus profile and have set the required status to inital,but no luck
    please suggest if this canbe achived through status profile.
    Regards
    Anu.

    Hi,
    You can check in the getter if the Page is locked and then display the value to want to display. Note that this will be just Displaying the default value for the Zfield and it will not set the default value into  the Zfield in DB, because when the document is locked ( means locked for editing - mostly when system status is completed ) , setters are not called and so you can display the value but cant set it. This is fine if the value you want to display in Z field is just for user's informations and its not required to save this default value.
    The best approach would be to set the value in the Zfield before the page is locking. For example, If you wat to set the zfield value when status is set to "Completed" , then you can configure an action that is 1) triggered during saving of the document with 2) start condition "When status is completed"  ( both 1 and 2 you can mention in action defination ), then Implement this action badi in which you can set the Zfield to default value.
    This will ensure that default value is always set whenever the page is getting locked for editing ( i assumed that page lock means status completed ).
    Thanks & Regards
    Suchita

  • How to get selected Row/Cell value in i5Grid

    Hi Friends,
    Can anyone help to how to find the selected Row/Cell value of a i5Grid object. I am able to register the event handlers which are getting invoked on row/cell selection. But I want to know how can I get the value of selected Cell/Row. I would like to add selected Items from one i5Grid to another one.
    So want to know how can I get and set the value of i5Grid object.
    MII version 14.0 SP4 Patch
    Thank in advance
    Shaji Chandran

    Hi Shaji,
    Here is my code.
    <!DOCTYPE HTML>
    <HTML>
    <HEAD>
        <TITLE>Your Title Here</TITLE>
        <META http-equiv="X-UA-Compatible" content="IE=edge">
        <META http-equiv='cache-control' content='no-cache'>
        <META http-equiv='expires' content='0'>
        <META http-equiv='pragma' content='no-cache'>
        <SCRIPT type="text/javascript" src="/XMII/JavaScript/bootstrap.js" data-libs="i5Chart,i5Grid,i5SPCChart"></SCRIPT>
        <SCRIPT>
            var Grid = new com.sap.xmii.grid.init.i5Grid("STC/C5167365/i5Grid_TagQuery", "STC/C5167365/TagQuery");
            Grid.setGridWidth("640px");
            Grid.setGridHeight("400px");
            Grid.draw("div1");
        function setCellValue()
        Grid.getGridObject().setCellValue(1,1,"Set");
        function setCellValueAgain()
        Grid.getGridObject().setCellValue(1,1,"Changed Again");
        </SCRIPT>
    </HEAD>
    <BODY>
        <DIV id="div1"></DIV>
        <INPUT type="Button" value="setCellValue" onClick="setCellValue()"/>
        <INPUT type="Button" value="setCellValueAgain" onClick="setCellValueAgain()"/>
    </BODY>
    </HTML>
    Regards,
    Sriram

  • How to Set column value in SO matrix , if the column is not visible.

    Hi,
    We are trying to set value in to a column from sales order matrix with the below mentioned code
    ((SAPbouiCOM.EditText)oMat.Columns.Item("U_TWBS_AC_BaseEntry").Cells.Item(pVal.Row).Specific).String
    it will throw an u201CForm Item is not editable u201C  error if the  column ("U_TWBS_AC_BaseEntry")  visible is set to false through form settings.
    how can we solve the issue,can we use any DI object in order to reset the form settings.
    Thanks & Regards

    Hi
    Try and make the column visible then set the value and make it invisible then
    Hope this helps
    Regards
    Vivek

Maybe you are looking for

  • Transferring from hard drive to itunes

    A friend downloaded a heap of albums for me on a removable hard drive -itunes has down loaded the covers but not the music -how do I get to download the music. I am not computer literate . Many thanks

  • Yet again connection drops !!!

    after the last fix speed was ok for a few months but now gone back to the same old **bleep**. Speed dropping to around 0.06mb having to restart modem cant do anything with broadband at all ! ADSL Settings VPI/VCI: 0/38 Type: PPPoA Modulation: G.992.1

  • Time Machine Going Crazy (HELP)

    Hi. Last year I bought a 1 TB WD My Book and ever since I never had any problems with the backups, until yesterday. My internal hard drive currently has 996,13 GB and my home folder has 960, 63 GB (Above 1TB). The problem is when I try to do a backup

  • 5770  +dual display + mac pro 1,1 = broken

    I recently installed a 5770 in my mac pro 1,1 , using dual 22" displays, one through DVI, one through mini display port and it works fine with 10.6.4 + SL graphics update. I then installed 10.6.5 (also have tried 10.6.6) and i lose the monitor plugge

  • [SOLVED] scanner not recognised

    peter@mesh:~$ sane-find-scanner # sane-find-scanner will now attempt to detect your scanner. If the # result is different from what you expected, first make sure your # scanner is powered up and properly connected to your computer. # No SCSI scanners