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
Topic
Topic Page
1
2
3
4
5
6
7
8
9
Prev Topic
Next 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
Topic Page
1
2
3
4
5
6
7
8
9
Prev Topic
Next Topic
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.