Группировка данных в таблице значений (1С:7.7)

14.08.12

Разработка - Работа с интерфейсом

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

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Отчет
.ert 97,00Kb
19 1 850 руб. Купить
МДшка с документом
.MD 76,50Kb
4 1 850 руб. Купить
МДшка и отчет в архиве
.zip 459,74Kb
13 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

И так, в 1С 7.7 часто бывает, что данные для отчета уже собраны в ТЗ и их необходимо вывести в табличный документ с группировками по значениям нескольких колонок (например, Контрагент и Договор - просто классика))). И вот каждый раз пишется нудный цикл перебора строк, вывода нужных секций - скучно... А если еще и итоги по числовым колонкам выводить перед группой строк, их образующих - еще нуднее. Тоска. На очередном отчете (как долго я это терпел!!! помоги мне Ктулху) я сломался и попытался написать некий в меру универсальный механизм, преобразующий исходную ТЗ к удобному для вывода виду.

Вот выкладываю что вышло - файлик отчета с волшебной функцией

глОбработатьТаблицуЗначенийОтчета(ТаблицаЗначенийОтчета, СписокКолонокДляГруппировки, СписокСуммируемыхКолонок = "", СписокКолонокДляОтбораМаксимума = "", СписокКолонокДляОтбораМинимума = "")

и магической процедуркой

глРекурсивноЗаполняемТаблицуОтчета( Запрос, ТаблицаРезультат, СоответствиеРеквизитовКолонкам, СписокКолонокДляГруппировки, КоличествоГруппировок, Знач СчГруппировок, СчСтрокТЗ)

- названы они через "гл", т.к. у меня-то сидят в глобальном модуле. Смотрите, короче, что и как).

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

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Работа с интерфейсом Логистика, склад и ТМЦ Системный администратор Программист Пользователь 1С v7.7 1С:Торговля и склад 7.7 Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Решение для разработчика и конечного пользователя для работы с фотографиями номенклатуры: систематизация, хранение, отображение, а также выгрузка на Яндекс-Диск и FTP (кроме версии лайт). Поддерживаются графические форматы: bmp, jpg, gif, tiff, а также png - не поддерживаемый штатными средствами 1С. Выполнено без использования внешних компонент (кроме функции выгрузки на FTP). Поставляется как в виде пустой конфигурации с набором объектов и модулей для работы с фото, так и в виде обновления к 1С:Торговля и склад 7.7. Выполнено в двух версиях: "полная" и "лайт".

2500 руб.

18.10.2022    6943    3    45    

6

Работа с интерфейсом Программист 1С v7.7 1C77 Бесплатно (free)

Публикация имеет цель обратить внимание на возможность улучшения интерфейса.

15.12.2021    5893    93    Cерый    15    

10

Универсальные функции Программист 1С v7.7 1C77 1С:Комплексная 7.7 Абонемент ($m)

Предлагается набор функций 1с 7.7 для формирования строки json стандартными средствами.

1 стартмани

10.12.2018    11892    malovandrey    7    

19

Информационная безопасность Универсальные функции Программист 1С v7.7 Бесплатно (free)

При использовании терминалок для удаленных баз, иногда при входе в базу данных необходимо исключить возможность входа пользователей с компьютеров с другим часовым поясом. Например, работают в Новосибирской базе с временем UTC +6 и пытаются зайти в базу с UTC +3.

16.05.2016    13728    kudenzov    3    

11

Универсальные функции Программист 1С v7.7 1C77 Бесплатно (free)

Хочу поделиться с вами универсальной процедурой для расшифровки ячеек печатной формы отчетов в 1С 7.7.

24.09.2015    22441    Anzhey    14    

12

Универсальные функции Программист 1С v7.7 1C77 Абонемент ($m)

Человек, работающий в 1С, в силу своей практики и опыта может нуждаться в средствах программирования, в 1С не представленных. В публикации описаны средства отложенного вызова функций, каринга параметров, композиции и др., в основе которых лежит вызов функции посредством функции Шаблон. Несмотря на простоту, созданный за несколько лет работы в 1С 7.7 набор функций обрел мощь, достаточную для лаконичной реализации указанных целей.

1 стартмани

17.09.2015    15984    3    rozhkovdmitriy    21    

25

Универсальные функции Запросы Программист 1С v7.7 1С v8.3 Бесплатно (free)

На эту тему уже есть статьи, но этот способ нигде не описан. Хотя я его использую с тех пор, как занимаюсь программированием. Его преимущество в простоте и универсальности: можно применять на 1С, SQL, а также в любом другом языке программирования.

05.07.2015    22986    json    3    

22
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kompas-dm 781 08.08.12 16:03 Сейчас в теме
(0) Нет, "боян" здесь :
1СРР, Класс "ИндексированнаяТаблица".
Группировать, индексировать, и т.д.
Прикрепленные файлы:
IndexedTable.html
2. Lancelot-2M 116 08.08.12 16:58 Сейчас в теме
Признаюсь никогда не сталкивался с 1С++
3. TrinitronOTV 16 14.08.12 05:27 Сейчас в теме
а что, нельзя было что ли в один архив оба файла сунуть?
4. Lancelot-2M 116 14.08.12 09:55 Сейчас в теме
5. Dolly_EV 269 16.08.12 07:20 Сейчас в теме
Автор, кури в сторону ИТЗ (ИндексированнаяТаблица)
6. ander_ 17.08.12 10:02 Сейчас в теме
Плюсанул за мысль в правильном направлении :)
а для вывода на печать есть еще класс ADirks'а ИтогиПоГруппировкам. Можно рассмотреть в качестве альтернативы в случае простого отчета но с очень большим количеством данных. В этом случае ИТ может свалить 1с из-за нехватки памяти ( ИТ очень ее любит :), а 1с77 не любит тех, кто любит много памяти ). Упомянутый выше класс помогает вывести таблицу очень шустро на печать за один проход с подсчетом итогов!
7. ADirks 187 12.09.12 14:45 Сейчас в теме
А для тех кто любит штатно есть ещё ГруппировкаТЗ http://infostart.ru/public/15487/
8. Lancelot-2M 116 13.09.12 16:57 Сейчас в теме
А по ссылке то обработка для группировки ТЗ почти на тысячу строк и только суммировать умеет... Нечто подобное, но гораздо менее вразумительное, оставил мне предшественник в ряде отчетов (он в глоб.модуль не вставлял - таскал из отчета в отчет ряд процедур и функций) - именно сложность его реализации подтолкнула меня написать свою пару сотен строчек). Правда у меня происходят две записи в базу, но, при использовании патча, устанавливающего таймаут между попытками заблокировать данные, совершенно не критично.
Для отправки сообщения требуется регистрация/авторизация