Complex XML DataSet and Sorting

Hello,
Please consider the following XML data:
<viewentries>
    <viewentry>
        <entrydata name="column1">
            <text>text1</text>
        </entrydata>
        <entrydata name="column2">
            <text/>
        </entrydata>
        <entrydata name="column3">
            <text/>
        </entrydata>
        <entrydata name="column4">
            <text>text4</text>
        </entrydata>
    </viewentry>
    <viewentry>
        <entrydata name="column1">
            <text>text5</text>
        </entrydata>
        <entrydata name="column2">
            <text>text6</text>
        </entrydata>
        <entrydata name="column3">
            <text/>
        </entrydata>
        <entrydata name="column4">
            <text>text8</text>
        </entrydata>
    </viewentry>
    etc...
</viewentries>
I was able to build a table like the following using Spry XMLDataSet and NestedXMLDataSet objects. However I am struggling trying to implement sorting...
label for column1
label for column2
label for column3
label for column4
text1
text4
text5
text6
text8
etc,,,
Does anybody know how to do columns sorting using Spry in such scenario?
Thanks.

xtian71 wrote:
This is how I generate the HTML table from the XML data source.
var dsView = new Spry.Data.XMLDataSet(url, '/viewentries');
var dsViewEntries = new Spry.Data.NestedXMLDataSet(dsView, 'viewentry');
var dsEntryDatas = new Spry.Data.NestedXMLDataSet(dsViewEntries, 'entrydata');
<div spry:region="dsViewEntries dsEntryDatas">
<table>
    <thead>
    <tr><th>Column#1</th><th>Column#2</th><th>Column#3</th><th>Column#4</th></tr>
    </thead>
    <tbody spry:repeatchildren="dsViewEntries">
    <tr>
        <td spry:repeat="dsEntryDatas">{dsEntryDatas::text}</td>
    </tr>
    </tbody>
</table>
</div>
Thanks.
To the headings add  <th spry:sort="column1"> etc.

Similar Messages

  • Spry xml dataset driven page and search engines

    If a page uses Spry xml dataset to present products to a
    visitor, what do google and yahoo crawlers see in that page?
    I'm asking because i plan to rewrite our products' static
    pages using spry xml dataset, and i'd like to ensure crawlers see
    the products. I haven't looked much, yet, into this pry capability,
    but the products page will most probably be paginated (not sure if
    possible in this capability) since there are hundreds of products.
    currently, our static html pages generated good conversions
    into purchases from google and yahoo searches.
    It would be great if there is a real-life website that uses
    this spry capability and has their pages appear in those search
    engines.
    thanks.

    If a page uses Spry xml dataset to present products to a
    visitor, what do google and yahoo crawlers see in that page?
    search bot do not read / understand javascript. So they would
    not index it.
    Its a commen point of failure of the ajax techniques, Spry
    has a handy solution for it (spry:content) wich will allow u to
    overwrite 'content' if javascript is enabled so and bots will just
    see the static page.

  • SPRY XML Dataset Get Schema

    Currently when I try and add a SPRY XML Dataset and hit the Get Schema button I get "Unable to locate or parse the XML Source (-1,-1). I created the XML from the Export recordset to XML tool in the Developer Toolbox. I can't seem to figure out what I am missing. Anyone else having this problem as well. It use to work then I think my system did some update from Adobe and since has stopped working. Any assistance is greatly appreciated. Thanks.

    Hello,
    The error usually means that the XML source that you choose within Spry XML Data Set interface is not valid.
    So you should check the XML source to see if it returns a valid XML.
    Regards,
    Ionut

  • Little help with complex XML data as data provider for chart and adg

    Hi all,
    I've been trying to think through a problem and Im hoping for
    a little help. Here's the scenario:
    I have complex nested XML data that is wrapped by subsequent
    groupings for efficiency, but I need to determine if each inner
    item belongs in the data collection for view in a data grid and
    charts.
    I've posted an example at the bottom.
    So the goal here is to first be able to select a single
    inspector and then chart out their reports. I can get the data to
    filter from the XMLListCollection using a filter on the first layer
    (ie the name of the inspector) but then can't get a filter to go
    deeper into the structure in order to determine if the individual
    item should be contained inside the collection. In other words, I
    want to filter by inspector, then time and then tag name in order
    to be able to use this data as the basis for individual series
    inside my advanced data grid and column chart.
    I've made it work with creating a new collection and then
    looping through each time there is a change to the original
    collection and updating the new collection, but that just feels so
    bloated and inefficient. The user is going to have some buttons to
    allow them to change their view. I'm wondering if there is a
    cleaner way to approach this? I even tried chaining filter
    functions together, but that didn't work cause the collection is
    reset whenever the .refresh() is called.
    If anyone has experience in efficiently dealing with complex
    XML for charting purposes and tabular display purposes, I would
    greatly appreciate your assistance. I know I can get this to work
    with a bunch of overhead, but I'm seeking something elegant.
    Thank you.

    Hi,
    Please use the code similar to below:
    SELECT * FROM DO_NOT_LOAD INTO TABLE IT_DO_NOT_LOAD.
    SORT IT_DO_NOT_LOAD by WBS_Key.
        IF SOURCE_PACKAGE IS NOT INITIAL.
          IT_SOURCE_PACKAGE[] = SOURCE_PACKAGE[].
    LOOP AT IT_SOURCE_PACKAGE INTO WA_SOURCE_PACKAGE.
            V_SYTABIX = SY-TABIX.
            READ TABLE IT_DO_NOT_LOAD into WA_DO_NOT_LOAD
            WITH KEY WBS_Key = WA_SOURCE_PACKAGE-WBS_Key
            BINARY SEARCH.
            IF SY-SUBRC = 0.
              IF ( WA_DO_NOT_LOAD-WBS_EXT = 'A' or WA_DO_NOT_LOAD-WBS_EXT = 'B' )     
              DELETE IT_SOURCE_PACKAGE INDEX V_SYTABIX.
            ENDIF.
    ENDIF.
          ENDLOOP.
          SOURCE_PACKAGE[] = IT_SOURCE_PACKAGE[].
        ENDIF.
    -Vikram

  • OSB, DB adapters and complex XML

    I'm new to all Oracle middleware products (and it's years since I've written any Java, while I'm being honest), but I've been given the task of taking some existing XML feeds and sticking some of the data in a DB. Well, that's the basic solution I've come up with anyway, and OSB (10.3.1) seems the way to go.
    I've seen the JCA DB adapter tutorial at http://www.oracle.com/technology/sample_code/products/osb/index.html - and very good it is too, but I'm wanting to take it a bit further. i.e. do something more complex than a simple 1:1 XML attribute to database column mapping. I want to take the existing XML file that has a relatively complex schema (containing more attributes than we actually need, plus entire sections I want to ignore) and only take the relevant info and put it in the DB table.
    The thing is, I don't see any pointers on that, wherever I look on the web. Is it simply a case of hacking around with the xml, xsd, mappings, etc...telling it about the extra fields, and to ignore them...or - given that will probably take quite a while - is there a an easier way using Jdeveloper, Eclipse or something?
    Likewise, is there a nice tutorial showing how to create a proxy service and map it to the DB adapter business service? I guess I can figure that out myself, but it's nice to save time and see the 'right' way first...
    Any other pointers, before I head off down the wrong path? Good resources, aside from the manuals on here?
    Cheers in advance.

    If I remember correct, a DB Proxy (JCA proxy using DB adapter) required for cluster deployment , is supposed to use a WSDL specifically generated from JDEV with specific settings.
    Ex. I created a db proxy in my development box (Single node OSB domain). The same proxy cannot be deployed in clustered osb domain. The wsdl for db inbound in cluster domain is little different from db inbound in non-cluster env and that has to be created from scratch from JDEV.
    I can search my previous mails for the specifics if you should require .
    Thanks
    Manoj

  • Array of objects into dataset and then to datagrid

    I have discovered amfphp (
    http://amfphp.org). It's a really
    cool way to move complex data objects from php to flash and back.
    quote:
    So I am successfully creating an array of items from my
    database...an item that would otherwise be created like this:
    items = array();
    item[0] = new Object();
    item[0].id = 7;
    item[0].name= "Item 1";
    item[0].styleNumber = "001";
    item[1] = new Object();
    etc.
    I put DataSet and DataGrid objects on my stage called
    productDataSet and productDataGrid, respectively, and tried this:
    quote:
    this.productDataSet.items = re.result;
    trace('dataSet length:' + this.productDataSet.getLength());
    this.productDataGrid.dataProvider =
    this.productDataSet.dataProvider;
    the trace appears to work correctly--several hundred
    items--and the dataGrid shows my object property names (albeit in
    reverse order) and the DataGrid appears to have several hundred
    items in it but there is NO DATA THERE. All the list items are
    blank.
    I've had a bit of luck working with the component inspector
    creating bindings and stuff but I'm hampered by my incomplete
    understanding of how it works. All the tutorials I've found
    instruct me to import an XML sample to create a schema. Since I
    have no XML i cannot one.
    I want to do just a couple of things:
    1) put my data in the DataSet properly, ideally in one fell
    swoop--i *think* i've done this correctly above
    2) attach the DataGrid to the DataSet so that when i sort or
    filter the data set, the datagrid shows the results and when i
    select an item in the DataGrid, the DataSet knows that is the
    currently selected item.
    3) hide the 'id' field in the data grid and display
    user-friendly names for the columns: "Style Number" rather than
    "styleNumber".
    Any help would be much appreciated. I *think* this is all
    about understanding schemas but I don't really know.

    That *is* a very interesting article. Unfortunately, it
    doesn't mention anything about DataSets. I haven't had any trouble
    getting my data into my flash application. I've also been able to
    put it into a DataGrid pretty easily (although not quite as
    elegantly as that example did).
    The problem is that I'm having issues when I introduce a
    DataSet for filtering. I can't get the data from the DataSet into
    the DataGrid like I want it. I haven't been able to hide the 'id'
    column of my data and the column names unfortunately are *exactly*
    what the Object property names are. I was hoping to put
    user-friendly column headers on their like 'Product Name' rather
    than 'name' or 'Style Number' rather than 'styleNumber'.
    Also, the concept of a schema is still somewhat beyond me. I
    tried changing the schema for my productDataSet to this and I got
    the data to display. I added 'name, 'styleNumber', and 'id'
    quote:
    <-->dataProvider : Array
    <-->deltaPacket : DeltaPacket
    <-->items : Array
    <-->selectedIndex: Number
    <-->name : String
    <-->styleNumber: String
    <-->id : Integer
    I have tried radically different shemas (schemae?) that seem
    to also get the data in there but I don't really understand what
    i'm doing here and I feel like I'm asking for trouble not knowing
    how this stuff really works.
    And, like I said before, i want to hide certain information
    that's in the DataSet so that it doesn't get displayed. I'd also
    like to Have some user-friendly names rather than the actual
    field/property identifiers.

  • Complex xml in tree control

    every example you see online is trivial and utterly useless
    for practical programming purposes...typically you'll see something
    like this:
    <mx:XML format="e4x" id="myMenuModel">
    <root label="Menu">
    <menuitem label="MenuItem A">
    <menuitem label="SubMenuItem 1-A"/>
    <menuitem label="SubMenuItem 2-A" />
    </menuitem>
    <menuitem label="MenuItem B"/>
    <menuitem label="MenuItem C" type="check"/>
    <menuitem type="separator"/>
    <menuitem label="MenuItem D">
    <menuitem label="SubMenuItem 1-D" type="radio"
    groupName="one"/>
    <menuitem label="SubMenuItem 2-D" type="radio"
    groupName="one"/>
    <menuitem label="SubMenuItem 3-D" type="radio"
    groupName="one"/>
    </menuitem>
    </root>
    </mx:XML>
    ...just hard coded simplistic xml which is fine and dandy if
    you have a simple xml schema and all the leaves of your tree can be
    keyed off the same "label" attribute. But what if you have a
    complex, deeply nested XML file that doesn't follow this nice
    pattern? What if I want to pull different attributes from different
    levels in the tree to display, is that even possible? Or what if I
    dont want to use the attribute at all for my display label in the
    tree, what if I want to use an element node name? Like for example,
    say I had:
    <department label="marketing">
    <employee name="Eric Cartman" Age="8">
    <interest>
    <type>food</type>
    <name>cheesiepoofs</name>
    </interest>
    <interest>
    <type>pets</type>
    <name>mr. kitty</name>
    </interest>
    </employee>
    Is there a way I can build my tree to use the department
    'label' attribute for the top level, the employee 'name' attribute
    for the second level and the <type> element nested under
    <interest> for the third level?
    I confess I'm a Flex newbie but any other language I've
    worked provides a mechanism to tailor this sort of thing to
    individual business cases. Any insight would be greatly
    appreciated.
    thank you.
    S

    Another approach is parse your complex xml into objects and
    then create your own
    tree datadescriptor. This is described in the help. Search on
    "custom tree datadescriptor"
    We use this approach because the xml we want to display in a
    tree does not fit nicely. So we wrote a parser that converts the
    xml into "TreeObjects" (our class) and created the custom tree
    datadescriptor to handle it. When we create the tree object we can
    control the data used for the label so it displays correctly.

  • WebPart: Display the search result in an spgridview with filter and sort

    hi,
    For explain more in details.
    I need the search result in a table displaying some meta common in the different library.
    I've to have the possibility to filter and sort the grid.
    i'm trying to extend Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart
    i can have the result from the textbox search with: SharedQueryManager.GetInstance(this.Page).QueryManager
    My queryManager is populate in the method: CreateChildControls
    I put the sample code i use. and in the populateData method, my querymanager is null while in the createChildContriol, it's correctly populate with : this.queryManager = SharedQueryManager.GetInstance(this.Page).QueryManager;
    using System;
    using System.ComponentModel;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.WebControls;
    using Microsoft.SharePoint.Search.Internal.WebControls;
    using Microsoft.Office.Server.Search.Query;
    using Microsoft.Office.Server.Search.WebControls;
    using System.Data;
    using System.Xml;
    namespace CustomSearchResultWebPart.CustomCoreResultWebPart
    [ToolboxItemAttribute(false)]
    public class CustomCoreResultWebPart : Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart
    private ObjectDataSource objDS;
    private const string ObjectDataSourceID = "gridViewDataSource";
    private QueryManager queryManager;
    private SPGridView gridView = new SPGridView();
    protected override void CreateChildControls()
    //here is correctly populate
    this.queryManager = SharedQueryManager.GetInstance(this.Page).QueryManager;
    try
    LoadSearchGrid();
    catch (Exception ex)
    Page.Response.Write(ex.Message + " - " + ex.StackTrace);
    //base.CreateChildControls();
    protected override void OnInit(EventArgs e)
    base.OnInit(e);
    protected override void OnLoad(EventArgs e)
    base.OnLoad(e);
    protected override void OnPreRender(EventArgs e)
    //gridView.DataBind();
    base.OnPreRender(e);
    protected override void Render(HtmlTextWriter writer)
    base.Render(writer);
    public DataTable populateData()
    DataSet dtSet = null;
    DataTable dtTable = null;
    //here is my query manager is null
    if (queryManager != null && queryManager.Count > 0)
    XmlDocument xdoc = new XmlDocument(); //We are using XmlDocument
    xdoc = queryManager.GetResults(queryManager[0]);//xml returned by search
    if (xdoc != null)
    XmlReader xmlReader = new XmlNodeReader(xdoc);
    dtSet = new DataSet();
    dtSet.ReadXml(xmlReader);
    if (dtSet.Tables.Count > 1)
    dtTable = dtSet.Tables["Result"];
    return dtTable;
    private void LoadSearchGrid()
    this.objDS = new ObjectDataSource();
    this.objDS.ID = ObjectDataSourceID;
    this.objDS.SelectMethod = "populateData";
    this.objDS.TypeName = this.GetType().AssemblyQualifiedName;
    this.objDS.ObjectCreating += new ObjectDataSourceObjectEventHandler(objDS_ObjectCreating);
    this.Controls.Add(objDS);
    gridView.ID = "_gridView";
    gridView.AutoGenerateColumns = false;
    gridView.Width = new Unit(100, UnitType.Pixel);
    gridView.EnableViewState = false;
    gridView.AllowPaging = true;
    gridView.PageSize = 5;
    gridView.DataSourceID = ObjectDataSourceID;
    this.Controls.Add(gridView);
    void objDS_ObjectCreating(object sender, ObjectDataSourceEventArgs e)
    //e.ObjectInstance = objDS;
    protected void gridView_RowDataBound(object sender, GridViewRowEventArgs e)
    //throw new NotImplementedException();
    Do you have a sample that i can use or some tutorial?
    thanks for your help

    I added this in my class
    public class CustomResultsDatasource : CoreResultsDatasource
    public CustomResultsDatasource(Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart parentWebPart)
    : base(parentWebPart)
    View = new CustomResultsDatasourceView(this, GetType().Name);
    public class CustomResultsDatasourceView : CoreResultsDatasourceView
    public CustomResultsDatasourceView(SearchResultsBaseDatasource dataSourceOwner, string viewName)
    : base(dataSourceOwner, viewName)
    //make sure we have a value for the datasource
    if (DataSourceOwner == null)
    throw new ArgumentNullException("DataSourceOwner");
    CustomResultsDatasource datasource = this.DataSourceOwner as CustomResultsDatasource;
    this.QueryManager = SharedQueryManager.GetInstance(datasource.ParentWebpart.Page).QueryManager;
    And this in my customSearchResultWebPart
    protected override void CreateDataSource()
    //base.CreateDataSource();
    this.DataSource = new CustomResultsDatasource(this);
    How can i use queryManager in populateData?
    thanks for your help

  • Filtering a list with an XML dataset in Spry 1.6.1?

    I have a typical XML data file.  I know how to load it, create a dataset, and then a master-detail display.
    However, what I need to do is create form items that will FILTER the master set as the user clicks options.
    For example, if the list is countries of the world, and the default is to show them all, there could be checkboxes and/or select menus that allow the user to choose countries only in Asia, or only monarchies, etc.
    I can't find any examples of how to do this sort of thing.  Are there any?

    That's very helpful, thanks.  What I am stuck on now is I am trying to "parameterize" my filter function, so I can pass the string to filter by from the checkbox to une function instead of having a filter function for each.
    for example this works to find all items where the color is red:
    var myFF = function(dataSet, row, rowNumber)
              if (row["color"].search('red') != -1)
                        return row;
              return null;
    function ToggleFilter(enable, f)
              if (enable)
               ds1.addFilter(f, true);
              else
              ds1.removeFilter(f, true);
    <label>Red: <input name="red1" type="checkbox" value="" onclick="ToggleFilter(this.checked, myFF);" /></label>
    I would rather have the function be for ANY color, and specify the color on the checkbox, such as this:
    <label>Red: <input name="red2" type="checkbox" value="" onclick="ToggleFilter(this.checked, myFF, 'red');" /></label>
    So that I can easily have checkboxes 'red' 'green' etc.  However I must not be doing it right since if I modify the ToggleFilter function to expect the third parameter, and add the parameter to the ds1.addFilter(f, true) the whole thing fails.

  • Parse complex XML in PL/SQL

    have complex XML with depth level 10. I need to parse and store data into tables from XML. I am able to parse simple XML but not complex. Could any body suggest me the required steps to parse complex XML in PL/SQL?

    Based on response from mdrake on this thread:
    Re: XML file processing into oracle
    Reading XML using a schema...
    declare
      SCHEMAURL VARCHAR2(256) := 'http://xmlns.example.org/xsd/testcase.xsd';
      XMLSCHEMA VARCHAR2(4000) := '<?xml version="1.0" encoding="UTF-8"?>
         <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xdb:storeVarrayAsTable="true">
            <xs:element name="cust_order" type="cust_orderType" xdb:defaultTable="CUST_ORDER_TBL"/>
            <xs:complexType name="groupType" xdb:maintainDOM="false">
                    <xs:sequence>
                            <xs:element name="item" type="itemType" maxOccurs="unbounded"/>
                    </xs:sequence>
                    <xs:attribute name="id" type="xs:byte" use="required"/>
            </xs:complexType>
            <xs:complexType name="itemType" xdb:maintainDOM="false">
                    <xs:simpleContent>
                            <xs:extension base="xs:string">
                                    <xs:attribute name="id" type="xs:short" use="required"/>
                                    <xs:attribute name="name" type="xs:string" use="required"/>
                            </xs:extension>
                    </xs:simpleContent>
            </xs:complexType>
            <xs:complexType name="cust_orderType" xdb:maintainDOM="false">
                    <xs:sequence>
                            <xs:element name="group" type="groupType" maxOccurs="unbounded"/>
                    </xs:sequence>
                    <xs:attribute name="cust_id" type="xs:short" use="required"/>
            </xs:complexType>
         </xs:schema>';
      INSTANCE  CLOB :=
    '<cust_order cust_id="12345">
      <group id="1">
        <item id="1" name="Standard Mouse">100</item>
        <item id="2" name="Keyboard">100</item>
        <item id="3" name="Memory Module 2Gb">200</item>
        <item id="4" name="Processor 3Ghz">25</item>
        <item id="5" name="Processor 2.4Ghz">75</item>
      </group>
      <group id="2">
        <item id="1" name="Graphics Tablet">15</item>
        <item id="2" name="Keyboard">15</item>
        <item id="3" name="Memory Module 4Gb">15</item>
        <item id="4" name="Processor Quad Core 2.8Ghz">15</item>
      </group>
      <group id="3">
        <item id="1" name="Optical Mouse">5</item>
        <item id="2" name="Ergo Keyboard">5</item>
        <item id="3" name="Memory Module 2Gb">10</item>
        <item id="4" name="Processor Dual Core 2.4Ghz">5</item>
        <item id="5" name="Dual Output Graphics Card">5</item>
        <item id="6" name="28inch LED Monitor">10</item>
        <item id="7" name="Webcam">5</item>
        <item id="8" name="A3 1200dpi Laser Printer">2</item>
      </group>
    </cust_order>';                
    begin
      dbms_xmlschema.registerSchema
         schemaurl       => SCHEMAURL
        ,schemadoc       => XMLSCHEMA
        ,local           => TRUE
        ,genTypes        => TRUE
        ,genBean         => FALSE
        ,genTables       => TRUE
        ,ENABLEHIERARCHY => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE
      execute immediate 'insert into CUST_ORDER_TBL values (XMLTYPE(:INSTANCE))' using INSTANCE;
    end;
    desc CUST_ORDER_TBL
    --SQL> desc CUST_ORDER_TBL
    -- Name                                                                                                                                    Null?    Type
    -- TABLE of SYS.XMLTYPE(XMLSchema "http://xmlns.example.org/xsd/testcase.xsd" Element "cust_order") STORAGE Object-relational TYPE "cust_orderType222_T"
    set autotrace on explain
    set pages 60 lines 164 heading on
    col cust_id format a8
    select extract(object_value,'/cust_order/@cust_id') as cust_id
          ,grp.id as group_id, itm.id as item_id, itm.inm as item_name, itm.qty as item_qty
    from   CUST_ORDER_TBL
          ,XMLTABLE('/cust_order/group'
                    passing object_value
                    columns id   number       path '@id'
                           ,item xmltype      path 'item'
                   ) grp
          ,XMLTABLE('/item'
                    passing grp.item
                    columns id   number       path '@id'
                           ,inm  varchar2(30) path '@name'
                           ,qty  number       path '.'
                   ) itm
    CUST_ID    GROUP_ID    ITEM_ID ITEM_NAME                        ITEM_QTY
    12345             1          1 Standard Mouse                        100
    12345             1          2 Keyboard                              100
    12345             1          3 Memory Module 2Gb                     200
    12345             1          4 Processor 3Ghz                         25
    12345             1          5 Processor 2.4Ghz                       75
    12345             2          1 Graphics Tablet                        15
    12345             2          2 Keyboard                               15
    12345             2          3 Memory Module 4Gb                      15
    12345             2          4 Processor Quad Core 2.8Ghz             15
    12345             3          1 Optical Mouse                           5
    12345             3          2 Ergo Keyboard                           5
    12345             3          3 Memory Module 2Gb                      10
    12345             3          4 Processor Dual Core 2.4Ghz              5
    12345             3          5 Dual Output Graphics Card               5
    12345             3          6 28inch LED Monitor                     10
    12345             3          7 Webcam                                  5
    12345             3          8 A3 1200dpi Laser Printer                2
    17 rows selected.Need at least 10.2.0.3 for performance i.e. to avoid COLLECTION ITERATOR PICKLER FETCH in execution plan...
    On 10.2.0.1:
    Execution Plan
    Plan hash value: 3741473841
    | Id  | Operation                          | Name                   | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT                   |                        | 24504 |    89M|   873   (1)| 00:00:11 |
    |   1 |  NESTED LOOPS                      |                        | 24504 |    89M|   873   (1)| 00:00:11 |
    |   2 |   NESTED LOOPS                     |                        |     3 | 11460 |   805   (1)| 00:00:10 |
    |   3 |    TABLE ACCESS FULL               | CUST_ORDER_TBL         |     1 |  3777 |     3   (0)| 00:00:01 |
    |*  4 |    INDEX RANGE SCAN                | SYS_IOT_TOP_774117     |     3 |   129 |     1   (0)| 00:00:01 |
    |   5 |   COLLECTION ITERATOR PICKLER FETCH| XMLSEQUENCEFROMXMLTYPE |       |       |            |       |
    Predicate Information (identified by operation id):
       4 - access("NESTED_TABLE_ID"="CUST_ORDER_TBL"."SYS_NC0000900010$")
           filter("SYS_NC_TYPEID$" IS NOT NULL)
    Note
       - dynamic sampling used for this statementOn 10.2.0.3:
    Execution Plan
    Plan hash value: 1048233240
    | Id  | Operation               | Name              | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT        |                   |    17 |   132K|   839   (0)| 00:00:11 |
    |   1 |  NESTED LOOPS           |                   |    17 |   132K|   839   (0)| 00:00:11 |
    |   2 |   MERGE JOIN CARTESIAN  |                   |    17 |   131K|   805   (0)| 00:00:10 |
    |   3 |    TABLE ACCESS FULL    | CUST_ORDER_TBL    |     1 |  3781 |     3   (0)| 00:00:01 |
    |   4 |    BUFFER SORT          |                   |    17 | 70839 |   802   (0)| 00:00:10 |
    |*  5 |     INDEX FAST FULL SCAN| SYS_IOT_TOP_56154 |    17 | 70839 |   802   (0)| 00:00:10 |
    |*  6 |   INDEX UNIQUE SCAN     | SYS_IOT_TOP_56152 |     1 |    43 |     2   (0)| 00:00:01 |
    |*  7 |    INDEX RANGE SCAN     | SYS_C006701       |     1 |       |     0   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       5 - filter("SYS_NC_TYPEID$" IS NOT NULL)
       6 - access("SYS_NTpzENS1H/RwSSC7TVzvlqmQ=="."NESTED_TABLE_ID"="SYS_NTnN5b8Q+8Txi9V
                  w5Ysl6x9w=="."SYS_NC0000600007$")
           filter("SYS_NC_TYPEID$" IS NOT NULL AND
                  "NESTED_TABLE_ID"="CUST_ORDER_TBL"."SYS_NC0000900010$")
       7 - access("SYS_NTpzENS1H/RwSSC7TVzvlqmQ=="."NESTED_TABLE_ID"="SYS_NTnN5b8Q+8Txi9V
                  w5Ysl6x9w=="."SYS_NC0000600007$")
    Note
       - dynamic sampling used for this statement-----
    -- CLEAN UP
    DROP TABLE CUST_ORDER_TBL purge;
    exec dbms_xmlschema.deleteschema('http://xmlns.example.org/xsd/testcase.xsd');

  • Manipulating the XML dataset

    Hello,
    I have loaded an xml dataset from an XML file and I have used
    the code below to manipulate the dataset.
    if (ds.getDataWasLoaded())
    var rows = ds.getData();
    for (var i = 0; i < rows.length; i++)
    rows
    = "Changed";
    How do i reflect this on the page?
    I have tried to use ds.loadData(); but it loads the original
    data of the page and not the manipulated data.
    Thank you

    Hi there Kinblas,
    Here is my code:
    <?xml version="1.0" encoding="iso-8859-1"?>
    <items>
    <item>
    <name>room</name>
    <id>999</id>
    <pid>256</pid>
    </item>
    <item>
    <name>Wallet</name>
    <id>123</id>
    <pid>999</pid>
    </item>
    <item>
    <name>Coins</name>
    <id>234</id>
    <pid>123</pid>
    </item>
    <item>
    <name>Notes</name>
    <id>345</id>
    <pid>123</pid>
    </item>
    <item>
    <name>pencil case</name>
    <id>000</id>
    <pid>999</pid>
    </item>
    <item>
    <name>pencil</name>
    <id>111</id>
    <pid>000</pid>
    </item>
    <item>
    <name>pen</name>
    <id>222</id>
    <pid>000</pid>
    </item>
    <item>
    <name>ruler</name>
    <id>333</id>
    <pid>000</pid>
    </item>
    <item>
    <name>rubber</name>
    <id>444</id>
    <pid>000</pid>
    </item>
    </items>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
    Transitional//EN"
    http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;
    charset=iso-8859-1">
    <title>Untitled Document</title>
    <script language="JavaScript" type="text/javascript"
    src="../../spry_15/includes/xpath.js"></script>
    <script language="JavaScript" type="text/javascript"
    src="../../spry_15/includes/SpryData.js"></script>
    <script language="JavaScript" type="text/javascript"
    src="../../spry_15/includes/SpryDebug.js"></script>
    <script language="JavaScript" type="text/javascript">
    var dsItem = new Spry.Data.XMLDataSet("spry.xml",
    "/items/item[id='999']", { useCache: true});
    var dsItemsChildren = new Spry.Data.XMLDataSet("spry.xml",
    "/items/item[pid='{dsItem::id}']", { useCache: true});
    var dsItemsSiblings = new Spry.Data.XMLDataSet("spry.xml",
    "/items/item[pid='{dsItem::pid}']", { useCache: true});
    function selectItem(id) {
    xpath = "/items/item[id=" + id + "]";
    dsItem.setXPath(xpath);
    function doSort() {
    dsItem.sort("name", "toggle");
    function doChange() {
    if (dsItem.getDataWasLoaded()) {
    var rows = dsItem.getData();
    var rows1 = dsItemsChildren.getData();
    var rows2 = dsItemsSiblings.getData();
    for (var i = 0; i<rows.length ; i++) {
    if (rows
    ["name"]=="rubber") {
    rows["name"]="eraser";
    for (var i = 0; i<rows1.length ; i++) {
    if (rows1
    ["name"]=="rubber") {
    rows1["name"]="eraser";
    for (var i = 0; i<rows2.length ; i++) {
    if (rows2
    ["name"]=="rubber") {
    rows2["name"]="eraser";
    Spry.Data.updateAllRegions();
    </script>
    </head>
    <body>
    <ul spry:region="dsItem">
    <li spry:repeat="dsItem">Selected Item:
    {name}</li>
    </ul>
    items Siblings
    <ul spry:region="dsItemsSiblings">
    <li spry:repeat="dsItemsSiblings"><a href='#'
    onClick="selectItem({id});">{name}</a></li>
    </ul>
    Items Children
    <ul spry:region="dsItemsChildren">
    <li spry:repeat="dsItemsChildren"><a href='#'
    onClick="selectItem({id});">{name}</a></li>
    </ul>
    <input value="Sort" type="button" onClick="doSort();">
    <input value="Change" type="button"
    onClick="doChange();">
    </body>
    </html>
    When I click on sort, it fires off doSort which finds all
    occurences of 'rubber' and changes them to eraser, but when
    clicking on the links which result in setting the xpath, the cache
    is not used but the original xml is used and the word 'rubber'
    reappears.
    I hope this make it clear.
    Thanks

  • Grouping and sorting the data based on the parameter

    Hi,
    I need to display the total of item Cost i.e sub total based on parameter in Excel format
    if value = 1 then (Subtotal by Manufacture) and sorting by Manufacture, Receipt Date, Organization, Item Code
    if value = 2 then (Subtotal by Organization ) and sorting by Organization, Item, Serial Number
    and at the end of report need to display full total
    is it possible in excel output using the below xml , please guide me if i need to change the way of getting XML ouput or can be acheived using this.
    Please find the xml , thanks in advance
    <?xml version="1.0"?>
    <!-- Generated by Oracle Reports version 6.0.8.27.0 -->
    <ASWRECDTREP>
    <LIST_G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>10</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PARTS</ORGANISATION_NAME>
    <SERIAL_NUMBER>90699100802262</SERIAL_NUMBER>
    <ITEM_CODE>OM906LA.007</ITEM_CODE>
    <DESCRIPTION>MERCEDES SERIES 900 OFF HWY ENGINE 205 KW 0852</DESCRIPTION>
    <MANUFACTURER>MER</MANUFACTURER>
    <APPLICATION>INDL</APPLICATION>
    <ITEM_COST>15009.09</ITEM_COST>
    <MATERIAL_COST>685.25</MATERIAL_COST>
    <PO_NUMBER>1001395</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>22-MAY-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>EUR</CURRENCY_CODE>
    <PO_UNIT_PRICE>7431.3</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>10</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PARTS</ORGANISATION_NAME>
    <SERIAL_NUMBER>90699100802285</SERIAL_NUMBER>
    <ITEM_CODE>OM906LA.007</ITEM_CODE>
    <DESCRIPTION>MERCEDES SERIES 900 OFF HWY ENGINE 205 KW 0852</DESCRIPTION>
    <MANUFACTURER>MER</MANUFACTURER>
    <APPLICATION>INDL</APPLICATION>
    <ITEM_COST>15009.09</ITEM_COST>
    <MATERIAL_COST>685.25</MATERIAL_COST>
    <PO_NUMBER>1001395</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>22-MAY-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>EUR</CURRENCY_CODE>
    <PO_UNIT_PRICE>7431.3</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>30</ORGANIZATION_CODE>
    <ORGANISATION_NAME>Melbourne</ORGANISATION_NAME>
    <SERIAL_NUMBER>6520107896</SERIAL_NUMBER>
    <ITEM_CODE>3500.010</ITEM_CODE>
    <DESCRIPTION>ALLISON 3000 SERIES ON HWY TRANSMISSION E018179</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>11126.11</ITEM_COST>
    <MATERIAL_COST>664.23</MATERIAL_COST>
    <PO_NUMBER>971515</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>14-APR-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>8063.3</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>30</ORGANIZATION_CODE>
    <ORGANISATION_NAME>Melbourne</ORGANISATION_NAME>
    <SERIAL_NUMBER>6510869062</SERIAL_NUMBER>
    <ITEM_CODE>3200.010</ITEM_CODE>
    <DESCRIPTION>ALLISON 3000 SERIES ON HWY TRANSMISSION E017944</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>11853.57</ITEM_COST>
    <MATERIAL_COST>707.66</MATERIAL_COST>
    <PO_NUMBER>982120</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>12-MAY-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>8251.6</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>40</ORGANIZATION_CODE>
    <ORGANISATION_NAME>Brisbane</ORGANISATION_NAME>
    <SERIAL_NUMBER>D6002 G6003</SERIAL_NUMBER>
    <ITEM_CODE>520 SERIES.002</ITEM_CODE>
    <DESCRIPTION>KONRAD 520 SERIES MARINE STERN DRIVE</DESCRIPTION>
    <MANUFACTURER>OTH</MANUFACTURER>
    <APPLICATION>MARI</APPLICATION>
    <ITEM_COST>9296.95</ITEM_COST>
    <MATERIAL_COST>482.91</MATERIAL_COST>
    <PO_NUMBER>1009062</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>24-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>6939.29</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>40</ORGANIZATION_CODE>
    <ORGANISATION_NAME>Brisbane</ORGANISATION_NAME>
    <SERIAL_NUMBER>ABC123</SERIAL_NUMBER>
    <ITEM_CODE>GM20541-KP1.001</ITEM_CODE>
    <DESCRIPTION>KOHLER GENSET</DESCRIPTION>
    <MANUFACTURER>KOH</MANUFACTURER>
    <APPLICATION>PGEN</APPLICATION>
    <ITEM_COST>756.83</ITEM_COST>
    <MATERIAL_COST>.78</MATERIAL_COST>
    <PO_NUMBER>1015156</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>14-OCT-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>AUD</CURRENCY_CODE>
    <PO_UNIT_PRICE>20</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>40</ORGANIZATION_CODE>
    <ORGANISATION_NAME>Brisbane</ORGANISATION_NAME>
    <SERIAL_NUMBER>ABC124</SERIAL_NUMBER>
    <ITEM_CODE>GM20541-KP1.001</ITEM_CODE>
    <DESCRIPTION>KOHLER GENSET</DESCRIPTION>
    <MANUFACTURER>KOH</MANUFACTURER>
    <APPLICATION>PGEN</APPLICATION>
    <ITEM_COST>756.83</ITEM_COST>
    <MATERIAL_COST>.78</MATERIAL_COST>
    <PO_NUMBER>1015156</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>14-OCT-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>AUD</CURRENCY_CODE>
    <PO_UNIT_PRICE>20</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>06R1017763</SERIAL_NUMBER>
    <ITEM_CODE>6062HK30.005</ITEM_CODE>
    <DESCRIPTION>DETROIT SERIES 60 MARINE ENGINE 615 KW 2949322</DESCRIPTION>
    <MANUFACTURER>MDD</MANUFACTURER>
    <APPLICATION>MARI</APPLICATION>
    <ITEM_COST>99125.34</ITEM_COST>
    <MATERIAL_COST>2028.31</MATERIAL_COST>
    <PO_NUMBER>883339</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>05-MAR-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>63768</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310935001</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1000221</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>01-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310935002</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1000221</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>01-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310935003</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1000221</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>01-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6510876301</SERIAL_NUMBER>
    <ITEM_CODE>T350R.004</ITEM_CODE>
    <DESCRIPTION>ALLISON TORQMATIC ON HWY TRANSMISSION</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>9465.69</ITEM_COST>
    <MATERIAL_COST>597.33</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>6936.3</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6510876302</SERIAL_NUMBER>
    <ITEM_CODE>T350R.004</ITEM_CODE>
    <DESCRIPTION>ALLISON TORQMATIC ON HWY TRANSMISSION</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>9465.69</ITEM_COST>
    <MATERIAL_COST>597.33</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>6936.3</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6510876303</SERIAL_NUMBER>
    <ITEM_CODE>T375R.002</ITEM_CODE>
    <DESCRIPTION>ALLISON TORQMATIC ON HWY TRANSMISSION</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>10224.19</ITEM_COST>
    <MATERIAL_COST>645.19</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>7433.3</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310940354</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310940355</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310940356</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>6310940357</SERIAL_NUMBER>
    <ITEM_CODE>2500.003</ITEM_CODE>
    <DESCRIPTION>ALLISON 2000 SERIES ON HWY TRANSMISSION E016189</DESCRIPTION>
    <MANUFACTURER>ATD</MANUFACTURER>
    <APPLICATION>ONHY</APPLICATION>
    <ITEM_COST>4855.33</ITEM_COST>
    <MATERIAL_COST>306.39</MATERIAL_COST>
    <PO_NUMBER>1005777</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>23-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>3574.9</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    <G_ASW_REC_DATE>
    <ORGANIZATION_CODE>70</ORGANIZATION_CODE>
    <ORGANISATION_NAME>NDC - PRODUCT</ORGANISATION_NAME>
    <SERIAL_NUMBER>5272003543</SERIAL_NUMBER>
    <ITEM_CODE>T1637K33.002</ITEM_CODE>
    <DESCRIPTION>DETROIT SERIES 4000 INDUSTRIAL ENGINE 1865 KW 2456291</DESCRIPTION>
    <MANUFACTURER>MDD</MANUFACTURER>
    <APPLICATION>MNIG</APPLICATION>
    <ITEM_COST>420083.16</ITEM_COST>
    <MATERIAL_COST>3785.85</MATERIAL_COST>
    <PO_NUMBER>921170</PO_NUMBER>
    <TRANSACTION_RECEIPT_DATE>30-JUN-09</TRANSACTION_RECEIPT_DATE>
    <VENDOR_LOT_NUM></VENDOR_LOT_NUM>
    <CURRENCY_CODE>USD</CURRENCY_CODE>
    <PO_UNIT_PRICE>301549</PO_UNIT_PRICE>
    </G_ASW_REC_DATE>
    </LIST_G_ASW_REC_DATE>
    </ASWRECDTREP>
    Best Regards,
    Mahi

    Hi Vetri,
    I tried to implement the solution you have given and i am getting error,
    I tried to see the output by loading the xml to the template given in BIP Blog in the following Link,
    http://blogs.oracle.com/xmlpublisher/2007/05/left_up_down_right_group.html
    I am getting the same error,Please help me how to overcome this.If possible send me the template that was working for you.
    The error log is as follows:
    ConfFile: C:\Program Files\Oracle\BI Publisher\BI Publisher Desktop\Template Builder for Word\config\xdoconfig.xml
    Font Dir: C:\Program Files\Oracle\BI Publisher\BI Publisher Desktop\Template Builder for Word\fonts
    Run XDO Start
    Template: C:\Users\MAHESH\Desktop\Grouping.rtf
    RTFProcessor setLocale: en-us
    FOProcessor setData: C:\Users\MAHESH\Desktop\EmployeeListing.xml
    FOProcessor setLocale: en-us
    java.lang.reflect.InvocationTargetException
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at oracle.apps.xdo.common.xml.XSLT10gR1.invokeProcessXSL(Unknown Source)
         at oracle.apps.xdo.common.xml.XSLT10gR1.transform(Unknown Source)
         at oracle.apps.xdo.common.xml.XSLT10gR1.transform(Unknown Source)
         at oracle.apps.xdo.common.xml.XSLTWrapper.transform(Unknown Source)
         at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(Unknown Source)
         at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(Unknown Source)
         at oracle.apps.xdo.template.FOProcessor.createFO(Unknown Source)
         at oracle.apps.xdo.template.FOProcessor.generate(Unknown Source)
         at RTF2PDF.runRTFto(RTF2PDF.java:629)
         at RTF2PDF.runXDO(RTF2PDF.java:439)
         at RTF2PDF.main(RTF2PDF.java:289)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
         at oracle.xdo.parser.v2.XSLTContext.peekExprValue4Grouping(XSLTContext.java:871)
         at oracle.xdo.parser.v2.XPathFunctionCall.evaluate(XPathFunctionCall.java:536)
         at oracle.xdo.parser.v2.XPathFunctionCall.evaluate(XPathFunctionCall.java:583)
         at oracle.xdo.parser.v2.XSLVariable.getValue(XSLVariable.java:205)
         at oracle.xdo.parser.v2.XSLVariable.processAction(XSLVariable.java:117)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
         at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
         at oracle.xdo.parser.v2.XSLTemplate.processAction(XSLTemplate.java:191)
         at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:512)
         at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:489)
         at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:271)
         at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:155)
         at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:192)
         ... 15 more
    Best Regards,
    Mahi

  • Spry Menu Using Nested XML Dataset (Spry 1.6)

    I have a vertical menu with a few items. One of which is
    labeled Products which has submenus. I want to have that submenu
    read from a Nested XML dataset. Using a single dataset for one
    level in a menu is easy enough, but the subenu will have submenus.
    Example Menu:
    Home
    Company
    Products
    |-- Product 1
    |-- Item 1
    |-- Item 2
    |-- Item 3
    |-- Product 2
    |-- Item 1
    |-- Item 2
    |-- Product 3
    |-- Item 1
    |-- Item 2
    |-- Item 3
    |-- Item 4
    |-- Product 4
    |-- Item 1
    |-- Item 2
    |-- Product 5
    I have been looking for an easy way to use the Spry Nested
    XML Dataset to create the Product/Item menu. The number of Products
    may vary as well as the number of Items in each Product submenu
    (also, some Products may not have Items).
    I already have an ASP page that creates the XML data from a
    database.
    Schema follows (XSD ):
    <?xml version="1.0" encoding="utf-8"?>
    <xsd:schema xmlns:xsd="
    http://www.w3.org/2001/XMLSchema">
    <xsd:element name="products">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="product_type"
    maxOccurs="unbounded">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="type_name" maxOccurs="1"
    type="xsd:string"/>
    <xsd:element name="type_url" maxOccurs="1"
    type="xsd:anyURI"/>
    <xsd:element name="product_name"
    maxOccurs="unbounded">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="item_name" maxOccurs="1"
    type="xsd:string"/>
    <xsd:element name="item_url" maxOccurs="1"
    type="xsd:anyURI"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    I have been programming for 17 years but am new to Spry. If
    this cannot be done easily with the Spry framework, I'll probably
    wind up splitting the XML data into 2 files (Products and Items)
    then writing a nested loop and call each by row, but then I have to
    find out how Spry Datasets reference XML data. Figuring out how to
    call rows from the XML data shouldn't be so bad, but this method
    just seems like such a hassle for something that should be easy.
    Pseudocode follows:
    j=1
    i=1 to TotalNumberProducts
    display Product i from Products
    ItemsExist=true
    While ItemsExist
    if j > TotalNumberItems | Item j is not for Product then
    ItemsExist=false
    else
    display Item j from Items
    j++
    Wend
    Next
    Thanks in advance for any help or direction!

    That's exactly what I'm trying to do. However, I implemented
    that code and the submenus won't appear. I suspect the submenus
    aren't finding the field names from the Nested XML Dataset. The
    first level of Product menus work great (this is a submenu of the
    overall menu) and correctly identify products that do not have
    submenus, so I know it's picking up the number of records in the
    Nested Dataset correctly - it just won't display the data in the
    next level of menu.
    variable and script declarations:
    <script src="SpryAssets/SpryMenuBar.js"
    type="text/javascript"></script>
    <script src="SpryAssets/xpath.js"
    type="text/javascript"></script>
    <script src="SpryAssets/SpryData.js"
    type="text/javascript"></script>
    <script src="SpryAssets/SpryNestedXMLDataSet.js"
    type="text/javascript"></script>
    <link href="SpryAssets/SpryMenuBarVertical.css"
    rel="stylesheet" type="text/css">
    <script type="text/javascript">
    <!--
    var productMenuData = new
    Spry.Data.XMLDataSet("products.asp", "products/product_type");
    var productMenuDataItems = new
    Spry.Data.NestedXMLDataSet(productMenuData, "product_name");
    //-->
    </script>
    Code for menus:
    <ul id="NavMenu" class="MenuBarVertical">
    <li><a
    href="index.html">Home</a></li>
    <li><a
    href="company.html">Company</a></li>
    <li><a href="franco_giberti.html">Franco
    Giberti</a></li>
    <li><a class="MenuBarItemSubmenu"
    href="products.asp">Products</a>
    <ul spry:region="productMenuData
    productMenuDataItems">
    <li spry:repeat="productMenuData"><a
    class="MenuBarItemSubmenu" href="{type_url}"
    spry:if="{productMenuDataItems::ds_RowCount} !=
    0">{type_name}</a> <a href="{type_url}"
    spry:if="{productMenuDataItems::ds_RowCount} ==
    0">{type_name}</a>
    <ul spry:if="{productMenuDataItems::ds_RowCount} !=
    0">
    <li spry:repeat="productMenuDataItems"><a
    href="{productMenuDataItems::item_url}">{productMenuDataItems::item_name}</a></li>
    </ul>
    </li>
    </ul>
    </li>
    <li><a href="contact.html">Contact Us</a>
    <!-- end #sidebar1 -->
    </li>
    </ul>
    XML:
    <products
    xsi:noNameSpaceSchemaLocation="products.xsd">

    <product_type>
    <type_name>Pasta Sauce</type_name>
    <type_url>pt_2.asp</type_url>

    <product_name>
    <item_name>Putenesca</item_name>
    <item_url>pn_3.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Arrabiata</item_name>
    <item_url>pn_4.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Pesto</item_name>
    <item_url>pn_5.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Basil and Tomato</item_name>
    <item_url>pn_6.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Bolognese</item_name>
    <item_url>pn_7.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Carboniera</item_name>
    <item_url>pn_8.asp</item_url>
    </product_name>
    </product_type>
    +
    <product_type>
    <type_name>Organic Olive Oil</type_name>
    <type_url>pt_3.asp</type_url>

    <product_name>
    <item_name>Original</item_name>
    <item_url>pn_9.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Basil</item_name>
    <item_url>pn_10.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Herbs</item_name>
    <item_url>pn_11.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Sun Dried Tomato</item_name>
    <item_url>pn_12.asp</item_url>
    </product_name>
    </product_type>
    +
    <product_type>
    <type_name>Organic Spreads</type_name>
    <type_url>pt_4.asp</type_url>

    <product_name>
    <item_name>Putenesca</item_name>
    <item_url>pn_13.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Arrabiata</item_name>
    <item_url>pn_14.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Pesto</item_name>
    <item_url>pn_15.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Basil and Tomato</item_name>
    <item_url>pn_16.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Bolognese</item_name>
    <item_url>pn_17.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Carboniera</item_name>
    <item_url>pn_18.asp</item_url>
    </product_name>
    </product_type>
    +
    <product_type>
    <type_name>Organic Grilled Vegetables</type_name>
    <type_url>pt_5.asp</type_url>

    <product_name>
    <item_name>Putenesca</item_name>
    <item_url>pn_19.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Arrabiata</item_name>
    <item_url>pn_20.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Pesto</item_name>
    <item_url>pn_21.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Basil and Tomato</item_name>
    <item_url>pn_22.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Bolognese</item_name>
    <item_url>pn_23.asp</item_url>
    </product_name>

    <product_name>
    <item_name>Carboniera</item_name>
    <item_url>pn_24.asp</item_url>
    </product_name>
    </product_type>

    <product_type>
    <type_name>Truffle Products</type_name>
    <type_url>pt_6.asp</type_url>
    </product_type>
    </products>
    Any further guidance would be very much appreciated!

  • Reading complex XML file in flex

    I have searched the web but found very primitive xml
    examples. I want to read a complex xml file which through
    httpservice .
    The xml file is ultimately going to become dataProvider of a
    tree. But I have no idea how to traverse this xml file. mentioned
    under are the xml file and HTTPService tag.
    I want to traverse it in the resultHandler function.
    Thank you very much

    Yes, as Greg says, use e4x.
    To do this you must set the HTTPService resultFormat="e4x";
    In you handler, do:
    var xmlResult= XML(event.result);
    trace(xmlResult.toXMLString());
    and away you go.
    Tracy

  • Binding ADF UI to a complex XML Type – Development Productivity, State Mgmt

    Binding ADF UI to a complex Web Service – Development Productivity, Managing State, Etc.
    For those scenarios when ADF UI has to be bound to a complex XML type, it seems that the direction taken by the ADF development team was to generate data-controls that map to complex XML types.
    The major problem with this approach is the fact that application server does not manage state. For example, If application has to submit a purchase order to a web service then application server has to manage the shopping card state until its ready to be submitted.
    In some previous forum threads it had been suggested that using generated data-controls is a “quick and dirty” solution for accessing web services and that a proper solution is to use generated Java Proxy Interface.
    That implies many manually constructed entity objects, associations and overridden doDML methods, which is far less productive compared to entity objects generated from a database schema.
    Suggestion and a Question for the ADF development team
    From the logical model standpoint, there is no difference in between the XML schema and DB schema. Therefore, it is possible to generate entity objects and associations for XML Types of XML schema the same way it’s done for tables of Database schema. The only difference is serialization of CRUD operations on entity objects.
    One way to handle this is:
    -     Generate Application Module for a complex XML type. This application module should have methods for marshaling to/from corresponding XML type.
    -     Generate entity object for each subtype within the complex XML type. In case of nested subtypes, generate association to a parent type.
    -     Generate data control with actions that are bound to web service operations and code that serializes request message from corresponding AM and de-serializes response message to corresponding AM.
    This way, ADF would offer the same productivity for the SOA development as one its currently offering for the ORM development.
    Until the time when something like this is available, what would be the best approach for binding ADF UI to web services?
    Feedback is greatly appreciated.
    Boro Petrovic
    Edited by: wds12518 on Jan 25, 2010 11:49 AM

    We have similar issues as our big portion of the UI is based on WS. We found that there is no easy way to map entity object structure to complex XML type (one EO can based on one flat type or domain can't be bound to UI directly). Oracle PMs, is there any better solution or future plans to address this issue?

Maybe you are looking for

  • IPhone no longer shows in iPhoto to import photos after 9.2 and iOS 5 updates

    For some reason my iPhone 4S doesn't show in iPhoto to import photos.  Oddly, iPhoto will launch when I plug into sync, but the phone does not show.  Also, the phone doesn't show in the Image Capture application.

  • ABAP HR Overview

    I have good idea about HR. But I’m not that much expert .I’d like if you guys share your ABAP HR experience and give me some hints like how to read time data what are the basic ways and macros to read time management data. What are the different ways

  • [svn:osmf:] 14465: Initial commit of refactored metadata API.

    Revision: 14465 Revision: 14465 Author:   [email protected] Date:     2010-02-26 21:16:35 -0800 (Fri, 26 Feb 2010) Log Message: Initial commit of refactored metadata API.  Note that this is the first step in a major, multi-step refactoring, so there m

  • Spotlight Has Stopped Working, WHY!!!!!!

    Hi There, New to this mac business converted after 10 years of being a PC man but music industry required me to spend money on Logic, anyway i was casually using my macbook and the spotlight thing stopped working, its nothing big but really annoying

  • Use of distribution model

    Hi , Is distribution model necessary while sending Idocs to other system ? Regards, Pradeep