|
Конвертация данных. Отмена записи объекта на этапе ПослеЗагрузки | ☑ | ||
---|---|---|---|---|
0
Ymryn
27.08.14
✎
10:45
|
Мое почтение. Собственно ситуация: Хочу выводить информацию о том, что объект с такими-такими свойствами не найден в базе после загрузки. Как следствие получить эти свойства могу только ПослеЗагрузки. Делаю проверку на ОбъектНайден и ставлю Отказ в Истина, если соответственно не найден. Но беда, объект все равно записывается, хоть и с пустыми полями (фактически записывается только сама ссылка/uid). Методом тыка нашел, что галочка "Не запоминать выгруженные объекты" практически решает проблему. Теперь создается только одна пустая ссылка. Хотелось бы узнать, а как можно еще избавиться и от неё (чтобы вообще ничего не создавалось)?
Загрузка идет в режиме обмена данных загрузка. Отменять его, как и вообще менять режимы загрузки не хочется, хочется решить вопрос настройками правил данных. |
|||
1
Ymryn
27.08.14
✎
10:46
|
(0) *правил обмена данными. Заговариваюсь.
|
|||
2
Ymryn
27.08.14
✎
10:58
|
(0) проверил один момент. При установленной галочке создается пустая ссылка на 1ый объект. Все остальные объекты не создаются. Каждая последующая загрузка, создает также по 1 объекту после первого и не создает оставшиеся. Пока что в упор, не понимаю, что происходит :(
|
|||
3
Ymryn
27.08.14
✎
10:59
|
(2) криво выразился, каждая последующая загрузка создает по 1 объекту из тех, что не были найдены в порядке очереди записи в файле.
|
|||
4
Ymryn
27.08.14
✎
11:11
|
Нашел нужную комбинацию галочек, благодарю всех посетивших тему за моральную поддержку. Благодаря вам у меня получилось.
|
|||
5
Поpyчик-4
27.08.14
✎
11:14
|
(4) Не за что, всегда рады.
Лучше в благодарность за моральную поддержку озвучь нужную комбинацию галочек |
|||
6
Ymryn
27.08.14
✎
11:18
|
(5) "При переносе объекта по ссылке НЕ создавать новый объект, а только переносить ссылку" решает проблему. Галочка "Не запоминать ..." не нужна. Соответственно, поиск и сопоставление в этом случае проходит успешно, а новые объекты не создаются.
|
|||
7
Ymryn
27.08.14
✎
11:21
|
(6) + естественно с условием вышеописанной проверки. Если Отказ в истину не поставить, то объекты вполне создаются.
|
|||
8
Aleksey
27.08.14
✎
11:24
|
Какая то каша...
Обработчики "Правила конвертации объектов" При загрузке Событие выполняется после попытки идентификации. В случае успешной синхронизации доступен найденный объект. В противном случае его значение Неопределено. Можно произвести произвольную инициализацию, заполняемого данными объекта. Параметры: ОбъектНайден - Булево. Если значение параметра равно Ложь, то объект не идентифицирован, то есть не найден в информационной базе Причем тут После загрузки? Непонятно |
|||
9
Aleksey
27.08.14
✎
11:26
|
И да в твоем случае галка называется "Не создавать новый объект в приемнике, если он НЕ найден"
|
|||
10
Ymryn
27.08.14
✎
11:29
|
(8) Потому что в ПриЗагрузке - Объект не заполнен данными загрузки. И мне нечего выводить пользователю. Также в ПриЗагрузке нету общей переменной Отказ (вот уж не знаю почему). Так что ПослеЗагрузки удобнее всего.
|
|||
11
Ymryn
27.08.14
✎
11:33
|
(9) указанная галочка отменяет заход в процедуру После загрузки, как следствие я не могу ничего сообщить пользователю, как следствие она не подходит.
|
|||
12
Aleksey
27.08.14
✎
11:37
|
(10) Чего? А параметр Объект на что?
(11) Ну тогда поля поиска, сам ищи сам и пиши, что "вай-вай не нашли" |
|||
13
Ymryn
27.08.14
✎
11:41
|
(12) А параметр Объект заполняется после обработчика ПриЗагрузке. Т.е если этот самый объект не найден, то он пустой.
В ПослеЗагрузки также доступен ОбъектНайден. Поэтому вполне хватает проверить, что в нем и установить Отказ. Проблема была именно в том, что объект все равно создавался. Описанная выше галочка решает и эту проблему. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |