Сб, 20.12.2025, 08:07:35
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Консоль запросов. Параметр. Выражение СКД. Массив
yasnovidyashiiДата: Пн, 24.03.2025, 13:58:34 | Сообщение # 1
Полковник
Группа: Проверенные
Сообщений: 180
Репутация: 236
Статус: Оффлайн
Редактирую запрос компоновки данных. В компоновке есть параметр, для которого задано выражение, вызывающее функцию общего модуля, результатом выполнения которой является Массив. Для параметра установлен флаг "Доступен список значений".

В таком варианте сам отчет формируется корректно. Но если выполнить запрос в консоли запросов, то итоговым значением параметра является пустой список значений, что в корне меняет результат выполнения запроса.
Догадываюсь, если бы функция возвращала не Массив, а СписокЗначений, проблемы бы не возникло.
И все-таки для самой компоновки это ошибкой не является.

Прикрепления: 5034762.png (21.3 Kb)
 
tormozitДата: Пн, 24.03.2025, 14:21:13 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
Делай файл с примером, чтобы его можно было открыть в консоли компоновки и повторить проблему. Заодно и техническую информацию добавь.
 
yasnovidyashiiДата: Пн, 24.03.2025, 14:54:11 | Сообщение # 3
Полковник
Группа: Проверенные
Сообщений: 180
Репутация: 236
Статус: Оффлайн
Попробовал сделать простой пример и вижу, что мои предложения о причинах проблемы неверны.
Функция с результатом типа Массив в простом примере отрабатывает корректно, параметр получает итоговое значение.
От моей же изначальной компоновки толку мало в качестве примера. И функция там не типовая вызывается.
Еще подумаю...

 
yasnovidyashiiДата: Пн, 24.03.2025, 15:42:15 | Сообщение # 4
Полковник
Группа: Проверенные
Сообщений: 180
Репутация: 236
Статус: Оффлайн
Вроде получилось в относительно упрощенном виде повторить проблему.
Для этого необходимо в конфигурации создать модуль зти_Тестовый с одной функцией:


Код
Функция ТестоваяФункция(Список=Ложь) Экспорт
    
    Если Список Тогда
        Результат = Новый Массив;
        Результат.Добавить("Иванов");
        Результат.Добавить("Петров");
        Результат.Добавить("Сидоров");
    Иначе
        Результат = "Иванов";
    КонецЕсли;
    
    Возврат Результат;
    
КонецФункции

Отчет выбирает из регистра сведений все физлица с ФИО Иванов, Петров, Сидоров.
Реализовано это через параметр МассивФИО с выражением зти_Тестовый.ТестоваяФункция(Истина)

Текст запроса:

Код
ВЫБРАТЬ
    ФИОФизЛиц_СрезПоследнихТ.ФизЛицо КАК ФизЛицо
ИЗ
    РегистрСведений.ФИОФизЛиц.СрезПоследних({&ДатаОтчета},
        ) КАК ФИОФизЛиц_СрезПоследнихТ
ГДЕ
    ФИОФизЛиц_СрезПоследнихТ.Фамилия В (&МассивФИО)

Файл с примером для консоли компоновки приложил.

Прикрепления: 7119209.png (20.8 Kb) · testovyjotchet.dcf (9.0 Kb)
 
tormozitДата: Пн, 24.03.2025, 19:14:23 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
С первого взгляда проблема не касается структуры данных. Поэтому желательно бы тест без связи с реквизитами данных.
В идеале нужна выгрузка базы, которую я разверну, запущу и сразу получу повтор проблемы.
 
yasnovidyashiiДата: Вт, 25.03.2025, 09:00:50 | Сообщение # 6
Полковник
Группа: Проверенные
Сообщений: 180
Репутация: 236
Статус: Оффлайн
Цитата tormozit ()
С первого взгляда проблема не касается структуры данных. Поэтому желательно бы тест без связи с реквизитами данных.В идеале нужна выгрузка базы, которую я разверну, запущу и сразу получу повтор проблемы.

От структуры данных отвязал.
Выгрузка во вложения на форуме не влезла, удалять из нее расширение ИР не стал,
поэтому залил на Яндекс.Диск вместе с актуальной компоновкой: https://disk.yandex.ru/d/5GngpzpndgCquw
 
tormozitДата: Вт, 25.03.2025, 19:16:05 | Сообщение # 7
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
Ошибку воспроизвел https://www.hostedredmine.com/issues/1003533
 
tormozitДата: Пн, 31.03.2025, 00:24:40 | Сообщение # 8
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
Исправлено в 7.72
 
  • Страница 1 из 1
  • 1
Поиск: