Привет! Я создал файл XSL и у меня есть отчет о создании XML-ввода, который я должен преобразовать в другой тип XML (Вывод).
XML-ввод:
<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by EnterpriseOne Universal Batch Engine-->
<R570018A>
<Properties>
<Version>LU0001</Version>
<Title>Luxembourg VAT return</Title>
<Machine>PCOJDEDEV04</Machine>
<Environment>DV920</Environment>
<User>ASDF</User>
<Role>*ALL</Role>
<Company>XYZ.LP</Company>
<OneWorldRelease>E920</OneWorldRelease>
<Date>10/29/2019</Date>
<Time>13:58:13</Time>
</Properties>
<PageHeaders>
<Page_Header_S2>
<PageHeaderNumber>1</PageHeaderNumber>
<R570018A_ID1>R570018A</R570018A_ID1>
<Variable_000002_ID2>XYZ.LP</Variable_000002_ID2>
<Variable_000005_ID5>13:58:13</Variable_000005_ID5>
<Variable_000004_ID4>2019-10-29</Variable_000004_ID4>
<Variable_000003_ID3>Luxembourg VAT return</Variable_000003_ID3>
<Variable_000006_ID6>1</Variable_000006_ID6>
<of_ID7>of</of_ID7>
<Page___ID9>Page -</Page___ID9>
</Page_Header_S2>
</PageHeaders>
-<Report_Header_S5>
<AgentMatrNbr_ID2>54564646</AgentMatrNbr_ID2>
<DeclarerMatrNbr_ID7>9879862</DeclarerMatrNbr_ID7>
<Year_PO_ID11>2019</Year_PO_ID11>
<AgentRCSNbr_ID4>5362189</AgentRCSNbr_ID4>
<DeclarerRCSNbr_ID8>8795462525</DeclarerRCSNbr_ID8>
<Period_Number_PO_ID13>10</Period_Number_PO_ID13>
<AgentVATNbr_ID6>988765142</AgentVATNbr_ID6>
<DeclarerVATNbr_ID9>98795668</DeclarerVATNbr_ID9>
</Report_Header_S5>
<UDC___Full_View_of_F0005_for_Transfer_57_LV_Driver_S1>
<Vat_Cross_Ref_57_LV_Print_S3>
<Print_F570018A_S6>
<PageHeaderNumber>1</PageHeaderNumber>
<AccountNumber_ID1>472</AccountNumber_ID1>
<Amount_57LV_ID2>-65071.80</Amount_57LV_ID2>
</Print_F570018A_S6>
<Print_F570018A_S6>
<PageHeaderNumber>1</PageHeaderNumber>
<AccountNumber_ID1>019</AccountNumber_ID1>
<Amount_57LV_ID2>-65071.80</Amount_57LV_ID2>
</Print_F570018A_S6>
<Print_F570018A_S6>
<PageHeaderNumber>1</PageHeaderNumber>
<AccountNumber_ID1>741</AccountNumber_ID1>
<Amount_57LV_ID2>5128.21</Amount_57LV_ID2>
</Print_F570018A_S6>
<Print_F570018A_S6>
<PageHeaderNumber>1</PageHeaderNumber>
<AccountNumber_ID1>742</AccountNumber_ID1>
<Amount_57LV_ID2>871.79</Amount_57LV_ID2>
</Print_F570018A_S6>
</Vat_Cross_Ref_57_LV_Print_S3>
</UDC___Full_View_of_F0005_for_Transfer_57_LV_Driver_S1>
</R570018A>
XSLinput:
<?xml version="1.0" encoding="windows-1252" ?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<all xmlns="http://www.w3.org/2001/XMLSchema"/>
<xsl:template match="/"><!-- Root template -->
- <eCDFDeclarations xmlns="http://www.ctie.etat.lu/2011/ecdf">
<FileReference>"UMKBJLX20181003T17180101"</FileReference>
<eCDFFileVersion>1.1</eCDFFileVersion>
<Interface>CMUL8</Interface>
-<Agent>
<MatrNbr>
<xsl:value-of select="/R570018A/Report_Header_S5/AgentMatrNbr_ID2"/>
</MatrNbr>
<RCSNbr>
<xsl:value-of select="/R570018A/Report_Header_S5/AgentRCSNbr_ID4"/>
</RCSNbr>
<VATNbr>
<xsl:value-of select="/R570018A/Report_Header_S5/AgentVATNbr_ID6"/>
</VATNbr>
</Agent>
-<Declarations>
-<Declarer>
<MatrNbr>
<xsl:value-of select="/R570018A/Report_Header_S5/DeclarerMatrNbr_ID7"/>
</MatrNbr>
<RCSNbr>
<xsl:value-of select="/R570018A/Report_Header_S5/DeclarerRCSNbr_ID8"/>
</RCSNbr>
<VATNbr>
<xsl:value-of select="/R570018A/Report_Header_S5/DeclarerVATNbr_ID9"/>
</VATNbr>
-<Declaration language="FR" model="1" type="TVA_DECM">
<Year>
<xsl:value-of select="/R570018A/Report_Header_S5/Year_PO_ID11"/>
</Year>
<Period>
<xsl:value-of select="/R570018A/Report_Header_S5/Period_Number_PO_ID13"/>
</Period>
-<FormData>
-<NumericField id="{/R570018A/UDC___Full_View_of_F0005_for_Transfer_57_LV_Driver_S1/Vat_Cross_Ref_57_LV_Print_S3/Print_F570018A_S6/AccountNumber_ID1}">
<xsl:value-of select="/R570018A/UDC___Full_View_of_F0005_for_Transfer_57_LV_Driver_S1/Vat_Cross_Ref_57_LV_Print_S3/Print_F570018A_S6/Amount_57LV_ID2"/>
</NumericField>
</FormData>
</Declaration>
</Declarer>
</Declarations>
</eCDFDeclarations>
</xsl:template>
</xsl:stylesheet>
Полученный вывод:
- <eCDFDeclarations xmlns="http://www.ctie.etat.lu/2011/ecdf">
<FileReference>"UMKBJLX20181003T17180101"</FileReference>
<eCDFFileVersion>1.1</eCDFFileVersion>
<Interface>CMUL8</Interface>
-<Agent>
<MatrNbr>54564646</MatrNbr>
<RCSNbr>5362189</RCSNbr>
<VATNbr>988765142</VATNbr>
</Agent>
-<Declarations>
-<Declarer>
<MatrNbr>9879862</MatrNbr>
<RCSNbr>8795462525</RCSNbr>
<VATNbr>98795668</VATNbr>
-<Declaration language="FR" model="1" type="TVA_DECM">
<Year>2019</Year>
<Period>10</Period>
-<FormData>
-<NumericField id="472 019 741 742">-65071.80 -65071.80 5128.21 871.79</NumericField>
</FormData>
</Declaration>
</Declarer>
</Declarations>
</eCDFDeclarations>
Ожидаемый вывод:
<?xml version="1.0" encoding="utf-8"?>
<eCDFDeclarations xmlns="http://www.ctie.etat.lu/2011/ecdf">
<FileReference>UMKBJLX20181003T17180101</FileReference>
<eCDFFileVersion>1.1</eCDFFileVersion>
<Interface>CMUL8</Interface>
<Agent>
<MatrNbr>54564646</MatrNbr>
<RCSNbr>5362189</RCSNbr>
<VATNbr>988765142</VATNbr>
</Agent>
<Declarations>
<Declarer>
<MatrNbr>9879862</MatrNbr>
<RCSNbr>8795462525</RCSNbr>
<VATNbr>98795668</VATNbr>
<Declaration language="FR" model="1" type="TVA_DECM">
<Year>2019</Year>
<Period>10</Period>
<FormData>
<NumericField id="472">-65071,80</NumericField>
<NumericField id="019">-65071,80</NumericField>
<NumericField id="741">5128,21</NumericField>
<NumericField id="742">871,79</NumericField>
</FormData>
</Declaration>
</Declarer>
</Declarations>
</eCDFDeclarations>
Моя проблема заключается в том, что все числовые ID поля и суммы печатаются в одном и том желиния вместо перехода к следующей строке. Я новичок в использовании входных данных XSL. Не могли бы вы сообщить, как мне следует редактировать входной файл XSL?