BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 24 июн 2025, 04:25

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 16 ] 
Автор Сообщение
 Заголовок сообщения: xsl параметры
СообщениеДобавлено: 28 июн 2013, 13:40 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
Добрый день!
Подскажите как в шаблоне xsl определять откуда брать параметры для select, в документации не нашел.(может проглядел)
например phone_login_session (используется в отчете карточки договора)

<xsl:for-each select="/data/table">
<h2><xsl:value-of select="@reportTitle"/><br/>
Договор:&#160;<xsl:value-of select="@contractTitle"/>(<xsl:value-of select="@comment"/>)
</h2><br/>
Период с: <xsl:value-of select="@date1"/> по <xsl:value-of select="@date2"/>
</xsl:for-each>

еще отчет по балансу

<xsl:for-each select="/data/row">
<xsl:value-of select="@month"/> </td>
<xsl:value-of select="@input_balance"/> </td>


<xsl:for-each select="/data/table/data/row">
<tr bgcolor="#ffffff">
<td><xsl:value-of select="@item"/></td>
<td><xsl:value-of select="@number"/></td>

где можно посмотреть как правильно пути указывать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 28 июн 2013, 14:08 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
адресной строке допишите в конце "&ct=xml", получите xml и по ней можно путь рассчитать


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 01 июл 2013, 14:27 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
спасибо за ответ.
но так и не понял, как можно путь посчитать.
например пробую вставить id договора и баланс(Исходящий остаток на конец месяца) в phone_login_session
беру часть кода
Код:
<xsl:template name="head">
    <xsl:for-each select="/data/table">
         <h2><xsl:value-of select="@reportTitle"/><br/>
         Договор:&#160;<xsl:value-of select="@contractTitle"/>(<xsl:value-of select="@comment"/>)
         </h2><br/>
         Период с: <xsl:value-of select="@date1"/> по <xsl:value-of select="@date2"/>
ID <xsl:value-of select="@какой-то путь"/>
Баланс <xsl:value-of select="@какой-то путь"/>
Дата печати<xsl:value-of select="java:format(java:java.text.SimpleDateFormat.new('yyyy.MM.dd'), java:java.util.Date.new())" />
    </xsl:for-each>
</xsl:template>

Дату вставил.
Для вывода баланса и ИД. в web беру страницу с балансом клиента в хмл, как выше подсказали.
Код:
<?xml-stylesheet type="text/xsl" href="http://127.0.0.1:8080/bgbilling/xsl/main.xsl"?>
<data action="ShowBalance" balance_mode="1"
    comment="Аргон" contract="ZQFGH" fc="0"
    has_independent_subs="1" id="1211" mid="contract" module="contract"
    notificationsCount="0" status="" title="ZQFGH" year="2013">
    <menu>
        <item action="ReportSession" mid="1" module="phone" title="Просмотр сессий Телефонии"/>
        <item action="ReportAmount" mid="1" module="phone" title="Наработка по Телефонии"/>
        <item action="ReportDirect" mid="1" module="phone" title="Наработка по направлениям Телефонии"/>
        <item action="ReportService" mid="1" module="phone" title="Наработка по услугам Телефонии"/>
        <item action="ReportServiceSession" mid="1" module="phone" title="Детализация по Телефонии"/>
        <item action="ChangeTariff" mid="1" module="phone" title="Управление тарифными планами телефонии"/>
    </menu>
    <date month="7" year="2013"/>
    <balance limit="0.00" summa1="-221.00" summa2="0.00" summa3="0.00"
        summa4="0.00" summa5="-221.00">
        <accounts/>
        <payments/>
        <charges/>
    </balance>

в main.xsl есть код
Исходящий остаток на конец месяца
<xsl:value-of select="format-number( balance/@summa5, '### ##0.00', 'summa')"/>

пробовал по разному подставить запросы в select, не получилось.
Подскажите что я не так делаю?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 01 июл 2013, 14:52 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
Код:
ID <xsl:value-of select="/data/@id"/>
<xsl:value-of select="format-number( /data/balance/@summa5, '### ##0.00', 'summa')"/>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 02 июл 2013, 09:59 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
Так и писал. Но, ни id ни баланс не выводит
Код:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xalan="http://xml.apache.org/xalan"
    xmlns:format="xalan://java.text.Format"
    xmlns:iterator="xalan://java.lang.Iterator"
    xmlns:session="xalan://bitel.billing.server.phone.bean.Session"
    xmlns:utils="ru.bitel.common.Utils"
    extension-element-prefixes="session iterator format utils"
    version="1.0">
 <xsl:output method="html" encoding="UTF-8" indent="yes"/>
 <xsl:param name="beans"/>
 <xsl:param name="format"/>
 <xsl:param name="size"/>
 <xsl:template match="/data">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
</head>
    <body>
        <xsl:call-template name="head"/><br/>
                <xsl:for-each select="/data/table">
                </xsl:for-each>
    </body>
</html>
</xsl:template>
<xsl:template name="head">
    <xsl:for-each select="/data/table">
         <xsl:value-of select="@reportTitle"/><br/>
         Договор:&#160;<xsl:value-of select="@contractTitle"/>(<xsl:value-of select="@comment"/>)<br/>
         Период с: <xsl:value-of select="@date1"/> по <xsl:value-of select="@date2"/><br/>
         ID <xsl:value-of select="/data/@id"/><br/>
Summa <xsl:value-of select="format-number( /data/balance/@summa5, '### ##0.00', 'summa')"/><br/>
    </xsl:for-each>
  </xsl:template>
</xsl:stylesheet>

В итоге получается только
Договор: ZQFGH(Аргон)
Период с: 01.03.2013 по 31.03.2013
ID


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 02 июл 2013, 10:40 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
а так
Код:
ID <xsl:value-of select="//data/@id"/>
<xsl:value-of select="format-number( //data/balance/@summa5, '### ##0.00', 'summa')"/>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 02 июл 2013, 11:02 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
ага, так тоже пробовал. id и баланс также не выводятся.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 02 июл 2013, 11:18 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
по моему вы показали не тут xml-ку


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 02 июл 2013, 11:36 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
полностью
Код:
 
GNU nano 2.2.6                  File: /usr/local/BGBillingServer/webroot/xsl/phone_login_sessions.xsl

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xalan="http://xml.apache.org/xalan"
    xmlns:format="xalan://java.text.Format"
    xmlns:iterator="xalan://java.lang.Iterator"
    xmlns:session="xalan://bitel.billing.server.phone.bean.Session"
    xmlns:utils="ru.bitel.common.Utils"
    extension-element-prefixes="session iterator format utils"
        version="1.0">

<xsl:output method="html" encoding="UTF-8" indent="yes"/>

<xsl:param name="beans"/>
<xsl:param name="format"/>
<xsl:param name="size"/>

<xsl:template match="/data">
   <html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
</head>
    <body>
        <xsl:call-template name="head"/><br/>
                <xsl:for-each select="/data/table">
                </xsl:for-each>
    </body>
    </html>
</xsl:template>

<xsl:template name="head">
    <xsl:for-each select="/data/table">
         <h2><xsl:value-of select="@reportTitle"/><br/>
         Договор:&#160;<xsl:value-of select="@contractTitle"/>(<xsl:value-of select="@comment"/>)
         </h2><br/>
         Период с: <xsl:value-of select="@date1"/> по <xsl:value-of select="@date2"/><br/>
ID <xsl:value-of select="//data/@id"/>
<xsl:value-of select="format-number( //data/balance/@summa5, '### ##0.00', 'summa')"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 02 июл 2013, 18:15 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
а говорил про XML, а не про XSL-шаблон

а ID не выводиться потому что его похоже нет в xml


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 03 июл 2013, 05:38 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
Цитата:
Подскажите как в шаблоне xsl определять откуда брать параметры для select

хм. если таким путем невозможно добавить эти параметры, то как тогда лучше их добавить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 03 июл 2013, 16:05 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
напрмер в xsl шаблоне можно делать прямые sql запросы к базе,
как это делается описано на вики


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 09 июл 2013, 10:19 
Не в сети
Клиент

Зарегистрирован: 29 мар 2013, 11:54
Сообщения: 262
Откуда: Краснодар
Карма: 5
спасибо. все получилось


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 10 июл 2013, 00:36 
Не в сети
Клиент

Зарегистрирован: 15 ноя 2011, 17:56
Сообщения: 186
Карма: 0
А в BGB 6.0 как получить или увидеть xml данные?
на страницах, созданных на jsp-шаблонах, фишка с &ct=xml не проходит

_________________
Версия 6.2


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 10 июл 2013, 01:40 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
nikav80 писал(а):
А в BGB 6.0 как получить или увидеть xml данные?
на страницах, созданных на jsp-шаблонах, фишка с &ct=xml не проходит


на этих страницах xml не формируется, данные передаются в jsp через java.util.HashMap (dataMap)

для того что просмотреть содержимое мапа надо в текст jsp страницы (например, webcontent.jsp) добавить ${dataMap} в результате на страницу будет выведено что то вроде {ключ1=значение1;ключ2=значение2;...} для того что бы получить значение соответствующему определенному ключу вставляем ${dataMap['ключ2']}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: xsl параметры
СообщениеДобавлено: 10 июл 2013, 11:26 
Не в сети
Клиент

Зарегистрирован: 15 ноя 2011, 17:56
Сообщения: 186
Карма: 0
Спасибо! :D

_________________
Версия 6.2


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.059s | 49 Queries | GZIP : On ]