This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

avoiding Repetition - further refined for clarity


I have a part of my code of the project am working on below:

What happens is that, if a development requirement is assigned to somebody;
it has its development jobs. But one person can have many development
requirements i.e. <developmentrequirement drid='1'> with it's DJ's i.e.
<developmentjob djdrid="1">, <developmentrequirement drid='2'> with it's
DJ's i.e. < developmentjob djdrid="2">, <developmentrequirement drid='3'>
with it's DJ's i.e. < developmentjob djdrid="3">

What I want to achieve is that once you choose the person with a DR let's
say <developmentrequirement drid='1'>, on the display I get:

<Developmentrequirement drid='1'> with it's <developmentjob djdrid='1''>,
then it gives me the rest of the DJ's

<Developmentjob djdrid='2''>, <developmentjob djdrid='3''> without there
DR's


<calls xmlns:sql="urn:schemas-microsoft-com:xml-sql">
	  <DevelopmentRequirement drid="1">
		<YearPart>01</YearPart>
		<Title>Registration</Title>
		<Site>0</Site>
		<with>steve</with>
		<Updated>2001-10-19T09:47:23.903</Updated>
		<DevelopmentJob djid="1" djdrid="1">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
		<DevelopmentJob djid="2" djdrid="1">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
		<DevelopmentJob djid="3" djdrid="1">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
	</DevelopmentRequirement>
	 <DevelopmentRequirement drid="2">
		<YearPart>01</YearPart>
		<Title>Registration</Title>
		<Site>0</Site>
		<with>steve</with>
		<Updated>2001-10-19T09:47:23.903</Updated>
		<DevelopmentJob djid="2" djdrid="2">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
		<DevelopmentJob djid="3" djdrid="2">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
	</DevelopmentRequirement>
</calls>

What i want to achieve is to display a <DevelopmentRequirement drid="1">
with  it's <DevelopmentJob djdrid="1"> assigned to <with>steve</with> and
when it finishes displaying the <DevelopmentJob djdrid="1">, then it shows
the rest of the development jobs i.e <DevelopmentJob djdrid="2">.....
assigned to the same person, without repeting <DevelopmentJob djdrid="1">.
That is, i display:

<calls xmlns:sql="urn:schemas-microsoft-com:xml-sql">
	  <DevelopmentRequirement drid="1">
		<YearPart>01</YearPart>
		<Title>Registration</Title>
		<Site>0</Site>
		<with>steve</with>
		<Updated>2001-10-19T09:47:23.903</Updated>
		<DevelopmentJob djid="1" djdrid="1">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
		<DevelopmentJob djid="2" djdrid="1">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
		<DevelopmentJob djid="3" djdrid="1">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
	</DevelopmentRequirement>

	+++++++++++++++(PLUS)

	<DevelopmentJob djid="2" djdrid="2">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>
		<DevelopmentJob djid="3" djdrid="2">
			<YearPart>01</YearPart>
			<Title>FWClinicalView lookups work</Title>
			<DateTime>2001-01-16T19:58:26</DateTime>
			<LastActionBy>10</LastActionBy>
		</DevelopmentJob>


I am displaying them using the below xsl template:

			<xsl:choose>
					<xsl:when test="$SortOrder= '1'">
						<xsl:apply-templates select="calls/DevelopmentJob">

							<xsl:sort select="Priority"/>
						</xsl:apply-templates>
					</xsl:when>

					<xsl:otherwise>
						<xsl:apply-templates select="calls/DevelopmentJob">

							<xsl:sort select="Order"/>
						</xsl:apply-templates>
					</xsl:otherwise>
			</xsl:choose>


			<xsl:choose>
					<xsl:when test="$SortOrder= '1' and $ShowDJs= '1'">
						<xsl:apply-templates
select="calls/DevelopmentRequirement/DevelopmentJob">

							<xsl:sort select="Priority"/>
						</xsl:apply-templates>
					</xsl:when>
					<xsl:when test="$SortOrder= '0' and $ShowDJs= '1'">
						<xsl:apply-templates
select="calls/DevelopmentRequirement/DevelopmentJob">

								<xsl:sort select="Order"/>
							</xsl:apply-templates>
					</xsl:when>

					<xsl:otherwise>

					</xsl:otherwise>
			</xsl:choose>
I hope i am clear. how can i achieve this?



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]