1С 8.x : Как сформировать отчет СКД без проверки прав (в привилегированном режиме)?
Что при разработке отчетов требуется чтобы у пользователя с ограниченными правами, отчет формировался полностью без проверки прав!
Особенно если настроен RLS
Есть несколько способов как это сделать:
1. Установить привилегированный режим в модуле отчета
Форма отчета должна быть Управляемой, далее в модуле отчета процедура обработчика «При компоновке результата»:
2. Формирование в привилегированном режиме через Общий модуль с галкой Привелигерованный
Создаем общий модуль
так же как в пункте 1 в обработчике «При компоновке результата» пишем:
В общем модуле МЕ_ДляОтчетаСКД_ПривелРежим код:
3. Если включен режим Использовать ограничение на уровне прав доступа - RLS
Часто используется в типовых. Тут в модуле для текущего пользователя можно на время формирования отчету установить параметр сеанса ИспользоватьОграниченияПравДоступаНаУровнеЗаписей в Ложь и RLS не сработает.
После завершения формирования, не забудьте включить rls обратно установив = Истина
4. Если в запросе используется конструкция вида регистратор.дата и это поле не отображается в полях отчета СКД
Допустим Вы сделали запрос по регистру накоплений и через регистратор обратились к дате или сумме документа и при формировании отчета СКД, эти поля недоступны !? как же быть?
Проблема в том - что у регистратором может выступать несколько документов и видимо права чтение/просмотр есть не на все - поэтому через скд эта таблица целиком недоступна, решение:
1. открыть доступ на все регистраторы регистра
2. в запросе четко обозначить тип
В дополнении у пункту 1, код процедуры сформировать отчет(). Для вывода отчета я использую шаблон All4CF.ru_Template_SKD_v4.1 в нем уже реализованы почти все необходимые функции и работает в Обычных и УП формах:
Microsoft SQL Server Native Client Добавление значения в столбец "datetime" привело к переполнению 2 При формировании отчета на СКД получили ошибку: Microsoft SQL Server Native Client 11.0: Добавление значения в столбец "datetime" привело к переполнению Подробнее текст такой: ... по причине:
Ошибка компоновки данных
по причине:
Ошибка получениАвтоматизация обмена данных используя обработку "Универсальный обмен данными в формате XML" 11 Автоматизация обмена между базами используя обработку " Универсальный обмен данными в формате XML"
В основу данной публикации положены найденные мною материалы по cозданию обмена между двумя базами с использованием обработки " Универсальный обмеАвтоматическая установка ширины колонки табличного документа. 0 Процедура, которая " примерно" делает автоширину колонок (навроде, как если бы выделить все колонки и дважды щелкнуть мышкой по границе заголовка колонки). Привожу текст, работает неахти, но лучше чем ничего:
Процедура РасчетШириныКолонок(ТабличныйВ отчет не попадают данные за последний день… Как исправить? 0 Пользователь выбрал период формирования отчета с 1июля по 31. Почему при формировании отчета в него не попадают данные за 31 число?
На самом деле, это одна из самых распространенных ошибок при разработке отчетов. В 1С 8.х дата содержит время с точноВнешние источники данных 0 Почему данная возможность вызывает такой интерес? Любой человек, который программировал в 1С при этом достаточно неплохо знаком с SQL и хотя бы в общих чертах знаком с архитектурой и принципами разработки других технологических платформ для бизнес прПосмотреть все результаты поиска похожих
Программный вывод отчета СКД 44 Несмотря на то, изучающие СКД встречаются с этим на первый или второй день, это должно быть в разделе FAQ. Простой пример программного вывода отчета на компоновке, использующий настройки по умолчанию.
//Получаем схему из макета
СхемаКомпоновкиДанныКонструктор схемы компоновки данных - Закладка Связи наборов данных 18 На этой закладке можно указать, какие осуществляются связи между двумя и более наборами дан-ных, по каким параметрам и условиям.
https://helpf.pro/uploads/img/sukpd038.png
1. «Источник связи» - указывается первый набор данных, от которого осущеСвоя функция в вычисляемых полях СКД 13 В вычисляемых полях СКД можно использовать свои функции расчетов!
для этого необходимо добавить экспорнутю функцию в общий модуль :
Функция МояФункцияДляСКД(ТекЗнач) Экспорт
//... какая-либо обработка ТекЗнач
Возврат ТекЗнач;
КонецФункции
В сКак программно сформировать отчет СКД указав параметры и на выходе получить таблице значений? 13 В одном документе для расчета потребовалось получать данные из отчета на СКД, реализовал следующим образом: //Програмное формирование отчета СКД
СхемаОст = Отчеты.ТоннажПоЭкспедиторам.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
КомпоновщикНКак программно Установить значения Параметров для отчета СКД? 12 Например у отчет есть следующие параметры:
https://helpf.pro/uploads/img/_1-Y5W1VtN5sO.png
Программно их задать можно следующим образом:
//Последовательно, начиная с 0 задаем значения параметров: ( НачПериода это 0 элемент, КонПериода - 1, ВыбНалПосмотреть все в категории Схема Компоновки Данных