Не отрабатывает функция общего модуля в отчете СКД в клиент-серверной базе УТ 11
Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
Имеется база УТ 11.1.2.8 и внешний отчет на СКД. Часть полей рассчитываются функцией внешнего модуля. В файловой базе всё отлично отрабатывает, в клиент-серверной же отчет выводится, но без тех полей, которые рассчитываются этой самой функцией. Никаких ошибок при этом не возникает. Подскажите, как это победить?
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Смотри у общего модуля где он его процедуры и функции могут выполнятся. Смотри у расчетных функций место выполнения. Вполне возможно, что нужно в отчете прописать свои функции, которые будут просто вызывать из общего модуля и возвращать результат. Клиент-сервер он такой клиент-сервер...
(4) Выкладывайте скриншоты в формате PNG пожалуйста :-)
Я всегда думал, что можно исползовать только функции глобальных общих модулей
Выдержка из справки:
я одно время тоже хотел использовать функции из своего модуля - не прокатило
Я всегда думал, что можно исползовать только функции глобальных общих модулей
Выдержка из справки:
Функции общих модулей
Выражение механизма компоновки данных может содержать вызовы функций глобальных общих модулей конфигурации. Никакого дополнительно синтаксиса для вызова таких функций не требуется.
Пример:
СокращенноеНаименование(Документы.Ссылка, Документы.Дата, Документы.Номер)
В данном примере будет осуществлен вызов функции "СокращенноеНаименование" из общего модуля конфигурации.
Отметим, что использование функций общих модулей разрешено только при указании соответствующего параметра процессора компоновки данных.
Кроме того, функции общих модулей не могут быть использованы в выражениях пользовательских полей.
ПоказатьВыражение механизма компоновки данных может содержать вызовы функций глобальных общих модулей конфигурации. Никакого дополнительно синтаксиса для вызова таких функций не требуется.
Пример:
СокращенноеНаименование(Документы.Ссылка, Документы.Дата, Документы.Номер)
В данном примере будет осуществлен вызов функции "СокращенноеНаименование" из общего модуля конфигурации.
Отметим, что использование функций общих модулей разрешено только при указании соответствующего параметра процессора компоновки данных.
Кроме того, функции общих модулей не могут быть использованы в выражениях пользовательских полей.
я одно время тоже хотел использовать функции из своего модуля - не прокатило
Ещё уточнение, вывод отчета описан программно:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ТаблицаДанных = ПолучитьВнешнийНаборДанных();
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
ВнешнийНабор = Новый Структура("ТаблицаДанных", ТаблицаДанных);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешнийНабор, ДанныеРасшифровки, Истина);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
КонецПроцедуры
Показать
Собственно, проблема решилась, всем спасибо! Создал новый отчет и перекинул на него всё своё хозяйство и заработало. Так и не понял с чем это связано (кеш чистил - не помогало).
p.s. Даже не знаю кому отдать $m, может кто знает что за барабашка такая?
p.s. Даже не знаю кому отдать $m, может кто знает что за барабашка такая?
Если вывод отчета программно - нужно в явном виде выставлять флаг использования внешних функций.
ПроцессорКомпоновкиДанных.Инициализировать (DataCompositionProcessor.Initialize)
Синтаксис:
Инициализировать(<Макет>, <ВнешниеНаборыДанных>, <ДанныеРасшифровки>, <ВозможностьИспользованияВнешнихФункций>)
Синтаксис:
Инициализировать(<Макет>, <ВнешниеНаборыДанных>, <ДанныеРасшифровки>, <ВозможностьИспользованияВнешнихФункций>)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот