|
Правила обмена и обработчик события "Поля поиска" | ☑ | ||
---|---|---|---|---|
0
PCcomCat
25.08.15
✎
09:46
|
Доброго времени, уважаемые!
Не могу понять, в чем дело? У объекта стоит поиск по уникальному идентификатору и продолжить поиск по полям. Установлены поля поиска и прописано в обработчике события "Поля поиска": Сообщить("Поиск"); Если НомерВариантаПоиска = 1 тогда Сообщить("1"); // алгоритм поиска СсылкиНаОбъект Иначе Сообщить("2"); СтрокаИменСвойствПоиска = "Дата, Номер"; КонецЕсли; При загрузке объекта свойство ОбъектНайден показывает Ложь. И при этом всем никаких моих сообщений не выводится, объект просто создается. По какой причине такое возможно? Подскажите, пожалуйста. |
|||
1
PLUT
25.08.15
✎
10:04
|
(0) объект создался с таким же уникальным идентификатором, поэтому до полей поиска и вариантов поиска не дошло
|
|||
2
PCcomCat
25.08.15
✎
10:06
|
(1) Почему он мог создаться без поиска? Куда копать?
|
|||
3
PLUT
25.08.15
✎
10:10
|
(2) потому-что
> У объекта стоит поиск по уникальному идентификатору и продолжить поиск по полям проверь в обеих базах УИДы у объектов - скорее всего одинаковые |
|||
4
PCcomCat
25.08.15
✎
10:13
|
(3) Объекта в базе не было. При загрузке вывожу сообщением ОбъектНайден, и выводится ЛОЖЬ. Т.е. объект создается при загрузке, но ума не приложу, почему же без поиска по полям? Туплю в общем.
|
|||
5
vtolga
25.08.15
✎
10:22
|
"СтрокаИменСвойствПоиска – строка в которой задаются ключевые поля варианта поиска. Могут быть указаны только те свойства, для которых при настройке правил обмена был выставлен флаг поиска."
А у тебя флаг поиска выставлен? |
|||
6
vtolga
25.08.15
✎
10:26
|
И еще - вот работающий пример.
Фишка в "СтрокаИменСвойствПоиска=Строка(НомерВариантаПоиска);" Это нужно, чтобы поиск повторялся по другим полям в случае неуспешного завершения предыдущего. Пример: Если СвойстваПоиска["ЭтоГруппа"] Тогда СтрокаИменСвойствПоиска="Наименование,ЭтоГруппа"; Иначе Если НомерВариантаПоиска=1 Тогда Если СвойстваПоиска["ИНН"]<>"" и СвойстваПоиска["КПП"]<>"" Тогда СтрокаИменСвойствПоиска="ИНН,КПП"; Иначе СтрокаИменСвойствПоиска=Строка(НомерВариантаПоиска); КонецЕсли; ИначеЕсли НомерВариантаПоиска=2 Тогда Если СвойстваПоиска["ИНН"]<>"" и СвойстваПоиска["КПП"]="" Тогда СтрокаИменСвойствПоиска="ИНН,НаименованиеСлужебное"; Иначе СтрокаИменСвойствПоиска=Строка(НомерВариантаПоиска); КонецЕсли; ИначеЕсли НомерВариантаПоиска=3 Тогда Если СвойстваПоиска["ИНН"]="" Тогда СтрокаИменСвойствПоиска="НаименованиеСлужебное"; Иначе СтрокаИменСвойствПоиска=Строка(НомерВариантаПоиска); КонецЕсли; КонецЕсли; КонецЕсли; |
|||
7
1C_OOLer
25.08.15
✎
10:27
|
(0) а что не логично? Объект был не найден и создался новый.
|
|||
8
PCcomCat
25.08.15
✎
10:29
|
(5) На полях поиска установлены флаги, но не заходит в обработчик "Поля поиска". Если ставлю не создавать новый объект, то он и не создается.
|
|||
9
PCcomCat
25.08.15
✎
10:30
|
(7) А мои "Сообщить" не должны выводиться?
|
|||
10
Гёдза
25.08.15
✎
10:31
|
Точно одно правило ПоляПоиска для данного типа приемника?
|
|||
11
PCcomCat
25.08.15
✎
10:33
|
(10) для связки "ПлатежноеПоручениеВходящее(Источник)-ПоступлениеНаРасчетныйСчет(Приемник)" одно.
|
|||
12
1C_OOLer
25.08.15
✎
10:35
|
Отладкой смотришь?
|
|||
13
PCcomCat
25.08.15
✎
10:36
|
(12) Нет. У меня ограниченное количество документов.
|
|||
14
1C_OOLer
25.08.15
✎
10:38
|
(13) Это как-то мешает запустить отладку?
|
|||
15
PCcomCat
25.08.15
✎
10:56
|
(14) Имя правила отладчик показывает именно то, с которым я работаю.
|
|||
16
1C_OOLer
25.08.15
✎
10:59
|
(15) Отладчик в сам обработчик заходит?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |