BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 19 май 2024, 11:51

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




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
СообщениеДобавлено: 11 июл 2009, 11:34 
Не в сети

Зарегистрирован: 01 июн 2009, 13:17
Сообщения: 23
Карма: 0
День добрый возникла необходимость печати клиентом платежку для самого себя на любую сумму.

Имеется скрипт по адресу http://10.0.0.2/cgi-bin/schet.cgi который генерирует необходимую платежку
Скрипту необходимо передать два параметра из договора, номер договора и ФИО клиента и один параметр - сумму из web интерфейса

в файл common.xsl вставляю

Код:
  <tr>
     <th><img src="img/strelki.gif"/></th>
     <td><a href="?action=GetSchet&amp;mid=contract">Выставить счет на произвольную сумму</a></td>
  </tr>


файл main.xsl правлю

Код:
<xsl:template name="title">
<xsl:choose>
  ...
  <xsl:when test="data/@action = 'GetSchet'">Самостоятельное выствление счета</xsl:when>
  <xsl:when test="data/@action = 'GetSchet2'">Самостоятельное выставление счета</xsl:when>
  ...
</xsl:choose>
</xsl:template>


<xsl:template match="/data">
<xsl:choose>
   ...
  <xsl:when test="@action = 'GetSchet'">
    <xsl:call-template name="GetSchet"/>
  </xsl:when>
  <xsl:when test="@action = 'GetSchet2'">
    <xsl:call-template name="GetSchet2"/>
  </xsl:when>
  ...
</xsl:choose>
</xsl:template>


<xsl:template name="GetSchet">
  <form method='post' action='{$WEBEXECUTER}'>
  <input type="hidden" name="action" value="GetSchet2"/>
 <div class="report">
  <table cellspacing='1' id="idTableGetSchet">
  <col class="col1"/>
  <col class="col2"/>
  <tbody>
    <tr>
    <th>Выставить мне счет на сумму:</th>
    <td><input type='edit' name='summа' size='6' maxlength='10'/> рублей</td>
    </tr>
   </tbody>
   <tfoot>
    <tr><td colspan='2'>
    <xsl:call-template name="submit">
        <xsl:with-param name="title" select="'Выставить'"/>
    </xsl:call-template>
    </td></tr>
   </tfoot>   
  </table>   
 </div>       
  </form>     
</xsl:template>


<xsl:template name="GetSchet2">
 <h1> Посмотреть/сохранить счет</h1>
  <p>Просмотреть выставленный счет:</p>
  <form method='post' action='http://10.0.0.2/cgi-bin/schet.cgi'> 
  <input type="hidden" name="action" value="ViewSchet"/>
  <input type="hidden" name="shcet" value="??????????"/>
  <input type="hidden" name="fio" value="??????????"/>
 <input type="hidden" name="Summ" value="??????????"/>
    <xsl:call-template name="submit">
      <xsl:with-param name="title" select="'Посмотреть счет'"/>
    </xsl:call-template>
  </form>

<br>
<p>Сохранить документ для печати в формате Microsoft Word</p>
 <form method='post' action='http://10.0.0.2/cgi-bin/schet.cgi'> 
  <input type="hidden" name="action" value="SaveSchet"/>
  <input type="hidden" name="shcet" value="??????????"/>
  <input type="hidden" name="fio" value="??????????"/>
 <input type="hidden" name="Summ" value="??????????"/>
    <xsl:call-template name="submit">
      <xsl:with-param name="title" select="'Сохранить счет '"/>
    </xsl:call-template>
  </form>

</xsl:template>


Вопрос что вписать вместо ?????????? чтобы подставить номер контракта ФИО пользователя и сумму введенную на первом этапе.

попытка вставить что то вроде <xsl:value-of select="$contractTitle"/> успехом не увенчалась

В википедии по этому поводу пустая статья.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 июл 2009, 13:15 
Не в сети

Зарегистрирован: 01 июн 2009, 13:17
Сообщения: 23
Карма: 0
Уважаемая техподдержка, вопрос же не сложный, как на генерируемой web странице в личном кабинете пользователя создать форму для вызова внешнего скрипта которому в качестыве параметров будут передаваться ФИО пользователя и номер договора. Подскажите будьте любезны, думаю вопрос тривиальный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 июл 2009, 14:22 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
<xsl:value-of select="/data@contract"/>
и все отстальное по аналогии ..чтобы посмотреть xml надо к любому запросу добавить &ct=xml (в фаерфоксе вернется пустая стриница - нужно смотреть исходный код ее )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 июл 2009, 10:44 
Не в сети

Зарегистрирован: 11 июл 2008, 13:01
Сообщения: 62
Карма: 0
Тоже необходимо что то вроде этого сделать,
но никак не могу выдрать адрес.
Код:
<xsl:variable name="address" select="parameters/parameter[@pid=16]/@value" />

Такая конструкция не привела ни к чему.(это из card_inet)
Напишите если не трудно как можно реализовать, так как в xml чайник


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 июл 2009, 12:44 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В xsl есть как абсолютная адресация, так и относительная.
Абсолютный путь начинается с /
/data/contract_data/parameters/parameter...

Относительный работает относительно текущей ветки:
<xsl:template match="/data">
внутри относительный путь contract_data/parameters (или ./contract_data/parameters) будет = /data/contract_data/parameters
</xsl:template>

<xsl:for-each select="/data/contract_data/parameters/parameter">
внутри относительный путь . будет = /data/contract_data/parameters/parameter
</xsl:template>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 июл 2009, 17:11 
Не в сети

Зарегистрирован: 11 июл 2008, 13:01
Сообщения: 62
Карма: 0
извините может туплю, но у меня есть такое код

Код:
<xsl:template name="GetSchet" >

<xsl:variable name="contitle" select="/data/@contract"/>
<xsl:variable name="fio" select="@comment" />
<xsl:variable name="address" select="/data/contract_data/parameters/parameter[@pid=16]/@value" />

 <h1> Посмотреть/сохранить счет</h1>
  <p>Просмотреть выставленный счет:</p>
  <form method='get' action='http://...../xmlget.php'>
  <input type="hidden" name="action" value="ViewSchet"/>
  <input type="text" name="contitle" value="{$contitle}"/>
  <input type="text" name="fio" value="{$fio}" />
<xsl:value-of select="$address"/>
 <input type="hidden" name="Summ" value="summa"/>
    <xsl:call-template name="submit">
      <xsl:with-param name="title" select="'Посмотреть счет'"/>
    </xsl:call-template>
  </form>
</xsl:template>


Но переменную address не выводит...
в чем может быть косяк?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 24 июл 2009, 08:50 
Не в сети

Зарегистрирован: 11 июл 2008, 13:01
Сообщения: 62
Карма: 0
Разработчики или те кто знают ответьте пожалуйста.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 10 авг 2009, 04:17 
Не в сети

Зарегистрирован: 01 июн 2009, 13:17
Сообщения: 23
Карма: 0
Уважаемые разработчики подскажите, есть ли где то документация по переменным и их использованию в ваших XML шаблонах? Хотелось бы более подробно почитать об этом, а то разбираться в их использовании анализируя чужой код долго и неэффективно. В википедии по этому поводу пусто, на форуме тоже ничего не нашел. Ткните в ссылку если она есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 11 авг 2009, 13:26 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
http://www.bgbilling.ru/v4.6/doc/ch01s23s02.html


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

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