forum.bitel.ru
http://forum.bitel.ru/

contract.xsl
http://forum.bitel.ru/viewtopic.php?f=22&t=2868
Страница 1 из 1

Автор:  Cromeshnic [ 11 сен 2009, 10:44 ]
Заголовок сообщения:  contract.xsl

После изменения схемы работы с услугами новые абонплаты не попадают в карточку клиента. Раньше они обрабатывались так:

Код:
<xsl:otherwise >
   <xsl:for-each select="/data/contract_service[@mid=$mid]">
           <tr>
         <td><xsl:value-of select="@title"/></td>
           </tr>
   </xsl:for-each>         
</xsl:otherwise>


Сейчас в /data/contract_service нет новых абонплат. Очевидно, нужно сделать нечто вроде:

Код:
         <xsl:when test="@name='npay'">
            <tr>
               <td bgcolor="#a0a0a0"><b>Начисляеые абонплаты</b></td>
            </tr>                        
            <xsl:for-each select="npay_service_object_$mid">
               <tr>
                  <td><xsl:value-of select="@title"/></td>
                    </tr>
            </xsl:for-each>         
         </xsl:when>


Вот только у npay_service_object_$mid нет title, только sid, по которому из xml нигде не получишь наименование услуги. Сделайте пожалуйста, задача на 5 минут имхо :)

Автор:  SeSte [ 19 сен 2009, 00:17 ]
Заголовок сообщения:  Re: contract.xsl

Апну тему ... такая же проблема ... список абонплат не формируется ...

Автор:  Amir [ 21 сен 2009, 19:00 ]
Заголовок сообщения:  Re: contract.xsl

Выложили обновление модуля.

Автор:  SeSte [ 23 сен 2009, 19:27 ]
Заголовок сообщения:  Re: contract.xsl

Спасибо большое!

Но опять проблема, пытаюсь вывести "Абонплаты" - модуль npay:

Стандартный contract.xsl (кстати в нем ошибка была "<xsl:when test="@name='pay'">")
Код:
<xsl:when test="@name='npay'">
<tr>
<td bgcolor="#a0a0a0"><b>Начисляеые абонплаты</b></td>
</tr>                        
<xsl:for-each select="/data/contract_service[@mid=$mid]">
<tr>
<td><xsl:value-of select="@title"/></td>
</tr>
</xsl:for-each>         
</xsl:when>
         
<xsl:otherwise >
<xsl:for-each select="/data/contract_service[@mid=$mid]">
<tr>
<td><xsl:value-of select="@title"/></td>
</tr>
</xsl:for-each>         
</xsl:otherwise>


В файлах формата fop пытался и так:

Код:
<xsl:for-each select="module[@name='npay']" >
<xsl:variable name="npay_id" select="@id" />
<xsl:for-each select="/data/contract_service[@mid=$npay_id]">
xsl:value-of select="@title"/>
</xsl:for-each>
</xsl:for-each>


Код:
<xsl:for-each select="module[@name='npay']" >
<xsl:for-each select="npay_service_object_$mid">
<xsl:value-of select="@title"/>
</xsl:for-each>
</xsl:for-each>


в ответ тишина, абонплаты не отображаются, хотя xml формируется ... :

Код:
<module id="2" name="npay" title="Абонплаты">
<npay_service_object_2 cid="163" col="1" comment="" csid="0"
date1="2009-09-01" eid="0" emid="0" id="343" oid="0" sid="5" title="Абонплата по договору Интернет"/>
<npay_service_object_2 cid="163" col="1" comment="" csid="0"
date1="2009-09-01" eid="0" emid="0" id="344" oid="0"
sid="15" title="За фиксированый IP адрес"/>
</module>


Подскажите плз где касячу?

Автор:  Amir [ 23 сен 2009, 19:53 ]
Заголовок сообщения:  Re: contract.xsl

pay - это просто старый модуль абонплат. Таблица contract_service в npay не используется.

Так почти правильно:
Код:
<xsl:for-each select="module[@name='npay']" >
<xsl:for-each select="npay_service_object_$mid">
<xsl:value-of select="@title"/>
</xsl:for-each>
</xsl:for-each>

Но select="npay_service_object_$mid" не сработает, посмотрите там выше есть пример:
Код:
<xsl:for-each select="./*[name()=concat( 'email_account_', $mid )]">

Автор:  philyuchkoff [ 30 сен 2009, 09:13 ]
Заголовок сообщения:  Re: contract.xsl

Ещё один вопрос по contract.xsl:

Подскажите, пожалуйста что нужно добавить в код, чтобы в "Полной карте" после диапазона адресов в IPN выводился абонентский пароль (пароль из "Шлюзы" - "Управление шлюзом" - "Пароль")?

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/