Исходный код вики Коммуникационный сервер

Версия 34.1 от Руслан Савельев на 2025/08/06 09:22

Последние авторы
1 == **1. Назначение** ==
2
3 Коммуникационный сервер версии 5 (далее СНК-КС5) – это распределённая система, предназначенная для обеспечения обмена данными в режиме реального времени между программными продуктами СНК: СНК-АЗС, СНК-Офис и СНК-ПЦ.
4
5 == **2. Запуск приложения** ==
6
7 Для запуска приложения используйте один из вариантов:
8
9 {{tabs idsToLabels="tabId1=Запуск ярлыка на рабочем столе, tabId2=Через интернет-браузер"/}}
10
11 (% id="tabId1" %)
12 (((
13 (% class="box" %)
14 (((
15 [[image:1753872619186-150.png||data-xwiki-image-style-alignment="start"]]
16 )))
17 )))
18
19 (% id="tabId2" %)
20 (((
21 (% class="box" %)
22 (((
23 Наберите в браузере ##**localhost:8000**## //(указан порт по-умолчанию)//
24 )))
25 )))
26
27 (% class="box infomessage" %)
28 (((
29 **Перед запуском программы, КС должен быть установлен на ПК! (см. п. 6)**
30 )))
31
32 == **3. Интерфейс программы** ==
33
34 Программа открывается в браузере и состоит из следующих элементов:
35
36 * **Адресная строка** - в ней должен быть набран адрес КС //(на рисунке отмечено цифрой 1)//.
37 * **Индикатор состояния подключения** - показывает, есть ли связь с сервером обмена //(на рисунке отмечено цифрой 2)//.
38 * **Вкладки слева** - переключение между вкладками с входящими и исходящими пакетами //(на рисунке отмечено цифрой 3)//.
39 * **Основное окно** - список пакетов в выбранной вкладке, а также настройки //(на рисунке отмечено цифрой 4)//.
40
41 [[image:1742373742661-488.png||data-xwiki-image-style-alignment="center" height="437" width="600"]]
42
43 == **4. Требования к ПО** ==
44
45 * «**СНК-КС**» - 5.2.0 и выше.
46 * «**СНК-АЗС**» - 1.37.37 и выше.
47 * «**СНК-Офис**» - 1.23.2 и выше.
48 * «**СНК-ПЦ**» - 1.113.30 и выше.
49 * Действующая лицензия «**СНК-КС**» на аппаратном или виртуальном HASP-ключе. Лицензия должна отображаться в программе «[[KeyInfo>>doc:Prilozheniia_SNK.SNK-AZS.Informatsiia_po_kliucham_HASP_SNK-AZS.WebHome]]»
50
51 == **5. Информация и структурная схема** ==
52
53 [[image:1742371332756-574.png||data-xwiki-image-style-alignment="center" height="528" width="700"]]
54
55 == **6. Установка СНК-КС-5** ==
56
57 === **6.1. Установка на стороне СНК-АЗС** ===
58
59 Установка СНК-КС5 выполняется при начальной инсталляции СНК-АЗС или при его обновлении, для этого необходимо в окне выбора продуктов для установки или обновления установить флажок «Коммуникационный сервер v5».
60 По умолчанию, каталог установки КС5 - ##.\SNC_AZS\exchange##
61
62 [[image:1744190452407-288.png||data-xwiki-image-style-alignment="center"]]
63
64 Если при установке или обновлении установить флажок «Создание ярлыков на рабочем столе», то на рабочем столе появится ярлык «КС СНК АЗС», который будет запускать веб-интерфейс СНК-КС5 (##http:~/~/localhost:8000/##):
65
66 [[image:1744190595783-589.png||data-xwiki-image-style-alignment="center"]]
67
68 === **6.2. На стороне СНК-ПЦ, СНК-Офис, СНК-Офис онлайн** ===
69
70 Воспользуйтесь мастером установки СНК-КС5:
71
72 * Закройте все программы СНК-АЗС, СНК-ПЦ, СНК-Офис.
73 * Запустите установочный файл (##snc_cs_update_5_2_2.exe## или файл с более новой версией).
74 * Откроется окно мастера установки, нажмите кнопку «**Далее**».
75
76 [[image:1744190967012-923.png||data-xwiki-image-style-alignment="center"]]
77
78 * Следующее окно показывает список изменений для текущей версии программы, нажмите кнопку «**Далее**».
79
80 [[image:1744191021599-382.png||data-xwiki-image-style-alignment="center"]]
81
82 * В следующем окне выберите, для какой программы нужно установить КС 5 (СНК-ПЦ, СНК-Офис или СНК-Офис онлайн)
83 * Отметьте флажок установки сервера NATS, если он еще не был установлен.
84 * После выбора компонентов нажмите кнопку «**Далее**».
85
86 (% class="box infomessage" %)
87 (((
88 **ПК, на который устанавливается сервер NATS должен иметь статический IP-адрес!**
89
90 Этот адрес нужно указывать при настройке КС во всех программах. Параметр **##nats.host##**
91 )))
92
93 [[image:1744191487368-234.png||data-xwiki-image-style-alignment="center"]]
94
95 * Выберите папку для установки СНК-КС и нажмите кнопку «**Далее**».
96
97 [[image:1744191540621-656.png||data-xwiki-image-style-alignment="center"]]
98
99 == **7. Настройка параметров КС 5** ==
100
101 Указанные параметры настраиваются в каждом установленном КС (например, если используется КС для СНК-АЗС и КС для СНК-Офис, нужно настроить оба КС)
102
103 === **7.1. Используя конфигурационный файл** ===
104
105 Параметры настройки КС 5 сохранены в файле **##.\exchange\SncExchServer.cfg##**
106
107 Описание параметров:
108
109 * **abonent.id** – ID абонента (код абонента, для которого установлен КС5)
110 * **archive.inbox.depth** – Глубина хранения входящих пакетов, дней.
111 * **archive.outbox.depth** – Глубина хранения исходящих пакетов, дней.
112 * **archive.packet.disable** – Отключить сохранение пакетов в архив (true), сохранять – false
113 * **auth.token** – Токен, используется одинаковый токен для всех абонентов.
114 * **http.port** – Порт для обмена с ПО СНК (Бэк-офис, СНК-Офис, СНК-ПЦ). Этот же порт используется для запуска веб-интерфейса в браузере (порт по умолчанию - 8000)
115 * **nats.host** – IP адрес и порт сервера NATS. (порт по умолчанию - 7654)
116 * **nats.timeout** – таймаут обращения к серверу NATS, мс.
117
118 **Для изменения параметров** необходимо:
119
120 * **остановить службу** КС 5, (см. раздел «Службы»).
121 * **изменить и сохранить параметры** в файле.
122 * **запустить службу** КС 5, (см. раздел «Службы»).
123
124 === **7.2. Используя веб-интерфейс** ===
125
126 Воспользуйтесь ярлыком «**КС СНК АЗС**» на рабочем столе или наберите в браузере ##**localhost:8000**##
127
128 * Перейдите на страницу «Настройки», доступные параметры:
129 ** **ID абонента** - код абонента, для которого установлен КС5 (параметр ##abonent.id ##в файле ##SncExchServer.cfg##)
130 ** **Глубина хранения входящих пакетов, дней** – сколько дней хранить входящие пакеты (параметр ##archive.inbox.depth ##в файле ##SncExchServer.cfg##)
131 ** **Глубина хранения исходящих пакетов, дней** – сколько дней хранить исходящие пакеты (параметр ##archive.outbox.depth ##в файле ##SncExchServer.cfg##)
132 ** **Не сохранять пакеты в архив** – отметьте флажок, чтобы не хранить архивы пакетов (параметр ##archive.packet.disable ##в файле ##SncExchServer.cfg##)
133 ** **Токен **– значение токена должно совпадать у всех абонентов, участвующих в обмене (параметр ##auth.token ##в файле ##SncExchServer.cfg##)
134 ** **Строка подключения** – IP адрес и порт сервера NATS (параметр ##nats.host ##в файле ##SncExchServer.cfg##)
135 ** **Таймаут, мс.** – таймаут обращения к серверу NATS (параметр ##nats.timeout ##в файле ##SncExchServer.cfg##)
136 * Нажмите кнопку «**Сохранить**» после изменения настроек.
137
138 [[image:1742374859311-606.png||data-xwiki-image-style-alignment="center" height="355" width="600"]]
139
140 == **8. Настройка СНК-АЗС для работы с КС 5** ==
141
142 **{{id name="nastr_BO"/}}**
143
144 === **8.1. Настройка в программе «Бэк-Офис СНК-АЗС»** ===
145
146 В «[[Бэк-Офис СНК-АЗС>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]» необходимо добавить список абонентов, с которыми будет совершаться обмен, настроить тип передаваемых и принимаемых данных для этих абонентов (СНК-Офис или СНК-ПЦ) и выбрать версию КС, используемую для обмена данными для каждого абонента (КС 4 или КС 5).
147
148 **8.1.1. Запуск окна настроек абонентов**
149
150 * Запустите «[[**Бэк-офис СНК-АЗС**>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]».
151 * В строке меню нажмите – «**Обработка**» - «**Обмен данными**» - «**Настройка списка абонентов»**.
152
153 [[image:1742375086353-686.png||data-xwiki-image-style-alignment="center" height="184" width="500"]]Откроется окно «**Абоненты**», здесь находится список абонентов, с которыми производится обмен данными.
154
155 **8.1.2. Описание параметров таблицы абонентов**
156
157 * **Код абонента** – код абонента, с которым производится обмен данными, код нельзя изменить у уже созданного абонента, его можно указать только при создании нового абонента.
158 * **Имя **– наименование абонента, не влияет на обмен, используется только для обозначения абонента в «Бэк-офисе».
159 * **Тип данных** – тип передаваемых абоненту данных («СНК-ПЦ» или «СНК-Офис»).
160 * **Версия КС** – версия КС, используемая абонентом для обмена данными («КС 4» или «КС 5»).
161
162 [[image:1742375171694-926.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**8.1.3. Настройка портов для связи «Бэк-Офиса» с КС**
163
164 * **Порт для КС 4** – порт, по которому «Бэк-офис» связывается с КС 4 (по умолчанию 6000).
165 * **Порт для КС 5** – порт, по которому «Бэк-офис» связывается с КС 5 (по умолчанию 8000).
166
167 Для запуска веб-интерфейса КС 5, можно воспользоваться кнопкой «**Открыть КС 5**».
168
169 (% class="box infomessage" %)
170 (((
171 **Внимание!**
172 В настройках КС 5 должен быть указан тот же номер порта, что и в «Бэк-офисе» (параметр ##http.port## в файле ##SncExchServer.cfg##).
173 )))
174
175 **8.1.4. Добавление абонента**
176
177 * В окне «**Абоненты**» нажмите правую кнопку мыши в любом свободном месте окна и выберите «**Добавить**».
178
179 [[image:1742375331377-333.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
180
181 * В строке «**Добавить абонента**» укажите код добавляемого абонента и нажмите кнопку «**ОК**».
182
183 [[image:1742375383319-279.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
184
185 В таблицу будет добавлена новая строка
186
187 * Заполните параметры **Имя**, **Тип данных**, **Версия КС** для созданного абонента (см. п. 6.1.2).
188
189 [[image:1742375454496-878.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**8.1.5. Удаление абонента**
190
191 * Нажмите правую кнопку мыши на строке с абонентом и выберите «**Удалить**»
192
193 [[image:1742375709359-919.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
194
195 === **8.2. Настройка конфигурационного файла СНК-АЗС** ===
196
197 Для работы «СНК-АЗС» с КС 5 необходимо настроить параметры в файле## .\SNC_AZS\backofficeapp\**bo_app.snc**##
198
199 (% class="box infomessage" %)
200 (((
201 **Внимание!**
202 Закройте все программы «СНК-АЗС» и «Бэк-Офис» перед внесением изменений!
203 )))
204
205 Описание параметров для настройки работы с КС 5:
206
207 * **TransactionOnOpenShift** – передавать данные по текущей открытой смене (0 - не передавать, **1 - передавать**)
208 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
209 * **ExchangeList** – список абонентов с которыми обменивается СНК-АЗС и формат данных для обмена, заполняется автоматически, при настройке абонентов в «Бэк-Офисе» (см. п. 6.1)
210 * **AutoReceiveData** – автоматический прием полученных в КС данных в «Бэк-Офис» (0 – автоматический прием выключен, **1 - включен**)
211 * **AutoSendData** – автоматически отправлять данные указанным абонентам в указанное время (-1,07:00;-1,08:00; (-1 – всем абонентам, 07:00 – время отправки данных))
212 * **SendOpenShift** – передача открытой смены в «СНК-Офис» (0 - не передавать, **1 - передавать**)
213 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port**)
214
215 == **9. Настройка СНК-Офис для работы с КС 5** ==
216
217 === **9.1. Настройка конфигурационного файла СНК-Офис** ===
218
219 Для работы «СНК-Офис» с КС 5 необходимо настроить параметры в файле ##.\SNC_OFFICE\**bo_app.ini**##
220
221 (% class="box infomessage" %)
222 (((
223 **Внимание!**
224 Закройте программу «СНК-Офис» перед внесением изменений!
225 )))
226
227 Описание параметров для настройки работы с КС 5:
228
229 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
230 * **AutoReceiveData** – автоматический прием полученных в КС данных (0 – автоматический прием выключен, **1 - включен**)
231 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port** из п.5.1) (**этот параметр нужно добавить, с номером порта, если его нет**)
232
233 === **9.2. Настройка формата передачи данных для ТО** ===
234
235 Для каждой ТО необходимо выбрать версию КС, используемую ТО для обмена данными. Для этого:
236
237 * Откройте раздел «**Справочники**».
238 * Выберите «**Точки обслуживания**»
239 * На нужной ТО нажмите правой кнопкой мыши и выберите «**Редактировать**»
240
241 [[image:1742376031179-997.png||data-xwiki-image-style-alignment="center" height="312" width="600"]]
242
243 Откроется окно «**Редактирование ТО**».
244
245 * Перейдите на вкладку «**Обмен данными**».
246 * В параметре «**Использовать СНК-КС**» выберите «**КС 5**».
247 * Нажмите кнопку «**ОК**» для сохранения параметров.
248
249 [[image:1742376080218-224.png||data-xwiki-image-style-alignment="center" height="440" width="350"]]
250
251 == **10. Настройка СНК-ПЦ для работы с КС 5** ==
252
253 В СНК-ПЦ зайдите в меню – «**Настройка**» – «**Конфигурация**».
254
255 В разделе «**Приписка проекта**» добавьте параметр «**IP-Адрес:порт Коммуникационного Сервера - 5**», для этого:
256
257 [[image:1742376299785-470.png||data-xwiki-image-style-alignment="center" height="333" width="700"]]
258
259 * Выберите заголовок проекта в конфигурации.
260 * Слева нажмите кнопку «**Экспорт**». Из выпавшего списка выберите «Импорт выборочных настроек (с пополнением)»
261
262 [[image:1742376339853-759.png||data-xwiki-image-style-alignment="center" height="332" width="700"]]
263
264 Откроется окно файлового проводника.
265
266 * Зайдите в каталог «**sncPC**» и выберите файл «**IP-Адрес и порт КС5**»
267 * Нажмите кнопку «**Открыть**»
268
269 [[image:1742376379869-231.png||data-xwiki-image-style-alignment="center" height="520" width="700"]]
270
271 * После добавления параметра укажите настройки КС5 в правом окне в строке «**Значение**» в формате ##ipv4:порт## (например ##localhost:8000##).
272 * Нажмите кнопку «**Принять**» и перезапустите ПЦ.
273 * После перезапуска ПЦ выберите в меню «**Справочники**» - «**Точки обслуживания**»
274
275 [[image:1742376449142-544.png||data-xwiki-image-style-alignment="center" height="353" width="700"]]
276
277 * Выберите нужную ТО и нажмите кнопку «**Ограничения**» слева.
278
279 [[image:1742376495608-296.png||data-xwiki-image-style-alignment="center" height="327" width="700"]]
280
281 * В открывшемся окне выберите строку «**Настройка**», и нажмите кнопку «**Значения**».
282
283 [[image:1742376541541-400.png||data-xwiki-image-style-alignment="center" height="256" width="700"]]
284
285 * В открывшемся окне раскройте раздел «Режим обмена данными», нажав на **+**.
286 * Флажок «**Обмен СНК-КС ?**» должен быть **убран**.
287 * Флажок «**Обмен СНК-КС 5?**» должен быть **установлен**.
288 * Нажмите кнопку «**Принять**»
289
290 [[image:1742376578109-329.png||data-xwiki-image-style-alignment="center" height="362" width="500"]]
291
292 == **11. Службы КС 5** ==
293
294 Существуют отдельные службы КС 5 для различных продуктов СНК:
295
296 * Для «**СНК-АЗС**» - «**СНК-Коммуникационный сервер v5**» (sncexchservice)
297 * Для «**СНК-Офис**» - «**СНК-Коммуникационный сервер v5 СНК-ОФИС**» (sncexchservice.1000)
298 * Для «**СНК-ПЦ**» - «**СНК-Коммуникационный сервер v5 СНК-ПЦ**» (sncexchservice.500)
299 * Для «**СНК-Офис Онлайн**» - «**СНК-ОФИС Онлайн прием КС v5**» (sncexchprocessor)
300 * **Служба сервера NATS** – «**СНК-Коммуникационный сервер v5 NATS**» (nats-server)
301
302 == **12. Описание каталогов обмена** ==
303
304 === **12.1. Каталоги обмена КС 5** ===
305
306 Каталоги обмена КС 5 находятся в папке ##**Data**## и сгруппированы по абонентам. Внутри папки ##**Data**## находится папка с номером абонента, в которой находится папка ##**Packet**##, в которой находятся папки обмена:
307
308 * ##**Cache**## – для работы с принимаемым в данный момент пакетом.
309 * ##**Inbox**## – для входящих пакетов, которые еще не приняты программами СНК.
310 * ##**InboxArchive**## – архив входящих пакетов, сюда перемещаются пакеты из папки Inbox после их принятия в программу СНК.
311 * ##**Outbox**## – для отправляемых в настоящее время пакетов.
312 * ##**OutboxArchive**## – архив исходящих пакетов, сюда перемещаются пакеты из папки Outbox после их отправки другому абоненту.
313
314 [[image:1742374549161-794.png||data-xwiki-image-style-alignment="center"]]
315
316 === **12.2. Каталоги обмена в программах СНК** ===
317
318 Каталоги обмена для «СНК-АЗС» находятся в папке **##SNC_AZS\backofficeapp##**.
319
320 Каталоги обмена для «СНК-Офис» находятся в папке **##SNC_OFFICE##**.
321
322 Описание каталогов:
323
324 * ##**OCIN**## – для входящих пакетов
325 * ##**OCIN_W**## – для входящих пакетов, переданных в формате «WIN»
326 * ##**OCIN_W.err**## – для входящих пакетов, переданных в формате «WIN», в процессе распаковки которых произошли ошибки
327 * ##**OCOUT_W**## – для исходящих пакетов, передаваемых в формате «WIN»
328
329