Вход | Регистрация



Конвертация данных "Объект не найден"

Конвертация данных "Объект не найден"
Я
   Wirtuozzz_Х
 
29.08.18 - 14:45
При выгрузке в ПКО правила указываю:
1. Искать объект приемника по ГУИД
2. Продолжить поиск по полям поиска, если не нашли по гуид;
3. Не замещать существующие объекты;
4. Не создавать новый объект. если не найден. 

При выгрузке реквизита, установлен флаг:
ВыгрузитьОбъект = Истина;

Выгрузка происходит между двумя базами через план обмена. Не пойму откуда лезет этот объект не найден. Кто сможет подсказать куда посмотреть?
 
 
   Alexor
 
1 - 29.08.18 - 14:51
(0) Может это ссылка из другого объекта?
   Alexor
 
2 - 29.08.18 - 14:52
+1 Где выдает объект не найден? При выгрузке/загрузке. После загрузки сам объект или в объекте реквизит?
   Skylark
 
3 - 29.08.18 - 14:53
(0) Нам очень интересно и конвертацию данных мы любим, иначе за такое описание ты получил бы игнор
   Wirtuozzz_Х
 
4 - 29.08.18 - 14:57
(2) После загрузки данных через синхронизацию, захожу в документ, в реквизит подразделение установлено значение: Объект не найден.

(3) Не уловил месседж
   Optan
 
5 - 29.08.18 - 15:00
(0) эти пункты для ПКО правила ОБЪЕКТА который ты выгружаешь или ПКО РЕКВИЗИТА ОБЪЕКТА Подразделение??
   Optan
 
6 - 29.08.18 - 15:01
(5) + для реквизита Подразделение в ПКС указано правило?
   Wirtuozzz_Х
 
7 - 29.08.18 - 15:04
(5) 1. Искать объект приемника по ГУИД
2. Продолжить поиск по полям поиска, если не нашли по гуид;
3. Не замещать существующие объекты;
4. Не создавать новый объект. если не найден.  

Это для ПКО правила подразделения.

ВыгрузитьОбъект = Истина; это для ПКС реквизита подразделения из документа списание ДС с расчетного счета
   Wirtuozzz_Х
 
8 - 29.08.18 - 15:05
(6) да, правило для ПКС указано явно
   Optan
 
9 - 29.08.18 - 15:07
(7)
1. Получается что у тебя при выгрузке конкретного дока стоит подразделение = "Отдел1". Выгружается Guid и поля поиска -- ищется сначала по GUID потом по полям - соответствие не находится. Такого подразделения действительно нет в приемнике?
   elCust
 
10 - 29.08.18 - 15:09
(8) Если <объект не найден> есть, значит было событие добавление в справочник подразделение.

Поставь отладку в событии перед загрузкой и посмотри какие данные приходят при вызове.
 
 Рекламное место пустует
   Skylark
 
11 - 29.08.18 - 15:09
(3) Надо сразу писать (4) 
По (4) все сразу понятно, а по (0) неясно нифига
   Wirtuozzz_Х
 
12 - 29.08.18 - 15:13
(9) получается, что да.

(10) Уже смотрю. Курю загрузку, сейчас дошибу ее.
   Skylark
 
13 - 29.08.18 - 15:14
Предположение:

Ссылка на объект выгрузилась, а сам объект в базе приемнике отсутствует, поэтому и "объект не найден".
А в базе-приемнике объекта нет и не будет потому что "4. Не создавать новый объект. если не найден"
   Wirtuozzz_Х
 
14 - 29.08.18 - 15:14
(11) ну хоть поумничать дал возможность.
   Wirtuozzz_Х
 
15 - 29.08.18 - 15:15
(13) Как сделать, если выгрузилась ссылка, а объекта нет не было Объект не найден?

После загрузки
Если Объект.Подразделение.ПолучитьОбъект() = неопределено Тогда
Объект.Подразделение = Справочники.Подразделения.ПустаяСсылка(); 
КонецЕсли; 
?
   azt-yur
 
16 - 29.08.18 - 15:16
(0) через план обмена ссылочные объекты по умолчанию переносятся только ссылками и должны быть сами зарегистрированы к обмену.
Добавь в ПередВыгрузкой ПКО подразделения:
ТолькоПолучитьУзелСсылки = Ложь;
   Wirtuozzz_Х
 
17 - 29.08.18 - 15:21
(16) Можно и так, а мне кажется, что если косяк в моей логике.

Надо убрать кусок ВыгрузитьОбъект = Истина;
Ведь этот кусок не имеет смысла из-за ПКО Подразделения :

1. Искать объект приемника по ГУИД
2. Продолжить поиск по полям поиска, если не нашли по гуид;
3. Не замещать существующие объекты;
4. Не создавать новый объект. если не найден.
   Wirtuozzz_Х
 
18 - 29.08.18 - 15:22
Какой смысл что то выгружат, если я только ищу в базе и никогда ничего не будет создано в ней.
   Wirtuozzz_Х
 
19 - 29.08.18 - 15:22
Так ведь?
   Alexor
 
20 - 29.08.18 - 15:23
(18)  Цель то какая?
Если подразделение не найдено, пустую ссылку указать или подразделение должно создаться?
   Alexor
 
21 - 29.08.18 - 15:24
+20 Ну и глупый вопрос, поля поиска у подразделения указаны?
   azt-yur
 
22 - 29.08.18 - 15:30
(17) по поводу ВыгрузитьОбъект посмотри здесь:
Конвертация. Параметр ПКС "ВыгрузитьОбъект"

Похоже что этот параметр нерабочий, вместо него ВыгрузитьТолькоСсылку.

И скорей всего это используется для выгрузки через обработку Универсального обмена, хотя может и с планом обмена сработает, не проверял.
Как в (16) приходилось делать, выгружает при синхронизации полностью объект.
   Wirtuozzz_Х
 
23 - 29.08.18 - 15:33
(20) если подразделение не найдено, то должно остаться пустым.
   Wirtuozzz_Х
 
24 - 29.08.18 - 15:33
(21) Поля поиска указаны.
   azt-yur
 
25 - 29.08.18 - 15:35
(23) а ну тогда (15) должно сработать
   Skylark
 
26 - 29.08.18 - 15:36
(23) убери "Искать по ГУИД"
   Wirtuozzz_Х
 
27 - 29.08.18 - 15:37
(26) нельзя убирать искать по ГУИД, это нужное условие
   Skylark
 
28 - 29.08.18 - 15:38
(27) тогда (15)
напиши только покошернее, типа

Если НЕ ОбщегоНазначения.СсылкаСуществует(Объект.Подразделение) Тогда
   Wirtuozzz_Х
 
29 - 29.08.18 - 15:39
Круть, спасибо.
   MaxS
 
30 - 29.08.18 - 15:40
При выгрузке через планы обмена все попытки в конвертации установить какой-то флаг для выгрузки будут программно игнорироваться и переопределяться. Нужно выгрузить, регистрируй к обмену и всё.
   Wirtuozzz_Х
 
31 - 29.08.18 - 15:43
ТолькоПолучитьУзелСсылки = Истина; 
Решил вопрос вот так.
   Wirtuozzz_Х
 
32 - 29.08.18 - 15:55
(30) Жесть полная, ужас страшный. Отвратительный совет.
   Wirtuozzz_Х
 
33 - 29.08.18 - 15:57
(30) Да, ужас.
 
 


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует