Sign Up
Search
Options
search
Chat
Help
News
Log in
Not Logged in
Home
»
Boards
»
Stylus Studio Developer Network
»
XSLT Help and Discussion
»
Order of Processing Child Elements
Conferences
Stylus Studio Feature Requests
(1192)
Stylus Studio Technical Forum
(14621)
Website Feedback
(249)
XSLT Help and Discussion
(7625)
Dump Payload into String
(4)
Converting Global EDIFACT into...
(2)
Auto mapping of XSLT?
(3)
Numbering a list broken into m...
(3)
help in xsl:analyze-string
(2)
Use XSLT with SOAP
(2)
Order of Processing Child Elem...
(2)
Order of Processing Child...
XSL finding a node based on va...
(2)
grouping a group?
(11)
Query on Looping
(5)
java.lang.Assertionerror_: Slo...
(7)
CONVERT SQL Server data to XML...
(11)
Error using "xsltproc" command...
(3)
XML refresh via web broswer
(3)
XSL-mapping usage for csv file...
(4)
form controls with xslt
(2)
Stylus Studio 2011 XML Enterpr...
(2)
Looping through Itema and gett...
(2)
Image src through System Varia...
(3)
XSL-mapping usage for csv file...
(3)
Previous
[61-80]
[81-100]
[101-120]
Next
XQuery Help and Discussion
(2017)
Stylus Studio FAQs
(159)
Stylus Studio Code Samples & Utilities
(364)
Stylus Studio Announcements
(113)
Topic
next
Subject:
Order of Processing Child Elements
Author:
John Hoffman
Date:
28 Mar 2012 01:10 PM
Hi,
I'm new to XSL and I'm trying to display the following:
<STATEMENT>
<Account>
<ACCTNUM name="Account Number">111111111</ACCTNUM>
<PPSTAR/>
<DISDAT name="Acount Date">01/13/2011</DISDAT>
<Charges>
<Item>
<DESC>charge 1a</DESC>
<AMT>1043.00</AMT>
</Item>
<Item>
<DESC>charge 1b</DESC>
<AMT>3605.16</AMT>
</Item>
<TOTCHGAMT name="Total Charges">5886.06</TOTCHGAMT>
</Charges>
<Credits>
<Item type="INS">
<DESC>Pmts/Adjs</DESC>
<AMT>-5123.44</AMT>
</Item>
<TOTPAYAMT>-5123.44</TOTPAYAMT>
</Credits>
<ACCTBAL name="Balance Due">762.62</ACCTBAL>
<DUNMESS>Please remit payment in full.</DUNMESS>
</Account>
<Account>
<ACCTNUM name="Account Number">222222222</ACCTNUM>
<PPSTAR/>
<DISDAT name="Account Date">01/07/2011</DISDAT>
<Charges>
<Item>
<DESC>Charge 2a</DESC>
<AMT>149.39</AMT>
</Item>
<Item>
<DESC>Charge 2b</DESC>
<AMT>819.32</AMT>
</Item>
<TOTCHGAMT name="Total Charges">1477.67</TOTCHGAMT>
</Charges>
<Credits>
<Item type="INS">
<DESC>Pmts/Adjs</DESC>
<AMT>-1405.10</AMT>
</Item>
<TOTPAYAMT>-1405.10</TOTPAYAMT>
</Credits>
<ACCTBAL name="Balance Due">72.57</ACCTBAL>
<DUNMESS>Please remit payment in full.</DUNMESS>
</Account>
</STATEMENT>
To look like this:
Account# Date Desc/Code Charges Credits Balance
111111111 01/13/2011
Supplies 43.00
Laboratory 819.32
MEDICARE Pmts/Adjs -5123.44
Total Pmts/Adjs -5123.44
Balance Due 762.62
222222222 01/13/2011
Supplies 43.00
Laboratory 819.32
MEDICARE Pmts/Adjs -5123.44
Total Pmts/Adjs -5123.44
Balance Due 762.62
333333333 01/13/2011
Supplies 43.00
Laboratory 819.32
MEDICARE Pmts/Adjs -5123.44
Total Pmts/Adjs -5123.44
Balance Due 762.62
Instead I get this:
Account# Date Desc/Code Charges Credits Balance
111111111 01/13/2011
222222222 01/13/2011
333333333 01/13/2011
Supplies 43.00
Laboratory 819.32
Supplies 43.00
Laboratory 819.32
Supplies 43.00
Laboratory 819.32
MEDICARE Pmts/Adjs -5123.44
MEDICARE Pmts/Adjs -5123.44
MEDICARE Pmts/Adjs -5123.44
Total Pmts/Adjs -5123.44
Total Pmts/Adjs -5123.44
Total Pmts/Adjs -5123.44
Balance Due 762.62
Balance Due 762.62
Balance Due 762.62
My syntax:
<xsl:for-each select="Account">
<tr height="15px" nowrap="1">
<td width="212px" style="text-align: center;font-size: 13px;"> <xsl:value-of select="ACCTNUM"/><xsl:value-of select="PPSTAR"/></td>
<td width="88px" style="text-align: center;font-size: 13px;"> <xsl:value-of select="DISDAT"/></td>
<td width="204px"></td>
<td width="109px"></td>
<td width="109px"></td>
<td width="109px"></td>
</tr>
</xsl:for-each>
<!--CHARGES AND CREDITS AND BALANCE DETAIL-->
<xsl:for-each select="Account/Charges/Item">
<tr height="15px" nowrap="1">
<td width="212px"></td>
<td width="88px"></td>
<td width="204px" style="text-align: left;font-size: 13px;"> <xsl:value-of select="DESC"/></td>
<td width="109px" style="text-align: right;font-size: 13px;"> <xsl:value-of select="AMT"/></td>
<td width="109px"></td>
<td width="109px"></td>
</tr>
</xsl:for-each>
<xsl:for-each select="Account/Charges">
<tr height="15px" nowrap="1">
<td width="212px"></td>
<td width="88px"></td>
<td width="204px" style="text-align: left;font-size: 13px; font-weight:bold;">Total Charges</td>
<td width="109px" style="text-align: right;font-size: 13px; font-weight:bold;"> <xsl:value-of select="TOTCHGAMT"/></td>
<td width="109px"></td>
<td width="109px"></td>
</tr>
</xsl:for-each>
<xsl:for-each select="Account/Credits/Item">
<tr height="15px" nowrap="1">
<td width="212px"></td>
<td width="88px"></td>
<td width="204px" style="text-align: left;font-size: 13px;font-weight:bold;"> <xsl:value-of select="DESC"/></td>
<td width="109px"></td>
<td width="109px" style="text-align: right;font-size: 13px;font-weight:bold;"> <xsl:value-of select="AMT"/></td>
<td width="109px"></td>
</tr>
</xsl:for-each>
<xsl:for-each select="Account/Credits">
<tr height="15px" nowrap="1">
<td width="212px"></td>
<td width="88px"></td>
<td width="204px" style="text-align: left;font-size: 13px;font-weight:bold;">Total Pmts/Adjs</td>
<td width="109px"></td>
<td width="109px" style="text-align: right;font-size: 13px;font-weight:bold;"> <xsl:value-of select="TOTPAYAMT"/></td>
<td width="109px"></td>
</tr>
</xsl:for-each>
<xsl:for-each select="Account">
<tr height="15px" nowrap="1">
<td width="212px"></td>
<td width="88px"></td>
<td width="204px" style="text-align: left;font-size: 13px;font-weight:bold;">Balance Due</td>
<td width="109px"></td>
<td width="109px"></td>
<td width="109px" style="text-align: right;font-size: 13px;font-weight:bold;"> <xsl:value-of select="ACCTBAL"/></td>
</tr>
</xsl:for-each>
<tr height="15px" nowrap="1">
<td width="212px"></td>
<td width="88px"></td>
<td width="204px"></td>
<td width="109px"></td>
<td width="109px"></td>
<td width="109px"></td>
</tr>
<!--DUNMESS MESSAGE-->
<xsl:for-each select="Account">
<tr height="15px" nowrap="1">
<td width="830px" colspan="6" style="text-align: left; text-indent:10px; font-size: 13px;"> <xsl:value-of select="DUNMESS"/></td>
</tr>
</xsl:for-each>
How do I 'loop' through each account to get them to process their descendants at the same time? Do I need to you choose/when test= or something else?
Any advice would be greatly appreciated.
Thanks,
John
top
Subject:
Order of Processing Child Elements
Author:
Ivan Pedruzzi
Date:
28 Mar 2012 02:56 PM
Which Stylus Studio version are you running?
<<"These boards are part of the Stylus Studio Developer Network. They are a service to users of Stylus Studio only.">>
If you download, register and start developing XSLT using Stylus
Studio you will have access to the forum resources.
http://www.stylusstudio.com/xml_download.html
Hope this helps
Stylus Studio Team
Powered by
Stylus Studio
, the world's leading
XML IDE
for
XML
,
XSLT
,
XQuery
,
XML Schema
,
DTD
,
XPath
,
WSDL
,
XHTML
,
SQL/XML
, and
XML Mapping
!
Go to Conference:
Select Conference
Stylus Studio Feature Requests
Stylus Studio Technical Forum
Website Feedback
XSLT Help and Discussion
XQuery Help and Discussion
Stylus Studio FAQs
Stylus Studio Code Samples & Utilities
Stylus Studio Announcements
go
Log In Options
Username:
Password:
Site Map
|
Privacy Policy
|
Terms of Use
|
Trademarks
Stylus Scoop XML Newsletter:
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.