Hallo,
XML:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='FeederReportUnit.xsl'?>
<FeederReportUnit>
<Unit>
<fsSetPos>fsSetPos</fsSetPos><fsPartNum>fsPartNum</fsPartNum><fsFdrName>fsFdrName</fsFdrName><pkgInfoPkgType>pkgInfoPkgType</pkgInfoPkgType><pkgInfoTapeWidth>pkgInfoTapeWidth</pkgInfoTapeWidth><pkgInfoFeedPitch>pkgInfoFeedPitch</pkgInfoFeedPitch><favFdrPkg>favFdrPkg</favFdrPkg><favReelWidth>favReelWidth</favReelWidth><asBodyHeight>asBodyHeight</asBodyHeight><fsStatus>fsStatus</fsStatus><fsPartQty>fsPartQty</fsPartQty><fsTrayDir>fsTrayDir</fsTrayDir><pnPartComment>pnPartComment</pnPartComment><pnBarcode>pnBarcode</pnBarcode></Unit>
<Unit>
<fsSetPos>1- 2</fsSetPos><fsPartNum>674200004</fsPartNum><fsFdrName>KT-0800-330</fsFdrName><pkgInfoPkgType>Emboss</pkgInfoPkgType><pkgInfoTapeWidth>8mm</pkgInfoTapeWidth><pkgInfoFeedPitch>4</pkgInfoFeedPitch><favFdrPkg>Paper/Emboss</favFdrPkg><favReelWidth>8</favReelWidth><asBodyHeight>0.55</asBodyHeight><fsStatus>Fixed</fsStatus><fsPartQty>0</fsPartQty><fsTrayDir>0</fsTrayDir><pnPartComment></pnPartComment><pnBarcode></pnBarcode></Unit>
Ich habe nämlich immer noch keine Ahnung, wie Deine Ausgangsdaten (beispielhaft) aussehen. Außerdem ist mir immer noch nicht ganz klar: Sehe ich das richtig, dass Du nach der zweiten generierten Spalte sortieren willst?
Ja
Deine <xsl:key />-Definition für den Key 'partnumbers' wäre außerdem noch interessant.
<xsl:key name="partnumbers" match="FeederReportUnit/Unit" use="fsPartNum" />
Wie verarbeitest Du Dein XSLT bisher?
Ich gebe direct im IE aus:
- js ruft innerhalb von html XML mit XSL als Object auf
- XML wird dann mit XSL geparst und die notwendigen HTML-Elemente hinzugefügt.
Naja, ich weiß ja nicht, wie genau Du den MSXML-Prozessor aufrufst,
<?xml version="1.0" encoding="iso8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format" version='1.0'>
war es das was du meinst?
aber Du erhälst doch vom XSLT-Prozessor eine Zeichenkette, die das Ergebnis der Transformation darstellt. Anstelle dass Du die direkt ins Dokument einbaust, kannst Du die ja nochmal durch ein anderes Stylesheet jagen und das Ergebnis erst ins Dokument einbauen. Auch hier: Ohne den bisherigen Code zu kennen, kann man Dir nicht wirklich helfen.
Wie und wo kann ich diese Zeichenkette sehen? Hier verwirrst du mich!
HTML-Datei:
<script type="text/javascript" src="ReplaceInnerHTML.js"></script>
<script type="text/javascript">
<!--
function CreateContent()
{
ReplaceInnerHTML("Target1", "NXT1_FeederReportHead_T.xml", "FeederReportHead.xsl");
ReplaceInnerHTML("Target2", "NXT1_FeederReportUnit_T.xml", "FeederReportUnit.xsl");
}
-->
</script>
<body onload="CreateContent()">
<img class="logo" src="..\img\logo-trw-120x.jpg" width="120">
<h1>Feeder Setup Report</h1>
<blockquote>
<hr>
<div id="Target1"></div>
<hr>
<div id="Target2"></div>
<hr>
</blockquote>
Grundsätzlich: weder XML noch XSL stammen von mir. Ich erweitere das XSL nur um Darstellungsdetails und/ oder Abfragen.
Das XML kann ich nicht ändern.
Die HTML-Datei, die das XML vis JS einbindet kann ich nicht ändern.
Die JS-Datei könnte ich ändern (möchte möglichst nicht)
Ich ändere bis jetzt ausschließlich XSL und eine bis dato nicht erwähnte CSS.
bydey
-- bydey ist die Signatur und Verabschiedung, nicht der Nick --
-- Navigate all your PHP web projects with PHP Project Browser--