Имя: Пароль:
1C
1С v8
Односторонний обмен УТ и БСО
0 Gossar1C
 
31.01.14
16:56
Здравствуйте! Возникла небольшая проблема при одностороннем обмене из УТ в БСО. БСО либо не отсылает квиток для УТ что она данные получила, либо УТ не отрабатывает его. Подскажите можно ли удалить непосредственно все изменения после каждого обмена? Пробовал в правилах для УТ в обработчике ПослеЗагрузкиДанных:

СамУзел = ПланыОбмена.ОбменУправлениеТорговлейБухгалтерияПредприятия.НайтиПоНаименованию("УзелДляОбмена");
ПланыОбмена.УдалитьРегистрациюИзменений(СамУзел);

Но видимо я неправильно размещаю данный фрагмент. Ведь событие ПослеЗагрузкиДанных отрабатывается в БСО получается? Вот он походу не находит узел. В правилах для БСО этот фрагмент скорее всего писать бесмысленно, ведь из БСО выгрузка отключена. Подскажите пожалуйста всетаки как же удалять регистрацию изменений?
1 vicof
 
31.01.14
16:59
Так ты отсылай квиток, не стесняйся.
2 Gossar1C
 
31.01.14
17:02
(1) так как его отсылать? выгрузка из БСО отключена и в ближайшее время не понадобится, но не совсем понятно... может ли этот квиток отсылаться только при одностороннем обмене, номер отправленного сообщения меняется
3 МойКодУныл
 
31.01.14
17:03
(0) ПослеЗагрузки исполняется в БСО.
В чем проблема отсылать обратно к о получении? Можешь в рег задании\обработке, которое инициирует обмен в конце написать, после записи файла обмена.
4 Gossar1C
 
31.01.14
17:11
(3) да вот проблема не могу понять высылает он его или нет, как я писал выше при одностороннем обмене. Осталось только найти где он его завершает :)
5 Gossar1C
 
31.01.14
17:17
(3) и еще загвоздка в том что я выполняю обмен из БСО
6 Gossar1C
 
31.01.14
17:20
мда как то мне неохота в БСО свои изменения вносить, как то не планировалось. А ведь получается если и писать ПослеЗаписиОбмена то только в обработке БСО? Ведь так?
7 МойКодУныл
 
31.01.14
17:21
Ничего не понял. Из БСО ты через COM(или как еще) коннектишься к базе УТ и там инициируешь выгрузку????
8 МойКодУныл
 
31.01.14
17:23
Обработчики "Конвертация"
После выгрузки данных
Условия возникновения события
Событие выполняется самым последним когда все данные уже помещены в файл обмена, но файл еще не закрыт для записи, и только один раз. Таким образом в файл могут быть записаны дополнительные произвольные данные. Кроме того могут быть инициализинованы переменные, которые впоследствии предполагается использовать.

Параметры:
Параметры - Структура, в которой хранятся переменные доступные во всех обработчиках

Пример:
Сообщить("Загрузка завершена.");

Вот что исполняется последним в базе источнике. Это если через правила - но чистить план обмена в этом обработчике, Нуралиев вам судья.
9 Gossar1C
 
31.01.14
17:25
(7) я из БСО через стандартную обработку синхронизации Выполняю загрузку из УТ, выгрузка отключена.
10 МойКодУныл
 
31.01.14
17:26
(9) не знаком я с вашими новомодностями. Она все равно должна к базе присоединиться как-то и что-то там запустить.
11 Gossar1C
 
31.01.14
17:28
(8) видимо у меня настолько древняя УТ 11.0.7.8 что там такого нету) обновлять не предлагать :) сильно дописана. И я могу ошибаться но если я обмен делаю из БСО то обработывается код также в бсо с подключением к базе источнику. Я могу ошибаться... Просто наш Бухгалтер хочет по кнопочке все делать прям у себя в базе
12 Gossar1C
 
31.01.14
17:39
(8) извиняюсь не прочитал что это в правилах, спасибо за подсказку
13 МойКодУныл
 
31.01.14
17:41
(12) :)
14 Gossar1C
 
31.01.14
17:47
(13) да все получилось регистрация удаляется, спасибо. И все же почему это так рискованно? Ведь если вдруг что регистрацию для объектов можно вручную через обработку задать, да муторно, но раз на раз не приходится)
15 МойКодУныл
 
31.01.14
17:48
(14) это называется гарантированная доставка. Типа не ждем ответа о приеме. Если вдруг не загрузится в БСО, то потом не узнаешь что надо грузить, ведь регистрации уже нет.
Придется весь период регистрировать.
16 Gossar1C
 
31.01.14
17:51
(15) ясно... спасибо