[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Dynamically generating table

Subject: Dynamically generating table
From: Gurnandan Kaur <teclioness@xxxxxxxxxxx>
Date: Wed, 12 Sep 2001 14:46:43 +0100 (BST)
dynamically generating table
Hi 

I have a requirement to build tables dynamically. So,
I am using a msxsl:script function to create a table,
but when when I call another function to get back the
string of prepared table, what is sdisplayed is just a
string of values(where as it is supposed to be
displayed as HTML). I am pasting the code...Any
Suggestion??

the .xsl file is :

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"          
 xmlns:user="http://mycompany.com/mynamespace">
<xsl:output method="html" version="1.0"
encoding="UTF-8" indent="yes"/>
<msxsl:script language="vbscript"
implements-prefix="user">
<![CDATA[
arrDay =
array("Mon","Tue","Wed","Thu","Fri","Sat","Sun")
dim tab1, tab2, tab3, intCnt
intCnt = 1
tab1 = "<table class='TableFullWidth' cellspacing='0'
cellpadding='0' border='0' width='100%'>"
tab2 = "<table class='TableFullWidth' cellspacing='0'
cellpadding='0' border='0' width='100%'>"
tab3 = "<table class='TableFullWidth' cellspacing='0'
cellpadding='0' border='0' width='100%'>"
function createTable(sBlockName,sBlockID, strType)
	If strType="Hrs" Then
		tab1= tab1 & "<tr><td width='60%'><b>" & sBlockName
& "</b><input type='hidden' name='txtBlockID"& i & "'
value=" & sBlockID &"></td>"
		tab1 = tab1 & "<td><input type='text' name='txtSDA"
& intCnt & "' size='4' maxlength='5'> Hrs</td></tr>"
	ElseIf strType="%" Then
		tab2 = tab2 & "<tr><td width='60%'><b>" & sBlockName
& "</b><input type='hidden' name='txtBlockID"& i & "'
value=" & sBlockID &"></td>"
		If sBlockID =
"{05A1DA18-2912-11D5-A15F-000347240DC9}" Then
			tab2 = tab2 & "<td>&nbsp;</td></tr>"
		Else
			tab2 = tab2 & "<td><input type='text' name='txtSDA"
& intCnt & "' size='4' maxlength='5'> %</td></tr>"
		End If
	ElseIf strType="" Then
		tab3 = tab3 & "<tr><td width='60%'><b>" & sBlockName
& "</b><input type='hidden' name='txtBlockID"& i & "'
value="&sBlockID &"></td>"
		tab3 = tab3 & "<td><input type='text' name='txtSDA"
& intCnt & "' size='4' maxlength='5'></td></tr>"
	End If
	createTable = true
	intCnt = intCnt + 1
end function

function returnTable(sTableNo)
	if sTableNo="1" Then
		returnTable = tab1 &"</table>"
	elseif sTableNo = "2" Then
		returnTable = tab2 &"</table>"
	else
		returnTable = tab3 &"</table>"
	end if
end function
]]>
</msxsl:script>
<xsl:template match="/">
		<table border="1" cellspacing="0" align="center"
class="TableFullWidth" width="100%">
			<tr class="HeadRow" bgcolor="silver">
				<td width="21%">Start Date</td>
				<td width="21%">End Date</td>
				<td width="16%">SDA Type</td>
				<td width="42%" colspan="3">On Call Type
Availability</td>
		    </tr>
		    <tr valign="middle" align="center">
				<td valign="middle" align="center">
					<input type="text" name="txtStDt" size="2"
maxlength="2" value="=strStDt"/>
					<select size="1" name="cboStMn">
						<option value=""></option>
						<option value="Jan">Jan</option>
						<option value="Feb">Feb</option>
						<option value="Mar">Mar</option>
						<option value="Apr">Apr</option>
						<option value="May">May</option>
						<option value="Jun">Jun</option>
						<option value="Jul">Jul</option>
						<option value="Aug">Aug</option>
						<option value="Sep">Sep</option>
						<option value="Oct">Oct</option>
						<option value="Nov">Nov</option>
						<option value="Dec">Dec</option>
					</select>
					<input type="text" name="txtStYy" size="4"
maxlength="4" value="=strStYy"/>
				</td>
				<td>
					<input type="text" name="txtEdDt" size="2"
maxlength="2" value="=strEdDt"/>
					<select size="1" name="cboEdMn">
						<option value=""></option>
						<option value="Jan">Jan</option>
						<option value="Feb">Feb</option>
						<option value="Mar">Mar</option>
						<option value="Apr">Apr</option>
						<option value="May">May</option>
						<option value="Jun">Jun</option>
						<option value="Jul">Jul</option>
						<option value="Aug">Aug</option>
						<option value="Sep">Sep</option>
						<option value="Oct">Oct</option>
						<option value="Nov">Nov</option>
						<option value="Dec">Dec</option>
					</select>
					<input type="text" name="txtEdYy" size="4"
maxlength="4" value="=strEdYy"/>
				</td>
				<td>
					<select size="1" name="cboSDA">
						<xsl:for-each
select="/Picklists/SDAType/Picklist/ListEntry">
						<option value="{./Key}"><xsl:value-of
select="./Item"/><!--If trim(GetNodeValue(oOption,
"Key"))= trim(strSDA) Then Response.write "selected"
End If-->
						</option>
						</xsl:for-each>
					</select></td>
				<td width="13%">
					<input type="checkbox" name="chkOnCall"
value="True" /><!--If strOnCall="True" Then
Response.Write "checked" End If-->							On Call
				</td>
				<!--
				If strJobBand = "9" Then
				-->
					<td width="13%">
						<input type="checkbox" name="chkPace"
value="true"/><!--If strPace="True" Then
Response.Write "checked" End If-->PCEA</td>
				<!--
				Else
				-->
					<td width="13%">&#160;</td>
				<!--
				End If
				-->
		      <td width="16%">
				<input type="checkbox" name="chkAPace"
value="True" /><!--If strAPace="True" Then
Response.Write "checked" End If-->AdaptedPCEA
			</td>
		    </tr>
		    <tr>
		      <td width="100%" colspan="6"
height="20">&#160;</td>
		    </tr>
		    <tr>
		      <td valign="middle" align="center"
class="AHWTD">
				<b>Standard Target Hours</b>
			</td>
		      <td valign="middle" align="center"
class="AHWTD">
				<b>Bank Hours</b>
			</td>
		      <td valign="middle" align="center"
class="AHWTD">
				<b>Total Annual Hours</b>
			</td>
		       <td valign="middle" align="center"
class="AHWTD">
				<b>Mini Acc. Period</b>
			</td>
		       <td valign="middle" align="center"
colspan="2" class="AHWTD">
				<b>Standard Day Length</b>
			</td>
		    </tr>
		    <tr>
				<td valign="middle" align="center"><input
type="text" name="txtStdHrs" size="4" maxlength="4"
value="=strStdHrs"/></td>
				<td valign="middle" align="center"><input
type="text" name="txtBHrs" size="4" maxlength="4"
value="=strBHrs"/></td>
				<td valign="middle" align="center">
					<!--If SaveMode Then Response.Write strStdHrs +
strBHrs Else Response.Write "&nbsp;" End If-->
				</td>
				<!--
				Dim sMiniAcc
				Set oPicklists =
Server.CreateObject("AHWManagers.PicklistManager")
				sMiniAcc = oPicklists.MiniAccountingPeriods
				oDoc.loadXml(sMiniAcc)
				Set oLists =
oDoc.getElementsByTagName("ListEntry")
				-->
				<td valign="middle" align="center">
				<select size="1" name="cboMiniAcc">
					<option value=" "
selected="true">-Select-</option>
					<xsl:for-each
select="/Picklists/MiniAcc/Picklist/ListEntry">
						<option value="{./Key}"><xsl:value-of
select="./Item"/> <!--If trim(strMiniAcc) =
GetNodeValue(oOption, "Key") Then Response.Write
"selected" End If--></option>
					</xsl:for-each>
				</select>
				</td>
				<td valign="middle" align="center" colspan="2">
				<select size="1" name="cboStdDayLen">
					<option value=" "
selected="true">-Select-</option>
					<xsl:for-each
select="/Picklists/StdDay/Picklist/ListEntry">
						<option value="{./Key}"><xsl:value-of
select="./Item"/> <!--If trim(strStdDayLen) =
GetNodeValue(oOption, "Key") Then Response.Write
"selected" End If--></option>
					</xsl:for-each>
				</select>
				</td>
		    </tr>
		</table>
		select="/Picklists/AHWAgreementBlocks/AHWBlockType">
				<xsl:choose>
					<xsl:when test="./UOM='1'"><xsl:variable
name="tab1"
select="user:createTable(string(./BlockName),string(./BlockTypeUID),'Hrs')"/></xsl:when>
					<xsl:when test="./UOM='2'"><xsl:variable
name="tab2"
select="user:createTable(string(./BlockName),string(./BlockTypeUID),'%')"/></xsl:when>
					<xsl:when test="./UOM='3'"><xsl:variable
name="tab3"
select="user:createTable(string(./BlockName),string(./BlockTypeUID),'')"/></xsl:when>
				</xsl:choose>
			</xsl:for-each>
			<table border="1" cellspacing="0" cellpadding="5"
align="left" class="TableFullWidth">
			<tr  class="HeadRow" bgcolor="silver">
				<td colspan="3" height="25">The AAA Building
Blocks</td>
			</tr>
			<tr>
				<td width="30%" valign="top"><xsl:value-of
select="user:returnTable('1')"/></td>
				<td width="30%" valign="top"><xsl:value-of
select="user:returnTable('2')"/></td>
				<td width="30%" valign="top"><xsl:value-of
select="user:returnTable('3')"/></td>
			</tr>
	</table>
</xsl:template>
</xsl:stylesheet>



the .xml file is :

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- edited with XML Spy v3.5 NT
(http://www.xmlspy.com) by  () -->
<?xml-stylesheet type="text/xsl"
href="D:\Inetpub\wwwroot\AHWRework\AHW
Agreement\EmpTargetSet.xslt"?>
<Picklists>
	<SDAType>
		<Picklist>
			<ListEntry>
				<Key>{534E9D58-195E-11D5-AA1B-00D0B7DE2A2C}</Key>
				<Item>Traditional</Item>
			</ListEntry>
			<ListEntry>
				<Key>{534E9D59-195E-11D5-AA1B-00D0B7DE2A2C}</Key>
				<Item>Dartboard</Item>
			</ListEntry>
		</Picklist>
	</SDAType>
	<MiniAcc>
		<Picklist>
			<ListEntry>
				<Key>{0B955145-4914-11D5-A171-000347240DC9}</Key>
				<Item>Monthly</Item>
			</ListEntry>
			<ListEntry>
				<Key>{0B955146-4914-11D5-A171-000347240DC9}</Key>
				<Item>Quartely</Item>
			</ListEntry>
			<ListEntry>
				<Key>{0B955147-4914-11D5-A171-000347240DC9}</Key>
				<Item>Tri-Annually</Item>
			</ListEntry>
		</Picklist>
	</MiniAcc>
	<StdDay>
		<Picklist>
			<ListEntry>
				<Key>{B850535E-494D-11D5-A173-000347240DC9}</Key>
				<Item>8.4/4.2</Item>
			</ListEntry>
			<ListEntry>
				<Key>{B850535F-494D-11D5-A173-000347240DC9}</Key>
				<Item>8.2/4.1</Item>
			</ListEntry>
		</Picklist>
	</StdDay>
	<AHWAgreementBlocks>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D4C-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Saturday Hours</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>1</UOM>
			<UsageCountRequired>Y</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D4D-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Sunday Hours</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>1</UOM>
			<UsageCountRequired>Y</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D4F-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Public Holiday Hours</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>1</UOM>
			<UsageCountRequired>Y</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D4A-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>SDA</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D4B-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Premium Hours</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc>PREMIUM</RuleDesc>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{F9FF0A66-1EA6-11D5-AF34-000347240D6E}</BlockTypeUID>
			<BlockName>On Call</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>Y</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D55-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Bank</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{C2623A55-408E-11D5-A16A-000347240DC9}</BlockTypeUID>
			<BlockName>THPA</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D47-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Liability</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D48-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Contactability</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc>CONTACTABILITY</RuleDesc>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D56-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Incident</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc/>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{05A1DA18-2912-11D5-A15F-000347240DC9}</BlockTypeUID>
			<BlockName>Total Flexibility</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>2</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
		
<RuleDesc>+534E9D47-195E-11D5-AA1B-00D0B7DE2A2C+534E9D48-195E-11D5-AA1B-00D0B7DE2A2C+534E9D56-195E-11D5-AA1B-00D0B7DE2A2C</RuleDesc>
		</AHWBlockType>
		<AHWBlockType>
		
<BlockTypeUID>{534E9D49-195E-11D5-AA1B-00D0B7DE2A2C}</BlockTypeUID>
			<BlockName>Incidents</BlockName>
		
<SDATypeUID>{534E9D5A-195E-11D5-AA1B-00D0B7DE2A2C}</SDATypeUID>
			<UOM>3</UOM>
			<UsageCountRequired>N</UsageCountRequired>
			<AHWScreenPopulate>Y</AHWScreenPopulate>
			<RuleDesc>INCIDENTS</RuleDesc>
		</AHWBlockType>
	</AHWAgreementBlocks>
</Picklists>

Thanks!!

Guru


____________________________________________________________
Do You Yahoo!?
Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk
or your free @yahoo.ie address at http://mail.yahoo.ie

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.