forum.bitel.ru http://forum.bitel.ru/ |
|
xsl шаблон дилеров http://forum.bitel.ru/viewtopic.php?f=8&t=7551 |
Страница 1 из 3 |
Автор: | Sputnik [ 20 дек 2012, 14:40 ] |
Заголовок сообщения: | xsl шаблон дилеров |
Всем привет! Хочу вставить в "Проведение платежа" в шаблоне диллеров (idealer.xsl) отображение одного из параметров(список) который есть в "параметре договоров". Идея в принципе примерно ясна, чтото типа такого Код: <xsl:value-of select="parameters/parameter[@pid=22]/@value"/> только кажется что я путь не правильно указываю, тк это поле не отображаеться. Подскажите плиз кто знает путь или может я не правильно пытаюсь сделать? |
Автор: | focus [ 20 дек 2012, 14:50 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Код: data/parameters/parameter[@pid=22]/@value
|
Автор: | Sputnik [ 21 дек 2012, 11:24 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
не подходит по коду Код: <xsl:value-of select="data/parameters/parameter[@pid=22]/@value"/> все еще пусто ![]() |
Автор: | focus [ 21 дек 2012, 11:44 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
А можно на XML взглянуть? Тогда понятно будет какой путь писать. |
Автор: | Cromeshnic [ 21 дек 2012, 11:46 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
А так: Код: <xsl:value-of select="/data/parameters/parameter[@pid=22]/@value"/> ? |
Автор: | Sputnik [ 21 дек 2012, 12:12 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
focus писал(а): А можно на XML взглянуть? Тогда понятно будет какой путь писать. XML? тебе файл выложить чтоль? Cromeshnic писал(а): А так: Код: <xsl:value-of select="/data/parameters/parameter[@pid=22]/@value"/> ? так тоже нет |
Автор: | focus [ 21 дек 2012, 14:02 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
да. может просто в нем этих параметров нет? Клиенсткие данные можете удалить от туда. |
Автор: | Sputnik [ 21 дек 2012, 14:52 ] | ||
Заголовок сообщения: | Re: xsl шаблон дилеров | ||
файлик во вложении Я хочу добавить свой пункт в Код: <xsl:template name="Contract"> после коментариев
|
Автор: | focus [ 21 дек 2012, 14:56 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Не сам шаблон XSL. А XML с данными. Шаблон у меня есть, я его посмотрел. Вот чтобы правильно написать путь до параметра (если она там есть), нужен XML с данными. |
Автор: | Sputnik [ 21 дек 2012, 16:42 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Немного не догоняю ![]() Единственный XML который относиться к модулю это card.xml Все используется стандартное, нового ничего не дописываю Или ты о каком нибудь конкретном XML файле говоришь? Ткни пальцем плиз ![]() |
Автор: | focus [ 24 дек 2012, 06:55 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
вот тут дополнительно как работает формирование печатной формы документа на основании XSLT http://www.bgbilling.ru/v5.2/doc/ch01s18s14s01.html Боюсь, что в случае с карточками, XML с данными не получить относительно просто. |
Автор: | Sputnik [ 24 дек 2012, 11:45 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
focus писал(а): вот тут дополнительно как работает формирование печатной формы документа на основании XSLT http://www.bgbilling.ru/v5.2/doc/ch01s18s14s01.html Боюсь, что в случае с карточками, XML с данными не получить относительно просто. Этим вариантом мы как раз пользовались создавая карточки автоматического заполнения договоров с абонентами и другие бланки где нужны были данные с договора. И там мы просто редактировали xsl файлы. Тут в принципе идея такая же. Но не получается сделать ![]() Товарищи разработчики может вы ответите как поступить в этой ситуации? |
Автор: | skn [ 15 янв 2013, 17:17 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
нужно получить запрос который оправляется серверу при формирование нужной вам страницы, скопировать этот запрос в строку браузера дописав в конец строки &ct=xml в результате получитете xml документ который используется совместно с xsl шаблоном для формирования конечной страницы, все данные которые есть в этом xml можно вытащить на страницу, все остальное только дополнительными sql запросами в xsl шаблоне |
Автор: | Sputnik [ 16 янв 2013, 09:08 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Как получить запрос? ![]() |
Автор: | skn [ 16 янв 2013, 11:14 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
например в файрфоксе в режиме отладке или через расширение firebag ну или в логах сервера биллинга |
Автор: | Sputnik [ 16 янв 2013, 14:52 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Чтото вроде такого? Код: http://serverIP:port/bgbilling/idealer?1358325637119=&action=PaymentAdd&cid=4384&comment=&mid=3&pt=20&summ=1&trans=1358325610063&ct=xml Вставлял в браузер получил чтото вроде этого: Код: <?xml version="1.0" encoding="windows-1251"?> <data status="ok"><payments><payment cid="4384" comment="1358325610063" contract="123456" contract_comment="ТЕСТ" date="16.01.2013 14.32.11" id="1140" status="1" summ="1.00" trans="1358325610063"/></payments><contract balance="162.09" comment="ТЕСТ" firm_id="" id="4384" title="123456"><tariffs show="1"/></contract></data> Это то или нет? |
Автор: | dimOn [ 16 янв 2013, 16:22 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
ну да, это ответ xml-кой на запрос |
Автор: | Sputnik [ 16 янв 2013, 16:52 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Собственно данных для того чтобы вытащить не много:( Значит всетаки sql запрос? |
Автор: | skn [ 16 янв 2013, 17:57 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
да |
Автор: | Sputnik [ 17 янв 2013, 09:19 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Не подскажешь какой запрос, куда его вставить? Или нужно обращение в хелпдеск? |
Автор: | focus [ 17 янв 2013, 09:41 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Приветствую. В <xsl:stylesheet> добавляем расширение xmlns:sql="bitel.billing.server.util.exslt.SQLQuery" Должно выглядеть примерно так Код: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" ... xmlns:sql="bitel.billing.server.util.exslt.SQLQuery" ... > После можем в xsl использовать это расширение для выполнения запросов к БД. Примерно так Код: <xsl:variable name="query">select comment from contract where id=<xsl:value-of select="$mycid"/></xsl:variable> <xsl:variable name="contracts" select="sql:select( $query )"/> <!-- Перебираем ответ--> <xsl:for-each select="$contracts/row"> <fo:block><xsl:value-of select="@comment"/></fo:block> </xsl:for-each> Подобная тема на форуме viewtopic.php?f=14&p=52575#p52575 |
Автор: | focus [ 17 янв 2013, 09:42 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Статья на wiki http://wiki.bgbilling.ru/index.php/XSLT |
Автор: | Sputnik [ 17 янв 2013, 15:53 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Чтото у меня с запросом не выходит. Вернее с его синтаксисом Код: <xsl:variable name="query">select title from contract_parameter_type_7_log where cid=<xsl:value-of select="$mycid"/> && pid=30 </xsl:variable> <xsl:variable name="sog" select="sql:select( $query )"/> Перестает реагировать окно дилера платежей И нужно ли мне перебирать ответ если результат должен быть только один и еще к тому же последний изменившийся? Код: <!-- Перебираем ответ -->
<xsl:for-each select="$sog/row"> <fo:block><xsl:value-of select="@title"/></fo:block> </xsl:for-each> |
Автор: | skn [ 17 янв 2013, 16:57 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
а почему contract_parameter_type_7_log, а не contract_parameter_type_7 ??? и что такое $mycid |
Автор: | focus [ 17 янв 2013, 16:57 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Попробуй не перебирать. Скажи а переменная $mycid объявлена? Как-то так Код: <xsl:variable name="mycid" select="/data/paymets/payment/@cid"/>.
|
Автор: | Sputnik [ 17 янв 2013, 17:35 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
skn писал(а): а почему contract_parameter_type_7_log, а не contract_parameter_type_7 ??? и что такое $mycid Мне нужно значение поля title этой таблицы в котором и находится текстовое знаечение того что я хочу вытащить на страницу focus писал(а): Попробуй не перебирать. Скажи а переменная $mycid объявлена? Как-то так Код: <xsl:variable name="mycid" select="/data/paymets/payment/@cid"/>. объявил Код: <xsl:variable name="mycid" select="contract/@id" /> с этим разобрался. теперь теряется на кнопке выбрать. Код: <xsl:variable name="contracts" select="sql:select( $query )"/> кнопка нажимается а окна провода платежей нет ![]() |
Автор: | focus [ 17 янв 2013, 17:39 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
путь до @id должен быть /data/contract/@id в <xsl:variable name="mycid" select="contract/@id" /> в server.out посмотри ошибку какую-нибудь пишет? |
Автор: | Sputnik [ 18 янв 2013, 09:53 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
В server.out только вот это Код: 18.01.2013 9:37:11 org.apache.tomcat.util.http.Parameters processParameters WARNING: Parameters: Invalid chunk ignored. А как можно проверить результат запроса? Получила ли переменная результат запроса? |
Автор: | focus [ 18 янв 2013, 12:26 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
Попробуйте запрос к mysql выполнить. Что насчет focus писал(а): путь до @id должен быть /data/contract/@id
в <xsl:variable name="mycid" select="contract/@id" /> в server.out посмотри ошибку какую-нибудь пишет? |
Автор: | Sputnik [ 18 янв 2013, 14:10 ] |
Заголовок сообщения: | Re: xsl шаблон дилеров |
focus писал(а): Попробуйте запрос к mysql выполнить. Запрос выдается правильно. То есть значение которое мне нужно, он находит. focus писал(а): путь до @id должен быть /data/contract/@id в <xsl:variable name="mycid" select="contract/@id" /> в server.out посмотри ошибку какую-нибудь пишет? Путь ввел он выдает правильный cid договора. Проверял. Как только вписываю эту строчку Код: <xsl:variable name="contracts" select="sql:select( $query )"/> то в server.out появляется вот это Код: 18.01.2013 13:40:31 org.apache.tomcat.util.http.Parameters processParameters WARNING: Parameters: Invalid chunk ignored. Других записей там нет. и кнопка выбора договора перестает реагировать ![]() |
Страница 1 из 3 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |