|
Сортировка XSLT
|
|||
---|---|---|---|
#18+
Добрый вечер, уважаемы форумчане! Необходима Ваша помощь. В XML документе необходимо произвести сортировку линий по полю EAN. Поля должны выводиться в заданном порядке. Всего таких линий в документе может быть 7. Заранее благодарю за помощь <Order-Lines> <Line> <Line-Item> <LineNumber>1</LineNumber> <EAN>4607012371607</EAN> <BuyerItemCode>1111</BuyerItemCode> <SupplierItemCode>11111</SupplierItemCode> <ItemDescription>Продукт1</ItemDescription> <SupplierItemDescription>Продукт1</SupplierItemDescription> <OrderedQuantity>12</OrderedQuantity> <OrderedUnitPacksize>1.000</OrderedUnitPacksize> <BuyerUnitPacksize>16.000</BuyerUnitPacksize> <UnitOfMeasure>PCE</UnitOfMeasure> <SupplierUnitOfMeasure>PCE</SupplierUnitOfMeasure> <OrderedUnitNetPrice>17.7700</OrderedUnitNetPrice> <OrderedNetAmount>852.9600</OrderedNetAmount> <OrderedTaxAmount>85.2960</OrderedTaxAmount> <TaxRate>10.00</TaxRate> </Line-Item> <Line-Delivery> <SellerLocationCode>0</SellerLocationCode> </Line-Delivery> <Line-Control> <EanCatalog>RS</EanCatalog> <SupplierItemCodeCatalog>RS</SupplierItemCodeCatalog> </Line-Control> </Line> <Line> <Line-Item> <LineNumber>2</LineNumber> <EAN>4607012372680</EAN> <BuyerItemCode>22222</BuyerItemCode> <SupplierItemCode>222222</SupplierItemCode> <ItemDescription>Продукт 2</ItemDescription> <SupplierItemDescription>Продукт 2</SupplierItemDescription> <OrderedQuantity>30.000</OrderedQuantity> <OrderedUnitPacksize>1.000</OrderedUnitPacksize> <BuyerUnitPacksize>2.000</BuyerUnitPacksize> <UnitOfMeasure>PCE</UnitOfMeasure> <SupplierUnitOfMeasure>PCE</SupplierUnitOfMeasure> <OrderedUnitNetPrice>9.9500</OrderedUnitNetPrice> <OrderedNetAmount>298.5000</OrderedNetAmount> <OrderedTaxAmount>29.8500</OrderedTaxAmount> <TaxRate>10.00</TaxRate> </Line-Item> <Line-Delivery> <SellerLocationCode>0</SellerLocationCode> </Line-Delivery> <Line-Control> <EanCatalog>RS</EanCatalog> <SupplierItemCodeCatalog>RS</SupplierItemCodeCatalog> </Line-Control> </Line> ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2013, 21:11 |
|
Сортировка XSLT
|
|||
---|---|---|---|
#18+
Пробовала вот так,для каждой линии <xsl:template mode="ORDER" match="Line-Item"> <Line> <xsl:if test="EAN=4607135600011"> <Line-Item> <xsl:copy-of select="LineNumber"/> <xsl:copy-of select="EAN"/> <xsl:if test="BuyerItemCode"> <xsl:copy-of select="BuyerItemCode"/> </xsl:if> <SupplierItemCode> <xsl:choose> <xsl:when test="SupplierItemCode!=''"> <xsl:value-of select="SupplierItemCode"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="BuyerItemCode"/> </xsl:otherwise> </xsl:choose> </SupplierItemCode> <xsl:copy-of select="ItemDescription"/> <xsl:copy-of select="ItemType"/> <xsl:copy-of select="OrderedQuantity"/> <xsl:copy-of select="OrderedUnitPacksize"/> <xsl:copy-of select="UnitOfMeasure"/> <UnitCodeDigital> <xsl:value-of select="'796'"/> </UnitCodeDigital> <xsl:copy-of select="OrderedUnitNetPrice"/> <xsl:copy-of select="OrderedNetAmount"/> <xsl:copy-of select="OrderedTaxAmount"/> <xsl:copy-of select="TaxRate"/> <xsl:copy-of select="OrderedUnitGrossPrice"/> <xsl:copy-of select="OrderedOrderedNetAmount"/> <xsl:copy-of select="OrderedGrossAmount"/> </Line-Item> </xsl:if> </Line> </xsl:template> ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2013, 21:44 |
|
Сортировка XSLT
|
|||
---|---|---|---|
#18+
Pretty_meВ XML документе необходимо произвести сортировку линий по полю EAN. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9.
Не? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2013, 02:07 |
|
Сортировка XSLT
|
|||
---|---|---|---|
#18+
petalvik, нужно именно сравнивать значение поля EAN. Т.е. линия в которой EAN=4607135600011 должна выводиться первой, 2 4607135600010 3 4607135600035 4 4607135600028 5 4607135600127 6 4607135600134 7 4607135600141 В исходном документе они могут быть в любом порядке ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2013, 02:48 |
|
Сортировка XSLT
|
|||
---|---|---|---|
#18+
Pretty_mepetalvik, нужно именно сравнивать значение поля EAN. Т.е. линия в которой EAN=4607135600011 должна выводиться первой, 2 4607135600010 3 4607135600035 4 4607135600028 5 4607135600127 6 4607135600134 7 4607135600141 В исходном документе они могут быть в любом порядке Угу, вот только в xml, который в самом первом сообщении, нет таких значений. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2013, 03:46 |
|
|
start [/forum/topic.php?fid=14&fpage=16&tid=1332459]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 179ms |
0 / 0 |