Страница 11 из 11

Re: Обещанный платеж

Добавлено: 20 ноя 2019, 16:03
support
https://www.lanbilling.ru/sites/all/the ... tOrder.zip
Ссылку поправили на странице.

Re: Обещанный платеж

Добавлено: 20 ноя 2019, 19:37
Andrei
В прошлых версиях биллинга рекомендовали все делать через API, теперь опять вернулись к тому, от чего ушли - к прямым sql-запросам. :)

Простейший отчет сделал
promise_payments.sql:

Код: Выделить всё

<!-- begin_services ---:begin_cursor:%amount%,%prom_date%,%number%,%FIO%,@dtfrom:select p.amount, p.prom_date, agr.number, concat(a.abonent_surname,' ',a.abonent_name,' ',a.abonent_patronymic) as FIO from promise_payments as p, agreements as agr, accounts as a where agr.agrm_id=p.agrm_id and agr.uid=a.uid and date(p.prom_date)>=@dtfrom and date(p.prom_date)<=@dtto;
<!-- end_services -->:end_cursor

Но в браузере результат красиво не отображается.
Попробовал сделать шаблон xsl и поставил ссылку на него из xml, но красивой таблицы так и не получилось
promise_payments.xml:

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<?xml-stylesheet type='text/xsl' href='promise_payments.xsl'?>

<payments>

<!-- begin_services -->
<payment>
<amount>%amount%</amount>
<prom_date>%prom_date%</prom_date>
<number>%number%</number>
<FIO>%FIO%</FIO>
</payment>
<!-- end_services -->

</payments>


promise_payments.xsl:

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<table border="1">
  <tr bgcolor="#CCCCCC">
    <td align="center"><strong>Сумма</strong></td>
    <td align="center"><strong>Дата</strong></td>
    <td align="center"><strong>Договор</strong></td>
    <td align="center"><strong>ФИО</strong></td>
  </tr>
  <xsl:for-each select="payments/payment">
  <tr bgcolor="#F5F5F5">
    <td><xsl:value-of select="amount"/></td>
    <td><xsl:value-of select="prom_date"/></td>
    <td><xsl:value-of select="number"/></td>
    <td><xsl:value-of select="FIO"/></td>
  </tr>
  </xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>

Re: Обещанный платеж

Добавлено: 21 ноя 2019, 08:10
support
Мы всё еще рекомендуем работать с АСР по API.
Но отчёт это другое.

Re: Обещанный платеж

Добавлено: 21 ноя 2019, 10:42
Andrei
У меня в прошлых версиях ЛБ пользовательские отчеты были на php через API.
Переделал отчет на html, простейший рабочий вариант:

Код: Выделить всё

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
<TITLE></TITLE>
</HEAD>

<BODY TEXT="#000000">
<font align=center>
Обещанные платежи за период с %datefrom% по %dateto%
</font>
<table border="1">
<tr><td>Сумма</td><td>Дата</td><td>Договор</td><td>ФИО</td></tr>
<!-- begin_services --><tr><td>%amount%</td><td>%prom_date%</td><td>%number%</td><td align=left>%FIO%</td></tr>
<!-- end_services -->
</table>
</BODY>
</HTML>


Заголовок таблицы с переменными @dtto и @dtfrom, которые передаются в скрипт, можно сделать добавив перед началом курсора в sql-файл псевдо-sql-запросы вида:

Код: Выделить всё

%datefrom%:select @dtfrom
%dateto%:select @dtto


Ну и xml я так и не победил.