Инструменти за потребители

Инструменти за сайта


kak_da:izprastane_email_kam_dlaznici

Настройка на шаблон за изпращане на имейли към длъжници

Възможностите за управление на шаблона са следните:

Описание на повтарящ се пасаж от текст, в който да се заменят стойности спрямо стойностите от данните на справката.

Текста се огражда в тагове/ключови думи

{{$$BEGIN_REPEAT$$}} и {{$$END_REPEAT$$}} 

Пример:

{{$$BEGIN_REPEAT$$}}
 <tr> 
   <td>{{ID}}</td> 
   <td>{{OFFICIAL_DOC_NUMBER}}</td> 
   <td>{{OFFICIAL_DOC_DATE}}</td> 
   <td>{{DOC_TYPE}}</td> 
   <td>{{DEBTOR_LOCATION_NAME}}</td> 
   <td>{{NORM_AMOUNT}}</td> 
   <td>{{CURRENCY_NAME}}</td> 
   <td>{{PAYMENT_DEADLINE}}</td> 
 </tr> 
 {{$$END_REPEAT$$}} 

В двойни скоби са описани имена на колони от справката. Те ще се заместят с техните стойности. Тук не е строго определено да е в каквито и да е тагове от HTML формата.
Може да е само:

{{$$BEGIN_REPEAT$$}} 
   {{OFFICIAL_DOC_NUMBER}}
   {{DEBTOR_LOCATION_NAME}}
   {{NORM_AMOUNT}} {{CURRENCY_NAME}}
{{$$END_REPEAT$$}} 

Към момента, с опциите на скрипта за изпращане на имейли дублирането е на ниво контрагент или на ниво контрагент и обект.
Библиотеката може да се имплементира в друг източник, който да дублира по различен начин.

Описание на ред за тотал:
Това става чрез ограждането на текст с тагове

{{$$BEGIN_TOTAL_ROW$$}} и {{$$END_TOTAL_ROW$$}} 

, като тук има възможност да се опишат/дефинират безброй редове за тотал.
Пример - един тотал със сума и един тотал с брой.

Позволено е да се дефинират различни агрегати за тотал. Възможните агрегати са: sum, avg, count, min, max.
Те се дефинират по следния начин, в таг/ключова дума TOTAL_VALUE.

Той изглежда така:

{{$$TOTAL_VALUE?SUM&NORM_AMOUNT&CURRENCY_REF;DEBTOR_LOCATION_REF$$}} 

Ключовата думата е последвана задължително от знака '?', което означава начало на описанието на агрегата/начина на пресмятане.
След знаkа '?' следва името на агрегата. Позволените агрегати са sum, avg, count, min, max.
След описанието на агрегата следва знак '&', което означава следващ параметър на описанието на тотала. Той е името на колоната, по която се прави агрегат, в случая NORM_AMOUNT. До тук е дефинирано sum(NORM_AMOUNT).
Последната част на описанието е по кои колони да се групира/разцепи на различни редове.
В примера това са CURRENCY_REF; DEBTOR_LOCATION_REF - тук може да се изброяват множество колони, като те се разделят със знака ';'.

Тази дефиниция на тотал означава, че ще има толкова редове за тотал, колкото различни стойности има в колоните CURRENCY_REF и DEBTOR_LOCATION_REF.

Описанието на повече от един ред за тотал става по следния начин:
Текстът се загражда в тагове

{{$$BEGIN_TOTAL_ROW1$$}} ... {{$$END_TOTAL_ROW1$$}} 

следващ ред за тотал

{{$$BEGIN_TOTAL_ROW2$$}} ...  {{$$END_TOTAL_ROW2$$}} 

… и следващ

{{$$BEGIN_TOTAL_ROW3$$}} ... {{$$END_TOTAL_ROW3$$}} 

Няма ограничение колко реда за тотал може да се опишат. Във всеки от тях може да се опише различен агрегат.

Пример:

{{$$BEGIN_TOTAL_ROW1$$}} // сума на дълга по валути и различни обекти
{{$$TOTAL_VALUE?SUM&NORM_AMOUNT&CURRENCY_REF;DEBTOR_LOCATION_REF$$}} {{CURRENCY_NAME}}
{{$$END_TOTAL_ROW1$$}}

{{$$BEGIN_TOTAL_ROW2$$}} // брой документи в различни валути по обекти
{{$$TOTAL_VALUE?COUNT&ID&CURRENCY_REF;DEBTOR_LOCATION_REF$$}} {{CURRENCY_NAME}}
{{$$END_TOTAL_ROW2$$}}

{{$$BEGIN_TOTAL_ROW3$$}} // средна стойност на дълга само по валути
{{$$TOTAL_VALUE?AVG&NORM_AMOUNT&CURRENCY_REF$$}} {{CURRENCY_NAME}}
{{$$END_TOTAL_ROW3$$}} 

Може също да се добавят тотали, които да са невидими в изпратения имейл. В тези тотали може да се посочат агрегати и полета, по които искаме на направим специфични проверки след това.

Пример:

 <!-- {{$$BEGIN_TOTAL_ROW1$$}} {{$$TOTAL_VALUE?SUM&BASE_CURRENCY_NORM_AMOUNT&BASE_CURRENCY_REF$$}} {{BASE_CURRENCY_NAME}} {{$$END_TOTAL_ROW1$$}} --> 

Командата се пише стандартно, както е описаното по горе, като единствената разлика е, че започва в „<!–“ и завърша с „–>“. По този начин този текст няма да бъде видим в изпратеният имейл. Примера показва как да направим сума на всички дългове превалутирани към базова валута от конфигурацията и по този начин може да проверим общата сума дали е положителна или отрицателна.

Пример за опростен вариант на шаблона:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<html> 
  <body> 
    <p>Здравейте, "{{DEBTOR_NAME}}"<br> Напомняме Ви, че наближава крайната дата за плащане на дължимите суми в размер на </p> 
{{$$BEGIN_TOTAL_ROW$$}} 
  {{$$TOTAL_VALUE?SUM&NORM_AMOUNT&CURRENCY_REF$$}} {{CURRENCY_NAME}} <br> {{$$END_TOTAL_ROW$$}} 
  </body> 
</html>

Което би изглеждало така:

Използване на параметри от входната справка
За да се заместят стойности на параметри идващи от входната справка трябва да се зададе ключова дума:

{{PARAM_<има на параметър от входната справка>}} 

Например, ако името на параметъра е FROM_DATE, се задава:

 {{PARAM_FROM_DATE}}
kak_da/izprastane_email_kam_dlaznici.txt · Последна промяна: 2023/12/14 12:29 от s.kirilov