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

Версия 32.1 от Руслан Савельев на 2025/08/06 05:10

Последние авторы
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 == **8.1. Настройка в программе «Бэк-Офис СНК-АЗС»** ==
143
144 В «[[Бэк-Офис СНК-АЗС>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]» необходимо добавить список абонентов, с которыми будет совершаться обмен, настроить тип передаваемых и принимаемых данных для этих абонентов (СНК-Офис или СНК-ПЦ) и выбрать версию КС, используемую для обмена данными для каждого абонента (КС 4 или КС 5).
145
146 **8.1.1. Запуск окна настроек абонентов**
147
148 * Запустите «[[**Бэк-офис СНК-АЗС**>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]».
149 * В строке меню нажмите – «**Обработка**» - «**Обмен данными**» - «**Настройка списка абонентов»**.
150
151 [[image:1742375086353-686.png||data-xwiki-image-style-alignment="center" height="184" width="500"]]Откроется окно «**Абоненты**», здесь находится список абонентов, с которыми производится обмен данными.
152
153 **8.1.2. Описание параметров таблицы абонентов**
154
155 * **Код абонента** – код абонента, с которым производится обмен данными, код нельзя изменить у уже созданного абонента, его можно указать только при создании нового абонента.
156 * **Имя **– наименование абонента, не влияет на обмен, используется только для обозначения абонента в «Бэк-офисе».
157 * **Тип данных** – тип передаваемых абоненту данных («СНК-ПЦ» или «СНК-Офис»).
158 * **Версия КС** – версия КС, используемая абонентом для обмена данными («КС 4» или «КС 5»).
159
160 [[image:1742375171694-926.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**8.1.3. Настройка портов для связи «Бэк-Офиса» с КС**
161
162 * **Порт для КС 4** – порт, по которому «Бэк-офис» связывается с КС 4 (по умолчанию 6000).
163 * **Порт для КС 5** – порт, по которому «Бэк-офис» связывается с КС 5 (по умолчанию 8000).
164
165 Для запуска веб-интерфейса КС 5, можно воспользоваться кнопкой «**Открыть КС 5**».
166
167 (% class="box infomessage" %)
168 (((
169 **Внимание!**
170 В настройках КС 5 должен быть указан тот же номер порта, что и в «Бэк-офисе» (параметр ##http.port## в файле ##SncExchServer.cfg##).
171 )))
172
173 **8.1.4. Добавление абонента**
174
175 * В окне «**Абоненты**» нажмите правую кнопку мыши в любом свободном месте окна и выберите «**Добавить**».
176
177 [[image:1742375331377-333.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
178
179 * В строке «**Добавить абонента**» укажите код добавляемого абонента и нажмите кнопку «**ОК**».
180
181 [[image:1742375383319-279.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
182
183 В таблицу будет добавлена новая строка
184
185 * Заполните параметры **Имя**, **Тип данных**, **Версия КС** для созданного абонента (см. п. 6.1.2).
186
187 [[image:1742375454496-878.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**8.1.5. Удаление абонента**
188
189 * Нажмите правую кнопку мыши на строке с абонентом и выберите «**Удалить**»
190
191 [[image:1742375709359-919.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
192
193 == **8.2. Настройка конфигурационного файла СНК-АЗС** ==
194
195 Для работы «СНК-АЗС» с КС 5 необходимо настроить параметры в файле## .\SNC_AZS\backofficeapp\**bo_app.snc**##
196
197 (% class="box infomessage" %)
198 (((
199 **Внимание!**
200 Закройте все программы «СНК-АЗС» и «Бэк-Офис» перед внесением изменений!
201 )))
202
203 Описание параметров для настройки работы с КС 5:
204
205 * **TransactionOnOpenShift** – передавать данные по текущей открытой смене (0 - не передавать, **1 - передавать**)
206 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
207 * **ExchangeList** – список абонентов с которыми обменивается СНК-АЗС и формат данных для обмена, заполняется автоматически, при настройке абонентов в «Бэк-Офисе» (см. п. 6.1)
208 * **AutoReceiveData** – автоматический прием полученных в КС данных в «Бэк-Офис» (0 – автоматический прием выключен, **1 - включен**)
209 * **AutoSendData** – автоматически отправлять данные указанным абонентам в указанное время (-1,07:00;-1,08:00; (-1 – всем абонентам, 07:00 – время отправки данных))
210 * **SendOpenShift** – передача открытой смены в «СНК-Офис» (0 - не передавать, **1 - передавать**)
211 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port**)
212
213 = **9. Настройка СНК-Офис для работы с КС 5** =
214
215 == **9.1. Настройка конфигурационного файла СНК-Офис** ==
216
217 Для работы «СНК-Офис» с КС 5 необходимо настроить параметры в файле ##.\SNC_OFFICE\**bo_app.ini**##
218
219 (% class="box infomessage" %)
220 (((
221 **Внимание!**
222 Закройте программу «СНК-Офис» перед внесением изменений!
223 )))
224
225 Описание параметров для настройки работы с КС 5:
226
227 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
228 * **AutoReceiveData** – автоматический прием полученных в КС данных (0 – автоматический прием выключен, **1 - включен**)
229 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port** из п.5.1) (**этот параметр нужно добавить, с номером порта, если его нет**)
230
231 == **9.2. Настройка формата передачи данных для ТО** ==
232
233 Для каждой ТО необходимо выбрать версию КС, используемую ТО для обмена данными. Для этого:
234
235 * Откройте раздел «**Справочники**».
236 * Выберите «**Точки обслуживания**»
237 * На нужной ТО нажмите правой кнопкой мыши и выберите «**Редактировать**»
238
239 [[image:1742376031179-997.png||data-xwiki-image-style-alignment="center" height="312" width="600"]]
240
241 Откроется окно «**Редактирование ТО**».
242
243 * Перейдите на вкладку «**Обмен данными**».
244 * В параметре «**Использовать СНК-КС**» выберите «**КС 5**».
245 * Нажмите кнопку «**ОК**» для сохранения параметров.
246
247 [[image:1742376080218-224.png||data-xwiki-image-style-alignment="center" height="440" width="350"]]
248
249 = **10. Настройка СНК-ПЦ для работы с КС 5** =
250
251 В СНК-ПЦ зайдите в меню – «**Настройка**» – «**Конфигурация**».
252
253 В разделе «**Приписка проекта**» добавьте параметр «**IP-Адрес:порт Коммуникационного Сервера - 5**», для этого:
254
255 [[image:1742376299785-470.png||data-xwiki-image-style-alignment="center" height="333" width="700"]]
256
257 * Выберите заголовок проекта в конфигурации.
258 * Слева нажмите кнопку «**Экспорт**». Из выпавшего списка выберите «Импорт выборочных настроек (с пополнением)»
259
260 [[image:1742376339853-759.png||data-xwiki-image-style-alignment="center" height="332" width="700"]]
261
262 Откроется окно файлового проводника.
263
264 * Зайдите в каталог «**sncPC**» и выберите файл «**IP-Адрес и порт КС5**»
265 * Нажмите кнопку «**Открыть**»
266
267 [[image:1742376379869-231.png||data-xwiki-image-style-alignment="center" height="520" width="700"]]
268
269 * После добавления параметра укажите настройки КС5 в правом окне в строке «**Значение**» в формате ##ipv4:порт## (например ##localhost:8000##).
270 * Нажмите кнопку «**Принять**» и перезапустите ПЦ.
271 * После перезапуска ПЦ выберите в меню «**Справочники**» - «**Точки обслуживания**»
272
273 [[image:1742376449142-544.png||data-xwiki-image-style-alignment="center" height="353" width="700"]]
274
275 * Выберите нужную ТО и нажмите кнопку «**Ограничения**» слева.
276
277 [[image:1742376495608-296.png||data-xwiki-image-style-alignment="center" height="327" width="700"]]
278
279 * В открывшемся окне выберите строку «**Настройка**», и нажмите кнопку «**Значения**».
280
281 [[image:1742376541541-400.png||data-xwiki-image-style-alignment="center" height="256" width="700"]]
282
283 * В открывшемся окне раскройте раздел «Режим обмена данными», нажав на **+**.
284 * Флажок «**Обмен СНК-КС ?**» должен быть **убран**.
285 * Флажок «**Обмен СНК-КС 5?**» должен быть **установлен**.
286 * Нажмите кнопку «**Принять**»
287
288 [[image:1742376578109-329.png||data-xwiki-image-style-alignment="center" height="362" width="500"]]
289
290 = **11. Службы КС 5** =
291
292 Существуют отдельные службы КС 5 для различных продуктов СНК:
293
294 * Для «**СНК-АЗС**» - «**СНК-Коммуникационный сервер v5**» (sncexchservice)
295 * Для «**СНК-Офис**» - «**СНК-Коммуникационный сервер v5 СНК-ОФИС**» (sncexchservice.1000)
296 * Для «**СНК-ПЦ**» - «**СНК-Коммуникационный сервер v5 СНК-ПЦ**» (sncexchservice.500)
297 * Для «**СНК-Офис Онлайн**» - «**СНК-ОФИС Онлайн прием КС v5**» (sncexchprocessor)
298 * **Служба сервера NATS** – «**СНК-Коммуникационный сервер v5 NATS**» (nats-server)
299
300 = **12. Описание каталогов обмена** =
301
302 == **12.1. Каталоги обмена КС 5** ==
303
304 Каталоги обмена КС 5 находятся в папке ##**Data**## и сгруппированы по абонентам. Внутри папки ##**Data**## находится папка с номером абонента, в которой находится папка ##**Packet**##, в которой находятся папки обмена:
305
306 * ##**Cache**## – для работы с принимаемым в данный момент пакетом.
307 * ##**Inbox**## – для входящих пакетов, которые еще не приняты программами СНК.
308 * ##**InboxArchive**## – архив входящих пакетов, сюда перемещаются пакеты из папки Inbox после их принятия в программу СНК.
309 * ##**Outbox**## – для отправляемых в настоящее время пакетов.
310 * ##**OutboxArchive**## – архив исходящих пакетов, сюда перемещаются пакеты из папки Outbox после их отправки другому абоненту.
311
312 [[image:1742374549161-794.png||data-xwiki-image-style-alignment="center"]]
313
314 == **12.2. Каталоги обмена в программах СНК** ==
315
316 Каталоги обмена для «СНК-АЗС» находятся в папке **##SNC_AZS\backofficeapp##**.
317
318 Каталоги обмена для «СНК-Офис» находятся в папке **##SNC_OFFICE##**.
319
320 Описание каталогов:
321
322 * ##**OCIN**## – для входящих пакетов
323 * ##**OCIN_W**## – для входящих пакетов, переданных в формате «WIN»
324 * ##**OCIN_W.err**## – для входящих пакетов, переданных в формате «WIN», в процессе распаковки которых произошли ошибки
325 * ##**OCOUT_W**## – для исходящих пакетов, передаваемых в формате «WIN»
326
327