Имя: Пароль:
1C
1С v8
Попытка решить проблему не выгруженных объектов - КД2
0 Trance_1C
 
04.10.16
10:40
Речь идет об онлайн обмене между УПП1.3 и ЕРП, используются штатный механизм обмена и правила разработанные в КД2.
Ишу решение проблемы пустых объектов обнаруживающихся после загрузки в базе получателе в совершенно разных местах, тех что ссылочно указаны в загруженных объектах - документах и т.п.
Например - выгружается у нас реализация, в ней указан контрагент который еще не выгружен. Выгружать все ссылки рекурсивно получается очень медленно, не выгружать - документ заполняется некорректно и в большинстве случаев не проводится, приходится тратить время, разбираться, или подключать фоновые обработки после загрузки в получателе...
Что если перед выгрузкой обратиться с запросом к базе получателю (они на одном сервере) и проверить существуют там ссылочные объекты или нет, сравнить их?
Или если в получателе объект уже есть выгружать только ссылку, если нет то полностью.
Что скажет коллективный мистаразум? :)
1 polosov
 
04.10.16
10:46
(0) Используй планы обмена. Новые объекты регистрируй к обмену и обменивайся ими.
2 mistеr
 
04.10.16
10:55
(0) Почему бы не выгружать и контрагентов?
3 Trance_1C
 
05.10.16
02:51
Конечно, все реквизиты документа можно выгрузить рекурсивно, вслед за ним.
Сейчас выкрутился примерно таким способом - в параметры конвертации добавил массивы с выгруженными объектами и при выгрузке документа проверяю в массивах ссылки его реквизитов (контрагентов, статей ДДС, и т.п.). Если они выгружались во время текущего обмена то переносятся ссылки, если нет, выгружаются их объекты.
Но выходит что несколько раз в день может выгружаться один и тот-же контрагент даже если он не менялся.
Что тут можно придумать? может сохранять в РСВ время выгрузки объектов, чтобы выгружать одного контрагента, не чаще одного раза в день, например?
4 GenAcid
 
05.10.16
05:58
(0) "Выгружать все ссылки рекурсивно получается очень медленно" Не понятно в чем проблема. По умолчанию конвертация каждый ссылочный объект ищет один раз и кэширует его, в следующий раз используется уже готовая ссылка. Отключает этот механизм галка "Не запоминать выгруженные объекты", но она нужна в эксклюзивных случаях.
Если тормоза на этапе поиска - значит ищи по внутренним идентификаторам. Скорость будет теряться только при выгрузке объектов которых еще нет в базе.
5 Cyberhawk
 
05.10.16
09:15
Загружать нужно без флажка обработки обмена "Оптимизированная запись объектов", либо обеспечить разные ключи у объекта, выгружаемого по ссылке, и выгружаемого непосредственно с узла регистрации изменений
6 mistеr
 
05.10.16
16:51
(3) Ты не понял. Почему ВСЕХ контрагентов не хочешь выгружать по обмену?
7 Cyberhawk
 
05.10.16
20:04
Геморройщики, мда...
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший