0. CheBurator 3409 08.05.07 04:07 Сейчас в теме

[NotaBene] Универсальный отчет по таблице значений

1C v.7.7 Готовое решение. Не требует настройки. Не требует допрограммирования. Данная обработка решает часто встречающуюся задачу вывода в "красивом" виде таблицы значений (полученной, например, из запроса). Поддерживается произвольное группирование данных, отключение/включение группировок, в т.ч и создание "шахматок" (типа "продажи понедельно"). Обработка может использоваться как и в отладочных целях (для нормального просмотра ТЗ), так и в составе вполне рабочих отчетов. По крайней мере, я неоднократно клиентам данную обработку ставил вместо того, чтобы каждый раз писать замороченные выводы данных. И клиенты довольны, и мне - проще...

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. CheBurator 08.05.07 04:07 Сейчас в теме
Все - бяки!
100 раз качнули - хоть один бы коммент оставил...
dreadlord; Fox86; +2 Ответить
2. DobroProd 14.05.07 12:47 Сейчас в теме
в комплексной при открытии
Для сч = 1 По ТЗПолнаяОригинал.КоличествоКолонок() Цикл
{C:\DOCUMENTS AND SETTINGS\ALEX.DOBRO_PROD\РАБОЧИЙ СТОЛ\BVK_OTCHETPOTZ.ERT(325)}: Значение не представляет агрегатный объект (КоличествоКолонок)
3. CheBurator 14.05.07 13:25 Сейчас в теме
4. CheBurator 14.05.07 23:35 Сейчас в теме
проблема, скорее всего - в ненадлежащей передаче параметров при вызове обработки - копать в эту сторону.
на досуге придется вставить проверку на прием параметров...
5. soba 11.07.07 17:16 Сейчас в теме
Очень понравилась :) куча отчетов было таких, что вывод только из таблиц, а тут группировки по ним готовенькие. спасибо :)
6. CheBurator 11.07.07 17:37 Сейчас в теме
Всегда пожалуйста.
Приходите еще.
Заказывайте и спрашивайте про прочие нужные вам "полезности"
dreadlord; +1 Ответить
7. Just 31.08.07 06:27 Сейчас в теме
8. Fox86 21.09.07 12:32 Сейчас в теме
Спасибо что выложил эту прогу. но боюсь это не совсем то, что мне надо
9. Шёпот теней 1763 04.10.07 09:10 Сейчас в теме
Господин, Che Burashka... Вы и так впереди планеты всей... и вызываете уважение... УРА!
dreadlord; +1 Ответить
10. Fixator 04.10.07 11:14 Сейчас в теме
Хоть и не модератор FIDO, но плюс Вам поставлю...
11. CheBurator 04.10.07 13:38 Сейчас в теме
Спасибо. Начинаю офигевать от собственной офигенности... Качают много всяких моих разработок, но вопросов задают мало... или написал так что все понятно/большинстов устраивает или посмотрели и бросили.. даже ругать не стали... ВАШИ МНЕНИЯ ПО ЭТОМУ ПОВОДУ?
dreadlord; +1 Ответить
12. astonvilla 228 04.10.07 14:46 Сейчас в теме
Я скачал, нет времени посмотреть. Гляну, обязательно отпишусь и оценю :))
13. CheBurator 06.02.08 02:15 Сейчас в теме
вот здесь есть достойное продолжение для классоманов http://infostart.ru/projects/1658/
14. oskar 17.06.08 08:54 Сейчас в теме
15. CheBurator 17.06.08 10:49 Сейчас в теме
(14) А то! То что лежит у мну в профайле - испытано и одобрено лично мною и используется в моей повседневной работе, так что крупных косяков - нет...
16. бубух 29.07.08 16:51 Сейчас в теме
гранаты ваши не моёй системы. моя ругается и ничго делать не хочет. жаль.
17. CheBurator 29.07.08 17:09 Сейчас в теме
(16) не надо ля-ля.. все работает!
как конкретно ругается?
покажите код, который готовит и передает параметры на вход этой обработки...?
18. бубух 30.07.08 12:46 Сейчас в теме
(17) выдает:
ТЗраб.Сортировать("ИмяГруппировки");
{D:\BASES\БАЗЫ ГЛАВБУХА\КОПИЯ БД БУХ ТЕКУЩАЯ\EXTFORMS\УНИВЕРСАЛЬНЫЙ ОТЧЕТ ПО ТАБЛИЦЕ ЗНАЧЕНИЙ.ERT(994)}: Неверный идентификатор колонки!
Если ТЗНастроекКолонокТекущая.КоличествоСтрок() = 0 Тогда
{D:\BASES\БАЗЫ ГЛАВБУХА\КОПИЯ БД БУХ ТЕКУЩАЯ\EXTFORMS\УНИВЕРСАЛЬНЫЙ ОТЧЕТ ПО ТАБЛИЦЕ ЗНАЧЕНИЙ.ERT(1035)}: Значение не представляет агрегатный объект (КоличествоСтрок)
ТЗПолная.НоваяКолонка(ИмяВертГруппировки,ТипВертГруппировки);
{D:\BASES\БАЗЫ ГЛАВБУХА\КОПИЯ БД БУХ ТЕКУЩАЯ\EXTFORMS\УНИВЕРСАЛЬНЫЙ ОТЧЕТ ПО ТАБЛИЦЕ ЗНАЧЕНИЙ.ERT(753)}: Значение не представляет агрегатный объект (НоваяКолонка)
По поводу кода ничё сказать не могу - я просто булгахтер любопытный.
19. CheBurator 19.08.08 00:21 Сейчас в теме
отвечено в личку:
- обработка самостоятельно ручками не вызывается! вызывается программным способом с передачей параметров!
20. Avrora 24.10.08 18:24 Сейчас в теме
такое выдает

ТЗИдВерт.УстановитьЗначение(ТЗИдВерт.НомерСтроки, ИмяПоказателя, ТЗВремКопия.ПолучитьЗначение(ТЗВремКопия.НомерСтроки, ИмяПоказателя));
{D:\...\BVK_OTCHETPOTZ.ERT(701)}: Неверный идентификатор колонки!
21. CheBurator 24.10.08 23:36 Сейчас в теме
(20)
1.Отчет вызывается ТОЛЬКО ПРОГРАММНО!
2. Проверьте чтобы при передаче параметров было
СЗПоказателей.ДобавитьЗначение("ЗдесьИмяКолонкиТЗ","ЗдесьКакэТоНазыватВотчете");
22. KneZ 28.02.09 06:44 Сейчас в теме
Спасибо все работает супер! Поначалу правда не запускалось. Достаточно было понять, что в ТЗ должны быть не только группировки, но и их значения
23. rmv 20.05.09 15:02 Сейчас в теме
Великий СЕНКС. Весьма облегчило жисть
24. levran 199 21.05.09 16:33 Сейчас в теме
25. KpeaTuFF 06.06.09 22:56 Сейчас в теме
Помогла не только разработка, но и автор! Спасибо!
26. bearcat 70 20.07.09 01:44 Сейчас в теме
Поместила файл в подкаталог ExtForms в каталоге информационной базы.
Через меню "Сервис" выбрала пункт "Дополнительные возможности".
Добавила этот файл.
Попыталась открыть отчет, пишет - НЕВЕРНЫЕ ПАРАМЕТРЫ ВЫЗОВА, но при этом при нажатии на "ОК" отчет открылся.
при попытке сформировать выдает :
ТЗПолная.НоваяКолонка(ИмяВертГруппировки,ТипВертГруппировки);
{D:\1С - ОПТИМА\БАЗЫ ДАННЫХ (ЛОКАЛЬНЫЕ)\СТ\EXTFORMS\BVK_OTCHETPOTZ.ERT(753)}: Значение не представляет агрегатный объект (НоваяКолонка)
что делать? я не программист, я бухгалтер, который старается облегчить себе жизнь путем использования обработок.
Если сможете подсказать, буду благодарна.
29. comrad 13.08.09 10:04 Сейчас в теме
CheBurator вышлите мне пожалуйста инструкцию как для (26)
30. CheBurator 3409 13.08.09 12:30 Сейчас в теме
(29) в описании обработки где-нибудь сказано что обработку следует открывать через файл-открыть? сказано открывать каким либо другим способом кроме как вызовом оператора ОткрытьФорму("Отчет", КонтекстВызова, ПутьОбработки+"БВК_ОтчетПоТЗ.ert"); ....????????
- что именно непонятно?
31. comrad 13.08.09 15:05 Сейчас в теме
(30) разобралься спасибо.
я пока что нуб так что извиняйте.
27. truba 07.08.09 18:11 Сейчас в теме
bearcat, не делайте так.
не надо все в рот тянуть, прям как дети малые
28. CheBurator 3409 07.08.09 18:17 Сейчас в теме
(27) спокойно! инструкции были даны в личку...
32. Dahlia 12.11.09 16:45 Сейчас в теме
:cry: Наверно, я чего-то не понимаю, но у меня неправильно работает
Во вложенном файле исходная ТЗ и картинка, чего получается. Самое яркое что в глаза бросается - столбцы по первой номенклатуре - итоги по торговым
Прикрепленные файлы:
ИсходнаяТаблица.rar
33. CheBurator 3409 12.11.09 16:58 Сейчас в теме
34. Dahlia 13.11.09 11:55 Сейчас в теме
(33) Отправил архив на мыло
35. waol 263 09.12.09 12:45 Сейчас в теме
глФРМ неплохо бы вставить в модуль :)
36. CheBurator 3409 09.12.09 14:16 Сейчас в теме
(35) Разрешаю, вставляйте!
37. waol 263 09.12.09 15:35 Сейчас в теме
не имею такой возможности; да мне то собственно...
38. DrZombi 110 06.07.10 11:58 Сейчас в теме
Бывают клиенты "Кнопочники", такие нелюбят много кнопок, а нооборот мечтают об одной кнопке :)
39. CheBurator 3409 06.07.10 12:15 Сейчас в теме
(38) вставь "заглушку" - для такого-то набора колонок применить такую-ту раскладку ;-) - т.е. пррограммно прописать то что делается по кнопке восстановить... а еще лепотее - через глРасшифровку закинуть нужный набор параметров
40. unichkin 17.03.11 17:27 Сейчас в теме
А глФРМ - это из типовой конфы? У меня база 10 раз переписана, ругается.
глФРМ<<?>>(ЗначениеПоказателя)
Функция не обнаружена (глФРМ)
Может скинете на почту модуль функции?
42. unichkin 17.03.11 18:03 Сейчас в теме
(40) уже разобрался) Крутая штука, очень помогло)
41. unichkin 17.03.11 17:28 Сейчас в теме
Кстати, было бы еще неплохо иметь возможность убирать группировку из вывода таблицы.
43. CheBurator 3409 18.03.11 21:24 Сейчас в теме
(41) ну.. это простая глПечатьТЗ() - есть такая широко распространенная...
44. unichkin 18.03.11 23:03 Сейчас в теме
(43) и это победил, просто кинул на форму кнопку, удаляющую текущую группировку, и сделал сохранение перед этим. Теперь не пойму, почему не работает фиксация строк, и не выводятся заголовки)))
45. konfed 27.06.11 20:25 Сейчас в теме
Классно работает, но до тех пор пока не нужно выводить посортированное, т.к. обработка производит свою сортировку при выводе.
напр.: группировка 1 = контрагент, группировка 2 = товар, ресурсы - количество и сумма . нужно вывести все посортированное по количеству в
порядке убывания. ТЗ, которая передается Вашей обработке уже так и посортирована, но внутри Вашей обработке сортировка ломается. однозначный плюс автору и
CheBurator за то, что представил (доработки CheBurator не проверял). буду пробовать исправить что-то с сортировкой
46. CheBurator 3409 27.06.11 21:09 Сейчас в теме
(45) Обработка - универсальная, хотите специфики - перетачивайте самостоятельно ;-)
В общем случае сортировка по измерению (товар, клиент) - всегда имеет смысл, сортировка по количеству в общем случае - смысла лишена: отсортируйте литры с килограммами и сантиметрами...
47. konfed 28.06.11 10:00 Сейчас в теме
почему же лишена смысла - если все товары имеют одну единицу измерения - то сортировка в числовом измерении дасть больше аналитической информации, чем сортировка по товару, контрагенту.
48. CheBurator 3409 28.06.11 10:06 Сейчас в теме
(47) потому что не надо "подгонять данные". Я выше написал: реализован общий случай, в общем случае - товары не имеют одну единицу измерения. А вот "если.. имеют...", "если... весь товар - одна номенклатура но разных серий с разными сроками изготовления" и т.д. - это частные случаи. никто не запрещает подогнать универсальную обработку для общих случаев под свое частное решение...
49. Гость 06.12.11 16:20
Если Запрос.Выполнить(ТекстЗапроса) = 0
Тогда Возврат;
КонецЕсли;

ТЗ = СоздатьОбъект("ТаблицаЗначений");
Запрос.Выгрузить(ТЗ,1,0);

Если ФлагГруппа = 0
Тогда ТЗ.УдалитьКолонку("ГруппаТовара");
КонецЕсли;
ТЗ.УдалитьКолонку("Количество");
ТЗ.УдалитьКолонку("ПродСт");
ТЗ.УдалитьКолонку("ТекДок");

//здесь имеем ТЗ с нужными для вывода данными 
//...
//положим в список значений "счетные" колонки ТЗ
//(суммы, количества, себестоимости и прочее всякое что можно складывать...)
СЗПоказателей = СоздатьОбъект("СписокЗначений");
СЗПоказателей.ДобавитьЗначение("СуммаПродСт","Сумма");
СЗПоказателей.ДобавитьЗначение("СуммаКоличество","Кол-во");
//...
//вызовем универсальный отчет по ТЗ
//в списке значений передадим 2 параметра
// - список "счетных" колонок
// - саму таблицу значений для вывода
КонтекстВызова = СоздатьОбъект("СписокЗначений");
КонтекстВызова.ДобавитьЗначение(ТЗ,"ТаблицаЗначений");
КонтекстВызова.ДобавитьЗначение(СЗПоказателей,"СписокПоказателей");
//...
ПутьОбработки = ""; 
ИмяОбработки = "";
РасположениеФайла(ПутьОбработки, ИмяОбработки);
ОткрытьФорму("Отчет", КонтекстВызова, ПутьОбработки+"БВК_ОтчетПоТЗ.ert");

КонецПроцедуры //Сформировать()
Показать
50. ARTEM123456 05.03.12 08:24 Сейчас в теме
51. mihenius 86 28.04.12 15:39 Сейчас в теме
Не нашел как добавить обычных колонок для доп. информации.
Видимо нужно доработать, чтобы был список колонок кот. следует исключить из группировки.
53. CheBurator 3409 29.04.12 00:22 Сейчас в теме
(51) этот отчет - в первую очередь группировочный. поэтому вывод дополнительной информаци для уровня группировки - не предусмотрен. Выйти из положения нможно так: если надо вывести в группировке, например номенклатуру с дополнительнйо инфорацией (акртику) - то в ТЗ ДЛЯ ВЫВОДА вместо колонки "номенклатьура", формируем колонку "артикул+номенклатура"
52. mihenius 86 28.04.12 16:25 Сейчас в теме
Не нашел как зафиксировать порядок сортировки строк/колонок.
Так же необходимо немного доработать )
54. CheBurator 3409 29.04.12 00:24 Сейчас в теме
(52) внизу под таблицей группирвоко - есть кнопка "сохранить" и "восстановить". Первая кнопка запоминает под именем (вводится пользователем) текущую настройку вывода колонок/группирвоок, "восстановить2 - позволяет восстановить ее.
55. mihenius 86 02.05.12 07:11 Сейчас в теме
(53,54) Уже переделал под себя )

Пришел к клиентам, а там твоя обработка используется.
56. Скользящий 04.12.12 14:01 Сейчас в теме
Очень хорошая обработка, спасибо, очень помогла. Возникла правда, проблема. Отчет чисто группировочный, а иногда надо выводить дополнительную строку с информацией "в т.ч." Привожу пример.
В ТЗ есть колонки Контрагент, Товар, РасходнаяНакладная, Количество, ГруппаКонтрагентов, Группа Товаров. Счетная колонка "Количество"

Этим отчетом удается вывести ГруппаКонтрагентов в столбцах, Группа Товар и Товар в строках, выглядит так
http://gyazo.com/7338e1dfc1ed8c30de7e64212fb6f799
Или можно вывести вот так
http://gyazo.com/12f731587eb4c5fdf114c2decae889bc т.е. без вывода товаров.

А хотелось бы выводить например только группу товаров, и "в т.ч." товар. Вот так
http://gyazo.com/5b3b77d726cd758afd062b4707e86494
Иными словами, чтобы итоги по группе считал, но выводил под названием группы и количеством только определенные товары с количеством по конкретным товарам. Как можно извратиться в рамках существующего отчета? Или только допиливать отчет?
57. Скользящий 04.12.12 14:58 Сейчас в теме
Впрочем, вышел из положения, тупил. Просто добавил колонку еще одну группировочную. ) Проблема решена.
58. CheBurator 3409 18.12.13 13:09 Сейчас в теме
59. CheBurator 3409 29.11.19 15:55 Сейчас в теме
Обновил обработку.
Добавлена возможность манипулировать настроками вывода группировок программно при вызове отчета.
В плане (когда-то.. если руки дойдут...):
1.переписать на йоксель и ИТЗ для увеличения производительности.
2. сделать возможность запуска обработки интерактивно - с загрузкой сторонних данных для вывода из экселя, csv, dbf + вывод данных из базы, получаемых через универсальный подбор обьектов.
60. CheBurator 3409 30.11.19 20:27 Сейчас в теме
Обновил обработку.
Модифицировано: выполняется автонастройка ширины колонок таблицы расшифровки числовых показателей
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Разработчик 1С
Нижний Новгород
зарплата до 90 000 руб.
Полный день

Консультант-аналитик 1С
Москва
зарплата от 100 000 руб. до 150 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Консультант-аналитик 1С
Москва
зарплата до 200 000 руб.
Полный день

Программист 1С
Москва
зарплата до 140 000 руб.
Полный день