Как добавить переменную для имени разделенных мульти-файлов в xslt - PullRequest
1 голос
/ 16 апреля 2019

У меня проблема с выводом xml из моего xslt.Целевая система не может получать файлы изображений с несколькими файлами, поэтому мне нужно разделить их на отдельные.Проблема в том, что когда я их разделяю, он называет каждый файл с расширением номера страницы.Таким образом, первая страница получает xxx_001.tif, вторая страница получает xxx_002.tif и т. Д. Мне нужно указать правильное имя каждого файла изображения в моем файле xslt.

Текущий код, который у меня есть, создан для многотарифных файлов изображений.Не один для каждой страницы.

<!-- image file --> 
<xsl:value-of select="translate(Invoice/UserDefinedVariables/UserDefinedVariable[@Name='WebEye.DocumentID']/text(),'-','')"/><xsl:text>.tif,</xsl:text>
<!-- number of pages -->
<xsl:value-of select="System/Field[@Type='NumberOfPagesFrontAndBack']"/><xsl:text>,</xsl:text>
<!-- all pages -->
<xsl:value-of select="translate(Invoice/UserDefinedVariables/UserDefinedVariable[@Name='WebEye.DocumentID']/text(),'-','')"/><xsl:text>.tif,</xsl:text>

Как добавить номера страниц в переменную?

1 Ответ

0 голосов
/ 16 апреля 2019

Добавлен цикл для прохождения счета.

<xsl:template name="writefilenames">
  <xsl:param name="i" />
  <xsl:param name="count" />
  <xsl:param name="docid" />

  <xsl:if test="$i &lt;= $count">

     <xsl:if test="$i &gt;1">
        <xsl:text> </xsl:text>
     </xsl:if>

     <xsl:value-of select="$docid"/>
     <xsl:text>_</xsl:text>
     <xsl:value-of select="format-number($i, '000')"/>
     <xsl:text>.tif</xsl:text>

     <xsl:call-template name="writefilenames">
        <xsl:with-param name="i">
           <xsl:value-of select="$i + 1"/>
        </xsl:with-param>
        <xsl:with-param name="count">
           <xsl:value-of select="$count"/>
        </xsl:with-param>
        <xsl:with-param name="docid">
           <xsl:value-of select="$docid"/>
        </xsl:with-param>
     </xsl:call-template>
...