====== Генерація номерів угод ======
Починаючи з релізу 1.1.9 доступна базова підтримка генерації номеру договору абонента згідно шаблону. Це все працює тільки за умови увімкненої опції [[alteriniconf|alter.ini]] **CONTRACT_AUTOGEN** \\
Регулюється двома власними параметрами **alter.ini**:
;Рядок шаблону для створення номеру угоди.
CONTRACT_GEN_TEMPLATE=""
;Визначає положення нулів (ведучих або замикаючих) у договорі, створеному відповідно до CONTRACT_GEN_TEMPLATE
CONTRACT_GEN_TEMPLATE_LEADING_ZEROES=1
===== Трохи про принципи роботи цієї штуки =====
Ще раз повторимося, що це все працює тільки з включеною опцією **CONTRACT_AUTOGEN**. \\
Далі - мається на увазі, що угода може мати 3 частини:
* перша - «до номерної частини»
* друга - власне є «номерною частиною»
* третя - «після номерної частини»
Приймаємо як даність, що перша і третя частини в нас статичні, в той час як друга (номерна) частина - змінюється, представляючи собою, власне, порядковий номер угоди
та **виглядає так** (наявність пробілів між числами та комою/фігурними дужками - **не допускаєтся**):
{6,22}
* де 1-е число містить загальну довжину бажаної номерної частини (6 у прикладі вище)
* а 2-е число представляє собою початковий номер для самого першого згенерованого договору (22 у прикладі вище)
Наявність обох частин номерного шаблону - **обов'язкова**, так як хоча другий параметр і використовується лише один раз - він дуже важливий для, власне, початку процесу генерації угод. \\
В той же час - наявність будь-якої із //статичних// частин - не обов'язкова від слова зовсім.
===== Приклади =====
Ctrct{5,1}D
- буде перетворено в «**Ctrct00001D**», якщо //CONTRACT_GEN_TEMPLATE_LEADING_ZEROES// увімкнено або в «**Ctrct10000D**», якщо //CONTRACT_GEN_TEMPLATE_LEADING_ZEROES// вимкнено
{6,22}
- буде перетворено на «**000022**» або в «**220000**» відповідно до значення //CONTRACT_GEN_TEMPLATE_LEADING_ZEROES//.