ПоказатьВопрос во внешней обработке с типом "ЗаполнениеОбъекта"

1. pyrkin_vanya 488 12.01.21 21:34 Сейчас в теме
Всем привет. Если объект изменен, то при нажатии на кнопку заполнения появляется стандартное окно записи объекта. Ту все нормально. Нажимаешь Записать и дальше если в обработке вызвать метод ПоказатьВопрос, то он показывается два раза. Как это победить?
Найденные решения
23. pyrkin_vanya 488 13.01.21 11:00 Сейчас в теме
Обновил до 2.4.13.103. Проблема ушла.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 12.01.21 21:44 Сейчас в теме
(1)
Как это победить?
Написать ПоказатьВопрос в правильном месте и с правильными условиями.
3. stein13 10 12.01.21 21:44 Сейчас в теме
Укажите конфигурацию, конфа дописана? очень мало информации. По сути, не взглянув код сказать что-то бесполезно
4. pyrkin_vanya 488 13.01.21 07:57 Сейчас в теме
(3)
1С:Комплексная автоматизация 2 (2.4.13.85)
1С:Предприятие 8.3 (8.3.18.1208)
Внешняя обработка. В модуле объекта прописано это
Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = Новый Структура;
	
	ПараметрыРегистрации.Вставить("Вид"            , "ЗаполнениеОбъекта");
	ПараметрыРегистрации.Вставить("Назначение"     , ПолучитьНазначениеОбработки());
	ПараметрыРегистрации.Вставить("Наименование"   , НСтр("ru = 'Заполнение объекта: Распределение по складам'"));
	ПараметрыРегистрации.Вставить("Версия"         , "1.0");
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
	ПараметрыРегистрации.Вставить("Информация"     , НСтр("ru = 'Распределение по складам'"));
	
	ТаблицаКоманд = ПолучитьТаблицуКоманд();
	
	ДобавитьКоманду(ТаблицаКоманд,
					НСтр("ru = 'Распределить по складам'"),
					"РаспределениеПоСкладам",
					"ВызовКлиентскогоМетода",
					Ложь);
	
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	
	Возврат ПараметрыРегистрации;
	
КонецФункции
Показать


Создана форма и в ней прописано следующее

&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт
	
	ОбъектНазначения = ОбъектыНазначенияМассив[0];
	
	ОписаниеОповещения = Новый ОписаниеОповещения("ВопросЗавершение", ЭтотОбъект, ОбъектНазначения);
	ПоказатьВопрос(ОписаниеОповещения, "Продолжить?", РежимДиалогаВопрос.ДаНет, 60);
	
КонецПроцедуры
Показать


Если объект записан, то показать вопрос отображается один раз. Если модифицирован, то стандартный функционал просит сначала записать объект, потом два раза показывает вопрос.
Прикрепленные файлы:
5. stein13 10 13.01.21 08:26 Сейчас в теме
1. Более правильней отладкой глянуть, почему он эту процедуру выполняет дважды.
2. Если не хочется заморачиваться отладкой, можно проверить модифицированность объекта. Т.е. если объект модифицирован он попадет в вашу процедуру только 1 раз.

Если Модифицированность = Ложь Тогда

ВыполнитьНашуПроцедуру();

КонецЕсли;
6. pyrkin_vanya 488 13.01.21 08:28 Сейчас в теме
(5) Я делал через сообщить.
Появлялось только 1 раз :).
7. stein13 10 13.01.21 08:30 Сейчас в теме
8. pyrkin_vanya 488 13.01.21 08:34 Сейчас в теме
(7)Хорошо. Вот только вопрос с то два раза появляется))
9. stein13 10 13.01.21 08:44 Сейчас в теме
саму обработку в студию! )
12. pyrkin_vanya 488 13.01.21 08:58 Сейчас в теме
10. SlavaKron 13.01.21 08:44 Сейчас в теме
11. pyrkin_vanya 488 13.01.21 08:56 Сейчас в теме
13. SlavaKron 13.01.21 09:18 Сейчас в теме
Запутанный случай. Проверил на БСП 3.1.3 – всё работает как надо, вопрос показывается один раз после записи документа.
14. pyrkin_vanya 488 13.01.21 09:20 Сейчас в теме
(13)Выше я прикрепил свою обработку. Можете проверить у себя. Что с ней не так? Или скиньте пример вашей, пожалуйста?
15. SlavaKron 13.01.21 09:21 Сейчас в теме
(14) Проверил и на вашей, убрав весь специфический код – на чистой БСП всё работает нормально.
16. pyrkin_vanya 488 13.01.21 09:22 Сейчас в теме
(15)Ну может тогда дело не в БСП, а в комплексной? Она полностью типовая.
18. SlavaKron 13.01.21 09:25 Сейчас в теме
(16) Возможно, что-то специфическое происходит при записи объекта в форме. Нужно отлаживать уже подключенную обработку.
17. pyrkin_vanya 488 13.01.21 09:25 Сейчас в теме
(15)Забавно. Проверил сейчас эту уже обработку на УТ 11. Появляется 1 раз :). Похоже какой-то глюк))
19. stein13 10 13.01.21 09:32 Сейчас в теме
тоже проверил на 2х версиях УТ и на разных платформах. Всегда появляется 1 раз.
20. pyrkin_vanya 488 13.01.21 09:40 Сейчас в теме
(19)Есть комплексная? Проверьте на ней. На УТ все норм.
21. stein13 10 13.01.21 10:06 Сейчас в теме
(20) проверил на КА 2.4.12.109. Тоже все норм. Может все таки проблема не в самом коде, а в кэше?
22. pyrkin_vanya 488 13.01.21 10:19 Сейчас в теме
(21)Нет. На моей версии появляется два раза. Попробую поставить последнее обновление чуть попозже.
23. pyrkin_vanya 488 13.01.21 11:00 Сейчас в теме
Обновил до 2.4.13.103. Проблема ушла.
Оставьте свое сообщение

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