2 XML data comparison
Hi,
I want to compare 2 xml data and identify the difference in the values enclosed inside the tags and log it across in a table.Please let me know how to compare 2 xml files in Oracle using pl/sql code.
P.S:
I am having Oracle 10.2 release
Thanks,
Vijay
It is certainly possible,
To give you a confidence ,am saying this statement
I have seen and worked with complex template involving multiple xml, templates etc..
drop the xml's and template and description of what is the requirement to my id.
we will work out ;)
Similar Messages
-
Idoc data comparison between different R/3 clients.
Hi ppl ,
Is there a way idoc comparison can be done between different clients without going
by Segment by Segment comparison ?
I have a requirement wherein i have thousands of idocs in QA system and i need to
compare those with the ones in PROD system. The segments in the idocs may vary
depending on the data that flows from the third party system which will post idocs in R/3.
So, the segment wise comparison of data is also ruled out .
Do we have any standard reports which will help in achieving this purpose ?
Please let me know how the idoc data comparison can be carried out .
Regards,
Nick.Hi Nick,
There is no standared tools available for comparing the data of two idocs.
By using beyond compare s/w you can check the data, but the thing is you have to download the idoc data to file format.
By using Idoc_xml_transform function module you can download idoc data to xml format, after you can compare.
Check this
http://download.cnet.com/Beyond-Compare/3000-2242_4-10015731.html
Regards
Ramesh -
Vertical XML Data Component?
Anyone know of a component that I can use to display XML data
in vertical columns, side by side for comparison without reworking
the XML - something like a spreadsheet layout or any comparison
tool you'd see on the web.
thanks,
Mark"MarkF13" <[email protected]> wrote in
message
news:gqbjav$cne$[email protected]..
> Ahhh - I forgot one thing. The rows have to be
"connected". So when
> there's
> more than one line in the cell, and the height of that
cell grows, the
> whole
> row has to grow with it, so all items remain aligned no
matter how long
> the
> "table" gets.
>
> I ran into this a few weeks ago when I started this
project and had
> apparently
> forgotten about it.
Try doing it more like this then:
<Repeater id="rp" dataProvider="{_xlc.getItemAt[0]}">
<HBox>
<Label text="{(rp.currentItem as XML).text()}" />
<Label text="{(_xlc.getItemAt[1].child(rp.currentIndex)
as
XML).text()}"/>
</HBox>
</Repeater>
HTH;
Amy -
Using a SQL data source and XML data source in the same template
I am trying to develop a template for the Request for Quote report generated in Apps 11.5.10. I have loaded the data from the XML output into the template, but I am missing one field - I need the org_id from the po_headers table. Is it possible to use a sql data source (i.e., "select org_id from po_headers_all where po_header_id = [insert header_id from xml data]...") in addition to the xml data source to populate the template at runtime? When you use the Insert > SQL functionality is it static at the time the template is created, or does it call to the database at runtime? I've looked through all the docs I could find, but this isn't clear.
Thanks for any help or suggestions you may have.
RhondaHi Pablo
Thats a tough one ... if you go custom with a data template you will at least get support on the data template functionality ie you have a problem when you try and build one. You will not get support on the query inside the data template as you might have gotten with the Oracle Report, well you could at least log a bug against development for a bad query.
Eventually that Oracle Report will be converted by development anyway, theres an R12 project going on right now to switch the shipped OReports to data templates. AT this point you'll be fully supported again but:
1. You have to have R12 and
2. You'll need to wait for the patch
On reflection, if you are confident enough in the query then Oracle will support you on its implementation within a data template. Going forward you may be able to swap out your DT and out in the Oracle one without too much effort.
Regards, Tim -
Hi all,
I am trying to use UTL_FILE.PUT_LINE to output an XML file. This xml file is the result of a select query. Hence converting the result of the select query into xml format using dbms_xmlgen.getxml and storing it in a variable. But the resultant xml data > 32k . What would be the best way to store it in variable? When using CLOB datatype, getting a numeric value error.
Thanks in advance.As you didn't post the code, nor included a four digit database version, you are asking someone to look in a crystal ball.
Sorry, they are out for repair.
Also the XDB forum would be more appropriate.
Sybrand Bakker
Senior Oracle DBA -
How i can transfer XML data from internet to SAP R/3?
Hi all,
I have an issue to catch data from internet (perticular website) in xml format and i want to update that xml data format into SAP R/3 database. so how i can do that?
Can I do directly or i should use any third party tools?Hi Deepak,
Refer these two weblogs,
/people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function
/people/jin.shin/blog/2007/05/21/handling-web-service-soap-fault-responses-in-sap-netweaver-xi
I hope, this will solve your problem
Regards,
Deviprasad -
DataGrid does not display XML data
Hello, and thanks for reading this...
I am having a problem displaying XMLList data in a DataGrid.
The data is coming from a Tree control, which is receiving it
from a database using HTTPService.
The data is a list of "Job Orders" from a MySQL database,
being formatted as XML by a PHP page.
If it would be helpful to see the actual XML, a sample is
here:
http://www.anaheimwib.com/_login/get_all_orders_test2.php
All is going well until I get to the DataGrid, which doesn't
display the data, although I know it is there as I can see it in
debug mode. I've checked the dataField property of the appropriate
DataGrid column, and it appears correct.
Following is a summary of the relevant code.
...An HTTPService named "get_all_job_orders" retrieves
records from a MySQL database via PHP...
...Results are formatted as E4X:
HTTPService resultFormat="e4x"
...An XMLListCollection's source property is set to the
returned E4X XML results:
...The "order" node is what is being used as the top-level of
the XML data.
<mx:XMLListCollection id="jobOrdersReviewXMLList"
source="{get_all_job_orders.lastResult.order}"/>
...The "jobOrdersReviewXMLList" collection is assigned to be
the dataProvider property of a Tree list, using the @name syntax to
display the nodes correctly, and a change event function is defined
to add the records to a DataGrid on a separate Component for
viewing the XML records:
<mx:Tree dataProvider="{jobOrdersReviewXMLList}"
labelField="@name"
change="jobPosForm.addTreePositionsToDG(event)"/>
...Here is the relevant "jobPosForm" code (the Job Positions
Form, a separate Component based on a Form) :
...A variable is declared:
[Bindable]
public var positionsArray:XMLList;
...The variable is initialized on CreationComplete event of
the Form:
positionsArray = new XMLList;
...The Tree's change event function is defined within the
"jobPosForm" Component.
...Clicking on a Tree node fires the Change event.
...This passes an event object to the function.
...This event object contains the XML from the selected Tree
node.
...The Tree node's XML data is passed into the positionsArray
XMLList.
...This array is the dataProvider for the DataGrid, as you
will see in the following block.
public function addTreePositionsToDG(event:Event):void{
this.positionsArray = selectedNode.positions.position;
...A datagrid has its dataProvider is bound to
positionsArray.
...(I will only show one column defined here for brevity.)
...This column has its dataField property set to "POS_TITLE",
a field in the returned XML record:
<mx:DataGrid width="100%" variableRowHeight="true"
height="75%" id="dgPositions"
dataProvider="{positionsArray}" editable="false">
<mx:columns>
<mx:DataGridColumn width="25" headerText="Position Title"
dataField="POS_TITLE"/>
</mx:columns>
</mx:DataGrid>
In debug mode, I can examine the datagrid's dataProvider
property, and see that the correct XML data from the Tree control
is present. However, The datagrid does not display the data in any
of its 6 columns.
Does anyone have any advice?
Thanks for your time.Hello again,
I came up with a method of populating the DataGrid from the
selected Item of a Tree Control which displays complex XML data and
XML attributes. After the user clicks on a Tree branch, I call this
function:
public function addTreePositionsToDG(event:Event):void{
//Retrieve all "position" nodes from tree.
//Loop thru each Position.
//Add Position data to the positionsArray Array Collection.
//The DataGrid dataprovider is bound to this array, and will
be updated.
positionsArray = new ArrayCollection();
var selectedNode:Object=event.target.selectedItem;//Contains
entire branch.
for each (var position:XML in
selectedNode.positions.position){
var posArray:Array = new Array();
posArray.PK_POSITIONID = position.@PK_POSITIONID;
posArray.FK_ORDERID = position.@FK_ORDERID;
posArray.POS_TITLE = position.@POS_TITLE;
posArray.NUM_YOUTH = position.@NUM_YOUTH;
posArray.AGE_1617 = position.@AGE_1617;
posArray.AGE_1821 = position.@AGE_1821;
posArray.HOURS_WK = position.@HOURS_WK;
posArray.WAGE_RANGE_FROM = position.@WAGE_RANGE_FROM;
posArray.WAGE_RANGE_TO = position.@WAGE_RANGE_TO;
posArray.JOB_DESCR = position.@JOB_DESCR;
posArray.DES_SKILLS = position.@DES_SKILLS;
positionsArray.addItem(posArray);
So, I just had to manually go through the selected Tree node,
copy each XML attribute into a simple Array, then ADD this Array to
an ArrayCollection being used as the DataProvider for the DataGrid.
It's not elegant, but it works and I don't have to use a Label
Function, which was getting way too complicated. I still think that
Flex should have an easier way of doing this. There probably is an
easier way, but the Flex documentation doesn't provide an easy path
to it.
I want to thank you, Tracy, for the all the help. I checked
out the examples you have at www.cflex.net and they are very
helpful. I bookmarked the site and will be using it as a resource
from now on. -
Edit/add XML data in BI Publisher
Hi
I have a java program that is generating an XML file that I am using as input for my BI publisher for PO report. However, I want to add some extra information(location addresses corresponding to location id) that is not there in the XML and I cannot edit the java program generating it. Is there any way I can do this in BI publisher? Can I edit/add XML data in BI publisher? This is really urgent and I appreciate any help.
Thanks,
SharmilaYou have to edit the package which has the sql query,
without fetching them in xml , you cannot display that.
BIP will not help you to get that into report.
The code which generates the XML data has to edited for sure..
I guess, i helped one guy for similar requirement,
i guess you are asking in the same report..
the java program in turn calls the Pl/Sql package which generates the XML data and pass it to the Java Concurrent Program.
The Pl/Sql package picks data from these views po_headers_xml, po_lines_xml, po_distribution_xml.
you can also add the columns you want to be displayed in these views, and then change the template accordingly. -
Regrouping the XML data source in BI Publisher
Hello,
We have a requirement in BI Publisher to develop a template accessing the data from different sources (data sets) and need to regroup the whole data by a field which exists in all the data sets.
Below is the sample example of the source file
<DATA><Total_Depletion>
<TOTAL_DEPLETION_ROW>
<BRAND_GROUP>BEEFEATER</BRAND_GROUP>
<BRAND>BEEFEATER</BRAND>
<OPP_RISK>-50.000001</OPP_RISK>
<STATE>AL</STATE>
</TOTAL_DEPLETION_ROW>
<TOTAL_DEPLETION_ROW>
<BRAND_GROUP>BEEFEATER</BRAND_GROUP>
<BRAND>BEEFEATER</BRAND>
<OPP_RISK>53.1</OPP_RISK>
<STATE>AR</STATE>
</TOTAL_DEPLETION_ROW>
</Total_Depletion>
<Accounts_sold><ACCOUNTS_SOLD_ROW>
<BRAND_GROUP>BEEFEATER</BRAND_GROUP>
<BRAND>BEEFEATER REGULAR</BRAND>
<STATE>MC</STATE>
<ACTUAL_ONPREMISE>2</ACTUAL_ONPREMISE>
</ACCOUNTS_SOLD_ROW>
<ACCOUNTS_SOLD_ROW>
<BRAND_GROUP>BEEFEATER</BRAND_GROUP>
<BRAND>BEEFEATER WET</BRAND>
<STATE>CA</STATE>
<ACTUAL_ONPREMISE>916</ACTUAL_ONPREMISE>
</ACCOUNTS_SOLD_ROW>
</Accounts_sold></DATA>
Now our requirement is to regroup the whole data by Brand and then state, and need to display in two different tables.
Can any one help us in fixing this issue out.
Thanks a lot,Hi Stefanos,
Check beow blog for reference...
/people/community.user/blog/2007/08/13/sap-netweaver-70-bi-how-to-send-xml-data-to-bi--enhancement
Regards,
KK. -
Tranferring XML data to the B1 System
Hi,
Iam very new to the B1 system..
Iam looking to transfer the data from the XML file to the B1 system.
to make it clear, the requirement is i have a purchase order coming from one system and it is saved in the server..the data in the XML file will have to be shown in the B1 system as a sales order..
Please any one can help on this ASAP.
Thanks,
Bhaskar.Bhaskar,
The forum that you have posted your question in is for questions related to the SAP Business One Integration to SAP NetWeaver. You question seems more generic as to how to import XML into SAP Business One.
One way of doing this would be to create a small program using the Business One SDK. You can search the SAP Business One SDK Discussion Forum as well as look at the SDK documentation that comes with the product. If you converted the XML data to text, you could use the Data Transfer Workbench. There are different options that you have.
Eddy -
Convert XML data to byte array...
Hello All,
In my application, i have an XML file and the corresponding XSD file. This XML file is having some date, which i want to convert into an byte[] and then save it in a file.
How i can convert the XML data in the byte[]? Here as an example of the xml file and the byte[] data which i want to save in a file.
<?xml version="1.0" encoding="utf-8"?>
<HeadersInfo>
<header>
<id>0</id>
<Name>H1</Name>
</header>
<header>
<id>1</id>
<Name>H2</Name>
</header>
</HeasersInfo>
In the above example 'id' field is of type 'uint' and 'name' field is of type 'string' with max length of '5'. So in this case my byte array should be as shown below:
00 00 00 01 48 31 00 00 00
00 00 00 02 48 32 00 00 00
Here underlines values are for the 'id' parameter where as values in bold are for 'Name' parameter for all the header values in sequence. Name parameter is null (0x00) padded.
Thanks in advance,
IamHuMHi,
the following example extract the id, name values using LINQ To Xml and writes it to a memory stream using a binary writer and returns the result as a byte array:
internal static byte[] GetXmlAsByteArray()
var document = XDocument.Parse("<HeadersInfo>"
+ " <header><id>1</id><Name>H1</Name></header>"
+ " <header><id>2</id><Name>H2</Name></header>"
// additional testing
+ " <header><id>32767</id><Name>H1234</Name></header>"
+ " <header><id>305419896</id><Name>H56789</Name></header>"
+ "</HeadersInfo>");
const int NameLength = 5; // Max length for a name
byte[] zeroBytes = new byte[NameLength]; // Helper to fill name
using (var ms = new MemoryStream())
using (var writer = new BinaryWriter(ms))
// write each header
foreach (var header in document.Root.Elements("header"))
int id = (int)header.Element("id");
string name = (string)header.Element("Name");
byte[] nameBytes = System.Text.Encoding.UTF8.GetBytes(name);
Console.WriteLine("id: {0}, Name: {1}", id, name);
// Write id
writer.Write(GetUIntBytes((uint)id));
// Write name NameLength (5) max, otherwise padded
if (nameBytes.Length > NameLength)
writer.Write(nameBytes, 0, NameLength);
else
writer.Write(nameBytes, 0, nameBytes.Length);
if (nameBytes.Length < NameLength)
writer.Write(zeroBytes, 0, NameLength - nameBytes.Length);
byte[] result = ms.ToArray();
// dump array
foreach (var value in result)
Console.Write("{0:X2} ", value);
Console.WriteLine();
return result;
public static byte[] GetUIntBytes(uint value)
if (BitConverter.IsLittleEndian)
// swap bytes
value = ((value & 0x00ff) << 24)
| ((value & 0xff00) << 8)
| ((value & 0x00ff0000) >> 8)
| ((value & 0xff000000) >> 24);
return BitConverter.GetBytes(value);
For a general purpose solution you should create a class and split the example into separate methods to extract the data and write the values (integers, strings).
Regards, Elmar -
How do I use the Session State to manage bind variables & download xml data
I have a Report Query with more than 30 queries; many have bind variables in them. I'd like to create sample xml so that I can develop my word templates. When I try to download the XML data Source for Layout, it doesn't ask for the bind variable values.
How can I download the XML data without replacing the bind variable values in each of the queries?
Thank you.If you are using the Standalone version, then first of all make sure to UNCHECK (BIP10g 10.1.3.4.1)
"AUTO RUN" (it is under General Settings when you select your Report Definition)
Next, you should define the parameters in the corresponding parameter Section.
Its simplest form is of "Text" type so you will have to enter values at runtime.
Then these parameters can be used in your query as bind variables.
When you run the report it will prompt for parameter values. Enter these values
and you would get a sample of your XML data.
This should work and you should not find any issues.
regards
Jorge -
XML Data ( View Total exist in a different query)
Hi,
This is a sample of my xml data :
<TEST_COMP>
- <LIST_G_Q1>
- <G_Q1>
<Q1_ITEM_ID>61</Q1_ITEM_ID>
<TOT>13754492</TOT>
</G_Q1>
- <G_Q1>
<Q1_ITEM_ID>62</Q1_ITEM_ID>
<TOT>1199366</TOT>
</G_Q1>
- <G_Q1>
<Q1_ITEM_ID>63</Q1_ITEM_ID>
<TOT>20886715</TOT>
</G_Q1>
</LIST_Q1>
- <LIST_G_ALL_LIST>
<G_ALL_ITEMS>
<ITEML_ID>68</ITEM_ID>
<ITEM_NAME>ITEM NAME 1</ITEM_NAME>
</G_ALL_ITEMS>
- <G_ALL_ITEMS>
<ITEM_ID>69</ITEM_ID>
<ITEM_NAME>ITEM NAME 2</ITEM_NAME>
</G_ALL_ITEMS>
</LIST_G_ALL_LIST>
</TEST_COMP>I do insert a table that display the data in the LIST_G_ALL_LIST, i need to insert one more column that read the total value of the same item exist in the LIST_G_Q1..
I wrote the following in the new column:
<?for-each:G_Q1?><?if: Q1_ITEM_ID=ITEM_ID?><?TOT?><?end if?><?end for-each?>What i got is a blank cloumn whatever the item id was even if there is a total in the Q1
Would you please help
Hope that my problem is clear enough!
Thanks a lotI tried using variables...
I rest my variable (in G_ALL_ITEMS) using
<?xdoxslt:set_variable($_XDOCTX, 'x', ITEM_ID)?>Then i tried to recall it in my if condition ( inside G_Q1)
<?if: Q1_ITEM_ID=xdoxslt:get_variable($_XDOCTX, 'x')?>it still give me a blank cloumn!! -
How to create a report using XML data source from Crystal Report Designer
Hi,
Iu2019m having Crystal Report Designer XI R2 SP4. Iu2019m trying to create a report using XML data source stored on disk. This is a customer order report and the xml is structured in such a way that it has an order details header part (master) and then it has several order lines (detail). One order line can have several order line characteristics (detail-detail). So what I need to know is now I can design this layout from the designer. If this was done using views I can do it with sub-reports but using xml data this seems to be different. Can you help me to design this layout? I have included the xml and xsd as well.
Thank you in advance.
Regards,
Chanaka
XML
<?xml version="1.0" encoding="UTF-8"?>
<CUSTOMER_ORDER_CONF_REP_REQUEST xmlns:xsi="http://www.w3.org/2001/XMLSchema" xmlns="urn:ifsworld-com:customer_order_conf_rep">
<CUSTOMER_ORDER_CONF_REP>
<ORDER_NO>D555809</ORDER_NO>
<PRINTED_DATE>2009-03-26T08:52:54</PRINTED_DATE>
<AUTHORIZE_NAME>Chanaka</AUTHORIZE_NAME>
<CUSTOMER_NO>CU-1473-INV</CUSTOMER_NO>
<CUST_NAME>Mr.Johan Matts</CUST_NAME>
<SHIP_ADDR_1>93,Main Street</SHIP_ADDR_1>
<SHIP_ADDR_2>Negambo Road</SHIP_ADDR_2>
<SHIP_ADDR_3>Watthala</SHIP_ADDR_3>
<SHIP_ADDR_4>SRI LANKA</SHIP_ADDR_4>
<BILL_ADDR_1>93,Main Street</BILL_ADDR_1>
<BILL_ADDR_2>Negambo Road</BILL_ADDR_2>
<BILL_ADDR_3>Watthala</BILL_ADDR_3>
<BILL_ADDR_4>SRI LANKA</BILL_ADDR_4>
<CUSTOMER_PO_NO>112984638</CUSTOMER_PO_NO>
<CUSTOMER_FAX>112984639</CUSTOMER_FAX>
<CUSTOMER_EMAIL>abcbababab</CUSTOMER_EMAIL>
<ORDER_LINES>
<ORDER_LINE>
<LINE_NO>1</LINE_NO>
<CUSTOMER_PART_NO>NW-IP11</CUSTOMER_PART_NO>
<CUSTOMER_PART_DESC>iPod</CUSTOMER_PART_DESC>
<SALE_UNIT_PRICE>1200</SALE_UNIT_PRICE>
<PRICE_TOTAL>1200</PRICE_TOTAL>
<DISCOUNT>0</DISCOUNT>
<PRICE_QTY>1</PRICE_QTY>
<ORDER_LINE_CHARACTERSTICS>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID xsi:nil="1"/>
<CHARACTERISTIC_VALUE xsi:nil="1"/>
</CHARACTERISTIC_ITEM>
</ORDER_LINE_CHARACTERSTICS>
</ORDER_LINE>
<ORDER_LINE>
<LINE_NO>2</LINE_NO>
<CUSTOMER_PART_NO>NW-IP24</CUSTOMER_PART_NO>
<CUSTOMER_PART_DESC>XGA Projector</CUSTOMER_PART_DESC>
<SALE_UNIT_PRICE>500</SALE_UNIT_PRICE>
<PRICE_TOTAL>1500</PRICE_TOTAL>
<DISCOUNT>0</DISCOUNT>
<PRICE_QTY>3</PRICE_QTY>
<ORDER_LINE_CHARACTERSTICS>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>Free Instalation</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
</ORDER_LINE_CHARACTERSTICS>
</ORDER_LINE>
<ORDER_LINE>
<LINE_NO>3</LINE_NO>
<CUSTOMER_PART_NO>NW-IP02</CUSTOMER_PART_NO>
<CUSTOMER_PART_DESC>Sony DVD Player</CUSTOMER_PART_DESC>
<SALE_UNIT_PRICE>1000</SALE_UNIT_PRICE>
<PRICE_TOTAL>1000</PRICE_TOTAL>
<DISCOUNT>0</DISCOUNT>
<PRICE_QTY>1</PRICE_QTY>
<ORDER_LINE_CHARACTERSTICS>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>Free 5 DVDs</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
</ORDER_LINE_CHARACTERSTICS>
</ORDER_LINE>
<ORDER_LINE>
<LINE_NO>4</LINE_NO>
<CUSTOMER_PART_NO>NW-IP99</CUSTOMER_PART_NO>
<CUSTOMER_PART_DESC>Flatscreen TV</CUSTOMER_PART_DESC>
<SALE_UNIT_PRICE>1500</SALE_UNIT_PRICE>
<PRICE_TOTAL>1350</PRICE_TOTAL>
<DISCOUNT>10</DISCOUNT>
<PRICE_QTY>1</PRICE_QTY>
<ORDER_LINE_CHARACTERSTICS>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>Free Delivery</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>2</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>1 year additional warranty</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
</ORDER_LINE_CHARACTERSTICS>
</ORDER_LINE>
<ORDER_LINE>
<LINE_NO>5</LINE_NO>
<CUSTOMER_PART_NO>NW-IP56</CUSTOMER_PART_NO>
<CUSTOMER_PART_DESC>Sony MP3 Player</CUSTOMER_PART_DESC>
<SALE_UNIT_PRICE>200</SALE_UNIT_PRICE>
<PRICE_TOTAL>400</PRICE_TOTAL>
<DISCOUNT>0</DISCOUNT>
<PRICE_QTY>2</PRICE_QTY>
<ORDER_LINE_CHARACTERSTICS>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>1</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>Free carry belt</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>2</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>Free promotional 4GB memory bar</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ITEM>
<CHARACTERISTIC_ID>3</CHARACTERISTIC_ID>
<CHARACTERISTIC_VALUE>No warranty on memory bar</CHARACTERISTIC_VALUE>
</CHARACTERISTIC_ITEM>
</ORDER_LINE_CHARACTERSTICS>
</ORDER_LINE>
</ORDER_LINES>
</CUSTOMER_ORDER_CONF_REP>
</CUSTOMER_ORDER_CONF_REP_REQUEST>
XSD
<?xml version="1.0" encoding="UTF-8"?>
<?report module="ORDER" package="CUSTOMER_ORDER_CONF_REP" ?>
<xs:schema targetNamespace="urn:ifsworld-com:customer_order_conf_rep" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:ifsworld-com:customer_order_conf_rep" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="CUSTOMER_ORDER_CONF_REP_REQUEST">
<xs:complexType>
<xs:all minOccurs="1" maxOccurs="1">
<xs:element name="CUSTOMER_ORDER_CONF_REP">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="50">
<xs:element name="ORDER_NO" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PRINTED_DATE" type="xs:dateTime" nillable="true" minOccurs="0"/>
<xs:element name="AUTHORIZE_NAME" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CUSTOMER_NO" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CUSTOMER_PO_NO" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CUST_NAME" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SHIP_ADDR_1" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SHIP_ADDR_2" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SHIP_ADDR_3" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SHIP_ADDR_4" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BILL_ADDR_1" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BILL_ADDR_2" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BILL_ADDR_3" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BILL_ADDR_4" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CUSTOMER_FAX" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CUSTOMER_EMAIL" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ORDER_LINES" nillable="true" minOccurs="0">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ORDER_LINE">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="39">
<xs:element name="LINE_NO" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SALE_UNIT_PRICE" type="xs:float" nillable="true" minOccurs="0"/>
<xs:element name="PRICE_TOTAL" type="xs:float" nillable="true" minOccurs="0"/>
<xs:element name="DISCOUNT" type="xs:float" nillable="true" minOccurs="0"/>
<xs:element name="PRICE_QTY" type="xs:float" nillable="true" minOccurs="0"/>
<xs:element name="CUSTOMER_PART_NO" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CUSTOMER_PART_DESC" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ORDER_LINE_CHARACTERSTICS" nillable="true" minOccurs="0">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="CHARACTERISTIC_ITEM">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="6">
<xs:element name="CHARACTERISTIC_ID" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CHARACTERISTIC_VALUE" nillable="true" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>Hi Sourashree,
Thank you for the response and ideas you have given me so far. I can get the fetch the data from the data source without any problem. That is I do the following,
1. New Report
2. From Create New Connection-> XML
3. Provide the u201CLocal XML Fileu201D and have u201CSpecify Schema Fileu201D checked -> Next
4. Provide the u201CLocal Schema Fileu201D -> Finish
Then I can see the following under XML
+ CUSTOMER_ORDER_CONF_REP_REQUEST
CUSTOMER_ORDER_CONF_REP_REQUEST
CUSTOMER_ORDER_CONF_REP_REQUEST/CUSTOMER_ORDER_CONF_REP
CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES
CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE
CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE/ORDER_LINE_CHARACTERSTICS
CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE/ORDER_LINE_CHARACTERSTICS/CHARACTERSTIC_ITEM
And from here if I add the following three I can get all the fields I need to the report
CUSTOMER_ORDER_CONF_REP_REQUEST/CUSTOMER_ORDER_CONF_REP
CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE
CUSTOMER_ORDER_CONF_REP_REQUEST/ CUSTOMER_ORDER_CONF_REP/ORDER_LINES/ORDER_LINE/ORDER_LINE_CHARACTERSTICS/CHARACTERSTIC_ITEM
Then I come to the Linking section. Here I canu2019t link anything. There is a common field called u201CInternal_IDu201D but I canu2019t link using it. So I get a message when I click Next. From here I add all the fields.
For this point onwards only I need help. How do I group, add fields and design the layout so I can get an report output as follows.
Date
Order number Authorized code
Customer No
Name
Phone
Fax email
Shipping address 1 Billing Address 1
Shipping address 2 Billing Address 2
Shipping address 3 Billing Address 3
Shipping address 4 Billing Address 4
Order Line 1 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026 LINE_NO CUSTOMER_PART_NO CUSTOMER_PART_DESC SALE_UNIT_PRICE PRICE_QTY DISCOUNT PRICE_TOTAL
Characteristic details belonging to Order line 1 CHARACTERISTIC_ID 1 CHARACTERISTIC_VALUE1
CHARACTERISTIC_ID 2 CHARACTERISTIC_VALUE2
CHARACTERISTIC_ID 3 CHARACTERISTIC_VALUE3
Order Line 2 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
Characteristic details belonging to Order line 2
Order Line 3 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
Characteristic details belonging to Order line 3
Order Line 4 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
Characteristic details belonging to Order line 4
Order Line 5 detailsu2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026u2026
Characteristic details belonging to Order line 5
How can I achieve this kind of a layout using the give xml and xsd? Should I use grouping if so how should I do the grouping?
I have included the full xml and xsd in the first mail I posted but I canu2019t see it now. I can include that again if you want.
Regards,
Chanaka -
Spry Tabbed XML data panels within HTMLPanel not working.
Many thanks for reading.
s
I trying to provide a rapid solution using adobe's samples
to make Spry Tabs work within an html panel (in order to avoid
many links in my page).
I am using the following code:
initial page with html panel with the ready products.js to parse the links:
<script src="../SpryAssets/xpath.js" type="text/javascript"></script>
<script src="../SpryAssets/SpryData.js" type="text/javascript"></script>
<script src="../SpryAssets/SpryPagedView.js" type="text/javascript"></script>
<script src="../SpryAssets/SpryDOMUtils.js" type="text/javascript"></script>
<script src="../SpryAssets/SpryHTMLPanel.js" type="text/javascript"></script>
<script language="JavaScript" type="text/javascript" src="../SpryAssets/SpryDataExtensions.js"></script>
<script src="SpryNestedXMLDataSet.js" type="text/javascript"></script>
<script src="../SpryAssets/products.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="TabbedPanels/SpryTabbedPanels.css"/>
<script src="TabbedPanels/SpryTabbedPanels.js"></script<script type="text/javascript">
var ds1 = new Spry.Data.XMLDataSet("ajaxbibliaxmlbridgetitle.php", "root/row[katigoria=1]", {sortOnLoad: "ID_BIBLIOU", sortOrderOnLoad: "ascending"});
var pv1 = new Spry.Data.PagedView( ds1 ,{ pageSize:10 });
var pv1PagedInfo = pv1.getPagingInfo();
//var TabbedPanels1 = new Spry.Widget.TabbedPanels();
</script>
</head>
<body class="twoColFixRtHdr">
<div id="container">
<div id="sidebar1">
<div id="productPageLinks">
<ul>
<li><a href="index.php">Index</a></li>
<li><a href="booklist.php">Product List</a></li>
<li><a href="test.php">Σχετικά με τη Βιβλιοθήκη</a></li>
</ul>
</div>
</div>
<div id="mainContent">
<br />
<div class="HTMLPanelLoadingContent"> Waiting</div>
<div class="HTMLPanelErrorContent"> error </div>
</div>
</div>
</body>
</html>
Products.js (adobe'S change to can load xml dataset)
var mainPanel = null;
// Our initialization function which unobtrusively attaches
// click handlers on the product links within the page.
function InitProductPage()
mainPanel = new Spry.Widget.HTMLPanel("mainContent" , { evalScripts: true });
var observer = {onPostUpdate: function(){ Spry.Data.initRegions('mainContent');
mainPanel.addObserver(observer);
// For every link on the page which points to a product page,
// attach an onclick handler that will intercept clicks and
// and fire off a request to load the URL via the HTMLPanel.
// For these links, we want to load the static product page
// and extract out the content underneath the "mainContent"
// node.
Spry.$$("#productPageLinks a").addEventListener("click", function(e)
mainPanel.loadContent(this.href, { id: "mainContent" });
return false;
}, false);
// For every link on the page which points to a product HTML
// fragment, attach an onclick handler that will intercept clicks and
// and fire off a request to load the URL via the HTMLPanel.
// For these links, we are loading HTML fragments, so there is no
// need to specify an ID to extract out. The HTMLPanel will insert
// all of the content recieved.
Spry.$$("#productFragmentLinks a").addEventListener("click", function(e)
mainPanel.loadContent(this.href);
return false;
}, false);
// Add our InitProductPage() function as a load listener
// so that it gets executed once the page has fully loaded.
Spry.Utils.addLoadListener(InitProductPage);
XML data and stuff all loaded correctly
What I am trying to do is to load a second page from a link in my initial page
that contains a Tabbed Panel.
The page loads but no panel functionality exists. The first Panel load correctly but behaves as a simple html page .
I have searched several hours the forums and playing around by moving the definition of Spry.Widget.TabbedPanels within
the initial HTMLPanel page and other spots but this produced js errors as expected (because the tab panel definitions exist in bookcategories.php)
which is loaded only when it is called.
Any ideas?
Page to load is like this :
<bookcategories.php>
<link rel="stylesheet" type="text/css" href="TabbedPanels/SpryTabbedPanels.css"/>
<script src="TabbedPanels/SpryTabbedPanels.js"></script>
<script language="JavaScript" type="text/javascript" src="../SpryAssets/SpryDataExtensions.js"></script>
</head>
<body >
<div id="container">
<div id="mainContent">
<div class="TabbedPanels" id="TabbedPanels1">
<ul class="TabbedPanelsTabGroup">
<li class="TabbedPanelsTab">SOmething ... </li>
<li class="TabbedPanelsTab">Something else </li>
<
</ul>
<div class="TabbedPanelsContentGroup">
<div class="TabbedPanelsContent">Blah Blah
<div spry:region="pv1" id="bibliapv"><br />
<br />
<div spry:state="ready">
<table width="775" height="42" >
<tr style="color:#900"; >
<th etc>
</tr>
<tr spry:repeat="pv1" spry:even="even" spry:odd="odd">
<td > {ID_}
</td>
<td>{Writer}</td>
<td>{Book_Title}</td>
</tr>
</table>
</div>
</div>
<div class="TabbedPanelsContent">Tab 2 Content</div>
<div class="TabbedPanelsContent">Tab 3 Content</div>
<div class="TabbedPanelsContent">Tab 4 Content</div>
</div>
</div>
</div>
<br class="clearfloat" />
</div>
<script type="text/javascript">
var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1");
</script>
</body>
</html>
Many thanksOk I went back through everything and checked to make sure my
files were in the right places both my SpryTabbedPanels.css and my
SpryTabbedPanels.js are in the SpryAssets folder and they work fine
until I try and add data from an xml file to them then the tabs
populate with the info but become unclickable and the content area
has every bit of content in on tab. Below is what I have let me
know what I'm doing wrong I am using Spry 1.6
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml"
xmlns:spry="
http://ns.adobe.com/spry">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" />
<title>Untitled Document</title>
<script src="SpryAssets/xpath.js"
type="text/javascript"></script>
<script src="SpryAssets/SpryData.js"
type="text/javascript"></script>
<script src="SpryAssets/SpryTabbedPanels.js"
type="text/javascript"></script>
<script type="text/javascript">
<!--
var ds1 = new Spry.Data.XMLDataSet("solutions3.xml",
"solutions/solution");
//-->
</script>
<link href="SpryAssets/SpryTabbedPanels.css"
rel="stylesheet" type="text/css" />
</head>
<body>
<div spry:region="ds1">
<div id="TabbedPanels1" class="TabbedPanels">
<ul class="TabbedPanelsTabGroup">
<li spry:repeat="ds1" class="TabbedPanelsTab"
tabindex="0">{name}</li>
</ul>
<div class="TabbedPanelsContentGroup">
<div spry:repeat="ds1"
class="TabbedPanelsContent">{desc}</div>
</div>
</div>
</div>
<script type="text/javascript">
<!--
var TabbedPanels1 = new
Spry.Widget.TabbedPanels("TabbedPanels1");
//-->
</script>
</body>
</html>
Maybe you are looking for
-
Dynamic Action based on Interactive Report Select List Value
I'd like to perform a Dynamic Action when a user selects one of 3 options from a Select List within an Interactive Report: select APEX_ITEM.SELECT_LIST( p_idx => 3, --p_value => deptno, p_list_values => 'Copy;Copy,Delete;Delete,Export to PD
-
How do I use home sharing between apple tv and ipad
Can I connect mt iPad to apple tv without connecting my Mac.
-
We have a large character string in the memory, e.g. of 5M. (1) we want to split the character string into an internal table with a field of c(1000), for example. (2) we want to read the internal table, and concatenate each line into one string. For
-
NI-Scope 2.0 doesn't start
My goal is to work with a NI 5112 I have installed the digitiser in a free PCI-slot: no hardware problems (driver version 2.0.0f0 works fine) 1. I have installed the NI-Scope Software from the NI CD-rom (version 2.0), but Scope-SFP does not start: er
-
importing photoshop image with layer--but fce renders very slow--40 minutes then playback jerky and very slow --nothing unusual about the document except there is a lot of bright yellow in the image and layer--could this somehow be the problem?--up t