Как сделать шахматку в скд

Добавил пользователь Евгений Кузнецов
Обновлено: 09.09.2024

Добрый день.
Есть регистр, в котором присутствует время начала процедуры, время окончания процедуры, ФИО сотрудника и ФИО клиента.
Вопрос:
как вывести шахматку со строками в виде время начала-время конца, столбцами с ФИО сотрудника и на пересечении получить ФИО клиента?
Попробовал через конструктор настроек - таблица, выбрал строки-столбцы-данные, но корректно строится табличка только в том случае, если поле на пересечеии содержит ресурс. В моём же случае это ФИО клиента, т.е. ссылка на справочник (ну или строка наименования).
Т.е. если я выбираю в Ресурсах ФИО клиента (количество) - всё прекрасно отображается, поскольку значение ячейки - ресурс. Но толку, увы, от такой таблицы маловато.

С означенным в (1) вопросом помогло вот это:
Написать в выражении ресурса
Строка(ВашРеквизитПредставление)
Но вылез еще один косяк - сотрудник в одно время может оказывать одновременно две услуги разным клиентам. Т.о. должны быть разные фамилии в один промежуток времени, а у меня всё забито одной.

(0) Уже боле чем 20-летний опыт работы с разными учетными системами и пользователями этих систем выявил полную ненужность всех видов шахматок при автоматизированном учете.
Они хороши при ручном учет и полностью не нужны при автоматизированном/компьютерном и т.д.
Хотя тут все упирается в конечного пользователя. Если он действительно знает свою работу, а не просто запомнил какую-то последовательность действий, то тесное общение с ним быстро его приводит к пониманию ненужности шахматок и наличию более быстрых и удобных средств выполнения его работы.
Ибо шахматка есть отчет сразу по двум разрезам, а в любой момент времени нужен отчет только по какому-то одному из этих двух разрезов. Который обычно легко делается и, к тому же, легко посещается на лист А4 и не несет кучу лишней на данный момент информации.
Короче, не надо тупо в компьютере копировать ручной учет и жизнь сразу заиграет новыми красками :)

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

в чем конкретно затык? В данном случае конструкторы/СКД прокатят вряд ли, придется кодить. Присоединение секции никто не отменял, как в семерке работало, так и в восьмерке работает. Если не получится засунуть все в запрос - ну, можно с помощью ТЗ детальную часть достроить.

(10) С помощью СКД сделал, но работает криво - на одно время может оказываться две услуги. Естественно он выдает только одну.
Присоединение секции - ищу сейчас как этим путём пойти, знаний катастрофически не хватает.
Пока нашел это:
Построение отчета с присоединением секций по горизонтали
пробую.
ЗЫ: затыка пока никакого больше нет, спасибо (3) за наводку что искать


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

Оглавление

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

2. В новом окне задаем Имя для отчета, нажимаем "Открыть схему компоновки данных" (ОСКД):


Находясь на вкладке "Наборы данных" нажимаем кнопку:

3. Теперь в окне "Конструктор запроса" на вкладке "Таблицы и поля" нужно выбрать поля из таблицы (регистр), которые будем использовать в создаваемом отчете:

Из 1 колонки мне понадобился Регистр сведений "флСостоянияСертификацииСерий", который я нашел в дереве "РегистрыСведений", затем встал на него курсором и нажал на кнопку ">", после этого он отобразился во 2-ой колонке с данными, весь регистр я добавлять не стал, а раскрыл ветвь с "флСостоянияСертификацииСерий" и поочередно выделяя нужные регистры добавлял их через кнопку ">", после чего они отображались в 3-ей колонке: с этими данными мы уже будем работать в дальнейшей в нашем отчете.

После того как вывели нужные поля, нажимаем "ОК"

4. Переходим на вкладку "Настроки" ОСКД, указываем Имя в шапке отчета, Группировку, выбираем поля, которые будут выводиться в отчете:

Здесь же на вкладке "Отбор" можно настроить фильтр.

5. Теперь в отчете будут выводиться данные из выбранных регистров, но следующей задачей является вывести вычисляемые поля (колонки) с условием и представлением данных. В моем случае, серия одобрена "Да" / "Нет": подсчитать кол-во каждого критерия.

Переходим на вкладку "Вычисляемые поля", добавляем 2-а поля: колонка "Путь к данным": придумываем название поля, которое потом укажем на вкладке "Настройки" - "Выбранные поля", чтобы вывести вычисляемые поля в отчет (пункт №6). Колонка "Выражение" - это формула, в ней я указываю выборку, что если партия одобрена = Истина, если не одобрена, то = Ложь - в соответствии с условием, в колонке будет устанавливаться Булево "Да" или "Нет" (поле СерияНоменклатурыфлПартияОдобрена должно быть добавлено в Набор данных (пункт №3)):

Колонка "Заголовок" название заголовка в колонке отчета.

6. Чтобы подсчитать количество "Да" / "Нет" в группировке, нужно зайти на вкладку "Ресурсы" и указать поля, которые будем обрабатывать:

7. Теперь остается указать вычисляемые поля на вкладке "Настройки" - "Выбранные поля" чтобы вывести их в отчет:

8. Сохраняем отчет с расширением *.erf через "Файл" - "Сохранить". Теперь данный отчет можно открыть в 1С в пользовательском режиме "Предприятие", через "Файл" - "Открыть". Выше приведенные настройки сформировались в отчете в следующем виде:

Помимо выводимых данных из регистра сведений, в 2-ух последних колонках мы подсчитываем количество "Да" / "Нет"

Читайте также: