Table.Sort only sorting records in preview pane

I have the following M query:
let
    OrgIdParameter = Excel.CurrentWorkbook(){[Name="ClientFilter"]}[Content],
    OrgIdValue = OrgIdParameter{0}[Column2],
    Source = Sql.Database("JOHNSQLD53", "EnterpriseAnalytics"),
    dbo_vFactEngrgServiceLocMonthlyAsOfSnapshot = Source{[Schema="dbo",Item="vFactEngrgServiceLocMonthlyAsOfSnapshot"]}[Data],
    #"Filtered Rows" = Table.SelectRows(dbo_vFactEngrgServiceLocMonthlyAsOfSnapshot, each [BeProspectClientOrgId] = OrgIdValue),
    #"Sorted Rows" = Table.Sort(#"Filtered Rows",{{"SnapshotYear", Order.Ascending}})
in
    #"Sorted Rows"
however, the sort is working on the records that show in the preview pane (about 36 records), then the data goes back to being unsorted in the rest of the table when loaded in power pivot (224 rows).
any idea why?

I believe that Power Pivot does not reliably preserve the input sort of the data; this is a feature of the data model, not of Power Query.

Similar Messages

  • Would an index have any affect on a table with only 1 record?

    As a general rule of thumb I always add indexes on tables when I refer to a column in a stored procedure, but this is the first time I can remember having the need on a table called 'Admin' that only contains 1 record. The other view referred
    to in the procedure(s) has about twenty thousand records and that could grow as high as hundreds of thousands for our largest clients.
    I am about to try the with and without since it only takes a second to try, but I thought I would ask if anyone else has any experience or knows of best practices, thoughts, opinions, or what not.
    Thanks,
    It's Friday! Pretend to care about what you are doing for a few more hours.

    Index is just there to decrease query execution time and make query fast so you can see now one row would not require index as fact it would add overhead.
    Please mark this reply as answer if it solved your issue or vote as helpful if it helped so that other forum members can benefit from it
    My Technet Wiki Article
    MVP

  • Custom table model, table sorter, and cell renderer to use hidden columns

    Hello,
    I'm having a hard time figuring out the best way to go about this. I currently have a JTable with an custom table model to make the cells immutable. Furthermore, I have a "hidden" column in the table model so that I can access the items selected from a database by their recid, and then another hidden column that keeps track of the appropriate color for a custom cell renderer.
    Subject -- Sender -- Date hidden rec id color
    Hello Pete Jan 15, 2003 2900 blue
    Basically, when a row is selected, it grabs the record id from the hidden column. This essentially allows me to have a data[][] object independent of the one that is used to display the JTable. Instinctively, this does not seem right, but I don't know how else to do it. I know that the DefaultTableModel uses a Vector even when it's constructed with an array and I've read elsewhere that it's not a good idea to do what I'm trying to do.
    The other complication is that I have a table sorter as well. So, when it sorts the objects in the table, I have it recreate the data array and then set the data array of the ImmutableTableModel when it has rearranged all of the items in the array.
    On top of this, I have a custom cell renderer as well. This checks yet another hidden field and displays the row accordingly. So, not only does the table sort need to inform the table model of a change in the data structure, but also the cell renderer.
    Is there a better way to keep the data in sync between all of these?

    To the OP, having hidden columns is just fine, I do that all the time.. Nothing says you have to display ALL the info you have..
    Now, the column appears to be sorting properly
    whenever a new row is added. However, when I attempt
    to remove the selected row, it now removes a seemingly
    random row and I am left with an unselectable blank
    line in my JTable.I have a class that uses an int[] to index the data.. The table model displays rows in order of the index, not the actual order of the data (in my case a Vector of Object[]'s).. Saves a lotta work when sorting..
    If you're using a similar indexing scheme: If you're deleting a row, you have to delete the data in the vector at the INDEX table.getSelectedRow(), not the actual data contained at
    vector.elementAt(table.getSelectedRow()). This would account for a seemingly 'random' row getting deleted, instead of the row you intend.
    Because the row is unselectable, it sounds like you have a null in your model where you should have a row of data.. When you do
    vector.removeElementAt(int), the Vector class packs itself. An array does not. If you have an array, when you delete the row you must make sure you dont have that gap.. Make a new array of
    (old array length-1), populate it, and give it back to your model.. Using Vectors makes this automatic.
    Also, you must make sure your model knows the data changed:
    model.fireTableDataChanged(); otherwise it has no idea anything happened..
    IDK if that's how you're doing it, but it sounds remarkably similar to what I went thru when I put all this together..

  • ADF Table sort issue

    Hi,
    We are using ADF 11g.
    In application we have af:query search block and its result table. When we click on column header with some data present it is sorting the data, which is accepted behaviour.
    But when there is no data in the table, and click on column header, The blind search query is being exceuted and fetching all the data. The issue with this is the table has millions of records and we have 'selectively required' search on the page. So through search block a blind search is not allowed but on click of Sort of column we are not able to handel it, affecting the performance of application.
    What can be done to prevent blind search?
    Thanks,
    Manasa

    There could be so many ways.. One simple solution I see is disable sorting only when Table is empty,
    set the sortable property for columns like : #{bindings.employeeVO1.estimatedRowCount > 0 ? true : false}
    Amit
    Edited by: amseth on Jan 14, 2011 10:31 AM

  • How can we sort records in alv, give example

    how can we sort records in alv, give example

    Hi
    <b>Setting Sort Conditions</b>
    It is possible to set sort conditions for the table data. This is achieved by filling an internal table of structure “LVC_T_SORT” which consists of the sort criteria. To have an initial sorting, pass it to the parameter “IT_SORT” of the method “set_table_for_first_display”.
    FORM prepare_sort_table CHANGING pt_sort TYPE lvc_t_sort .
    DATA ls_sort TYPE lvc_s_sort .
    ls_sort-spos = '1' .
    ls_sort-fieldname = 'CARRID' .
    ls_sort-up = 'X' . "A to Z
    ls_sort-down = space .
    APPEND ls_sort TO pt_sort .
    ls_sort-spos = '2' .
    ls_sort-fieldname = 'SEATSOCC' .
    ls_sort-up = space .
    ls_sort-down = 'X' . "Z to A
    APPEND ls_sort TO pt_sort .
    ENDFORM. " prepare_sort_table
    <b>Preparing the table for sorting settings</b>
    We have two important points to tell about this topic. First one is that, be ready for a short dump if any one of the fields given to be sorted is not in the content of the field catalog. Secondly, when you make ALV Grid to sort data, by default it vertically merges fields having the same content. To avoid from this for all of the columns, you can set “no_merging” field of the layout structure to ‘X’. If you want to disable merging for just some columns, set “no_merging” field of the field catalog row corresponding to that column.
    You can get and set sort criteria applied whenever you want by using methods “get_sort_criteria” and “set_sort_criteria”, respectively.
    <b>
    Sort Using FACTORY CLASSES</b>
    <b>Sorts – CL_SALV_SORTS</b>
    we can add some sorting to the ALV grid. Create the object reference variable and receive the object using the GET_SORTS method of the GR_TABLE object. Next, add the sort by calling the ADD_SORT method of the GR_SORTS object.
    report zalvom_demo1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings. data: gr_columns type ref to cl_salv_columns_table.
    data: gr_column type ref to cl_salv_column_table.
    data: gr_sorts type ref to cl_salv_sorts.
    data: color type lvc_s_colo.
    start-of-selection.
    select * into table ispfli from spfli. cl_salv_table=>factory( importing r_salv_table = gr_table   changing t_table = ispfli ).
    gr_functions = gr_table->get_functions( ). gr_functions->set_all( abap_true ).
    gr_display = gr_table->get_display_settings( ). gr_display->set_striped_pattern( cl_salv_display_settings=>true ). gr_display->set_list_header( 'This is the heading' ). gr_columns = gr_table->get_columns( ).
    gr_column ?= gr_columns->get_column( 'CITYTO' ). gr_column->set_long_text( 'This is long text' ). gr_column->set_medium_text( 'This is med text' ). gr_column->set_short_text( 'This is sh' ).
    gr_column ?= gr_columns->get_column( 'CITYFROM' ). color-col = '6'.
    color-int = '1'.
    color-inv = '0'.
    gr_column->set_color( color ).
    gr_sorts = gr_table->get_sorts( ).
    gr_sorts->add_sort 'CITYTO' ).
    gr_table->display( ).
    Regards
    Ravish
    <b><i>
    Reward if useful to you</i></b>
    Message was edited by:
            Ravish Garg

  • EIT SSHR Table sorting

    Hi all,
    I have successfully personalized the EIT SSHR screen to display one of the configured EIT on a custom responsibility using a custom function(so that I can do personalization on function level without affecting other EIT screens).
    Now my challenge is that, when I click on the menu function, it takes me to the people search page, I do a search and select a employee, then it shows me the list of existing EIT records with an option of add, update and delete. Here, I need to show the existing records in a sorted order. I need the latest entry entered to appear in the top. If this is not possible, it would be great if I can have the table sorted as per one of the segment value.
    Is there a way to do this. Can someone help me in doing this and let me know the steps to do the same.
    Cheers
    Arun

    I think Tomahawk is the way to go here.
    Tomahawk allows sorting of data in the data table.
    For action based on row selection, you need to invoke java script function
    using rowOnClick attribute of t:dataTable and then make a hidden command button "click" from
    the java script.
    Regards,
    Joshua

  • Table Sorting: How is firstVisibleRow being affected?

    Dears,
    I'm confused at table sorting using Tablesorter.java.
    When sorting, how does Tablesorter affect the firstVisibleRow of the table?
    In the "[Working with tables|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/90ac0015-d1c5-2a10-d788-aed89990811d]" sample SDN provided, when press "sorting asending" or "sort descending", the table's first visible row changes automatically.
    I didn't understand why firstVisibleRow changed to be so. And I don't know how the firstVisibleRow will change to be.
    I checked the code of Tablesorter, and I also tried to debug into it, but didn't find any track.
    Any word is appreciated. Thanks in advance.
    Edited by: gangtee gangtee on May 2, 2008 4:59 PM

    Attached is Tablesorter.java
    package com.sap.tc.webdynpro.tests.utils;
    import java.text.Collator;
    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Comparator;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
    import java.util.StringTokenizer;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractDropDownByIndex;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractDropDownByKey;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractInputField;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractTableColumn;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDCaption;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDCheckBox;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDLink;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDProgressIndicator;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDRadioButton;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTable;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTableCellEditor;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTableColumn;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTableColumnGroup;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTextEdit;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTextView;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.WDTableColumnSortDirection;
    import com.sap.tc.webdynpro.progmodel.api.IWDAction;
    import com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent;
    import com.sap.tc.webdynpro.progmodel.api.IWDNode;
    import com.sap.tc.webdynpro.progmodel.api.IWDNodeElement;
    import com.sap.tc.webdynpro.progmodel.api.IWDViewElement;
    import com.sap.tc.webdynpro.services.sal.localization.api.WDResourceHandler;
    * Helper class that makes a Web Dynpro table UI element sortable (column-wise).
    public final class TableSorter {
          * @param table
          * @param sortAction
          * @param comparators
         public TableSorter(IWDTable table, IWDAction sortAction, Map comparators) {
              init(table, sortAction, comparators, null);
         public TableSorter(IWDTable table, IWDAction sortAction, Map comparators, String[] sortableColumns) {
              init(table, sortAction, comparators, sortableColumns);
          * Initialisation stuff
         private void init(IWDTable table, IWDAction sortAction, Map comparators, String[] sortableColumns){
              this.table = table;
              if(sortableColumns == null){
                   sortableCols = null;
              }else{
                   sortableCols = new HashMap();
                   for (int i = 0; i < sortableColumns.length; i++) {
                        sortableCols.put(sortableColumns<i>, sortableColumns<i>);
              // sanity checks
              if (sortAction == null)
                   throw new IllegalArgumentException("Sort action must be given");
              if (table == null)
                   throw new IllegalArgumentException("Table must be given");
              if (table.bindingOfDataSource() == null)
                   throw new IllegalArgumentException(
                        "Data source of table with id '" + table.getId() + "' must be bound");
              // make the columns sortable
              String dataSourcePrefix = table.bindingOfDataSource() + ".";
              setComparatorsForColumns(dataSourcePrefix, table.iterateGroupedColumns(), comparators);
              //set up the table properties
              table.setOnSort(sortAction);
              table.mappingOfOnSort().addSourceMapping(IWDTable.IWDOnSort.COL, "selectedColumn");
              table.mappingOfOnSort().addSourceMapping(IWDTable.IWDOnSort.DIRECTION, "sortDirection");     
          * Try to make the given columns sortable (recusivly, if necessary)
         private void setComparatorsForColumns(String dataSourcePrefix, Iterator columnIterator, Map comparators){
              int index = 0;
              for (Iterator it = columnIterator; it.hasNext(); ++index) { // for every column: try to make it bindable
                   IWDAbstractTableColumn abstractColumn = (IWDAbstractTableColumn) it.next();
                   if(abstractColumn instanceof IWDTableColumn){
                        IWDTableColumn column = (IWDTableColumn)abstractColumn;
                        if(sortableCols == null || sortableCols.containsKey(column.getId())){
                             //try to make this column sortable
                             Comparator comparator = null;
                             if (comparators != null){
                                  comparator = (Comparator)comparators.get(column.getId());
                             NodeElementByAttributeComparator elementComparator = null;     
                             if (comparator instanceof NodeElementByAttributeComparator) {
                                  // the easy one, attribute and ordering are given
                                  elementComparator = (NodeElementByAttributeComparator)comparator;
                             } else { // attribute must be determined
                                  String bindingOfPrimaryProperty = bindingOfPrimaryProperty(column.getTableCellEditor());
                                  if (bindingOfPrimaryProperty == null || !bindingOfPrimaryProperty.startsWith(dataSourcePrefix)){
                                       //no attribute found or outside of data source
                                       column.setSortState(WDTableColumnSortDirection.NOT_SORTABLE);
                                       continue;
                                  String attributeName = bindingOfPrimaryProperty.substring(dataSourcePrefix.length());
                                  Collection subnodes = new ArrayList();
                                  if (attributeName.indexOf('.') >= 0){
                                       //attribute not immediately below data source
                                       String[] tokens = tokenize (attributeName, ".");
                                       for(int i=0; i<tokens.length-1; i++){
                                            subnodes.add(tokens<i>);
                                       attributeName = tokens[tokens.length-1];
                                  if(subnodes.size() == 0){
                                       elementComparator = new NodeElementByAttributeComparator(attributeName, comparator);
                                  }else{
                                       elementComparator = new NodeElementByAttributeComparator(attributeName, comparator, subnodes);
                             // set up internal data structures
                             comparatorForColumn.put(column, elementComparator);
                             //set sort state
                             column.setSortState(WDTableColumnSortDirection.NONE);
                        }else{
                             //column should not be sortable
                             column.setSortState(WDTableColumnSortDirection.NOT_SORTABLE);
                   }else if (abstractColumn instanceof IWDTableColumnGroup){
                        //it's just a column group -> try to bind the columns of the column group
                        IWDTableColumnGroup columnGroup = (IWDTableColumnGroup)abstractColumn;
                        setComparatorsForColumns(dataSourcePrefix, columnGroup.iterateColumns(), comparators);
          * Tokenizes the input string according to the given delimiters. The delimiters will be left out.
          * Example: tokenize("Hello_World", "_") results ["Hello", "World"]
         private String[] tokenize (String input, String delim){
              StringTokenizer tokenizer = new StringTokenizer(input, delim);
              String[] tokens = new String[tokenizer.countTokens()];
              int index = 0;
              while(tokenizer.hasMoreTokens()){
                   tokens[index] = tokenizer.nextToken();
                   index++;
              return tokens;
          * This method must be called from the event handler of this table sorter's
          * sort action. It performs the actual sort operation.
         public void sort(IWDCustomEvent wdEvent, IWDNode dataSource) {
              // find the things we need
              String columnId = wdEvent.getString("selectedColumn");
              String direction = wdEvent.getString("sortDirection");
              IWDTableColumn column = (IWDTableColumn) table.getView().getElement(columnId);
              NodeElementByAttributeComparator elementComparator = (NodeElementByAttributeComparator) comparatorForColumn.get(column);
              if (elementComparator == null){
                   //not a sortable column
                   column.setSortState(WDTableColumnSortDirection.NOT_SORTABLE);
                   return;
              // sorting
              elementComparator.setSortDirection(WDTableColumnSortDirection.valueOf(direction));
              dataSource.sortElements(elementComparator);
          * Returns the binding of the given table cell editor's property that is
          * considered "primary" or <code>null</code> if no such binding exists or no
          * such property can be determined.
         private static final String bindingOfPrimaryProperty(IWDTableCellEditor editor) {
              return editor instanceof IWDViewElement ? bindingOfPrimaryProperty((IWDViewElement) editor) : null;
          * Returns the binding of the given view element's property that is
          * considered "primary" or <code>null</code> if no such binding exists or no
          * such property can be determined.
         private static final String bindingOfPrimaryProperty(IWDViewElement element) {
              if (element instanceof IWDAbstractDropDownByIndex)
                   return ((IWDAbstractDropDownByIndex) element).bindingOfTexts();
              if (element instanceof IWDAbstractDropDownByKey)
                   return ((IWDAbstractDropDownByKey) element).bindingOfSelectedKey();
              if (element instanceof IWDAbstractInputField)
                   return ((IWDAbstractInputField) element).bindingOfValue();
              if (element instanceof IWDCaption)
                   return ((IWDCaption) element).bindingOfText();
              if (element instanceof IWDCheckBox)
                   return ((IWDCheckBox) element).bindingOfChecked();
              if (element instanceof IWDLink)
                   return ((IWDLink) element).bindingOfText();
              if (element instanceof IWDProgressIndicator)
                   return ((IWDProgressIndicator) element).bindingOfPercentValue();
              if (element instanceof IWDRadioButton)
                   return ((IWDRadioButton) element).bindingOfSelectedKey();
              if (element instanceof IWDTextEdit)
                   return ((IWDTextEdit) element).bindingOfValue();
              if (element instanceof IWDTextView)
                   return ((IWDTextView) element).bindingOfText();
              return null;
          * Instance of a comparator according to the ordering imposed by the
          * implementation of <code>Comparable</code>.
         private static final Comparator DEFAULT = new Comparator() {
               * Compares the given objects according to the ordering imposed by the first
               * ones <code>compareTo(Object)</code> function. Furthermore, <code>null</code>
               * is treated to be less than any object.
               * @see java.lang.Comparable#compareTo(java.lang.Object)
               * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
              public int compare(Object o1, Object o2) {
                   if (o1 == null && o2 == null)
                        return 0;
                   if (o1 == null)
                        return -1;
                   if (o2 == null)
                        return +1;
                   if (o1 instanceof Boolean && o2 instanceof Boolean)
                        return o1.toString().compareTo(o2.toString()); // false < true
                   if (o1 instanceof String && o2 instanceof String){
                        //Use a Collator for sorting according to the given Locale
                        Collator collate = Collator.getInstance(WDResourceHandler.getCurrentSessionLocale());
                        return collate.compare(o1, o2);                    
                   return ((Comparable) o1).compareTo((Comparable) o2);
          * Map of table column to comparator (<code>ReversableComparator</code>)
          * used for sorting that column (sortable columns only).
         private Map comparatorForColumn = new HashMap();
          * The table to be sorted.
         private IWDTable table = null;
          * Column-IDs of the columns, which should be sortable
         private Map sortableCols = null;
          * Generic comparator that compares node elements by a given attribute with
          * the help of a given comparator.
         public final class NodeElementByAttributeComparator implements Comparator {
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute according to the natural ordering of that attribute's
               * type (which must implement <code>java.lang.Comparable</code>).
              public NodeElementByAttributeComparator(String attributeName) {
                   this(attributeName, null, false, new ArrayList());
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute with the help of the given comparator. If no comparator
               * is given, the natural ordering of that attribute's type is used.
              public NodeElementByAttributeComparator(String attributeName, Comparator comparator) {
                   this(attributeName, comparator, false, new ArrayList());
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute either as objects (i.e. "in internal format") or as text
               * (i.e. "in external format") as indicated. The ordering is the natural
               * ordering of that attribute's type (which must implement
               * <code>java.lang.Comparable</code>) in case objects are compared or the
               * natural ordering of <code>java.lang.String</code> in case texts are compared.
              public NodeElementByAttributeComparator(String attributeName, boolean compareAsText) {
                   this(attributeName, null, compareAsText, new ArrayList());
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute according to the natural ordering of that attribute's
               * type (which must implement <code>java.lang.Comparable</code>). In addition it is possible
               * to define the path to a child node with the <code>java.util.Collection</code> subnodes.
               * (List of child node names in the correct order)
              public NodeElementByAttributeComparator(String attributeName, Collection subnodes) {
                   this(attributeName, null, false, subnodes);
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute with the help of the given comparator. If no comparator
               * is given, the natural ordering of that attribute's type is used. In addition it is possible
               * to define the path to a child node with the <code>java.util.Collection</code> subnodes.
               * (List of child node names in the correct order)
              public NodeElementByAttributeComparator(String attributeName, Comparator comparator, Collection subnodes) {
                   this(attributeName, comparator, false, subnodes);
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute either as objects (i.e. "in internal format") or as text
               * (i.e. "in external format") as indicated. The ordering is the natural
               * ordering of that attribute's type (which must implement
               * <code>java.lang.Comparable</code>) in case objects are compared or the
               * natural ordering of <code>java.lang.String</code> in case texts are compared. In addition it is possible
               * to define the path to a child node with the <code>java.util.Collection</code> subnodes.
               * (List of child node names in the correct order)
              public NodeElementByAttributeComparator(String attributeName, boolean compareAsText, Collection subnodes) {
                   this(attributeName, null, compareAsText, subnodes);
               * Internal constructor.
              private NodeElementByAttributeComparator(
                   String attributeName,
                   Comparator comparator,
                   boolean compareAsText,
                   Collection subNodes) {
                   if (attributeName == null)
                        throw new IllegalArgumentException("Attribute name must not be null");
                   if (comparator == null)
                        comparator = DEFAULT;
                   this.attributeName = attributeName;
                   this.comparator = comparator;
                   this.compareAsText = compareAsText;
                   this.sortDirection = true;
                   this.subNodes = subNodes;
               * Sets the sort direction of this comparator to the given direction. The comparator sort in ascending order by default.
               * @see com.sap.tc.webdynpro.clientserver.uielib.standard.api.WDTableColumnSortDirection
              public void setSortDirection(WDTableColumnSortDirection direction){
                   if(direction.equals(WDTableColumnSortDirection.UP)){
                        sortDirection = true;
                   }else if(direction.equals(WDTableColumnSortDirection.DOWN)){
                        sortDirection = false;
               * Compares the given objects which must be instances of <code>IWDNodeElement</code>
               * according to the values of the attribute given at construction time
               * with the help of the comparator given at construction time.
               * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
               * @see com.sap.tc.webdynpro.progmodel.api.IWDNodeElement
              public int compare(Object o1, Object o2) {
                   IWDNodeElement element1 = (IWDNodeElement) o1;
                   IWDNodeElement element2 = (IWDNodeElement) o2;
                   if(subNodes.size() > 0){
                        element1 = getSubNodeElement(element1, 0);
                        element2 = getSubNodeElement(element2, 0);
                   Object attributeValue1 = null;
                   Object attributeValue2 = null;
                   if(element1 != null){
                        attributeValue1 =
                             compareAsText
                                  ? element1.getAttributeAsText(attributeName)
                                  : element1.getAttributeValue(attributeName);
                   if(element2 != null){
                        attributeValue2 =
                             compareAsText
                                  ? element2.getAttributeAsText(attributeName)
                                  : element2.getAttributeValue(attributeName);
                   if(sortDirection){
                        return comparator.compare(attributeValue1, attributeValue2);
                   }else{
                        return comparator.compare(attributeValue2, attributeValue1);
               * Determines recursivly the child node, which have an attribute with the given name.
               * The path to this child node must be specified in the subnodes property of this comparator.
               * Start this method with index = 0.
              private IWDNodeElement getSubNodeElement(IWDNodeElement currentElement, int index){
                   if(currentElement == null || index >= subNodes.size()){
                        //end of recursion
                        return currentElement;
                   }else{
                        return getSubNodeElement(currentElement.node().getChildNode((String)subNodes.toArray()[index], currentElement.index()).getCurrentElement(), index+1);
                        //return getSubNodeElement(currentElement.node().getChildNode((String)subNodes.toArray()[index], currentElement.index()).getElementAt(0), index+1);
               * Name of the attribute used for comparisons.
              private final String attributeName;
               * Comparator used for comparing the attribute's values.
              private final Comparator comparator;
               * Indicates whether attribute values are compared as text (as opposed to
               * "as objects").
              private final boolean compareAsText;
               * Sort direction (true = ascending order, false = descending order)
              private boolean sortDirection;
               * List of child node names
               * (Description of the path from the given context node to the specified attribute)
              private Collection subNodes;

  • Does cleaning sort records and impact on max log size

    I'm looking for confirmation that the act of cleaning logs produces sorted records, equivalent to having inserted them in sorted order to begin with. If that is the case is the memory overhead of cleaning proportional to the maximum log file size, or will it spill to disk to sort? I ask since the max log file size is 1G, and if there is a memory component then it may be relevant to take into consideration.
    On a similar note, is increasing the log file size from 10MB recommended if the database is large (say a TB)? Are there some linear operations (most likely in the admin/maintenance category) that have to iterate over each log file?
    Thanks.

    Hi,
    I'm looking for confirmation that the act of cleaning logs produces sorted records, equivalent to having inserted them in sorted order to begin with.No, that's not exactly true. When records are written (migrated to the end of the log) during the log cleaning process, any clustering (writing of adjacent records in key order) occurs on a per BIN (bottom internal node) basis. So at most 128 records (or DatabaseConfig.setNodeMaxEntries) with adjacent key values are sorted and written out together in this manner. But normally not all records in a BIN will be migrated and I'll describe more about this below.
    If that is the case is the memory overhead of cleaning proportional to the maximum log file size, or will it spill to disk to sort? I ask since the max log file size is 1G, and if there is a memory component then it may be relevant to take into consideration.No, the memory used for sorting in this case is the JE cache itself -- the memory that holds the Btree. The log cleaner thread moves records to be migrated into the Btree (in the cache), and flags them for migration. These records are written lazily the next time their parent Btree node (the BIN I mentioned) needs to be flushed. This can occur for two reasons: 1) when the BIN is evicted from the cache because the cache is full, or 2) during the next checkpoint, since a checkpoint will flush all dirty BINs. The most desirable situation is that the BIN is flushed during the checkpoint, not during eviction, to reduce the number of times that a single BIN is flushed to disk. If a BIN is evicted, it may have to be fetched again later in order to migrate more records as part of the log cleaning process, and this is counterproductive.
    So during this process, the number of records that are written to disk in key order in a cluster, such that they are physically adjacent on disk, is variable. It depends on how many records are processed by cleaner threads, and inserted in their parent BIN for migration, between checkpoint intervals, and whether the BINs are evicted during this period.
    A physical cluster of records includes the BIN itself as well as its child records that are migrated for log cleaning. The fact that the BIN is part of the cluster is beneficial to apps where not all BINs fit in the cache. If a record and its parent BIN are not in cache, and the app reads that record, the BIN and the record must both be fetched from disk. Since they will be in physical proximity to each other on disk, disk head movement is avoided or reduced.
    However, not all of the child records in a BIN will necessarily be part of a physical cluster. If only some of the records in a BIN were processed by the log cleaner before the BIN is flushed by the checkpointer or evictor, then only a subset of the child records will be written as part of the cluster. In other words, even for a single BIN, all the child records in that BIN are not normally written out together in a cluster.
    Clustering is a useful feature and something we would like to enhance in the future. What I've described above is as far as we've gotten with this feature in the currently released and supported product. However, there are two experimental configuration settings that cause additional clustering to occur. These cause additional records to be written to disk when their parent BIN is flushed. If you're interested in trying these, I will be happy to explain them and work with you. But you should be aware that they're not currently in the standard, supported set of features, and are not well tested.
    I'm not sure whether I've given you less information than you need or more than you wanted. :-) If you describe in detail what you're trying to do, and more about your app and performance requirements, I may be able to offer more concrete advice.
    On a similar note, is increasing the log file size from 10MB recommended if the database is large (say a TB)? Are there some linear operations (most likely in the admin/maintenance category) that have to iterate over each log file?Yes, there are such operations and per-log file overhead, and we recommend using using a 20M to 50M log file size for large data sets. Log files larger than 50MB could decrease log cleaner performance.
    --mark                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Problem in ADF Table Sorting Accessor Fields Generated from EJB 3

    Here are the things that I have done:
    1) created EJB entities for Employee and Department based on the HR schema
    2) created an HRFacade session bean
    3) generated DataControl
    4) created a browse page
    5) created an adf read only table with the following fields: employeeId, lastname, and departmentName with row selection, filtering and sorting enaabled.
    when I invoke sorting for the employeeId and lastname fields, the table sorts fine, but...
    when I invoke sorting on the departmentName field (an accessor field), the following error occured:
    WARNING: ADF: Adding the following JSF error message: Definition departmentName of type Attribute is not found in employeesFindAll.
    oracle.jbo.NoDefException: JBO-25058: Definition departmentName of type Attribute is not found in employeesFindAll.
         at oracle.jbo.uicli.binding.JUCtrlValueBinding.findAttributeDef(JUCtrlValueBinding.java:589)
         at oracle.jbo.uicli.binding.JUCtrlValueBinding.findAttributeDef(JUCtrlValueBinding.java:559)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlRangeBinding.__setSortCriteria(FacesCtrlRangeBinding.java:247)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding$FacesModel.setSortCriteria(FacesCtrlHierBinding.java:346)
         at org.apache.myfaces.trinidad.component.UIXCollection.setSortCriteria(UIXCollection.java:464)
         at org.apache.myfaces.trinidad.component.UIXTable.setSortCriteria(UIXTable.java:196)
         at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:260)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:140)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:364)
         at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:147)
         at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:271)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:140)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:364)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:787)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:280)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:165)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.wls.JpsWlsFilter$1.run(JpsWlsFilter.java:96)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.wls.util.JpsWlsUtil.runJaasMode(JpsWlsUtil.java:146)
         at oracle.security.jps.wls.JpsWlsFilter.doFilter(JpsWlsFilter.java:140)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3588)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2200)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Is this a bug or a not supported feature?
    We been stack on this... Help!!!

    I have a similar problem but related to the creation of Project Gantt Chart.
    oracle.jbo.NoDefException: JBO-25058: No se ha encontrado la definición XXXView2 del tipo Atributo en YYYView1.
    this is happened when i try to create a Project Gantt Chart whit 2 view objects that have a parent-child relationship where XXXView2 (SUBTASKS) is the child and YYYView1 (TASK) is the parent.
    still not find the solution.
    This is the bug?

  • Table sorter

    Hi,
         i have to implement a table sorter in one of my webdypro application. I have done all the steps mentioned in one of the blog and have also imported TableSorter.java class. i am getting sorting icons in column headers. but on clicking icon nothing happens...i think there is some problem with the java class which i have imported. So can anybody provide the code of tablesorter.java class.
    Thanks in advance,
        Reena

    Hi Reena,
    Here is the code.Just change the package name.
    * Created on Sep 6, 2007
    * To change the template for this generated file go to
    * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    package ibm.com.tradefund.utils;
    * @author Administrator
    * To change the template for this generated type comment go to
    * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    import java.text.Collator;
    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Comparator;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
    import java.util.StringTokenizer;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractDropDownByIndex;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractDropDownByKey;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractInputField;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDAbstractTableColumn;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDCaption;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDCheckBox;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDLink;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDProgressIndicator;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDRadioButton;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTable;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTableCellEditor;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTableColumn;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTableColumnGroup;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTextEdit;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTextView;
    import com.sap.tc.webdynpro.clientserver.uielib.standard.api.WDTableColumnSortDirection;
    import com.sap.tc.webdynpro.progmodel.api.IWDAction;
    import com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent;
    import com.sap.tc.webdynpro.progmodel.api.IWDNode;
    import com.sap.tc.webdynpro.progmodel.api.IWDNodeElement;
    import com.sap.tc.webdynpro.progmodel.api.IWDViewElement;
    import com.sap.tc.webdynpro.services.sal.localization.api.WDResourceHandler;
    * Helper class that makes a Web Dynpro table UI element sortable (column-wise).
    public final class TableSorter {
          * @param table
          * @param sortAction
          * @param comparators
          * Creates a table sorter for the given table using the given sort action.
          * This constructor must be called from <code>wdDoModifyView()</code>, but
          * usually only when that hook is called for the first time. Store the newly
          * created instance in a context attribute with Java native type
          * <code>com.sap.tc.webdynpro.tests.utils.TableSorter</code>.
          * The given sort action's event handler will be bound to the <code>onSort</code>
          * event of the table and must at least call this table sorter's
          * <code>sort(wdEvent)</code> method.
          * Every column of the table is made sortable if possible according to the
          * following rules.
          * If a comparator is given for a column's ID and it is a
          * <code>NodeElementByAttributeComparator</code>, then that comparator defines
          * both the attribute and the ordering used to sort that column.
          * If any other comparator is given and an attribute can be determined from
          * that column's table cell editor, then that attribute is used to sort that
          * column according to the ordering imposed by the given comparator.
          * If no comparator is given but an attribute can be determined from
          * that column's table cell editor, then that attribute is used to sort that
          * column according to the natural ordering of that attribute's type.
          * Else that column is left untouched.
          * Additionally it is possible to define the sortable columns by their
          * TableColumn UI element ids.
          * @see sort()
          * @see NodeElementByAttributeComparator
          * @see com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTable
         public TableSorter(IWDTable table, IWDAction sortAction, Map comparators) {
              init(table, sortAction, comparators, null);
         public TableSorter(IWDTable table, IWDAction sortAction, Map comparators, String[] sortableColumns) {
              init(table, sortAction, comparators, sortableColumns);
          * Initialisation stuff
         private void init(IWDTable table, IWDAction sortAction, Map comparators, String[] sortableColumns){
              this.table = table;
              if(sortableColumns == null){
                   sortableCols = null;
              }else{
                   sortableCols = new HashMap();
                   for (int i = 0; i < sortableColumns.length; i++) {
                        sortableCols.put(sortableColumns<i>, sortableColumns<i>);
              // sanity checks
              if (sortAction == null)
                   throw new IllegalArgumentException("Sort action must be given");
              if (table == null)
                   throw new IllegalArgumentException("Table must be given");
              if (table.bindingOfDataSource() == null)
                   throw new IllegalArgumentException(
                        "Data source of table with id '" + table.getId() + "' must be bound");
              // make the columns sortable
              String dataSourcePrefix = table.bindingOfDataSource() + ".";
              //TODO: remove the following line since this method is not longer available in later releases
              setComparatorsForColumns(dataSourcePrefix, table.iterateColumns(), comparators);
              setComparatorsForColumns(dataSourcePrefix, table.iterateGroupedColumns(), comparators);
              //set up the table properties
              table.setOnSort(sortAction);
              table.mappingOfOnSort().addSourceMapping(IWDTable.IWDOnSort.COL, "selectedColumn");
              table.mappingOfOnSort().addSourceMapping(IWDTable.IWDOnSort.DIRECTION, "sortDirection");     
          * Try to make the given columns sortable (recusivly, if necessary)
         private void setComparatorsForColumns(String dataSourcePrefix, Iterator columnIterator, Map comparators){
              int index = 0;
              for (Iterator it = columnIterator; it.hasNext(); ++index) { // for every column: try to make it bindable
                   IWDAbstractTableColumn abstractColumn = (IWDAbstractTableColumn) it.next();
                   if(abstractColumn instanceof IWDTableColumn){
                        IWDTableColumn column = (IWDTableColumn)abstractColumn;
                        if(sortableCols == null || sortableCols.containsKey(column.getId())){
                             //try to make this column sortable
                             Comparator comparator = null;
                             if (comparators != null){
                                  comparator = (Comparator)comparators.get(column.getId());
                             NodeElementByAttributeComparator elementComparator = null;     
                             if (comparator instanceof NodeElementByAttributeComparator) {
                                  // the easy one, attribute and ordering are given
                                  elementComparator = (NodeElementByAttributeComparator)comparator;
                             } else { // attribute must be determined
                                  String bindingOfPrimaryProperty = bindingOfPrimaryProperty(column.getTableCellEditor());
                                  if (bindingOfPrimaryProperty == null || !bindingOfPrimaryProperty.startsWith(dataSourcePrefix)){
                                       //no attribute found or outside of data source
                                       column.setSortState(WDTableColumnSortDirection.NOT_SORTABLE);
                                       continue;
                                  String attributeName = bindingOfPrimaryProperty.substring(dataSourcePrefix.length());
                                  Collection subnodes = new ArrayList();
                                  if (attributeName.indexOf('.') >= 0){
                                       //attribute not immediately below data source
                                       String[] tokens = tokenize (attributeName, ".");
                                       for(int i=0; i<tokens.length-1; i++){
                                            subnodes.add(tokens<i>);
                                       attributeName = tokens[tokens.length-1];
                                  if(subnodes.size() == 0){
                                       elementComparator = new NodeElementByAttributeComparator(attributeName, comparator);
                                  }else{
                                       elementComparator = new NodeElementByAttributeComparator(attributeName, comparator, subnodes);
                             // set up internal data structures
                             comparatorForColumn.put(column, elementComparator);
                             //set sort state
                             column.setSortState(WDTableColumnSortDirection.NONE);
                        }else{
                             //column should not be sortable
                             column.setSortState(WDTableColumnSortDirection.NOT_SORTABLE);
                   }else if (abstractColumn instanceof IWDTableColumnGroup){
                        //it's just a column group -> try to bind the columns of the column group
                        IWDTableColumnGroup columnGroup = (IWDTableColumnGroup)abstractColumn;
                        setComparatorsForColumns(dataSourcePrefix, columnGroup.iterateColumns(), comparators);
          * Tokenizes the input string according to the given delimiters. The delimiters will be left out.
          * Example: tokenize("Hello_World", "_") results ["Hello", "World"]
         private String[] tokenize (String input, String delim){
              StringTokenizer tokenizer = new StringTokenizer(input, delim);
              String[] tokens = new String[tokenizer.countTokens()];
              int index = 0;
              while(tokenizer.hasMoreTokens()){
                   tokens[index] = tokenizer.nextToken();
                   index++;
              return tokens;
          * This method must be called from the event handler of this table sorter's
          * sort action. It performs the actual sort operation.
         public void sort(IWDCustomEvent wdEvent, IWDNode dataSource) {
              // find the things we need
              String columnId = wdEvent.getString("selectedColumn");
              String direction = wdEvent.getString("sortDirection");
              IWDTableColumn column = (IWDTableColumn) table.getView().getElement(columnId);
              NodeElementByAttributeComparator elementComparator = (NodeElementByAttributeComparator) comparatorForColumn.get(column);
              if (elementComparator == null){
                   //not a sortable column
                   column.setSortState(WDTableColumnSortDirection.NOT_SORTABLE);
                   return;
              // sorting
              elementComparator.setSortDirection(WDTableColumnSortDirection.valueOf(direction));
              dataSource.sortElements(elementComparator);
          * Returns the binding of the given table cell editor's property that is
          * considered "primary" or <code>null</code> if no such binding exists or no
          * such property can be determined.
         private static final String bindingOfPrimaryProperty(IWDTableCellEditor editor) {
              return editor instanceof IWDViewElement ? bindingOfPrimaryProperty((IWDViewElement) editor) : null;
          * Returns the binding of the given view element's property that is
          * considered "primary" or <code>null</code> if no such binding exists or no
          * such property can be determined.
         private static final String bindingOfPrimaryProperty(IWDViewElement element) {
              if (element instanceof IWDAbstractDropDownByIndex)
                   return ((IWDAbstractDropDownByIndex) element).bindingOfTexts();
              if (element instanceof IWDAbstractDropDownByKey)
                   return ((IWDAbstractDropDownByKey) element).bindingOfSelectedKey();
              if (element instanceof IWDAbstractInputField)
                   return ((IWDAbstractInputField) element).bindingOfValue();
              if (element instanceof IWDCaption)
                   return ((IWDCaption) element).bindingOfText();
              if (element instanceof IWDCheckBox)
                   return ((IWDCheckBox) element).bindingOfChecked();
              if (element instanceof IWDLink)
                   return ((IWDLink) element).bindingOfText();
              if (element instanceof IWDProgressIndicator)
                   return ((IWDProgressIndicator) element).bindingOfPercentValue();
              if (element instanceof IWDRadioButton)
                   return ((IWDRadioButton) element).bindingOfSelectedKey();
              if (element instanceof IWDTextEdit)
                   return ((IWDTextEdit) element).bindingOfValue();
              if (element instanceof IWDTextView)
                   return ((IWDTextView) element).bindingOfText();
              return null;
          * Instance of a comparator according to the ordering imposed by the
          * implementation of <code>Comparable</code>.
         private static final Comparator DEFAULT = new Comparator() {
               * Compares the given objects according to the ordering imposed by the first
               * ones <code>compareTo(Object)</code> function. Furthermore, <code>null</code>
               * is treated to be less than any object.
               * @see java.lang.Comparable#compareTo(java.lang.Object)
               * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
              public int compare(Object o1, Object o2) {
                   if (o1 == null && o2 == null)
                        return 0;
                   if (o1 == null)
                        return -1;
                   if (o2 == null)
                        return +1;
                   if (o1 instanceof Boolean && o2 instanceof Boolean)
                        return o1.toString().compareTo(o2.toString()); // false < true
                   if (o1 instanceof String && o2 instanceof String){
                        //Use a Collator for sorting according to the given Locale
                        Collator collate = Collator.getInstance(WDResourceHandler.getCurrentSessionLocale());
                        return collate.compare(o1, o2);                    
                   return ((Comparable) o1).compareTo((Comparable) o2);
          * Map of table column to comparator (<code>ReversableComparator</code>)
          * used for sorting that column (sortable columns only).
         private Map comparatorForColumn = new HashMap();
          * The table to be sorted.
         private IWDTable table = null;
          * Column-IDs of the columns, which should be sortable
         private Map sortableCols = null;
          * Generic comparator that compares node elements by a given attribute with
          * the help of a given comparator.
         public final class NodeElementByAttributeComparator implements Comparator {
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute according to the natural ordering of that attribute's
               * type (which must implement <code>java.lang.Comparable</code>).
              public NodeElementByAttributeComparator(String attributeName) {
                   this(attributeName, null, false, new ArrayList());
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute with the help of the given comparator. If no comparator
               * is given, the natural ordering of that attribute's type is used.
              public NodeElementByAttributeComparator(String attributeName, Comparator comparator) {
                   this(attributeName, comparator, false, new ArrayList());
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute either as objects (i.e. "in internal format") or as text
               * (i.e. "in external format") as indicated. The ordering is the natural
               * ordering of that attribute's type (which must implement
               * <code>java.lang.Comparable</code>) in case objects are compared or the
               * natural ordering of <code>java.lang.String</code> in case texts are compared.
              public NodeElementByAttributeComparator(String attributeName, boolean compareAsText) {
                   this(attributeName, null, compareAsText, new ArrayList());
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute according to the natural ordering of that attribute's
               * type (which must implement <code>java.lang.Comparable</code>). In addition it is possible
               * to define the path to a child node with the <code>java.util.Collection</code> subnodes.
               * (List of child node names in the correct order)
              public NodeElementByAttributeComparator(String attributeName, Collection subnodes) {
                   this(attributeName, null, false, subnodes);
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute with the help of the given comparator. If no comparator
               * is given, the natural ordering of that attribute's type is used. In addition it is possible
               * to define the path to a child node with the <code>java.util.Collection</code> subnodes.
               * (List of child node names in the correct order)
              public NodeElementByAttributeComparator(String attributeName, Comparator comparator, Collection subnodes) {
                   this(attributeName, comparator, false, subnodes);
               * Creates a new comparator for the given attribute name that compares values
               * of that attribute either as objects (i.e. "in internal format") or as text
               * (i.e. "in external format") as indicated. The ordering is the natural
               * ordering of that attribute's type (which must implement
               * <code>java.lang.Comparable</code>) in case objects are compared or the
               * natural ordering of <code>java.lang.String</code> in case texts are compared. In addition it is possible
               * to define the path to a child node with the <code>java.util.Collection</code> subnodes.
               * (List of child node names in the correct order)
              public NodeElementByAttributeComparator(String attributeName, boolean compareAsText, Collection subnodes) {
                   this(attributeName, null, compareAsText, subnodes);
               * Internal constructor.
              private NodeElementByAttributeComparator(
                   String attributeName,
                   Comparator comparator,
                   boolean compareAsText,
                   Collection subNodes) {
                   if (attributeName == null)
                        throw new IllegalArgumentException("Attribute name must not be null");
                   if (comparator == null)
                        comparator = DEFAULT;
                   this.attributeName = attributeName;
                   this.comparator = comparator;
                   this.compareAsText = compareAsText;
                   this.sortDirection = true;
                   this.subNodes = subNodes;
               * Sets the sort direction of this comparator to the given direction. The comparator sort in ascending order by default.
               * @see com.sap.tc.webdynpro.clientserver.uielib.standard.api.WDTableColumnSortDirection
              public void setSortDirection(WDTableColumnSortDirection direction){
                   if(direction.equals(WDTableColumnSortDirection.UP)){
                        sortDirection = true;
                   }else if(direction.equals(WDTableColumnSortDirection.DOWN)){
                        sortDirection = false;
               * Compares the given objects which must be instances of <code>IWDNodeElement</code>
               * according to the values of the attribute given at construction time
               * with the help of the comparator given at construction time.
               * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
               * @see com.sap.tc.webdynpro.progmodel.api.IWDNodeElement
              public int compare(Object o1, Object o2) {
                   IWDNodeElement element1 = (IWDNodeElement) o1;
                   IWDNodeElement element2 = (IWDNodeElement) o2;
                   if(subNodes.size() > 0){
                        element1 = getSubNodeElement(element1, 0);
                        element2 = getSubNodeElement(element2, 0);
                   Object attributeValue1 = null;
                   Object attributeValue2 = null;
                   if(element1 != null){
                        attributeValue1 =
                             compareAsText
                                  ? element1.getAttributeAsText(attributeName)
                                  : element1.getAttributeValue(attributeName);
                   if(element2 != null){
                        attributeValue2 =
                             compareAsText
                                  ? element2.getAttributeAsText(attributeName)
                                  : element2.getAttributeValue(attributeName);
                   if(sortDirection){
                        return comparator.compare(attributeValue1, attributeValue2);
                   }else{
                        return comparator.compare(attributeValue2, attributeValue1);
               * Determines recursivly the child node, which have an attribute with the given name.
               * The path to this child node must be specified in the subnodes property of this comparator.
               * Start this method with index = 0.
              private IWDNodeElement getSubNodeElement(IWDNodeElement currentElement, int index){
                   if(currentElement == null || index >= subNodes.size()){
                        //end of recursion
                        return currentElement;
                   }else{
                        return getSubNodeElement(currentElement.node().getChildNode((String)subNodes.toArray()[index], currentElement.index()).getCurrentElement(), index+1);
                        //return getSubNodeElement(currentElement.node().getChildNode((String)subNodes.toArray()[index], currentElement.index()).getElementAt(0), index+1);
               * Name of the attribute used for comparisons.
              private final String attributeName;
               * Comparator used for comparing the attribute's values.
              private final Comparator comparator;
               * Indicates whether attribute values are compared as text (as opposed to
               * "as objects").
              private final boolean compareAsText;
               * Sort direction (true = ascending order, false = descending order)
              private boolean sortDirection;
               * List of child node names
               * (Description of the path from the given context node to the specified attribute)
              private Collection subNodes;
    Re: Webdynpro Table: Column Header sort icon not visible
    Regards,
    Mithu

  • How to check internal table sorted or not

    Hi all
    I need to check internal table sorted or not which is without header line and having only one field and six values. please let me know how to check it is sorted or not because i need to display message if it is not sorted.
    thanks,
    Minal

    Hi Minal,
    Go through  this info.
    Sorted tables
    This is the most appropriate type if you need a table which is sorted as you fill it. You fill sorted tables using the INSERT statement. Entries are inserted according to the sort sequence defined through the table key. Any illegal entries are recognized as soon as you try to add them to the table. The response time for key access is logarithmically proportional to the number of table entries, since the system always uses a binary search. Sorted tables are particularly useful for partially sequential processing in a LOOP if you specify the beginning of the table key in the WHERE condition.
    Stable sort
    The option
    SORT <itab> ... STABLE.
    allows you to perform a stable sort, that is, the relative sequence of lines that are unchanged by the sort is not changed. If you do not use the STABLE option, the sort sequence is not preserved. If you sort a table several times by the same key, the sequence of the table entries will change in each sort. However, a stable sort takes longer than an unstable sort.
    Examples
    DATA: BEGIN OF LINE,
            LAND(3)  TYPE C,
            NAME(10) TYPE C,
            AGE      TYPE I,
            WEIGHT   TYPE P DECIMALS 2,
          END OF LINE.
    DATA ITAB LIKE STANDARD TABLE OF LINE WITH NON-UNIQUE KEY LAND.
    LINE-LAND = 'G'.   LINE-NAME   = 'Hans'.
    LINE-AGE  = 20.    LINE-WEIGHT = '80.00'.
    APPEND LINE TO ITAB.
    LINE-LAND = 'USA'. LINE-NAME   = 'Nancy'.
    LINE-AGE  = 35.    LINE-WEIGHT = '45.00'.
    APPEND LINE TO ITAB.
    LINE-LAND = 'USA'. LINE-NAME   = 'Howard'.
    LINE-AGE  = 40.    LINE-WEIGHT = '95.00'.
    APPEND LINE TO ITAB.
    LINE-LAND = 'GB'.  LINE-NAME   = 'Jenny'.
    LINE-AGE  = 18.    LINE-WEIGHT = '50.00'.
    APPEND LINE TO ITAB.
    LINE-LAND = 'F'.   LINE-NAME   = 'Michele'.
    LINE-AGE  = 30.    LINE-WEIGHT = '60.00'.
    APPEND LINE TO ITAB.
    LINE-LAND = 'G'.   LINE-NAME   = 'Karl'.
    LINE-AGE  = 60.    LINE-WEIGHT = '75.00'.
    APPEND LINE TO ITAB.
    PERFORM LOOP_AT_ITAB.
    SORT ITAB.
    PERFORM LOOP_AT_ITAB.
    SORT ITAB.
    PERFORM LOOP_AT_ITAB.
    SORT ITAB STABLE.
    PERFORM LOOP_AT_ITAB.
    SORT ITAB DESCENDING BY LAND WEIGHT ASCENDING.
    PERFORM LOOP_AT_ITAB.
    FORM LOOP_AT_ITAB.
      LOOP AT ITAB INTO LINE.
        WRITE: / LINE-LAND, LINE-NAME, LINE-AGE, LINE-WEIGHT.
      ENDLOOP.
      SKIP.
    ENDFORM.
    ************rewords some points if it is helpful.
    Rgds,
    P.Naganjana Reddy

  • Internal Table Sorting: Order alphabetic letters first then Numarics

    Hello Guys,
    I am guessing this might be very simple.
    After sorting my internal table looks like
    TS1
    TS2
    TS3
    TSA
    TSB
    TSC
    I want it to be like
    TSA
    TSB
    TBC
    TS1
    TS2
    TS3
    Any ideas.
    Thank you.
    Sharat.

    Dear Sharat,
    No explicit option in SORT is available for your requirement.
    Separate records of Alphabetic letters and Numbers. Sort them individually and move them into final internal table.
    Write some code as below
    DATA: BEGIN OF itab OCCURS 0,
          str TYPE string,
          END OF itab,
          wa LIKE itab,
          l_len  TYPE i,
          itab1 LIKE itab OCCURS 0,
          l_sytabix TYPE sy-tabix.
    wa-str = 'TSB'. APPEND wa TO itab.
    wa-str = 'TS2'. APPEND wa TO itab.
    wa-str = 'TS3'. APPEND wa TO itab.
    wa-str = 'TSA'. APPEND wa TO itab.
    wa-str = 'TSC'. APPEND wa TO itab.
    wa-str = 'TS1'. APPEND wa TO itab.
    *Separate records of Alphabetic letters and Numbers
    LOOP AT itab INTO wa.   " ITAB contains all records
      l_sytabix = sy-tabix.
      l_len = STRLEN( wa-str ).
      l_len = l_len - 1.
      IF wa-str+l_len(1) CA '0123456789'.
        APPEND wa TO itab1.
        DELETE itab INDEX l_sytabix.
      ENDIF.
    ENDLOOP.
    SORT itab.   " Sort records of Alphabetic letters
    SORT itab1. " Sort records of Numbers
    APPEND LINES OF itab1 TO itab.  " After sorting, move into final table

  • Dg4odbc 11.2 to mysql desc table issue, query return only one record

    <h2>Hi,
    I have the following set up:
    11g R2 RAC oracle database, dg4odbc 11.2, UnixODBC 2.3 driver manager, MySQL ODBC 5.1.7 Driver on 64 bit Suse SLES 11 server.
    Remote database MySQL version 5.0.67 running on 32 bit linux server.
    I am having the following Issues:
    1. When desc table, sometimes only the first field is shown:
    SQL> desc sub_index@mybilltracker;
    Name Null? Type
    subject_id NOT NULL NUMBER(20)
    SQL> desc "sub_index"@mybilltracker;
    Name Null? Type
    subject_id NOT NULL NUMBER(20)
    Some other times I am able to see the correct table definition:
    SQL> desc "sub_index"@mybilltracker;
    Name Null? Type
    subject_id NOT NULL NUMBER(20)
    sess_id NUMBER(10)
    sess_yr NUMBER(10)
    subject_name VARCHAR2(255)
    SQL> desc sub_index@mybilltracker;
    Name Null? Type
    subject_id NOT NULL NUMBER(20)
    2. Select count(*) returns the total number of rows correctly. Select * or Select "field name" from table returns only one row:
    SQL> select count(*) from "mbt_user"@mybilltracker;
    COUNT(*)
    2
    SQL> select "user_id", "email" from "mbt_user"@mybilltracker; _(always return only one record!)_
    user_id email
    1 [email protected]
    Has anybody seen this? Can somebody help me pinpoint the problem? Thank you!
    </h2>
    =======================================
    <h2>Params in odbc.ini:[ODBC Data Sources]
    myodbc5 = MyODBC 5.17 Driver DSN
    [myodbc5]
    Driver = /usr/local/lib/libmyodbc5.so
    Description = Connector/ODBC 5.17 Driver DSN
    SERVER = *serverip
    PORT = *port
    USER = *user
    Password = *password
    Database = MyBillTracker
    #CHARSET = latin1
    QuotedId = Yes
    AnsiNPW = Yes
    TRACEFILE = /tmp/myodbc-MyBillTracker.trc
    TRACE = OFF
    </h2>
    =======================================
    <h2>params in initmyodbc5.ora
    # HS init parameters
    HS_FDS_CONNECT_INFO = myodbc5
    HS_FDS_TRACE_LEVEL = DEBUG
    HS_FDS_SHAREABLE_NAME = /usr/local/lib/libodbc.so
    HS_LANGUAGE=AMERICAN_AMERICA.WE8ISO8859P1
    HS_FDS_SUPPORT_STATISTICS=FALSE
    # ODBC specific environment variables
    set ODBCINI=/usr/local/etc/odbc.ini
    </h2>
    ===========================================
    Oracle HS Trace file:
    Oracle Corporation --- WEDNESDAY SEP 01 2010 16:11:19.060
    Heterogeneous Agent Release
    11.2.0.1.0
    Oracle Corporation --- WEDNESDAY SEP 01 2010 16:11:19.059
    Version 11.2.0.1.0
    Entered hgogprd
    HOSGIP for "HS_FDS_TRACE_LEVEL" returned "DEBUG"
    Entered hgosdip
    setting HS_OPEN_CURSORS to default of 50
    setting HS_FDS_RECOVERY_ACCOUNT to default of "RECOVER"
    setting HS_FDS_RECOVERY_PWD to default value
    setting HS_FDS_TRANSACTION_LOG to default of HS_TRANSACTION_LOG
    setting HS_IDLE_TIMEOUT to default of 0
    setting HS_FDS_TRANSACTION_ISOLATION to default of "READ_COMMITTED"
    setting HS_NLS_NCHAR to default of "AL32UTF8"
    setting HS_FDS_TIMESTAMP_MAPPING to default of "DATE"
    setting HS_FDS_DATE_MAPPING to default of "DATE"
    setting HS_RPC_FETCH_REBLOCKING to default of "ON"
    setting HS_FDS_FETCH_ROWS to default of "100"
    setting HS_FDS_RESULTSET_SUPPORT to default of "FALSE"
    setting HS_FDS_RSET_RETURN_ROWCOUNT to default of "FALSE"
    setting HS_FDS_PROC_IS_FUNC to default of "FALSE"
    setting HS_FDS_CHARACTER_SEMANTICS to default of "FALSE"
    setting HS_FDS_MAP_NCHAR to default of "TRUE"
    setting HS_NLS_DATE_FORMAT to default of "YYYY-MM-DD HH24:MI:SS"
    setting HS_FDS_REPORT_REAL_AS_DOUBLE to default of "FALSE"
    setting HS_LONG_PIECE_TRANSFER_SIZE to default of "65536"
    setting HS_SQL_HANDLE_STMT_REUSE to default of "FALSE"
    setting HS_FDS_QUERY_DRIVER to default of "TRUE"
    HOSGIP returned value of "FALSE" for HS_FDS_SUPPORT_STATISTICS
    Parameter HS_FDS_QUOTE_IDENTIFIER is not set
    setting HS_KEEP_REMOTE_COLUMN_SIZE to default of "OFF"
    setting HS_FDS_GRAPHIC_TO_MBCS to default of "FALSE"
    setting HS_FDS_MBCS_TO_GRAPHIC to default of "FALSE"
    Default value of 64 assumed for HS_FDS_SQLLEN_INTERPRETATION
    setting HS_CALL_NAME_ISP to "gtw$:SQLTables;gtw$:SQLColumns;gtw$:SQLPrimaryKeys;gtw$:SQLForeignKeys;gtw
    $:SQLProcedures;gtw$:SQLStatistics;gtw$:SQLGetInfo"
    setting HS_FDS_DELAYED_OPEN to default of "TRUE"
    setting HS_FDS_WORKAROUNDS to default of "0"
    Exiting hgosdip, rc=0
    ORACLE_SID is "myodbc5"
    Product-Info:
    Port Rls/Upd:1/0 PrdStat:0
    Agent:Oracle Database Gateway for ODBC
    Facility:hsa
    Class:ODBC, ClassVsn:11.2.0.1.0_0008, Instance:myodbc5
    Exiting hgogprd, rc=0
    Entered hgoinit
    HOCXU_COMP_CSET=1
    HOCXU_DRV_CSET=31
    HOCXU_DRV_NCHAR=873
    HOCXU_DB_CSET=873
    HOCXU_SEM_VER=112000
    Entered hgolofn at 2010/09/01-16:11:19
    HOSGIP for "HS_FDS_SHAREABLE_NAME" returned "/usr/local/lib/libodbc.so"
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x159540
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1596f0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x159f20
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x15b230
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x163420
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x163880
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1661c0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1678f0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x168100
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x169c60
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x169c70
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16b3c0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16e640
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16ea00
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1705e0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1711d0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x171500
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1733a0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x173810
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x175870
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x175630
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x15bb50
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x15d4a0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x160e10
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x162cd0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x164400
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x167360
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x168a50
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x169fd0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16ba60
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16bfb0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16d2c0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16deb0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16f4a0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x16f760
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x170230
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x171cc0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1721e0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1727d0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x172e10
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x173ae0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x176ca0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1752b0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x1785b0
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Entered hgolofns at 2010/09/01-16:11:19
    symbol_peflctx=0x179260
    hoaerr:0
    Exiting hgolofns at 2010/09/01-16:11:19
    Exiting hgolofn, rc=0 at 2010/09/01-16:11:19
    HOSGIP for "HS_OPEN_CURSORS" returned "50"
    HOSGIP for "HS_FDS_FETCH_ROWS" returned "100"
    HOSGIP for "HS_LONG_PIECE_TRANSFER_SIZE" returned "65536"
    HOSGIP for "HS_NLS_NUMERIC_CHARACTER" returned ".,"
    HOSGIP for "HS_KEEP_REMOTE_COLUMN_SIZE" returned "OFF"
    HOSGIP for "HS_FDS_DELAYED_OPEN" returned "TRUE"
    HOSGIP for "HS_FDS_WORKAROUNDS" returned "0"
    HOSGIP for "HS_FDS_MBCS_TO_GRAPHIC" returned "FALSE"
    HOSGIP for "HS_FDS_GRAPHIC_TO_MBCS" returned "FALSE"
    Invalid value of 64 given for HS_FDS_SQLLEN_INTERPRETATION
    treat_SQLLEN_as_compiled = 1
    Exiting hgoinit, rc=0 at 2010/09/01-16:11:19
    Entered hgolgon at 2010/09/01-16:11:19
    reco:0, name:oracle, tflag:0
    Entered hgosuec at 2010/09/01-16:11:19
    Exiting hgosuec, rc=0 at 2010/09/01-16:11:19
    HOSGIP for "HS_FDS_RECOVERY_ACCOUNT" returned "RECOVER"
    HOSGIP for "HS_FDS_TRANSACTION_LOG" returned "HS_TRANSACTION_LOG"
    HOSGIP for "HS_FDS_TIMESTAMP_MAPPING" returned "DATE"
    HOSGIP for "HS_FDS_DATE_MAPPING" returned "DATE"
    HOSGIP for "HS_FDS_CHARACTER_SEMANTICS" returned "FALSE"
    HOSGIP for "HS_FDS_MAP_NCHAR" returned "TRUE"
    HOSGIP for "HS_FDS_RESULTSET_SUPPORT" returned "FALSE"
    HOSGIP for "HS_FDS_RSET_RETURN_ROWCOUNT" returned "FALSE"
    HOSGIP for "HS_FDS_PROC_IS_FUNC" returned "FALSE"
    HOSGIP for "HS_FDS_REPORT_REAL_AS_DOUBLE" returned "FALSE"
    using oracle as default value for "HS_FDS_DEFAULT_OWNER"
    HOSGIP for "HS_SQL_HANDLE_STMT_REUSE" returned "FALSE"
    Entered hgocont at 2010/09/01-16:11:19
    HS_FDS_CONNECT_INFO = "myodbc5"
    RC=-1 from HOSGIP for "HS_FDS_CONNECT_STRING"
    Entered hgogenconstr at 2010/09/01-16:11:19
    dsn:myodbc5, name:oracle
    optn:
    Entered hgocip at 2010/09/01-16:11:19
    dsn:myodbc5
    Exiting hgocip, rc=0 at 2010/09/01-16:11:19
    Exiting hgogenconstr, rc=0 at 2010/09/01-16:11:19
    Entered hgolosf at 2010/09/01-16:11:19
    Exiting hgolosf, rc=0 at 2010/09/01-16:11:19
    DriverName:libmyodbc5.so, DriverVer:05.01.0007
    DBMS Name:MySQL, DBMS Version:5.0.67
    Exiting hgocont, rc=0 at 2010/09/01-16:11:19
    SQLGetInfo returns Y for SQL_CATALOG_NAME
    SQLGetInfo returns 192 for SQL_MAX_CATALOG_NAME_LEN
    Exiting hgolgon, rc=0 at 2010/09/01-16:11:19
    Entered hgoulcp at 2010/09/01-16:11:19
    Entered hgowlst at 2010/09/01-16:11:19
    Exiting hgowlst, rc=0 at 2010/09/01-16:11:19
    SQLGetInfo returns 0x0 for SQL_OWNER_USAGE
    TXN Capable:3, Isolation Option:0xf
    SQLGetInfo returns 0 for SQL_MAX_SCHEMA_NAME_LEN
    SQLGetInfo returns 192 for SQL_MAX_TABLE_NAME_LEN
    SQLGetInfo returns 192 for SQL_MAX_PROCEDURE_NAME_LEN
    SQLGetInfo returns ` (0x60) for SQL_IDENTIFIER_QUOTE_CHAR
    SQLGetInfo returns Y for SQL_COLUMN_ALIAS
    4 instance capabilities will be uploaded
    capno:1964, context:0x00000000, add-info: 0
    capno:1989, context:0x00000000, add-info: 0
    capno:1991, context:0x0001ffff, add-info: 0
    capno:1992, context:0x0001ffff, add-info: 1, translation:"`"
    Exiting hgoulcp, rc=0 at 2010/09/01-16:11:19
    Entered hgouldt at 2010/09/01-16:11:19
    NO instance DD translations were uploaded
    Exiting hgouldt, rc=0 at 2010/09/01-16:11:19
    Entered hgobegn at 2010/09/01-16:11:19
    tflag:0 , initial:1
    hoi:0x15d8f088, ttid (len 34) is ...
    00: 47454D53 2E4C534F 2E4C4F43 414C2E31 [GEMS.LSO.LOCAL.1]
    10: 37373837 3164662E 31302E35 342E3533 [77871df.10.54.53]
    20: 3938 [98]
    tbid (len 31) is ...
    00: 47454D53 2E4C534F 2E4C4F43 414C5B31 [GEMS.LSO.LOCAL[1]
    10: 302E3534 2E353339 385D5B31 2E345D [0.54.5398][1.4]]
    Exiting hgobegn, rc=0 at 2010/09/01-16:11:19
    Entered hgodtab at 2010/09/01-16:11:19
    count:1
    table: mbt_user
    Allocate hoada[0] @ 0x7a6440
    Entered hgopcda at 2010/09/01-16:11:19
    Column:1(user_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:19
    Entered hgopcda at 2010/09/01-16:11:19
    Column:2(email): dtype:12 (VARCHAR), prc/scl:255/0, nullbl:0, octet:255, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:19
    Entered hgopcda at 2010/09/01-16:11:19
    Column:3(last_logged_in): dtype:93 (TIMESTAMP), prc/scl:19/0, nullbl:1, octet:255, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:19
    Entered hgopcda at 2010/09/01-16:11:19
    Column:4(mailing_list): dtype:-7 (BIT), prc/scl:1/0, nullbl:1, octet:255, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:19
    Entered hgopcda at 2010/09/01-16:11:19
    Column:5(password): dtype:-1 (LONGVARCHAR), prc/scl:65535/0, nullbl:0, octet:65535, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:19
    The hoada for table mbt_user follows...
    hgodtab, line 876: Printing hoada @ 0x7a6440
    MAX:5, ACTUAL:5, BRC:1, WHT=6 (TABLE_DESCRIBE)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 0 0 0/ 0 0 0 220 password
    Exiting hgodtab, rc=0 at 2010/09/01-16:11:19
    Entered hgodafr, cursor id 0 at 2010/09/01-16:11:19
    Free hoada @ 0x7a6440
    Exiting hgodafr, rc=0 at 2010/09/01-16:11:19
    Entered hgopars, cursor id 1 at 2010/09/01-16:11:19
    type:0
    SQL text from hgopars, id=1, len=34 ...
    00: 53454C45 43542043 4F554E54 282A2920 [SELECT COUNT(*) ]
    10: 46524F4D 20606D62 745F7573 65726020 [FROM `mbt_user` ]
    20: 4131 [A1]
    Exiting hgopars, rc=0 at 2010/09/01-16:11:19
    Entered hgoopen, cursor id 1 at 2010/09/01-16:11:19
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/01-16:11:19
    Entered hgodscr, cursor id 1 at 2010/09/01-16:11:19
    Allocate hoada @ 0x7a6440
    Entered hgopcda at 2010/09/01-16:11:19
    Column:1(COUNT(*)): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:0, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:19
    hgodscr, line 880: Printing hoada @ 0x7a6440
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    Exiting hgodscr, rc=0 at 2010/09/01-16:11:19
    Entered hgoftch, cursor id 1 at 2010/09/01-16:11:19
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/01-16:11:19
    Entered hgoftch, cursor id 1 at 2010/09/01-16:11:19
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:1, ACTUAL:1, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/01-16:11:19
    Entered hgoclse, cursor id 1 at 2010/09/01-16:11:26
    Exiting hgoclse, rc=0 at 2010/09/01-16:11:26
    Entered hgodafr, cursor id 1 at 2010/09/01-16:11:26
    Free hoada @ 0x7a6440
    Exiting hgodafr, rc=0 at 2010/09/01-16:11:26
    Entered hgopars, cursor id 1 at 2010/09/01-16:11:26
    type:0
    SQL text from hgopars, id=1, len=49 ...
    00: 53454C45 43542041 312E6075 7365725F [SELECT A1.`user_]
    10: 6964602C 41312E60 656D6169 6C602046 [id`,A1.`email` F]
    20: 524F4D20 606D6274 5F757365 72602041 [ROM `mbt_user` A]
    30: 31 [1]
    Exiting hgopars, rc=0 at 2010/09/01-16:11:26
    Entered hgoopen, cursor id 1 at 2010/09/01-16:11:26
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/01-16:11:26
    Entered hgodscr, cursor id 1 at 2010/09/01-16:11:26
    Allocate hoada @ 0x7a6440
    Entered hgopcda at 2010/09/01-16:11:26
    Column:1(user_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:26
    Entered hgopcda at 2010/09/01-16:11:26
    Column:2(email): dtype:12 (VARCHAR), prc/scl:255/0, nullbl:0, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:26
    hgodscr, line 880: Printing hoada @ 0x7a6440
    MAX:2, ACTUAL:2, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    Exiting hgodscr, rc=0 at 2010/09/01-16:11:26
    Entered hgoftch, cursor id 1 at 2010/09/01-16:11:26
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:2, ACTUAL:2, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLBindCol: column 2, cdatatype: 1, bflsz: 256
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    SQLFetch: row: 1, column 2, bflsz: 256, bflar: 21
    SQLFetch: row: 1, column 2, bflsz: 256, bflar: 21, (bfl: 255, mbl: 255)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/01-16:11:26
    Entered hgoftch, cursor id 1 at 2010/09/01-16:11:26
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:2, ACTUAL:2, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 21 255 0/ 0 0 0 200 email
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/01-16:11:26
    Entered hgoclse, cursor id 1 at 2010/09/01-16:11:39
    Exiting hgoclse, rc=0 at 2010/09/01-16:11:39
    Entered hgodafr, cursor id 1 at 2010/09/01-16:11:39
    Free hoada @ 0x7a6440
    Exiting hgodafr, rc=0 at 2010/09/01-16:11:39
    Entered hgopars, cursor id 1 at 2010/09/01-16:11:39
    type:0
    SQL text from hgopars, id=1, len=101 ...
    00: 53454C45 43542041 312E6075 7365725F [SELECT A1.`user_]
    10: 6964602C 41312E60 656D6169 6C602C41 [id`,A1.`email`,A]
    20: 312E606C 6173745F 6C6F6767 65645F69 [1.`last_logged_i]
    30: 6E602C41 312E606D 61696C69 6E675F6C [n`,A1.`mailing_l]
    40: 69737460 2C41312E 60706173 73776F72 [ist`,A1.`passwor]
    50: 64602046 524F4D20 606D6274 5F757365 [d` FROM `mbt_use]
    60: 72602041 31 [r` A1]
    Exiting hgopars, rc=0 at 2010/09/01-16:11:39
    Entered hgoopen, cursor id 1 at 2010/09/01-16:11:39
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/01-16:11:39
    Entered hgodscr, cursor id 1 at 2010/09/01-16:11:39
    Allocate hoada @ 0x7a6440
    Entered hgopcda at 2010/09/01-16:11:39
    Column:1(user_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:39
    Entered hgopcda at 2010/09/01-16:11:39
    Column:2(email): dtype:12 (VARCHAR), prc/scl:255/0, nullbl:0, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:39
    Entered hgopcda at 2010/09/01-16:11:39
    Column:3(last_logged_in): dtype:93 (TIMESTAMP), prc/scl:19/0, nullbl:1, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:39
    Entered hgopcda at 2010/09/01-16:11:39
    Column:4(mailing_list): dtype:-7 (BIT), prc/scl:1/0, nullbl:1, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:39
    Entered hgopcda at 2010/09/01-16:11:39
    Column:5(password): dtype:-1 (LONGVARCHAR), prc/scl:65535/0, nullbl:0, octet:65535, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/01-16:11:39
    hgodscr, line 880: Printing hoada @ 0x7a6440
    MAX:5, ACTUAL:5, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 0 0 0/ 0 0 0 220 password
    Exiting hgodscr, rc=0 at 2010/09/01-16:11:39
    Entered hgoftch, cursor id 1 at 2010/09/01-16:11:39
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:5, ACTUAL:5, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 766 0 0/ 0 0 0 220 password
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLBindCol: column 2, cdatatype: 1, bflsz: 256
    SQLBindCol: column 3, cdatatype: 93, bflsz: 16
    SQLBindCol: column 4, cdatatype: -28, bflsz: 1
    SQLBindCol: column 5, cdatatype: 1, bflsz: 767
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    SQLFetch: row: 1, column 2, bflsz: 256, bflar: 21
    SQLFetch: row: 1, column 2, bflsz: 256, bflar: 21, (bfl: 255, mbl: 255)
    SQLFetch: row: 1, column 3, bflsz: 16, bflar: 16
    SQLFetch: row: 1, column 3, bflsz: 16, bflar: 16, (bfl: 16, mbl: 16)
    SQLFetch: row: 1, column 4, bflsz: 1, bflar: 1
    SQLFetch: row: 1, column 4, bflsz: 1, bflar: 1, (bfl: 1, mbl: 1)
    SQLFetch: row: 1, column 5, bflsz: 767, bflar: 40
    SQLFetch: row: 1, column 5, bflsz: 767, bflar: 40, (bfl: 766, mbl: 0)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/01-16:11:39
    Entered hgoftch, cursor id 1 at 2010/09/01-16:11:39
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:5, ACTUAL:5, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 21 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 766 0 0/ 0 0 0 220 password
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/01-16:11:39
    Entered hgoclse, cursor id 1 at 2010/09/01-16:11:45
    Exiting hgoclse, rc=0 at 2010/09/01-16:11:45
    Entered hgodafr, cursor id 1 at 2010/09/01-16:11:45
    Free hoada @ 0x7a6440
    Exiting hgodafr, rc=0 at 2010/09/01-16:11:45
    Entered hgocomm at 2010/09/01-16:11:45
    keepinfo:0, tflag:1
    00: 47454D53 2E4C534F 2E4C4F43 414C2E31 [GEMS.LSO.LOCAL.1]
    10: 37373837 3164662E 31302E35 342E3533 [77871df.10.54.53]
    20: 3938 [98]
    tbid (len 31) is ...
    00: 47454D53 2E4C534F 2E4C4F43 414C5B31 [GEMS.LSO.LOCAL[1]
    10: 302E3534 2E353339 385D5B31 2E345D [0.54.5398][1.4]]
    cmt(0):
    Entered hgocpctx at 2010/09/01-16:11:45
    Exiting hgocpctx, rc=0 at 2010/09/01-16:11:45
    Exiting hgocomm, rc=0 at 2010/09/01-16:11:45
    Entered hgolgof at 2010/09/01-16:11:45
    tflag:1
    Exiting hgolgof, rc=0 at 2010/09/01-16:11:45
    Entered hgoexit at 2010/09/01-16:11:45
    Exiting hgoexit, rc=0

    <h2>This is the scenario where describe table only shows the first field during the first SQLPlus session. I closed the first SQLPlus session, simply opened a new SQLPlus session. Describe table shows all column definitions of MySQL table this time. You can see that there are three records in tracking_list table, however, select * from "tracking_list"@mybilltracker only retruns one record.</h2>
    First SQLPlus Session:
    SQL> describe "tracking_list"@mybilltracker;
    Name Null? Type
    list_id NUMBER(20)
    SQL> select count(*) from "tracking_list"@mybilltracker;
    COUNT(*)
    3
    SQL> select * from "tracking_list"@mybilltracker;
    list_id
    1
    SQL> describe "tracking_list"@mybilltracker;
    Name Null? Type
    list_id NUMBER(20)
    SQL> exit
    ========================================
    Second SQLPlus Session:
    Connected.
    SQL> describe "tracking_list"@mybilltracker;
    Name Null? Type
    list_id NUMBER(20)
    last_updt_date DATE
    list_create_date DATE
    list_name NOT NULL VARCHAR2(255)
    list_yr NOT NULL NUMBER(10)
    user_id NUMBER(20)
    SQL> select count(*) from "tracking_list"@mybilltracker;
    COUNT(*)
    3
    SQL> select * from "tracking_list"@mybilltracker;
    list_id last_updt list_crea
    list_name
    list_yr user_id
    1 02-SEP-10 02-SEP-10
    List 1
    2010 1
    SQL> exit
    =============================================
    HS trace file for the first SQLPlus session:
    Oracle Corporation --- THURSDAY SEP 02 2010 09:55:46.523
    Heterogeneous Agent Release
    11.2.0.1.0
    Oracle Corporation --- THURSDAY SEP 02 2010 09:55:46.522
    Version 11.2.0.1.0
    Entered hgogprd
    HOSGIP for "HS_FDS_TRACE_LEVEL" returned "DEBUG"
    Entered hgosdip
    setting HS_OPEN_CURSORS to default of 50
    setting HS_FDS_RECOVERY_ACCOUNT to default of "RECOVER"
    setting HS_FDS_RECOVERY_PWD to default value
    setting HS_FDS_TRANSACTION_LOG to default of HS_TRANSACTION_LOG
    setting HS_IDLE_TIMEOUT to default of 0
    setting HS_FDS_TRANSACTION_ISOLATION to default of "READ_COMMITTED"
    setting HS_NLS_NCHAR to default of "AL32UTF8"
    setting HS_FDS_TIMESTAMP_MAPPING to default of "DATE"
    setting HS_FDS_DATE_MAPPING to default of "DATE"
    setting HS_RPC_FETCH_REBLOCKING to default of "ON"
    setting HS_FDS_FETCH_ROWS to default of "100"
    setting HS_FDS_RESULTSET_SUPPORT to default of "FALSE"
    setting HS_FDS_RSET_RETURN_ROWCOUNT to default of "FALSE"
    setting HS_FDS_PROC_IS_FUNC to default of "FALSE"
    setting HS_FDS_CHARACTER_SEMANTICS to default of "FALSE"
    setting HS_FDS_MAP_NCHAR to default of "TRUE"
    setting HS_NLS_DATE_FORMAT to default of "YYYY-MM-DD HH24:MI:SS"
    setting HS_FDS_REPORT_REAL_AS_DOUBLE to default of "FALSE"
    setting HS_LONG_PIECE_TRANSFER_SIZE to default of "65536"
    setting HS_SQL_HANDLE_STMT_REUSE to default of "FALSE"
    setting HS_FDS_QUERY_DRIVER to default of "TRUE"
    HOSGIP returned value of "FALSE" for HS_FDS_SUPPORT_STATISTICS
    Parameter HS_FDS_QUOTE_IDENTIFIER is not set
    setting HS_KEEP_REMOTE_COLUMN_SIZE to default of "OFF"
    setting HS_FDS_GRAPHIC_TO_MBCS to default of "FALSE"
    setting HS_FDS_MBCS_TO_GRAPHIC to default of "FALSE"
    Default value of 64 assumed for HS_FDS_SQLLEN_INTERPRETATION
    setting HS_CALL_NAME_ISP to "gtw$:SQLTables;gtw$:SQLColumns;gtw$:SQLPrimaryKeys;gtw$:SQLForeignKeys;gtw$:SQLProcedures;gtw$:SQLStatistics;gtw$:SQLGetInfo"
    setting HS_FDS_DELAYED_OPEN to default of "TRUE"
    setting HS_FDS_WORKAROUNDS to default of "0"
    Exiting hgosdip, rc=0
    ORACLE_SID is "myodbc5"
    Product-Info:
    Port Rls/Upd:1/0 PrdStat:0
    Agent:Oracle Database Gateway for ODBC
    Facility:hsa
    Class:ODBC, ClassVsn:11.2.0.1.0_0008, Instance:myodbc5
    Exiting hgogprd, rc=0
    Entered hgoinit
    HOCXU_COMP_CSET=1
    HOCXU_DRV_CSET=31
    HOCXU_DRV_NCHAR=873
    HOCXU_DB_CSET=873
    HOCXU_SEM_VER=112000
    Entered hgolofn at 2010/09/02-09:55:46
    HOSGIP for "HS_FDS_SHAREABLE_NAME" returned "/usr/local/lib/libodbc.so"
    Entered hgolofns at 2010/09/02-09:55:46
    symbol_peflctx=0xdc523540
    hoaerr:0
    Exiting hgolofns at 2010/09/02-09:55:46
    ......(repeating .....)
    Entered hgolofns at 2010/09/02-09:55:46
    symbol_peflctx=0xdc543260
    hoaerr:0
    Exiting hgolofns at 2010/09/02-09:55:46
    Exiting hgolofn, rc=0 at 2010/09/02-09:55:46
    HOSGIP for "HS_OPEN_CURSORS" returned "50"
    HOSGIP for "HS_FDS_FETCH_ROWS" returned "100"
    HOSGIP for "HS_LONG_PIECE_TRANSFER_SIZE" returned "65536"
    HOSGIP for "HS_NLS_NUMERIC_CHARACTER" returned ".,"
    HOSGIP for "HS_KEEP_REMOTE_COLUMN_SIZE" returned "OFF"
    HOSGIP for "HS_FDS_DELAYED_OPEN" returned "TRUE"
    HOSGIP for "HS_FDS_WORKAROUNDS" returned "0"
    HOSGIP for "HS_FDS_MBCS_TO_GRAPHIC" returned "FALSE"
    HOSGIP for "HS_FDS_GRAPHIC_TO_MBCS" returned "FALSE"
    Invalid value of 64 given for HS_FDS_SQLLEN_INTERPRETATION
    treat_SQLLEN_as_compiled = 1
    Exiting hgoinit, rc=0 at 2010/09/02-09:55:46
    Entered hgolgon at 2010/09/02-09:55:46
    reco:0, name:oracle, tflag:0
    Entered hgosuec at 2010/09/02-09:55:46
    Exiting hgosuec, rc=0 at 2010/09/02-09:55:46
    HOSGIP for "HS_FDS_RECOVERY_ACCOUNT" returned "RECOVER"
    HOSGIP for "HS_FDS_TRANSACTION_LOG" returned "HS_TRANSACTION_LOG"
    HOSGIP for "HS_FDS_TIMESTAMP_MAPPING" returned "DATE"
    HOSGIP for "HS_FDS_DATE_MAPPING" returned "DATE"
    HOSGIP for "HS_FDS_CHARACTER_SEMANTICS" returned "FALSE"
    HOSGIP for "HS_FDS_MAP_NCHAR" returned "TRUE"
    HOSGIP for "HS_FDS_RESULTSET_SUPPORT" returned "FALSE"
    HOSGIP for "HS_FDS_RSET_RETURN_ROWCOUNT" returned "FALSE"
    HOSGIP for "HS_FDS_PROC_IS_FUNC" returned "FALSE"
    HOSGIP for "HS_FDS_REPORT_REAL_AS_DOUBLE" returned "FALSE"
    using oracle as default value for "HS_FDS_DEFAULT_OWNER"
    HOSGIP for "HS_SQL_HANDLE_STMT_REUSE" returned "FALSE"
    Entered hgocont at 2010/09/02-09:55:46
    HS_FDS_CONNECT_INFO = "myodbc5"
    RC=-1 from HOSGIP for "HS_FDS_CONNECT_STRING"
    Entered hgogenconstr at 2010/09/02-09:55:46
    dsn:myodbc5, name:oracle
    optn:
    Entered hgocip at 2010/09/02-09:55:46
    dsn:myodbc5
    Exiting hgocip, rc=0 at 2010/09/02-09:55:46
    Exiting hgogenconstr, rc=0 at 2010/09/02-09:55:46
    Entered hgolosf at 2010/09/02-09:55:46
    Exiting hgolosf, rc=0 at 2010/09/02-09:55:46
    DriverName:libmyodbc5.so, DriverVer:05.01.0007
    DBMS Name:MySQL, DBMS Version:5.0.67
    Exiting hgocont, rc=0 at 2010/09/02-09:55:46
    SQLGetInfo returns Y for SQL_CATALOG_NAME
    SQLGetInfo returns 192 for SQL_MAX_CATALOG_NAME_LEN
    Exiting hgolgon, rc=0 at 2010/09/02-09:55:46
    Entered hgoulcp at 2010/09/02-09:55:46
    Entered hgowlst at 2010/09/02-09:55:46
    Exiting hgowlst, rc=0 at 2010/09/02-09:55:46
    SQLGetInfo returns 0x0 for SQL_OWNER_USAGE
    TXN Capable:3, Isolation Option:0xf
    SQLGetInfo returns 0 for SQL_MAX_SCHEMA_NAME_LEN
    SQLGetInfo returns 192 for SQL_MAX_TABLE_NAME_LEN
    SQLGetInfo returns 192 for SQL_MAX_PROCEDURE_NAME_LEN
    SQLGetInfo returns ` (0x60) for SQL_IDENTIFIER_QUOTE_CHAR
    SQLGetInfo returns Y for SQL_COLUMN_ALIAS
    4 instance capabilities will be uploaded
    capno:1964, context:0x00000000, add-info: 0
    capno:1989, context:0x00000000, add-info: 0
    capno:1991, context:0x0001ffff, add-info: 0
    capno:1992, context:0x0001ffff, add-info: 1, translation:"`"
    Exiting hgoulcp, rc=0 at 2010/09/02-09:55:46
    Entered hgouldt at 2010/09/02-09:55:46
    NO instance DD translations were uploaded
    Exiting hgouldt, rc=0 at 2010/09/02-09:55:46
    Entered hgobegn at 2010/09/02-09:55:46
    tflag:0 , initial:1
    hoi:0x8b4b52f8, ttid (len 34) is ...
    00: 47454D53 2E4C534F 2E4C4F43 414C2E31 [GEMS.LSO.LOCAL.1]
    10: 37373837 3164662E 33322E36 382E3335 [77871df.32.68.35]
    20: 3630 [60]
    tbid (len 31) is ...
    00: 47454D53 2E4C534F 2E4C4F43 414C5B33 [GEMS.LSO.LOCAL[3]
    10: 322E3638 2E333536 305D5B31 2E345D [2.68.3560][1.4]]
    Exiting hgobegn, rc=0 at 2010/09/02-09:55:46
    Entered hgodtab at 2010/09/02-09:55:46
    count:1
    table: mbt_user
    Allocate hoada[0] @ 0x7a6440
    Entered hgopcda at 2010/09/02-09:55:46
    Column:1(user_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:46
    Entered hgopcda at 2010/09/02-09:55:46
    Column:2(email): dtype:12 (VARCHAR), prc/scl:255/0, nullbl:0, octet:255, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:46
    Entered hgopcda at 2010/09/02-09:55:46
    Column:3(last_logged_in): dtype:93 (TIMESTAMP), prc/scl:19/0, nullbl:1, octet:255, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:46
    Entered hgopcda at 2010/09/02-09:55:46
    Column:4(mailing_list): dtype:-7 (BIT), prc/scl:1/0, nullbl:1, octet:255, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:46
    Entered hgopcda at 2010/09/02-09:55:46
    Column:5(password): dtype:-1 (LONGVARCHAR), prc/scl:65535/0, nullbl:0, octet:65535, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:46
    The hoada for table mbt_user follows...
    hgodtab, line 876: Printing hoada @ 0x7a6440
    MAX:5, ACTUAL:5, BRC:1, WHT=6 (TABLE_DESCRIBE)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 0 0 0/ 0 0 0 220 password
    Exiting hgodtab, rc=0 at 2010/09/02-09:55:46
    Entered hgodafr, cursor id 0 at 2010/09/02-09:55:46
    Free hoada @ 0x7a6440
    Exiting hgodafr, rc=0 at 2010/09/02-09:55:46
    Entered hgopars, cursor id 1 at 2010/09/02-09:55:52
    type:0
    SQL text from hgopars, id=1, len=101 ...
    00: 53454C45 43542041 312E6075 7365725F [SELECT A1.`user_]
    10: 6964602C 41312E60 656D6169 6C602C41 [id`,A1.`email`,A]
    20: 312E606C 6173745F 6C6F6767 65645F69 [1.`last_logged_i]
    30: 6E602C41 312E606D 61696C69 6E675F6C [n`,A1.`mailing_l]
    40: 69737460 2C41312E 60706173 73776F72 [ist`,A1.`passwor]
    50: 64602046 524F4D20 606D6274 5F757365 [d` FROM `mbt_use]
    60: 72602041 31 [r` A1]
    Exiting hgopars, rc=0 at 2010/09/02-09:55:52
    Entered hgoopen, cursor id 1 at 2010/09/02-09:55:52
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/02-09:55:52
    Entered hgodscr, cursor id 1 at 2010/09/02-09:55:52
    Allocate hoada @ 0x7a63a0
    Entered hgopcda at 2010/09/02-09:55:52
    Column:1(user_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:52
    Entered hgopcda at 2010/09/02-09:55:52
    Column:2(email): dtype:12 (VARCHAR), prc/scl:255/0, nullbl:0, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:52
    Entered hgopcda at 2010/09/02-09:55:52
    Column:3(last_logged_in): dtype:93 (TIMESTAMP), prc/scl:19/0, nullbl:1, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:52
    Entered hgopcda at 2010/09/02-09:55:52
    Column:4(mailing_list): dtype:-7 (BIT), prc/scl:1/0, nullbl:1, octet:255, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:52
    Entered hgopcda at 2010/09/02-09:55:52
    Column:5(password): dtype:-1 (LONGVARCHAR), prc/scl:65535/0, nullbl:0, octet:65535, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-09:55:52
    hgodscr, line 880: Printing hoada @ 0x7a63a0
    MAX:5, ACTUAL:5, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 0 0 0/ 0 0 0 220 password
    Exiting hgodscr, rc=0 at 2010/09/02-09:55:52
    Entered hgoftch, cursor id 1 at 2010/09/02-09:55:52
    hgoftch, line 130: Printing hoada @ 0x7a63a0
    MAX:5, ACTUAL:5, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 255 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 766 0 0/ 0 0 0 220 password
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLBindCol: column 2, cdatatype: 1, bflsz: 256
    SQLBindCol: column 3, cdatatype: 93, bflsz: 16
    SQLBindCol: column 4, cdatatype: -28, bflsz: 1
    SQLBindCol: column 5, cdatatype: 1, bflsz: 767
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    SQLFetch: row: 1, column 2, bflsz: 256, bflar: 21
    SQLFetch: row: 1, column 2, bflsz: 256, bflar: 21, (bfl: 255, mbl: 255)
    SQLFetch: row: 1, column 3, bflsz: 16, bflar: 16
    SQLFetch: row: 1, column 3, bflsz: 16, bflar: 16, (bfl: 16, mbl: 16)
    SQLFetch: row: 1, column 4, bflsz: 1, bflar: 1
    SQLFetch: row: 1, column 4, bflsz: 1, bflar: 1, (bfl: 1, mbl: 1)
    SQLFetch: row: 1, column 5, bflsz: 767, bflar: 40
    SQLFetch: row: 1, column 5, bflsz: 767, bflar: 40, (bfl: 766, mbl: 0)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/02-09:55:52
    Entered hgoftch, cursor id 1 at 2010/09/02-09:55:52
    hgoftch, line 130: Printing hoada @ 0x7a63a0
    MAX:5, ACTUAL:5, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY,0x200:TREAT_AS_CHAR)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 user_id
    12 VARCHAR N 21 255 0/ 0 0 0 200 email
    91 DATE Y 16 16 0/ 0 0 0 0 last_logged_in
    -7 BIT Y 1 1 0/ 0 0 0 20 mailing_list
    -1 LONGVARCHAR N 766 0 0/ 0 0 0 220 password
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/02-09:55:52
    Entered hgoclse, cursor id 1 at 2010/09/02-09:56:16
    Exiting hgoclse, rc=0 at 2010/09/02-09:56:16
    Entered hgodafr, cursor id 1 at 2010/09/02-09:56:16
    Free hoada @ 0x7a63a0
    Exiting hgodafr, rc=0 at 2010/09/02-09:56:16
    Entered hgopars, cursor id 1 at 2010/09/02-09:56:16
    type:0
    SQL text from hgopars, id=1, len=34 ...
    00: 53454C45 43542043 4F554E54 282A2920 [SELECT COUNT(*) ]
    10: 46524F4D 20606D62 745F7573 65726020 [FROM `mbt_user` ]
    20: 4131 [A1]
    Exiting hgopars, rc=0 at 2010/09/02-09:56:16
    Entered hgoopen, cursor id 1 at 2010/09/02-09:56:16
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/02-09:56:16
    Entered hgodscr, cursor id 1 at 2010/09/02-09:56:16
    Allocate hoada @ 0x7a63a0
    Entered hgopcda at 2010/09/02-09:56:16
    Column:1(COUNT(*)): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:0, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-09:56:16
    hgodscr, line 880: Printing hoada @ 0x7a63a0
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    Exiting hgodscr, rc=0 at 2010/09/02-09:56:16
    Entered hgoftch, cursor id 1 at 2010/09/02-09:56:16
    hgoftch, line 130: Printing hoada @ 0x7a63a0
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/02-09:56:16
    Entered hgoftch, cursor id 1 at 2010/09/02-09:56:16
    hgoftch, line 130: Printing hoada @ 0x7a63a0
    MAX:1, ACTUAL:1, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/02-09:56:16
    Entered hgodtab at 2010/09/02-10:03:18
    count:1
    table: tracking_list
    Allocate hoada[0] @ 0x7ebbd0
    Entered hgopcda at 2010/09/02-10:03:18
    Column:1(list_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:10
    Exiting hgopcda, rc=0 at 2010/09/02-10:03:18
    The hoada for table tracking_list follows...
    hgodtab, line 876: Printing hoada @ 0x7ebbd0
    MAX:1, ACTUAL:1, BRC:1, WHT=6 (TABLE_DESCRIBE)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 list_id
    Exiting hgodtab, rc=0 at 2010/09/02-10:03:18
    Entered hgodafr, cursor id 0 at 2010/09/02-10:03:18
    Free hoada @ 0x7ebbd0
    Exiting hgodafr, rc=0 at 2010/09/02-10:03:18
    Entered hgoclse, cursor id 1 at 2010/09/02-10:06:11
    Exiting hgoclse, rc=0 at 2010/09/02-10:06:11
    Entered hgodafr, cursor id 1 at 2010/09/02-10:06:11
    Free hoada @ 0x7a63a0
    Exiting hgodafr, rc=0 at 2010/09/02-10:06:11
    Entered hgopars, cursor id 1 at 2010/09/02-10:06:11
    type:0
    SQL text from hgopars, id=1, len=39 ...
    00: 53454C45 43542043 4F554E54 282A2920 [SELECT COUNT(*) ]
    10: 46524F4D 20607472 61636B69 6E675F6C [FROM `tracking_l]
    20: 69737460 204131 [ist` A1]
    Exiting hgopars, rc=0 at 2010/09/02-10:06:11
    Entered hgoopen, cursor id 1 at 2010/09/02-10:06:11
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/02-10:06:11
    Entered hgodscr, cursor id 1 at 2010/09/02-10:06:11
    Allocate hoada @ 0x7a63e8
    Entered hgopcda at 2010/09/02-10:06:11
    Column:1(COUNT(*)): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:0, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-10:06:11
    hgodscr, line 880: Printing hoada @ 0x7a63e8
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    Exiting hgodscr, rc=0 at 2010/09/02-10:06:11
    Entered hgoftch, cursor id 1 at 2010/09/02-10:06:11
    hgoftch, line 130: Printing hoada @ 0x7a63e8
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/02-10:06:11
    Entered hgoftch, cursor id 1 at 2010/09/02-10:06:11
    hgoftch, line 130: Printing hoada @ 0x7a63e8
    MAX:1, ACTUAL:1, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT N 8 8 0/ 0 0 0 20 COUNT(*)
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/02-10:06:11
    Entered hgoclse, cursor id 1 at 2010/09/02-10:06:20
    Exiting hgoclse, rc=0 at 2010/09/02-10:06:20
    Entered hgodafr, cursor id 1 at 2010/09/02-10:06:20
    Free hoada @ 0x7a63e8
    Exiting hgodafr, rc=0 at 2010/09/02-10:06:20
    Entered hgopars, cursor id 1 at 2010/09/02-10:06:20
    type:0
    SQL text from hgopars, id=1, len=43 ...
    00: 53454C45 43542041 312E606C 6973745F [SELECT A1.`list_]
    10: 69646020 46524F4D 20607472 61636B69 [id` FROM `tracki]
    20: 6E675F6C 69737460 204131 [ng_list` A1]
    Exiting hgopars, rc=0 at 2010/09/02-10:06:20
    Entered hgoopen, cursor id 1 at 2010/09/02-10:06:20
    hgoopen, line 86: NO hoada to print
    Deferred open until first fetch.
    Exiting hgoopen, rc=0 at 2010/09/02-10:06:20
    Entered hgodscr, cursor id 1 at 2010/09/02-10:06:20
    Allocate hoada @ 0x7a6440
    Entered hgopcda at 2010/09/02-10:06:20
    Column:1(list_id): dtype:-5 (BIGINT), prc/scl:19/0, nullbl:1, octet:0, sign:1, radix:0
    Exiting hgopcda, rc=0 at 2010/09/02-10:06:20
    hgodscr, line 880: Printing hoada @ 0x7a6440
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 list_id
    Exiting hgodscr, rc=0 at 2010/09/02-10:06:20
    Entered hgoftch, cursor id 1 at 2010/09/02-10:06:20
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:1, ACTUAL:1, BRC:100, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 list_id
    Performing delayed open.
    SQLBindCol: column 1, cdatatype: -25, bflsz: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8
    SQLFetch: row: 1, column 1, bflsz: 8, bflar: 8, (bfl: 8, mbl: 8)
    1 rows fetched
    Exiting hgoftch, rc=0 at 2010/09/02-10:06:20
    Entered hgoftch, cursor id 1 at 2010/09/02-10:06:20
    hgoftch, line 130: Printing hoada @ 0x7a6440
    MAX:1, ACTUAL:1, BRC:1, WHT=5 (SELECT_LIST)
    hoadaMOD bit-values found (0x20:NEGATIVE_HOADADTY)
    DTY NULL-OK LEN MAXBUFLEN PR/SC CST IND MOD NAME
    -5 BIGINT Y 8 8 0/ 0 0 0 20 list_id
    0 rows fetched
    Exiting hgoftch, rc=1403 at 2010/09/02-10:06:20
    Entered hgoclse, cursor id 1 at 2010/09/02-10:06:55
    Exiting hgoclse, rc=0 at 2010/09/02-10:06:55
    Entered hgodafr, cursor id 1 at 2010/09/02-10:06:55
    Free hoada @ 0x7a6440
    Exiting hgodafr, rc=0 at 2010/09/02-10:06:55
    Entered hgocomm at 2010/09/02-10:06:55
    keepinfo:0, tflag:1
    00: 47454D53 2E4C534F 2E4C4F43 414C2E31 [GEMS.LSO.LOCAL.1]
    10: 37373837 3164662E 33322E36 382E3335 [77871df.32.68.35]
    20: 3630 [60]
    tbid (len 31) is ...
    00: 47454D53 2E4C534F 2E4C4F43 414C5B33 [GEMS.LSO.LOCAL[3]
    10: 322E3638 2E333536 305D5B31 2E345D [2.68.3560][1.4]]
    cmt(0):
    Entered hgocpctx at 2010/09/02-10:06:55
    Exiting hgocpctx, rc=0 at 2010/09/02-10:06:55
    Exiting hgocomm, rc=0 at 2010/09/02-10:06:55
    Entered hgolgof at 2010/09/02-10:06:55
    tflag:1
    Exiting hgolgof, rc=0 at 2010/09/02-10:06:55
    Entered hgoexit at 2010/09/02-10:06:55
    Exiting hgoexit, rc=0

  • I am getting only one record from table data

    Hi Experts,
    I am using interacive forms to bring the table data i used  GET_STATIC_ATTRIBUTES_TABLE
    method. initially the table is empty when i fill some records more than one it is giving me only one record.
    where as i fill the table in wddoinit more than one record and try to retreived it, showing all the records more than one. waht is the reason.. if i fill manually why it is not bringing all the reocrds.
    i have used the cardinatly as follows
    1. parent node(no tables/structure used)
    Dictionary structure       empty not used
    Cardinality 1..1
    Selection 0..1
    Initialization Lead Selection  Checked
    Singleton    Not checked
    Supply Function  not used
    2. table node(i used table type)
    Dictionary structure    SFLIGHT_LIGHT
    Cardinality 1..n
    Selection 0..n
    Initialization Lead Selection  Checked
    Singleton    Not checked
    Supply Function  not used
    Pleae help me out...
    Thanks,
    Mahesh.Gattu

    hi,
    Use the following code for making the rows editable for a table UI element.
      DATA lo_nd_cn_try TYPE REF TO if_wd_context_node.
      DATA lo_el_cn_try TYPE REF TO if_wd_context_element.
      DATA ls_cn_try TYPE wd_this->element_cn_try.
      DATA ls_cn_try1 TYPE wd_this->elements_cn_try.
    navigate from <CONTEXT> to <CN_TRY> via lead selection
      lo_nd_cn_try = wd_context->get_child_node( name = wd_this->wdctx_cn_try ).
    do 5 times.                       
    clear ls_cn_try.
    append ls_cn_try to ls_cn_try1.
    lo_nd_cn_try->bind_table( ls_cn_try1 ).
    enddo.
    ->  cn_try is the node which is binded with the Table UI element.
    What all this is called as initialization of table. This code will make 5 rows editable, If u want more rows editable then run the loop according to the requirement.
    U can write this code in the WDDOINIT.
    Thanks,
    Pankaj Aggarwal.

  • Text Overlapping/Wrapping Issue in BSP(Table Sorter Using JQUERY)

    Hi ,
    I have a requirement to add a new column in existing table which has been built by Table Sorter method in JQUERY.
    I have added the new column but the issue is value for the new column is populated  on next line of the table.
    This could be a simple width issue, but i don't know JAVA much.Attached the image for reference.
    Code i have used is:
    <input type="text" name="t_rbclaim[<%= lv_tabix%>].reason" size="3" maxlenth="3" wrapping = "true"
         onBlur="javascript:this.value=this.value.toUpperCase();" value="<%= w_rbclaim-reason%>">
    Please let me know how to modify the above code in better way.

    Hi Raja,
    Can you please help on this problem. I want to know whether there is any funciton module to convert the univercel character set code (HTML Codepage) page to SAP codepage. We are going to use ECC 6.0 which is unicode system for background R/3. So we can get the correct character format if identify the correct conversion method.
    Please let me know if any information and expect some information on this.
    Regards,
    Saravanan V

Maybe you are looking for

  • Won't let me finish downloading on my pc. My pc says file is corrupt, why?

    It downloads fine, have done this upmteen millions of times. Even said to make firefox my default, but still my PC SAYS, file corrupt, can't finish

  • Imac late 2013 laggy gaming when moving camera

    Hey guys, on my 2nd late imac 2013 27 inch with the gtx 775m. I replaced my first imac because of yellow tinted screen....2nd screen has same yellow tint, if not worse so I decided to just keep it. Anyways, with my first imac I got a week ago I notic

  • HH:mm:ss Controls

    private void txtsTime_PreviewKeyUp(object sender, System.Windows.Input.KeyEventArgs e) Regex rgx = new Regex("^(((?<Hour>[0-9]{1,2})[.:](?=[0-9]{2}))?(?<Minute>[0-9]{1,2})[.:])?(?<Second>[0-9]{2})$"); if (!rgx.Match(txtsTime.Text).Success) MessageBox

  • Facebook App has vanished....

    Hello, would really appreciate your help on this one. I downloaded a Facebook app when I purchased my blackberry phone, and have had this app for 12 months now. Suddenly, this app has vanished from my home screen and from the app world. I re-installe

  • 3meg DSL Download speed running at dial-up speed

    Since last week I’ve been getting DSL download speeds that are basically dial-up speeds.  I have the 3 meg plan and for the past 10 years or so, I came close to a 2 meg download connection speed regularly. Last week my download speed basically disapp