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