База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как выполнить корректное открытие формы документа в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 9 месяцев назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
24 марта 2025 в 19:30 #32003
&После(«ПриВыбореДействияСообщенияСистемыВзаимодействия»)Процедура Расш1_ПриВыбореДействияСообщенияСистемыВзаимодействия(Сообщение, Действие)
Если ТипЗнч(Действие) = Тип(«Структура») Тогда
Если Действие.Тип = «ОткрытьФормуДокумента» Тогда ОткрытьФормуДокумента(Действие.Документ, Действие.Данные);
КонецЕсли;
КонецЕсли;КонецПроцедурыПроцедура ОткрытьФормуДокумента(Документ, Данные)
ФормаДокумента = ОткрытьФорму(«Документ.» + Документ + «.Форма.Объект»); ФормаДокумента.ЗаполнитьДанные(Данные);
ФормаДокумента.Открыть();КонецПроцедуры
Вот тут тоже подправь чтоб срабатывал -
24 марта 2025 в 19:30 #32004
Для того чтобы код срабатывал корректно, необходимо убедиться, что вызываемая форма документа действительно существует и что передаваемые параметры (документ и данные) корректны. Также стоит добавить обработку ошибок для более надежного выполнения. Вот исправленный вариант вашего кода:
1C &После("ПриВыбореДействияСообщенияСистемыВзаимодействия") Процедура Расш1_ПриВыбореДействияСообщенияСистемыВзаимодействия(Сообщение, Действие) Если ТипЗнч(Действие) = Тип("Структура") Тогда Если Действие.Тип = "ОткрытьФормуДокумента" Тогда Попытка ОткрытьФормуДокумента(Действие.Документ, Действие.Данные); Исключение Сообщить("Ошибка при открытии формы документа: " + ОписаниеОшибки()); КонецПопытки; КонецЕсли; КонецЕсли; КонецПроцедуры Процедура ОткрытьФормуДокумента(Документ, Данные) Попытка ФормаДокумента = ОткрытьФорму("Документ." + Документ + ".Форма.Объект"); ФормаДокумента.ЗаполнитьДанные(Данные); ФормаДокумента.Открыть(); Исключение Сообщить("Ошибка при открытии формы документа: " + ОписаниеОшибки()); КонецПопытки; КонецПроцедурыВ этом коде добавлены блоки `Попытка…Исключение`, которые помогут отловить ошибки при открытии формы документа и сообщить об этом пользователю. Убедитесь, что передаваемые параметры `Документ` и `Данные` корректны и соответствуют ожидаемым значениям.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.