На сервере 1С:Предприятия произошла неисправимая ошибка. Приложение будет закрыто
Сделал тестовый отчет, ошибка в котором валит платформу 8.3.7.2027 и 8.3.9.2170. Просьба протестировать на других версиях.
Прикрепленные файлы:
По теме из базы знаний
- Как передать документ Word (ActiveDocument или ДвоичныеДанные) с сервера на клиент
- "Подводные камни" при работе с макетами типа ActiveDocument 1С 8.3 УФ. Клиент-Сервер. Режимы работы Тонкий, Веб клиенты
- Автоматическая классификация ошибок технологического журнала
- Неочевидный баг Истории данных, убивающий rphost
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)В модуле объекта строка 105:
Нужно поменять ПараметрСписокЗначений на ПараметрСписокЗначений.Значение
В СКД вы указали, что параметр имеет тип "Строка" а передаете "ЗначениеПараметраКомпоновкиДанных", поэтому и ошибка
Нужно поменять ПараметрСписокЗначений на ПараметрСписокЗначений.Значение
КомпоновкаДанныхКлиентСервер.УстановитьПараметр(
КомпоновщикНастроек.ПользовательскиеНастройки
, "СписокЗначений"
, ПараметрСписокЗначений.Значение);
В СКД вы указали, что параметр имеет тип "Строка" а передаете "ЗначениеПараметраКомпоновкиДанных", поэтому и ошибка
(3) все правильно, это я давно сделал. Проблема тут в неявном создании циклической ссылки. Поправил отчет, чтобы он не использовал глобальный модуль. Тестируйте.
Прикрепленные файлы:
ПадающийОтчет.erf
(4)Зачем тут это условие? Конечно вылетает, потому что идет бесконечный цикл из-за этого условия т.к. Переменная НеВыполнять не изменяется. Уберите ее и отчет сформируется.
//#Если НеВыполнять Тогда
//#Иначе
ПараметрСписокЗначений = ПолучитьПараметр(КомпоновщикНастроек, "СписокЗначений");
УстановитьПараметр(
КомпоновщикНастроек.ПользовательскиеНастройки
, "СписокЗначений"
, ПараметрСписокЗначений);
//#КонецЕсли
(6)
Для отладки. Это "лайфхак", чтобы не комментировать. Если удалить "#Иначе", то код выполняться не будет, если вставить, то будет. Короче переключатель. Никакого бесконечного цикла это не вызывает.
Я конечно оставил все как есть, это просто демонстрация того, как платформа НЕ ловит циклические ссылки, ровно как и отсутствие какой-либо защиты в БСП от этого.
(4)Зачем тут это условие?
Для отладки. Это "лайфхак", чтобы не комментировать. Если удалить "#Иначе", то код выполняться не будет, если вставить, то будет. Короче переключатель. Никакого бесконечного цикла это не вызывает.
Я конечно оставил все как есть, это просто демонстрация того, как платформа НЕ ловит циклические ссылки, ровно как и отсутствие какой-либо защиты в БСП от этого.
У меня при открытии ошибка уже
Ошибка инициализации модуля: ВнешнийОтчет.ПадающийОтчет.МодульОбъекта
по причине:
{ВнешнийОтчет.ПадающийОтчет.МодульОбъекта(101,30)}: Переменная не определена (КомпоновкаДанныхКлиентСервер)
ПараметрСписокЗначений = <<?>>КомпоновкаДанныхКлиентСервер.ПолучитьПараметр(КомпоновщикНастроек, "СписокЗначений");
{ВнешнийОтчет.ПадающийОтчет.МодульОбъекта(102,5)}: Переменная не определена (КомпоновкаДанныхКлиентСервер)
<<?>>КомпоновкаДанныхКлиентСервер.УстановитьПараметр(
Ошибка инициализации модуля: ВнешнийОтчет.ПадающийОтчет.МодульОбъекта
по причине:
{ВнешнийОтчет.ПадающийОтчет.МодульОбъекта(101,30)}: Переменная не определена (КомпоновкаДанныхКлиентСервер)
ПараметрСписокЗначений = <<?>>КомпоновкаДанныхКлиентСервер.ПолучитьПараметр(КомпоновщикНастроек, "СписокЗначений");
{ВнешнийОтчет.ПадающийОтчет.МодульОбъекта(102,5)}: Переменная не определена (КомпоновкаДанныхКлиентСервер)
<<?>>КомпоновкаДанныхКлиентСервер.УстановитьПараметр(
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот