Ciao a tutti,
devo creare un file XML partendo da un XML, e passando per un XLST.
Io mi sono letta la vostra guida, e altre guide, ma non capisco dove sbaglio!!!!
In sostanza dall'XML di partenza devo estrarmi solo due dati, il resto è tutto fisso!
Ecco l'XML di partenza:
codice:<?xml version="1.0" encoding="utf-8"?> <DataOut xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Items> <ItemInfo> <SheetInfo> <IdJob>2</IdJob> <ID_Clf>2</ID_Clf> <ClfFile>TestZanon</ClfFile> <CodeSheet> </CodeSheet> <DimX>4000</DimX> <DimY>2000</DimY> <FileName>TestZanon</FileName> <Machine>PLATINO</Machine> <MaterialSheet>INOX 2B</MaterialSheet> <NumCuts>1</NumCuts> <NumIcons>171</NumIcons> <NumberSheet>1</NumberSheet> <PercScrap>19.551968574523926</PercScrap> <TicknessSheet>1</TicknessSheet> <TotTimeSheet>2437.77587890625</TotTimeSheet> <WeightIcons>51.486740112304688</WeightIcons> <WeightSheet>64</WeightSheet> <IconFileName>.\DEMO002</IconFileName> </SheetInfo> <CodIcon>.\DEMO002</CodIcon> <CodeCustomer /> <Deliverydate /> <DescriptionCustomer /> <IconFile>C:\NtCam\data\icon\DEMO002</IconFile> <MaterialIcon>INOX 2B</MaterialIcon> <Note /> <Order>2013194</Order> <ProductionOrder /> <Qta>171</Qta> <Qtl>171</Qtl> <TicknessIcon>1</TicknessIcon> <TimeCutIcon>10</TimeCutIcon> <User /> <WeightIcon>0.443</WeightIcon> <InternalArea>1963.495361328125</InternalArea> <ItemArea>37636.50390625</ItemArea> <DimRetX>200</DimRetX> <DimRetY>200</DimRetY> </ItemInfo> </Items> </DataOut>
ecco l'XML di arrivo:
ed ecco l'XSL che ho provato a fare io:codice:<?xml version="1.0"?> <infoset> <record> <table name="TDA_FEEDBACK"> <field name="PROGRESSIVO">@@identity</field> <field name="TIPO">1</field> <field name="CAUSALE">5</field> <field name="STATO">1</field> <field name="CAUSALEMOV">0</field> <field name="CAUSALEOPER">0</field> <field name="NOTELAV"></field> </table> <table name="TDA_DETTFEEDBACK_CONSUNTIVO"> <field name="RIFPROGRESSIVO">@PROGRESSIVO</field> <field name="DIPENDENTE">99</field> <field name="ANNOBOLLA">2013</field> <field name="NUMEROBOLLA">194</field> <field name="GIUSTIFICATIVO">1</field> <field name="NUOVOSTATOFASE">1</field> </table> <table name="TDA_DETTFEEDBACK_TEMPI"> <field name="RIFPROGRESSIVO">@PROGRESSIVO</field> <field name="IDRIGA">1</field> <field name="DATARILEVAMENTO">11/07/2013</field> <field name="ORARILEVAMENTO">11:39</field> <field name="TEMPOCONSUNTIVO">10</field> <field name="STATO">0</field> </table> </record> </infoset>
in sostanza devo tirare fuori il campo ORDER, dividerlo in due e creare annobolla e numerobolla,codice:<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/"> <infoset> <record> <table name="TDA_FEEDBACK"> <field name="PROGRESSIVO">2</field> <field name="TIPO">1</field> <field name="CAUSALE">5</field> <field name="STATO">1</field> <field name="CAUSALEMOV">0</field> <field name="CAUSALEOPER">0</field> <field name="NOTELAV"></field> </table> <table name="TDA_DETTFEEDBACK_CONSUNTIVO"> <field name="RIFPROGRESSIVO">10</field> <field name="DIPENDENTE">99</field> <field name="ANNOBOLLA">2013</field> <field name="NUMEROBOLLA"><xsl:value-of select="ITEMS/ITEMINFO/ORDER"></xsl:value-of></field> <field name="GIUSTIFICATIVO">1</field> <field name="NUOVOSTATOFASE">1</field> </table> <table name="TDA_DETTFEEDBACK_TEMPI"> <field name="RIFPROGRESSIVO">10</field> <field name="IDRIGA">1</field> <field name="DATARILEVAMENTO">11/07/2013</field> <field name="ORARILEVAMENTO">11:39</field> <field name="TEMPOCONSUNTIVO">10</field> <field name="STATO">0</field> </table> </record> </infoset> </xsl:template> </xsl:stylesheet>
e poi tirare fuori il campo TimeCutIcon e metterlo su TempoConsuntivo.
Ma mi sono già bloccata al numerobolla, perchè non riesco ad estrarlo neanche tutto intero!!!
Help me!!
grazie mille!!
![]()
![]()
![]()
![]()
![]()
![]()
![]()

Rispondi quotando
