Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования (Linus Torvalds).
Показаны сообщения с ярлыком СКД. Показать все сообщения
Показаны сообщения с ярлыком СКД. Показать все сообщения
среда, 23 апреля 2014 г.
понедельник, 24 марта 2014 г.
У пользователя недостаточно прав на исполнение операции над базой данных
Если при формировании отчета на СКД вы видите сообщение вроде этого:
Ошибка выполнения отчета
по причине:
Ошибка исполнения отчета
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
Ошибка выполнения запроса
по причине:
У пользователя недостаточно прав на исполнение операции над базой данных.
по причине:
Ошибка исполнения отчета
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
Ошибка выполнения запроса
по причине:
У пользователя недостаточно прав на исполнение операции над базой данных.
четверг, 6 марта 2014 г.
Сохранение параметров и отборов при изменении варианта отчет (толстый клиент)
Как мы знаем, при изменении варианта отчета в СКД, происходит и замена всех его настроек, включая параметры, отборы. Это не очень удобно, т.к. при каждом изменении нужно будет вводить его параметры и отборы вручную. Чтобы выполнить сохранение настроек параметров и отборов при изменении варианта отчета напишем несколько нехитрых строк кода. В качестве примера будет взят ШаблонСКД.epf и в нем доработано сохранение параметров и отборов.
суббота, 21 декабря 2013 г.
Сохранение/восстановление отборов СКД в регистр "Сохраненные настройки"
В продолжение статьи Выгрузка результата СКД в таблицу значений рассмотрим, как установить отбор для созданной нами СКД, а также сохранять и восстанавливать настройки отбора и периода.
Для сохранения будут использоваться стандартные процедуры, которые применяются в отчетах в толстом клиенте (регистр сведений "Сохраненные настройки").
1) Для начала добавим в обработку реквизит "НастройкаОтбора" - тип "Строка", неограниченной длины. В этом реквизите и будет храниться наш отбор. Сохранять отбор будем с помощью функции сохранения значений ЗначениеВСтрокуВнутр(), а восстанавливать - ЗначениеИзСтрокиВнутр().
Для сохранения будут использоваться стандартные процедуры, которые применяются в отчетах в толстом клиенте (регистр сведений "Сохраненные настройки").
1) Для начала добавим в обработку реквизит "НастройкаОтбора" - тип "Строка", неограниченной длины. В этом реквизите и будет храниться наш отбор. Сохранять отбор будем с помощью функции сохранения значений ЗначениеВСтрокуВнутр(), а восстанавливать - ЗначениеИзСтрокиВнутр().
понедельник, 16 декабря 2013 г.
Выгрузка результата СКД в таблицу значений
СКД - универсальный и гибкий механизм, который позволяет использовать отборы, создавать вычисляемые поля и еще много чего интересного. Большинство задач по получению данных решается через запросы, реже - построители запросов, которые позволяют использовать гибкие отборы, ну а я покажу на примере, как можно решить одну из таких задач, используя СКД.
Итак, приступим: есть некая обработка, в которой нужно заполнять табличную часть, к примеру, данными о продажах за выбранный период. Информация о продажах должна выводиться в табличную часть обработки.
1) Создадим новую обработку и назовем ее "ВыгрузкаСДКВТаблицуЗначений".
2) Добавим новую СКД - "ПродажиЗаПериод" и определим в ней новый набор данных - запрос.
Итак, приступим: есть некая обработка, в которой нужно заполнять табличную часть, к примеру, данными о продажах за выбранный период. Информация о продажах должна выводиться в табличную часть обработки.
1) Создадим новую обработку и назовем ее "ВыгрузкаСДКВТаблицуЗначений".
2) Добавим новую СКД - "ПродажиЗаПериод" и определим в ней новый набор данных - запрос.
четверг, 22 августа 2013 г.
Свернутые группировки при выводе отчета на СКД
По умолчанию отчеты на СКД выводятся с уже развернутыми группировками. Чтобы при выводе отчета группировки были свернуты нужно добавить следующий код в модуль отчета:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КомпоновщикМакет = Новый КомпоновщикМакетаКомпоновкиДанных;
Макет = КомпоновщикМакет.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(Макет, , ДанныеРасшифровки);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
//ДокументРезультат.ПоказатьУровеньГруппировокСтрок(2); //Уровень 3
//ДокументРезультат.ПоказатьУровеньГруппировокСтрок(1); //Уровень 2
ДокументРезультат.ПоказатьУровеньГруппировокСтрок(0); //Уровень 1
КонецПроцедуры
СтандартнаяОбработка = Ложь;
КомпоновщикМакет = Новый КомпоновщикМакетаКомпоновкиДанных;
Макет = КомпоновщикМакет.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(Макет, , ДанныеРасшифровки);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
//ДокументРезультат.ПоказатьУровеньГруппировокСтрок(2); //Уровень 3
//ДокументРезультат.ПоказатьУровеньГруппировокСтрок(1); //Уровень 2
ДокументРезультат.ПоказатьУровеньГруппировокСтрок(0); //Уровень 1
КонецПроцедуры
Создание простейшего отчета на СКД
СКД (система компоновки данных) - визуальное средство для построения и вывода отчетов, предназначенная для декларативного создания отчетов, т.е. создания отчетов без программирования.
Сделать простейший отчет можно буквально за 10-15 мин., чем мы собственно и займемся.
Для примера возьмем оборотный регистр накопления Закупки из конфигурации УНФ и построим отчет, который выводил бы информацию о количестве и сумме заказываемого товара в разрезе документа Заказ поставщику и номенклатуры.
1) Создадим внешний отчет - Информация о закупках.
2) Нажмем кнопку Открыть схему компоновки данных и создадим новую схему СКД.




