Исходный код вики Наборы шаблонов
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | (% class="lead" %) | ||
2 | Набор шаблонов содержит шаблоны идентификаторов и количество сертификатов. | ||
3 | |||
4 | Каждый сертификат может иметь несколько идентификаторов: номер, штрихкод, QR-код и три магнитные полосы. Набор шаблонов может содержать любые комбинации этих идентификаторов, но как минимум один обязательно должен быть задан. Также набор шаблонов ограничивает количество сертификатов, которые будут выпущены с данным набором идентификаторов. Это ограничение называется **емкостью набора**. | ||
5 | |||
6 | |(% style="border-color:white" %)[[image:attach:Labels_ru.png]]|(% style="border-color:white" %)((( | ||
7 | В разделе **Денежные сертификаты > Наборы шаблонов** отображаются все созданные в системе наборы шаблонов. Наборы шаблонов можно отфильтровать по **Названию**, **Состоянию **(архивные и неархивные), **Программе лояльности**, **Партнеру** и **Автору** (пользователю АРМ). | ||
8 | |||
9 | Набор шаблонов можно редактировать [[image:edit.PNG||width="30"]], только если он не добавлен ни в один из [[выпусков сертификатов>>doc:Main.Using.Gift_certificates.Gift_certificates_MMP.Certificate_orders.WebHome]]. Если набор шаблонов используется хотя бы в одном выпуске, можно просмотреть информацию [[image:view_info.PNG||width="30"]] об этом наборе. | ||
10 | |||
11 | Неархивный набор шаблонов можно отправить в архив [[image:archive.png||width="30"]], а архивный — восстановить из архива [[image:recover.png||width="30"]]. | ||
12 | |||
13 | Для создания нового набора шаблонов нажмите кнопку **Создать **вверху раздела. | ||
14 | ))) | ||
15 | |(% style="border-color:white" %){{lightbox image="05.png"/}}|(% style="border-color:white" %)((( | ||
16 | В окне создания нового набора шаблонов заполните следующие поля: | ||
17 | |||
18 | * **Название набора** шаблонов; | ||
19 | * **Программа лояльности**, в рамках которой предполагается использовать данный набор шаблонов; | ||
20 | * **Партнер**, для которого создается данный набор шаблонов; | ||
21 | * **Емкость набора** — количество сертификатов, которые можно сгенерировать по данному набору шаблонов. | ||
22 | |||
23 | Далее нажмите кнопку **Добавить шаблон** и выберите один или несколько [[идентификаторов>>doc:Main.Using.MMP.Configurations.Cash_identifiers.WebHome]]. Для каждого идентификатора в наборе необходимо указать шаблон, по которому будет происходить генерация значения идентификатора. | ||
24 | |||
25 | (% class="box infomessage" %) | ||
26 | ((( | ||
27 | **Внимание!** | ||
28 | |||
29 | * Обязательно следует заполнить поле **Номер**,** **иначе в разделе [[Сертфикаты>>doc:Main.Using.Gift_certificates.Gift_certificates_MMP.Certificates.WebHome]] поле **Идентификаторы** будет пустым. | ||
30 | * Денежный сертификат не привязан к конкретному клиенту, а злоумышленник может легко скопировать номер или штрихкод сертификата и предъявить его на кассе. Поэтому чтобы владение сертификатом было безопасным, списание с денежных сертификтов на кассах следует допускать только с магнитных дорожек, которые отличаются от основного номера карты. | ||
31 | ))) | ||
32 | |||
33 | В шаблоне используются специальные метапеременные. | ||
34 | |||
35 | Для генерации уникальных идентификаторов сертификатов в каждом шаблоне должны присутствовать обязательные метапеременные. Необязательные метапеременные могут использоваться по желанию. Порядок расстановки метапеременных в шаблоне не важен. Между ними могут использоваться любые знаки (//!"№;%:?*()_+-=//). | ||
36 | ))) | ||
37 | |||
38 | (% class="table-bordered" %) | ||
39 | |=Метапеременная|=Описание | ||
40 | (% class="active" %)|(% colspan="2" style="text-align:center" %)**Обязательные метапаременные** | ||
41 | |**$Emission.Id(<длина>)**|Подставляет идентификатор текущего [[выпуска сертификатов>>doc:Main.Using.Gift_certificates.Gift_certificates_MMP.Certificate_orders.WebHome]] и добавляет нули до указанной длины. Например, если Id=1, а длина = 5, то метапеременная вернет значение 00001. | ||
42 | |**$Emission.Counter()**|Значение генерируется счетчиком, уникальным в рамках [[выпуска сертификатов>>doc:Main.Using.Gift_certificates.Gift_certificates_MMP.Certificate_orders.WebHome]]. Длина значения рассчитывается автоматически, исходя из указанной емкости в наборе шаблонов. | ||
43 | (% class="active" %)|(% colspan="2" style="text-align:center" %)**Необязательные метапаременные** | ||
44 | |**$Emission.Number()**|((( | ||
45 | Данную метапеременную можно использовать, только если в наборе шаблонов уже задан шаблон для номера сертификата. Метапеременная возвращает значение, которое было сгенерировано для номера сертификата. Можно использовать также совместно с другими метапеременными. | ||
46 | |||
47 | Например, на основании шаблона для номера сертификата ##$Emission.Id(5)$Emission.Counter()## был сгенерирован номер 00001001. Если для штрихкода задан шаблон ##$Emission.Number()##, он вернет такое же значение 00001001. | ||
48 | |||
49 | Таким образом, метапаременную ##$Emission.Number()##// //можно использовать вместо комбинации ##$Emission.Id(5)$Emission.Counter()##// //во всех шаблонах, кроме шаблона для номера сертификата. | ||
50 | ))) | ||
51 | |**$Emission.Random(<длина>)**|Метапеременная добавляет к номеру случайное число. | ||
52 | |**$Emission.CheckDigitAlgorithm(Ean13/Luhn16)**|Добавляет контрольную цифру к номеру. В шаблоне необходимо указать один из типов контрольных цифр — ##Ean13## или ##Luhn16##. Метапеременную добавляют в конце шаблона. | ||
53 | |**$Emission.Number()**|Штрихкод денежного сертификата. | ||
54 | |**$Emission.Strip1()**|Первая магнитная дорожка денежного сертификата. Формирует значение по принципу: (% style="background-color:transparent" %)**{Number}^{Postfix}**, где:(%%)((( | ||
55 | * **Number** — номер сертификата | ||
56 | * **Postfix** — значение [[конфигурации>>doc:Main.Installation_and_configuration.System_configuration.Internal_settings.WebHome]] **Track1Postfix** | ||
57 | ))) | ||
58 | |**$Emission.Strip2()**|((( | ||
59 | Вторая магнитная дорожка денежного сертификата. Формирует значение по принципу **{Number}={Code}101{RandomNumber}**, где: | ||
60 | |||
61 | * **Number** — номер сертификата | ||
62 | * **Code** = (Year - 2000) * 100) + Month | ||
63 | ** **Year** = текущий год + 10 (например, если сейчас 2020 год, 2020+10=2030). | ||
64 | ** **Month** — текущий месяц, например, май — 5. | ||
65 | * **RandomNumber** — случайное число в диапазоне {10000000, 99999999} | ||
66 | ))) | ||
67 | |**$Emission.Strip3()**|Третья магнитная дорожка денежного сертификата. Формирует значение, копируя номер сертификата. | ||
68 | |||
69 | = Примеры шаблонов номеров денежных сертификатов = | ||
70 | |||
71 | ==== Емкость набора шаблонов — 5000 ==== | ||
72 | |||
73 | Для генерации 5000 сертификатов рекомендуем использовать шаблон вида **25$Emission.Id(2)$Emission.Counter()$Emission.Random(4)$Emission.CheckDigitAlgorithm(Ean13)**. | ||
74 | |||
75 | Пример номера сертификата с таким шаблоном: **2501000551854**, где: | ||
76 | |||
77 | * **25 **— начало номера; | ||
78 | * **01** — id выпуска сертификатов; | ||
79 | * **0005** — номер сертификата в выпуске; | ||
80 | * **5185** — случайное число; | ||
81 | * **4 **— контрольная цифра, раcсчитанная по алгоритму Ean13. | ||
82 | |||
83 | ==== Емкость набора шаблонов — 10000 ==== | ||
84 | |||
85 | Для 100000 сертификатов рекомендуем использовать шаблон вида **2599$Emission.Random(4)$Emission.Id(2)$Emission.Counter()$Emission.CheckDigitAlgorithm(Luhn16)**. | ||
86 | |||
87 | Пример номера сертификата с таким шаблоном: **2599138902000034**, где: | ||
88 | |||
89 | * **2599 **— начало номера; | ||
90 | * **1389 **— случайное число; | ||
91 | * **02 **— id выпуска сертификатов; | ||
92 | * **00003 **— номер сертификата в выпуске; | ||
93 | * **4** — контрольная цифра, раcсчитанная по алгоритму Luhn16. |