Сообщения о ненайденом обьекте

1. Гость 23.06.14 10:38
Выгружаем 1 документ на которые идет полно ссылок других документов справочников и т.д.
Правило обмена наипростейшее.
Подскажите что нужно сделать если у связанных ссылок в приемнике не найден обьект при загрузке данных, и об этом надо сообщить пользователю "Ссылка Поступление товаров №001 от 20.12.2013 не найдена"
Куда в какой обработчик нужно какой код написать?
Вознаграждение за ответ
Для передачи вознаграждения воспользуйтесь кнопкой "Отдать $m" в сообщении. Для возврата вознаграждения, отдайте его самому себе. Можно вознаграждение разделить между несколькими участниками. Не забывайте нажимать кнопку "Это решение", это повысит вашу репутацию.
Показать полностью
Найденные решения
15. ems_ 27.06.14 00:38 Сейчас в теме
В ПКО ФизическиеЛица в ПоляПоиска вставляешь следующий код:


СсылкаНаОбъект = НайтиЭлементПоСвойствамПоиска(ТипОбъекта, ИмяТипаОбъекта, СвойстваПоиска, СтруктураСвойств, 
    СтрокаИменСвойствПоиска, ПоискПоДатеНаРавенство);

ОбъектНайден = ЗначениеЗаполнено(СсылкаНаОбъект);

ПрекратитьПоиск = Истина;

Если не ОбъектНайден Тогда
    Сообщить("В справочнике Физ.лиц " + СвойстваПоиска["Наименование"] + " не найден!");
КонецЕсли;
Показать


P.S.: я проверила, у меня работает.
Neuroproton; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. _censored 23.06.14 11:02 Сейчас в теме
(1) Александр,
Правило конвертации объекта, обработчик ПриЗагрузке:
Если НЕ ОбъектНайден Тогда
	Сообщить("объект не найден");
КонецЕсли;
3. Гость 23.06.14 11:14
(2) _censored, надо какой именно обьект что бы можно было вручную посмотреть что не загрузилось, сравнить в 2 базах и подправить ручками
4. _censored 23.06.14 11:27 Сейчас в теме
(3) Александр,

Попробуй так
Если НЕ ОбъектНайден Тогда
    Сообщить("объект " + Объект + " не найден");
КонецЕсли;
5. Гость 23.06.14 12:38
(4) _censored, не пишет при загрузке. И ссылки не находит
6. adva 45 23.06.14 13:29 Сейчас в теме
Не понятно, что требуется, можно на примере с доками, и для каких доков требуются сообщения
7. Гость 23.06.14 13:47
Пример то простой. Документ "Отражение в зарплате" выгружается из источника в приемник. Допустим в обмене учавствует Справочник Физлица. Правила настроены так что бы обьекты если найдены- не замещаются, если не найдены - не создавать новый. Так вот когда в приемнике по полям поиска обьект не найден - должно быть сообщение "КАКОЙ" обьект не найден
8. _censored 23.06.14 16:13 Сейчас в теме
(7) Александр,
Таак, получается проблема в том, что в момент загрузки неизвестно представление объекта в источнике.

В голову приходит 2 варианта решения проблемы:
1. В ПКО "ПослеЗагрузки" написать:
Если НЕ ОбъектНайден Тогда
    Сообщить("Ссылка Поступление товаров №" + Объект.Номер + " от " + Объект.Дата + " не найден");
КонецЕсли;


2. Добавить параметр "Представление" в ПКС объекта и в обработчик ПКС "ПриВыгрузке" установить значение представления объекта, которое потом будет показано юзеру, например:
Значение = Строка(Источник);


В ПКО "ПослеЗагрузки" написать
Если НЕ ОбъектНайден Тогда
    Сообщить("Объект " + ПараметрыОбъекта.Получить("Представление") + " не найден");
КонецЕсли;
13. Гость 26.06.14 11:36
(8) _censored,
Почему то В ПКО "ПослеЗагрузки" неписав это условие у меня никакого сообщение не выдается... В ПКО выставлены 4 сверху галочки "Загрузка данных"
Прописав без условия Сообщить(Объект) - сообщает что загружается
14. _censored 26.06.14 18:09 Сейчас в теме
(13) Александр,
4 флаг - не создавать новый объект в приемнике, если он НЕ найден
Я думаю, что если объект не найден, то до обработчика "ПослеЗагрузки" дело не доходит.
может убрать этот флаг и сделать "ПослеЗагрузки":

Если НЕ ОбъектНайден Тогда
    Сообщить(...);
    Отказ = Истина;
КонецЕсли;
18. гвость 05.08.14 15:22 Сейчас в теме
(14) _censored,

Всё правильно, так оно и есть, дело не доходит и до ПослеЗагрузки и до ПриЗагрузке, но вот прикол в том, что Отказ = Истина почему-то не отработал :)
9. Olga12 61 23.06.14 16:58 Сейчас в теме
(7)В этом примере надо писать в ПКО Справочника Физ лица в ПриЗагрузке

Если НЕ ОбъектНайден Тогда
    Сообщить("Объект не найден:" + Объект);
КонецЕсли;
11. artfa 58 23.06.14 23:20 Сейчас в теме
(7) Александр,
если не найдены - не создавать новый
а это зачем?
10. Bacemo 23.06.14 17:11 Сейчас в теме
Была почти аналогичная ситуация.
Я выполнял по 1 варианту, все получалось.
12. vervolf9 24.06.14 01:59 Сейчас в теме
В обработчике объекта "после загрузки" напишите проверку:
Если Объект.ДокументОснование.Пустая() Тогда
Сообщить("В документе не найден док. основание");
Конецесли;
15. ems_ 27.06.14 00:38 Сейчас в теме
В ПКО ФизическиеЛица в ПоляПоиска вставляешь следующий код:


СсылкаНаОбъект = НайтиЭлементПоСвойствамПоиска(ТипОбъекта, ИмяТипаОбъекта, СвойстваПоиска, СтруктураСвойств, 
    СтрокаИменСвойствПоиска, ПоискПоДатеНаРавенство);

ОбъектНайден = ЗначениеЗаполнено(СсылкаНаОбъект);

ПрекратитьПоиск = Истина;

Если не ОбъектНайден Тогда
    Сообщить("В справочнике Физ.лиц " + СвойстваПоиска["Наименование"] + " не найден!");
КонецЕсли;
Показать


P.S.: я проверила, у меня работает.
Neuroproton; +1 Ответить
16. Гость 30.06.14 10:45
(15) ems_, куда именно вставлять код?
17. ems_ 30.06.14 15:01 Сейчас в теме
Открываешь Правило конвертации объекта "Физичесие лица", там в обработчиках событий ищи вкладку между "После выгрузки" и "Перед загрузкой" под названием "Поля поиска".

Единственное фамилии будут повторяться столько раз сколько встретяться в документе.

можешь глянуть здесь обсуждается такой же вопрос:
http://infostart.ru/public/83491/
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот