|
Планы обмена, не тот номер сообщения |
☑ |
0
fleant
21.02.17
✎
20:40
|
АААААА!!!! Спасайте!
Есть план обмена, при интерактивном вызове процедуры которая пишет/читает файл обмена -- всё хорошо.
Но когда эта же процедура вызывается из регламентного задания -- номер отправленного сообщения какой-то не тот.
Даже сделал запись в лог номера сообщения:
ЗаписьЖурналаРегистрации("Выполнение обмена", УровеньЖурналаРегистрации.Информация, Метаданные.ПланыОбмена.Обмен, , "Номер исходящего сообщения "+Строка(ЗаписьСообщения.НомерСообщения));
Пишет в лог строку: Номер исходящего сообщения 8 452
в файле:
<v8msg:MessageNo>8194</v8msg:MessageNo>
<v8msg:ReceivedNo>8430</v8msg:ReceivedNo>
в чём прикол? может кто-то сталкивался с подобным?
|
|
1
anatoly
21.02.17
✎
20:42
|
а ты раньше сталкивался с обменами?
есть номер записанного сообщения, есть номер принятого сообщения - они вовсе не обязательно совпадают. даже почти всегда разные.
советую покурить ЖКК по планам обмена.
|
|
2
Hans
21.02.17
✎
20:43
|
Файлы могут подтягиваться с разных мест. Т.е действительно разные файлы. Рег задание на сервере.
|
|
3
anatoly
21.02.17
✎
20:45
|
или еще - если последовательно запускаешь обмен из источника - но при этом не принимаешь сообщения в приемнике - то нет ответа из него какое сообщение принято - и да, будет полный разброд в номерах сообщений.
алгоритм простой: отправил - принял.
если отправил 10 раз - принял 1 раз - будет бардак в номерах.
|
|
4
fleant
21.02.17
✎
20:56
|
Смотрите, вот код:
Сообщение = Новый ЗаписьXML;
Сообщение.ОткрытьФайл(ИмяИсходящегоФайла);
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьСообщения.НачатьЗапись(Сообщение, Узел);
ЗаписьЖурналаРегистрации("Выполнение обмена", УровеньЖурналаРегистрации.Информация, Метаданные.ПланыОбмена.Обмен, ,"Номер исходящего сообщения "+Строка(ЗаписьСообщения.НомерСообщения));
ЗаписьСообщения.ЗакончитьЗапись();
Сообщение.Закрыть();
Если он вызывается из регламентного задания:
в лог пишется: Номер исходящего сообщения 8 452
в файл
<v8msg:MessageNo>8194</v8msg:MessageNo>
Причем: если этот же код вызвать кнопкой на форме -- всё в порядке, номера в логе и в файле совпадают.
Если смотреть сам узел плана обмена: номер сообщения 8452
|
|
5
fleant
21.02.17
✎
21:57
|
В общем, загадка.
Решил удаление плана обмена и заведением такого же с такими же номерами сообщений.
|
|