Во всех vts шаблонах могут использоваться следующие функции:
·функции-счетчики вычисления выражения CNT, CNTT;
·функции вычисления суммы значений SUM, SUMT;
·функция представления числа прописью SUMSTR().
Функции-счетчики вычисления выражения CNT, CNTT
CNT[%CALC.FIELD] — количество раз, которое выражение [%CALC.FIELD] было посчитано в отчете до этого момента и с момента предыдущего CNT[%CALC.FIELD]. После вычисления счетчик обнуляется.
CNTT[%CALC.FIELD] — количество раз, которое выражение [%CALC.FIELD] было посчитано в отчете до этого момента без учета обнуления после каждого выражения CNT[%CALC.FIELD].
Пример. Допустим, сформированный отчет содержит следующие формулы:
[%CALC.FIELD] |
|
[%CALC.FIELD] |
|
[%CALC.FIELD] |
|
CNT[%CALC.FIELD] |
CNTT[%CALC.FIELD] |
|
|
[%CALC.FIELD] |
|
[%CALC.FIELD] |
|
CNT[%CALC.FIELD] |
CNTT[%CALC.FIELD] |
Пример вычисления данных формул будет выглядеть следующим образом:
5 |
|
2 |
|
7 |
|
3 |
3 |
|
|
6 |
|
4 |
|
2 |
5 |
Функции вычисления суммы значений SUM, SUMT
·SUM[%CALC.FIELD] — сумма всех раннее вычисленных значений [%CALC.FIELD], обнуляется после вычисления.
·SUMT[%CALC.FIELD] — общая сумма всех раннее вычисленных значений [%CALC.FIELD] без учета обнуления после каждого выражения SUM[%CALC.FIELD].
Пример. Допустим, сформированный отчет содержит следующие формулы:
[%CALC.FIELD] |
|
[%CALC.FIELD] |
|
[%CALC.FIELD] |
|
SUM[%CALC.FIELD] |
SUMT[%CALC.FIELD] |
|
|
[%CALC.FIELD] |
|
[%CALC.FIELD] |
|
SUM[%CALC.FIELD] |
SUMT[%CALC.FIELD] |
Пример вычисления данных формул будет выглядеть следующим образом:
5 |
|
2 |
|
7 |
|
14 |
14 |
|
|
6 |
|
4 |
|
10 |
24 |
Функция представления числа прописью SUMSTR()
SUMSTR([%CALC.FIELD]) – представление числа прописью (чаще всего используется для представления стоимости). При использовании без параметров стоимость отображается в рублях на русском языке.
В качестве параметров можно явно указать валюту и язык: SUMSTR([%CALC.FIELD];CURRENCY;LANG).
Параметр CURRENCY (валюта) может принимать значения:
oRUB – рубли,
oEUR – евро,
oUSD – доллары,
oGBP – британские фунты,
oNUM – без валюты, только целая часть (т.е. будет выведено не "пять рублей", а просто "пять");
oNUM4 – без валюты, число с дробной частью, до 4 знаков после запятой. После целой части выводится слово "целых", затем дробная часть и слово "десятых" ("сотых", "тысячных", "десятитысячных").
Параметр LANG (язык) может принимать одно значение:
oENG – английский язык.
Если параметр не указан, пропись печатается на русском языке.
Второй и третий параметры также могут быть вычисляемыми выражениями.
Пример. Использование формулы SUMSTR(SUMT[GOODS.DOC_SUM]), вычисляющей общую сумму по аптечному документу, с различными параметрами.
Формула |
Результат |
SUMSTR(SUMT[GOODS.DOC_SUM]) |
Восемьсот восемьдесят один рубль 00 копеек |
SUMSTR(SUMT[GOODS.DOC_SUM];NUM) |
Восемьсот восемьдесят один |
SUMSTR(SUMT[GOODS.DOC_SUM];NUM4) |
Пять целых 6789 десятитысячных |
SUMSTR(SUMT[GOODS.DOC_SUM];RUB;ENG) |
Eight hundred eighty one rouble 00 copecks |
SUMSTR(SUMT[GOODS.DOC_SUM];USD) |
Восемьсот восемьдесят один доллар США 00 центов |
Также примеры использования всех вышеперечисленных функций можно найти в vts шаблоне из поставки МИС МЕДИАЛОГ dm_InvList.vts — Инвентаризационная опись (доступен при использовании модуля "Аптека").