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

14.08.12

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

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

Скачать исходный код

Наименование Файл Версия Размер
Отчет
.ert 97,00Kb
19
.ert 97,00Kb 19 Скачать
МДшка с документом
.MD 76,50Kb
4
.MD 76,50Kb 4 Скачать
МДшка и отчет в архиве
.zip 459,74Kb
13
.zip 459,74Kb 13 Скачать

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

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

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

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

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

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

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

См. также

1С:Фото номенклатуры 7.7 - решение для работы с фотографиями номенклатуры в 1С:7.7 (включая формат PNG)

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

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

5000 руб.

18.10.2022    5209    1    45    

3

Формирование строки json в 1С: 7.7

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

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

1 стартмани

10.12.2018    10166    malovandrey    5    

18

Процедура расшифровки ячейки таблицы в отчетах 1С 7.7

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

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

24.09.2015    21083    Anzhey    14    

12

1С: 7.7. Функции-обертки, функторы, отложенный вызов, карринг параметров на примере функции чтения табличных данных

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

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

1 стартмани

17.09.2015    15051    3    rozhkovdmitriy    21    

24

Универсальный способ сравнения таблиц

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

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

05.07.2015    21717    json    3    

22

Методы для группировки данных по полю,полям в Таблице Значений на примере универсального метода списания по партиям, а также отбора строк в ТЗ по произвольному условию. Для 8.x и 7.7

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

Я очень часто использую группировку данных по полю и полям, как в восьмерке, так и в семерке. Это аналог запроса Итоги, но там строится дерево, а в большинстве случаев нужны "плоские данные". Да и делать запрос в большинстве случаев более накладный процесс, чем работа с ТЗ. Все достоинства такого подхода приведены на примере метода универсального списания по париям, а так же отбора строк в ТЗ по произвольному условию. Для 7.7 еще отчеты сравнения двух ТЗ. Работая с различными базами для упрощения сравнения номенклатуры, или как аналог джойнов(join), сделал сравнение двух таблиц значений по нескольким полям. Пока группировки полей должны быть уникальны. Часто приходится искать дубли, для универсального поиска есть ДублиВТзПоПолю и пример в Тест.ert.

1 стартмани

25.06.2015    39017    4    Serginio    4    

4

Числа прописью в родительном падеже в 7.7? Легко!

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

Вывод числительных прописью в родительном падеже штатными средствами в три строчки кода.

20.06.2015    14247    gimalaj    3    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kompas-dm 780 08.08.12 16:03 Сейчас в теме
(0) Нет, "боян" здесь :
1СРР, Класс "ИндексированнаяТаблица".
Группировать, индексировать, и т.д.
Прикрепленные файлы:
IndexedTable.html
+
2. Lancelot-2M 115 08.08.12 16:58 Сейчас в теме
Признаюсь никогда не сталкивался с 1С++
+
3. TrinitronOTV 14 14.08.12 05:27 Сейчас в теме
а что, нельзя было что ли в один архив оба файла сунуть?
+
4. Lancelot-2M 115 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 186 12.09.12 14:45 Сейчас в теме
А для тех кто любит штатно есть ещё ГруппировкаТЗ http://infostart.ru/public/15487/
+
8. Lancelot-2M 115 13.09.12 16:57 Сейчас в теме
А по ссылке то обработка для группировки ТЗ почти на тысячу строк и только суммировать умеет... Нечто подобное, но гораздо менее вразумительное, оставил мне предшественник в ряде отчетов (он в глоб.модуль не вставлял - таскал из отчета в отчет ряд процедур и функций) - именно сложность его реализации подтолкнула меня написать свою пару сотен строчек). Правда у меня происходят две записи в базу, но, при использовании патча, устанавливающего таймаут между попытками заблокировать данные, совершенно не критично.
+
Оставьте свое сообщение