Квитанция телефонии физ. лицам
Материал из BiTel WiKi
Admin (Обсуждение | вклад) |
Vdd (Обсуждение | вклад) (Указание на потенциальные проблемы с FORMAT() в selectах) |
||
(2 промежуточные версии не показаны) | |||
Строка 1: | Строка 1: | ||
- | Шаблон позволяет реализовать квитанции телефонии для физ. лиц с использованием модуля бухгалтерии. В квитанции генерируется штрихкод, который содержит информацию по оператору и номеру. Формат генерации кода описан здесь: [[Медиа:Phone_tkural_kvit_barcode.zip]]. | + | Шаблон позволяет реализовать квитанции телефонии для физ. лиц с использованием модуля бухгалтерии. В квитанции генерируется штрихкод, который содержит информацию по оператору и номеру. Формат генерации кода описан здесь: [[Медиа:Phone_tkural_kvit_barcode.zip]]. |
Итоговая квитанция выглядит следующим образом: | Итоговая квитанция выглядит следующим образом: | ||
Строка 81: | Строка 81: | ||
Сам XSLT шаблон: [[Медиа:Phone_tkural_kvit.zip]] | Сам XSLT шаблон: [[Медиа:Phone_tkural_kvit.zip]] | ||
+ | |||
+ | При использовании FORMAT(SUM(cost),2) в selectах были проблемы при суммировании позиций средствами самого XSLT при SUM(cost)>999. Вариант решения: отказаться от FORMAT. | ||
Обратите внимание, что в шаблоне необходимо скорректировать коды услуг, тарифов, параметров договоров и позиций, которые вы завели в вашей системе. Все настраиваемые параметры вынесены в заголовок. Решение рассчитано только на выставление счетов за и зоновую местную связь . | Обратите внимание, что в шаблоне необходимо скорректировать коды услуг, тарифов, параметров договоров и позиций, которые вы завели в вашей системе. Все настраиваемые параметры вынесены в заголовок. Решение рассчитано только на выставление счетов за и зоновую местную связь . | ||
Строка 109: | Строка 111: | ||
<xsl:variable name="pos_address_delim" select="'25'"/> | <xsl:variable name="pos_address_delim" select="'25'"/> | ||
</source> | </source> | ||
+ | |||
+ | В XSLT файле вставляется логотип организации: | ||
+ | <source lang="xml"> | ||
+ | <fo:table-cell><fo:external-graphic src="http://192.168.1.242:8080/bgbilling/tkural_logo.gif" width="3.4cm" height="1.7cm"/></fo:table-cell> | ||
+ | </source> | ||
+ | |||
+ | Обратите внимание, что путь должен быть скорректирован и реально доступен с машины, где установлен BGBillingClient. Вы можете проверить это браузером. | ||
+ | В противном случае просмотр квитанции будет "подвешивать" клиент. Вызвано это тем, что по-умолчанию таймаут URL в Java машине не ограничен. | ||
+ | Вы можете задать таймаут опцией '''-Dsun.net.client.defaultConnectTimeout=1000''' в скрипте запуска клиента bgbilling.sh (.bat). |
Текущая версия на 07:38, 14 мая 2009
Шаблон позволяет реализовать квитанции телефонии для физ. лиц с использованием модуля бухгалтерии. В квитанции генерируется штрихкод, который содержит информацию по оператору и номеру. Формат генерации кода описан здесь: Медиа:Phone_tkural_kvit_barcode.zip.
Итоговая квитанция выглядит следующим образом:
В конфигурации модуля бухгалтерии заведены следующие позиции. Позиция "Перерасчет" позволяет компенсировать различные ошибки тарификации приходами.:
bill.pos.1.title=Местная связь bill.pos.1.name=Местная связь за $month bill.pos.1.summ=SERVICE_AMOUNT($month, 1) bill.pos.1.quantity=PHONE_SERVICE_AMOUNT(1, $month, 60, 1) bill.pos.1.unit=мин. # bill.pos.2.title=Зоновая мобильная связь bill.pos.2.name=Зоновая мобильная связь за $month bill.pos.2.summ=SERVICE_AMOUNT($month, 8) bill.pos.2.quantity=PHONE_SERVICE_AMOUNT(1, $month, 60, 8) bill.pos.2.unit=мин. # bill.pos.3.title=Зоновая связь bill.pos.3.name=Зоновая связь за $month bill.pos.3.summ=SERVICE_AMOUNT($month, 2) bill.pos.3.quantity=PHONE_SERVICE_AMOUNT(1, $month, 60, 2) bill.pos.3.unit=мин. # bill.pos.4.title=Абонентская плата bill.pos.4.name=Абонентская плата bill.pos.4.extractor=NPAY_SERVICES(2,$month) bill.pos.4.unit=шт. # #bill.pos.5.title=Прочие услуги #bill.pos.5.name=Прочие услуги #bill.pos.5.extractor=KERNEL_CHARGES($month) #bill.pos.5.unit=шт. # bill.pos.6.title=Долг на начало месяца bill.pos.6.name=Долг на начало $month bill.pos.6.summ=-IN_REST($month) bill.pos.6.quantity=1 # bill.pos.7.title=Платежи bill.pos.7.name=Платежи за $month bill.pos.7.summ=-PAYMENT($month)+PAYMENT($month, 37) bill.pos.7.quantity=1 # bill.pos.8.title=Расходы bill.pos.8.name=Расход bill.pos.8.extractor=KERNEL_CHARGES($month) bill.pos.8.unit=шт. # bill.pos.9.title=Периодические услуги bill.pos.9.name=Периодические услуги за $month bill.pos.9.extractor=NPAY_SERVICES_EXCEPT(2,$month,6,4) bill.pos.9.unit=шт. # bill.pos.10.title=Интернет в кредит bill.pos.10.name=Интернет в кредит за $month bill.pos.10.summ=SERVICE_AMOUNT($month, 273) bill.pos.10.quantity=PHONE_SERVICE_AMOUNT(1, $month, 60, 273) bill.pos.10.unit=мин. # bill.pos.11.title=Абонплата за линию и по тарифу bill.pos.11.name=Абонплата за линию и по тарифу за $month bill.pos.11.summ=SERVICE_ACCOUNT($month,6,4) bill.pos.11.unit=шт. # bill.pos.12.title=Перерасчет bill.pos.12.name=Перерасчет за $prevmonth bill.pos.12.summ=-PAYMENT($month, 37) bill.pos.12.unit=
Заведен тип документа "Квитанция для физиков", которому сопоставлены позиции:
Сам XSLT шаблон: Медиа:Phone_tkural_kvit.zip
При использовании FORMAT(SUM(cost),2) в selectах были проблемы при суммировании позиций средствами самого XSLT при SUM(cost)>999. Вариант решения: отказаться от FORMAT.
Обратите внимание, что в шаблоне необходимо скорректировать коды услуг, тарифов, параметров договоров и позиций, которые вы завели в вашей системе. Все настраиваемые параметры вынесены в заголовок. Решение рассчитано только на выставление счетов за и зоновую местную связь .
<!-- настраиваемые параметры --> <xsl:variable name="address_param_id" select="'21'"/> <xsl:variable name="phone_mid" select="'1'"/> <xsl:variable name="npay_mid" select="'2'"/> <xsl:variable name="service_abon_line" select="'4'"/> <xsl:variable name="service_abon_service" select="'6'"/> <xsl:variable name="service_phone_mest" select="'1'"/> <xsl:variable name="service_phone_zone" select="'2'"/> <xsl:variable name="tariff_abon" select="'3'"/> <xsl:variable name="tariff_povrem" select="'1'"/> <xsl:variable name="tariff_komb" select="'14'"/> <xsl:variable name="tariff_soc" select="'4'"/> <xsl:variable name="position_charge" select="'8'"/> <xsl:variable name="position_pay" select="'9'"/> <xsl:variable name="position_in_debt" select="'6'"/> <xsl:variable name="position_payment" select="'7'"/> <xsl:variable name="position_recalculation" select="'12'"/> <xsl:variable name="position_inet" select="'10'"/> <xsl:variable name="pos_address_delim" select="'25'"/>
В XSLT файле вставляется логотип организации:
<fo:table-cell><fo:external-graphic src="http://192.168.1.242:8080/bgbilling/tkural_logo.gif" width="3.4cm" height="1.7cm"/></fo:table-cell>
Обратите внимание, что путь должен быть скорректирован и реально доступен с машины, где установлен BGBillingClient. Вы можете проверить это браузером. В противном случае просмотр квитанции будет "подвешивать" клиент. Вызвано это тем, что по-умолчанию таймаут URL в Java машине не ограничен. Вы можете задать таймаут опцией -Dsun.net.client.defaultConnectTimeout=1000 в скрипте запуска клиента bgbilling.sh (.bat).