Новости экономики и финансов. Курсы валют, ситуация на биржах, акции, котировки, аналитика: 💫 💫 💫 💫 💫 читайте на сайте

1C Скд Пользовательский Отбор не Работает • Настройки отчета

при вызове типовой процедуры формирования отчета на СКД, система вызовет связанную СКД, которая в свою очередь попытается получить информацию в набор из базы данных, и выпадет в ошибку, ведь данные должны быть получены не из базы данных, а из объекта таблицы значений.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Поэтому решила использовать функцию под номером 2, что подключает нужный отчет обработку, который затем можно открыть по имени, возвращаемому данной функцией. Объектная Схема компоновки данных в 1С 8. х Обращайтесь в форму связи

1C Скд Пользовательский Отбор не Работает

Итак: «Объектная» СКД – что это и зачем вам надо ее использовать?

Схема компоновки данных (СКД) – очень мощный и развитый механизм 1С, позволяющий строить сложные отчеты с гибким механизмом построения результирующих форм, установки всевозможных отборов и т.д. на стороне пользователя.

Не каждый разработчик «любит» использовать в своей работе СКД. На это есть несколько понятных причин. Например,

  • Не каждый разработчик в совершенстве владеет всеми возможностями СКД, т.к. они на самом деле весьма обширны. В этом случае СКД выступает в виде «черного ящика», который у себя внутри делает неизвестно что.
  • Существует ряд отчетов, которые не взять одним запросом. Порой требуется написать несколько (до нескольких десятков) запросов и обработать каждый из них по своей особенной схеме, прежде чем получить данные пригодные для отчета. При этом сами выходные формы отчетов достаточно просты. Этим «славятся» отчеты для управленческого персонала, который хочет видеть «все и сразу».

Получается, СКД, достаточно мощный механизм, используется разработчиками преимущественно для написания отчетов с довольно простыми «запросными» выборками данных из базы и не сложными выходными формами.

Но не стоит забывать об «Объектной» компоновке! О СКД, в которой в качестве набора данных выступает объект – произвольная таблица значений. Тем самым, мы можем использовать всю гибкость настроек СКД на уровне пользователей (свободу построения выходных форм, произвольные отборы, настройки,…) и очень сложные нетиповые выборки в качестве источника данных!

Опишем основные нюансы (и порядок) работы с «объектной» компоновкой, на которые стоит обратить внимание при разработке сложных отчетов.

ВНИМАНИЕ: все приведенные листинги написаны на 8.1.

Раз в СКД в качестве источника данных выступает объект – произвольная таблица значений, следовательно, в отчете надо эту таблицу значений создать и заполнить. Таблица значений произвольная: данные в нее могут попадать из любых источников и произвольным образом (из запросов, таблиц базы данных), могут быть расчетные поля и т.д.

Для простоты дальнейшего изложения предположим, в отчете была создана таблица значений «ТаблицаЗначенийОтчета» с колонками «колонка1, колонка2, колонка3, …».

PROИТ: 1С 8.3 Как при помощи БСП программно открыть внешний отчет из Дополнительные отчеты и обработки и передать параметры
В следующих нескольких строках определяем список возможных действий расшифровки. В приведенном листинге, пользователю будут доступны все возможные действия:

1С скд отбор по вычисляемому полю –

Настройки СКД

Кратко опишем настройки СКД. Думаю, подробно заострять внимание на них не стоит.

В отчет добавляем новый макет типа «Схема компоновки данных».

В самой СКД в качестве набора данных добавляем набор данных «объект»

Какую часть дохода тратите на еду?
До 50%Больше 50%

Затем, ОБЯЗАТЕЛЬНО, необходимо указать имя объекта, содержащего данные. Имя объекта МОЖЕТ НЕ СОВПАДАТЬ с именем таблицы значений с данными, которую мы уже создали в отчете (см. п. 1).

Допустим, у нас, имя объекта, содержащего данные, будет «ОбъектСДанными».

Заполнение полей СКД. Обращаем ваше внимание, поля СКД можно задать (описать) в СКД сейчас, когда мы создаем СКД, а можно позже, программно. Для простоты, добавим все наши поля непосредственно в СКД.

ВАЖНО! Имена полей в объектной СКД должны совпадать с именами колонок таблицы значений источника: у нас поля будут иметь имена «колонка1, колонка2, колонка3, …», также, как в таблице значений «ТаблицаЗначенийОтчета».

Теперь осталось только указать ресурсы компоновки, настроить выходную форму, указать отборы (здесь мы подробно расписывать не будем, — предполагаем, что читатель знает как это делается).

Все, работа с макетом СКД закончена. Теперь необходимо каким-то образом передать СКД сформированную нами таблицу значений «ТаблицаЗначенийОтчета», по сути, установить связь между «ТаблицаЗначенийОтчета» и «ОбъектСДанными» компоновки. Это нужно делать в самом отчете.

Добавим в отчет процедуру, которая передаст нашу таблицу значений в компоновку и выведет отчет. Назовем эту процедуру «Печать»

В нашем примере (см. картинки выше) макет со схемой компоновки данных назывался «Макет». Обращаем ваше внимание, что используемый макет СКД не обязательно должен быть основным.

Обращаем ваше внимание, таблица значений «ТаблицаЗначенийОтчета» не передается в процедуру параметром, а является переменной или реквизитом формы отчета в целом.

Некоторые пояснения к макету компоновки. Здесь появляется еще одна переменная: «ДанныеРасшифровкиОтчета». Эта переменная также должна быть переменной формы. В нее СКД поместит информацию о расшифровке.

Вывод результата. В нашем примере в качестве таблицы для вывода результата используется поле табличного документа формы «Результат».

Горящие товары с бесплатной доставкой
 «AliExpress Россия» работает отдельно от глобального «AliExpress» принадлежащего Alibaba. Он не зависит от мировых банковских систем и не попал под санкционный список со стороны США и Великобритании. Из Китая соответственно тоже можно заказывать ничего не опасаясь.

Существует более другой, более простой, метод вывода не суммовых итогов в группировке, который можно использовать в некоторых случаях.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Колонка Доступные значения позволяет указать доступные для выбора значения и ограничить выбор пользователя определёнными рамками. Как получить текст запроса из скд 1с Обращайтесь в форму связи

1C Скд Пользовательский Отбор не Работает

СКД 1С расшифровывается как Система Компоновки Данных. СКД 1С – это новый способ написания отчетов в 1С, который позволяет пользователю полностью настраивать отчет самостоятельно.

Минус СКД 1С в том, что его настройки достаточно сложны и не все пользователи усваивают их быстро.

Написание отчетов СКД требует умение работать с запросами в 1С, что мы обсуждали в уроке по запросам 1С.

Пользователю остается возможность изменить множество настроек по своему желанию.

Какова технология создания отчета по предыдущим технологиям:

  • Написать запрос в программе 1С
  • Разработать форму настроек (уникальную для отчета), которая позволит изменять только выбранные программистом N настроек
  • Написать код (программу) выполнения запроса и построения печатной формы отчета.

Как Вы видите, СКД 1С имеет значительное преимущество как для пользователя, так и для программиста:

Во всех новых конфигурациях 1С все отчеты будут использованы только на СКД 1С.

Давайте посмотрим как создать отчет на СКД 1С самому с нуля.

В конфигураторе нажмите кнопку нового файла (меню Файл/Новый).

Будет создан новый отчет. Введем наименование – без пробелов для конфигурации, синоним для пользователя.

Источников данных для СКД 1С может быть множество. Чтобы использовать, например, два отдельных запроса – добавьте сначала «Набор данных – объединение», а потом несколько запросов.

В нашем примере мы будем использовать простой запрос.

Работа с конструктором запроса ничем не отличается от обычной, мы обсуждали это в уроке по запросам 1С.

В результате формирования запроса, СКД 1С создаст список доступных к использованию полей и заполнит им по умолчанию наименования.

Если наименование неудобное, здесь его можно изменить.

Обратите внимание, что мы использовали в запросе параметр &ДатаНачала. В СКД 1С есть параметр (дата) по умолчанию с названием &Период и Вы можете использовать его.

Причем указывать его в запросе прямо не надо – он будет использован автоматически. Однако есть тонкость – он применяется ко всем таблицам, включая левые соединения и прочее, что может рождать ошибки.

Например, Вы получаете остатки на начало месяца, а левым соединением получаете данные на сегодня. При использовании Период будет применен ко всем таблицам одинаково и запрос будет работать неверно.

Поэтому часто &Период запрещают (см. далее), а вместо него используют собственный параметр, как мы сделали это сейчас.

На закладке Ресурсы укажем те поля, которые будут суммироваться для итогов (т.е. цифры). У полей можно указать функцию суммирования. По умолчанию это Сумма (т.е. суммировать цифры из всех строк и получить итого), а можно использовать Среднее, Количество, Максимум и т.п.

На закладке Параметры запретим ненужные нам, и включим нужные. Здесь же можно задать человеческое название параметра.

1С скд заголовок поля – ПК портал

  • Начинаем настройку
  • Выводим данные в таблицу
  • Какие поля, полученные запросом, мы планируем показывать в таблице? В нашем примере это все поля.
  • Группировка строк. Можно сделать по строкам и по колонкам. Для иерархических справочников можно разрешить использование иерархии (чтобы показывал не только элемент, но и группу в которой он находится).
  • Сортировка
  • Результат настройки СКД 1С выглядит в следующем виде. Далее мы посмотрим, как пользователь может настраивать самостоятельно наш отчет СКД 1С.

💥Принимайте участие в опросе и получайте бесплатную консультацию

Related posts

Добавить комментарий

*