Простейший вариант создания отчета или как быстро создать красивый отчет на СКД (v8 Обычное приложение)

05.01.13

Разработка - СКД

Наиболее эффективным объектом для создания отчетов в 1С 8.1, 8.2, безусловно является СКД. Однако использование СКД «вчистую» не позволяет вносить параметры и отборы СКД иначе как непосредственно в настройки СКД, что не всегда удобно пользователям. Представленная методика позволяет использовать СКД с некой шаблонной формой, которая берет на себя обмен параметрами СКД и в тоже время, эта форма позволяет пользователю «покапаться» в недрах самой СКД. Шаблон легко модифицируется, скажем для ввода Параметров или Условного оформления.

Скачать файл

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

Наименование По подписке [?] Купить один файл
ШаблонФормы
.erf 13,58Kb
254
254 Скачать (1 SM) Купить за 1 850 руб.
ГотовыйОтчет
.erf 16,36Kb
121
121 Скачать (1 SM) Купить за 1 850 руб.

Допустим требуется построить «Ведомость по взаиморасчетам» в УТ 10.3

 Итак начнем:

  1. Создаем внешний отчет, можно задать его имя «ВедомостьПоВзаиморасчетам»
  2. В этом-же окне создаем «Основную схему компоновки данных»
  3. В схеме добавляем новый набор данных, и, допустим при помощи конструктора запросов формируем нужный запрос, в текущем случае такой:
ВЫБРАТЬ

ВСКОИО.СуммаВзаиморасчетовНачальныйОстаток КАК ВзаиморасчетыНО,

ВСКОИО.СуммаВзаиморасчетовПриход КАК ВзаиморасчетыПриход,

ВСКОИО.СуммаВзаиморасчетовРасход КАК ВзаиморасчетыРасход,

ВСКОИО.СуммаВзаиморасчетовКонечныйОстаток КАК ВзаиморасчетыКО,

ВСКОИО.СуммаУпрНачальныйОстаток КАК СуммаУпрНО,

ВСКОИО.СуммаУпрПриход,

ВСКОИО.СуммаУпрРасход,

ВСКОИО.СуммаУпрКонечныйОстаток КАК СуммаУпрКО,

ВСКОИО.Регистратор,

ВСКОИО.ДоговорКонтрагента,

ВСКОИО.ДоговорКонтрагента.Владелец КАК Контрагент,

ВСКОИО.ДоговорКонтрагента.Организация КАК Организация,

ВСКОИО.Период

ИЗ

РегистрНакопления.ВзаиморасчетыСКонтрагентами.ОстаткиИОбороты ({(&ДатаНачала)}, {(&ДатаКонца)}, Регистратор, ДвиженияИГраницыПериода, ) КАК ВСКОИО

 

  1. Обращаем внимание, что для верной работы отчета, нужно в Полях СКД для измерения ДоговорКонтрагента в ролях выставить флаг «Обязательное», остальные настройки — по желанию (тех, что есть по умолчанию — вполне достаточно).
    Запрос 
  2. Во вкладке СКД «Ресурсы» - добавляем все количественные ресурсы с функцией «Сумма»
     
  3. Во вкладке СКД «Настройки» - добавляем группировки, например: Организация, Контрагент, ДоговорКонтрагента, Детальные Записи, в «выбранных полях» добавляем нужные, например: Период, Регистратор, и все ресурсы, которые можно объединить в группы,
    Ресурсы
    в «отборе» добавляем нужные по умолчанию отборы, снимая флажки использования, например Контрагент, Организация, ДоговорКонтрагента.
    отборы
    Собственно СКД готова, но вот формы у нее все еще нет, если на этом этапе закончить построение, то 1С сама сформирует форму по умолчанию.
  1. Создаем ФормуОтчета: она стандартная — её нужно наполнить содержимым, причем это содержимое чаще всего переходит из одного отчета в другой с минимальными корректировками. Собственно говоря этот этап и предлагается «шаблонизировать».

А именно вставить готовую форму из уже существующего отчета, подвергнув минимальным изменениям. В рассматриваемом случае из обработки «Шаблон отчета». Здесь нужно обратить внимание на то, что после вставки формы из шаблона отчета, нужно проверить два поля вновь вставленной формы: это в «Основных» Тип значения (нужно установить Тип текущего (редактируемого) отчета), и Заголовок

  1. Также, возможно, потребуются правки модуля вставленной формы, чаще всего это Процедура ОсновнаяПанельСформировать(Кнопка), здесь в строках типа
ПараметрНастройки=Настройки.ПараметрыДанных.Элементы.Найти("ДатаНачала");

ПараметрНастройки.Значение=ДатаНачала;

ПараметрНастройки.Использование=Истина;

 

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

  1. Теперь, необходимо указать вставленную (и, возможно откорректированную) форму в качестве основной в поле Форма отчета.
  2. Сохраняем и запускаем в режиме 1С:Предприятие.

См. также

SALE! %

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

12000 10000 руб.

02.09.2020    163320    902    401    

881

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    9403    implecs_team    6    

47

Инструментарий разработчика СКД Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

3 стартмани

05.02.2024    7392    56    obmailok    21    

79

Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    3234    5    Yashazz    1    

34

СКД WEB-интеграция Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

11.12.2023    11110    24    John_d    25    

125

СКД Программист Платформа 1С v8.3 Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

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

05.12.2023    8423    PROSTO-1C    15    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Maksimshap 26.11.11 11:53 Сейчас в теме
а как это сделать самому?
2. Maksimshap 26.11.11 11:53 Сейчас в теме
3. пользователь 27.11.11 00:22
Сообщение было скрыто модератором.
...
4. mxm2 1268 27.11.11 01:35 Сейчас в теме
Форму вполне можно сдалать самому. код открыт, если есть вопрсы могу подробно описать как и что делать. На мой взгляд, представленная форма удобна для пользователя и не требует больших затрат при программировании. - есть и недостаток - "Все отчеты на одно лицо" )))
5. yegorovnv 1 27.11.11 18:02 Сейчас в теме
mxm2 пишет: есть и недостаток - "Все отчеты на одно лицо" )))


я считаю, что это БОЛЬШОЕ достоинство, т.к. пользователь работает в однотипной среде, и ему не нужно адаптироваться к различным аляповатым интерфейсам.
6. westinka 30.11.11 08:35 Сейчас в теме
однотипная среда конечно хорошо, но как показывает практика, люди не думая потом начинают "жмакать", и удивляются странным результатам, аля всегда так делал и было хорошо, и новых обучают - типа жмешь сюда, видишь это, без объяснения, что собственно нажимаем...
7. mxm2 1268 30.11.11 17:17 Сейчас в теме
(6) westinka, "и удивляются странным результатам" - лучше, конечно делать так, чтобы странные результаты - не получались ни при каких условиях. Среда 1С вполне позволяет ограничить пользователя нужным образом.
8. westinka 02.12.11 21:51 Сейчас в теме
(7) ну это понятно, что можно ограничить пользователя так как нужно, я больше имела в виду, что нельзя упрощать жизнь пользователям совсем уж сильно, а то будет потом, что 1с сама все всегда считала, а я даже и не проверяла, т.к. была уверена, что все правильно :)
9. DrAku1a 1747 06.12.11 01:36 Сейчас в теме
Простейший вариант - создать новый отчет, создать ему форму, в модуле формы (процедуры "кнопка выполнить нажатие") - правой кнопкой и выбрать "Конструктор запроса с обработкой результата..." - и далее с помощью мастера все делается без написания и строчки кода.
Второй вариант - с минимальным коддингом и конструктором запросов - это использовать "ПостроительОтчета"...
Прикрепленные файлы:
10. mxm2 1268 06.12.11 07:37 Сейчас в теме
(9) DrAku1a, у всякой методики есть плюсы и минусы, в частности и предложенного варианта преимуществом является прозрачное использование СКД с наглядной формой.
11. DrAku1a 1747 06.12.11 07:58 Сейчас в теме
(10) Я говорю про простейший вариант, не факт, что СКД им является.
12. mxm2 1268 08.12.11 12:27 Сейчас в теме
(11) DrAku1a, также не факт что использование "простого запроса" проще, например в контексте группировок и итогов, которые СКД делает сама. Как запросы так и СКД можно использовать - как для простых отчетов, так и для сложных. На мой взгляд многие подходы СКД более просты и нагляды, чем то, что будет сформировано в результате использования контструктора запросов с обработкой результата, особенно если предстоит (а так чаще всего и бывает) правка этого отчета вручную.
13. Модератор раздела 16.02.12 22:25 Сейчас в теме
Это не простейший вариант :( самый простой давно уже придуман и юзается уже несколько лет. Читайте автора Evg-Lylyk на сайте
15. mxm2 1268 08.11.12 09:01 Сейчас в теме
(13) artbear, скажем так: простейший на СКД, обычные формы, с настраиваемыми отборами и группировками.
19. DoctorRoza 06.01.13 11:35 Сейчас в теме
(15) конечно, воля Ваша, но, ИМХО, нужно отказываться от каких-либо демонстраций в обычном приложении. Пусть еще много контор работает на 7.7/8.1. Но! Управляемое приложение - это 1С-ское будущее .. или около того. Тем более, что отчеты на СКД в обычном приложении не отличаются от отчетов на управляемых формах (простейшие их вариации). Плюсану, но все-таки 8.3 на пороге .. не солидно как - то :)
20. mxm2 1268 06.01.13 11:58 Сейчас в теме
(19) DoctorRoza, За плюс - спасибо... Обратите внимание на дату создания публикации (что-то там 2011 год)... просто периодически "причесываю" свои старые публикации, подгоняя под новые классификаторы сайта, да и новые возможности отображения использую. Обычное приложение тоже имеет право на существование, тем более, иногда - оно имеет преимущества при работе... (скажем, известная проблема скорости подбора в УТ11, которой нет в УТ10.х). А вот программить под УФ, на мой взгляд, более приятно. Но ведь это не главное - главное как работать)).
21. DoctorRoza 06.01.13 12:24 Сейчас в теме
(20) действительно .. аж 2011 год .. :) .. никогда не смотрю на дату поста!
14. PiccaHut001 12.09.12 18:57 Сейчас в теме
16. fr.myha 14.11.12 11:11 Сейчас в теме
17. agulaev 33 05.01.13 20:36 Сейчас в теме
Все работает красиво. Плюс.
18. Irek-kazan 06.01.13 00:59 Сейчас в теме
22. TMV 14 06.01.13 17:01 Сейчас в теме
(0) Где-то с год назад в УПП обнаружил замечательный механизм "Произвольных отчетов", все-то нужно правильно запрос накидать. А дальше дело техники и рук пользовталей. Так к этому делу прикипел, что, когда в очередной раз лезу в УФ, слегка корежит отсутствие правой панели настроек и быстрых отборов.
23. bulpi 217 09.01.13 15:17 Сейчас в теме
"Наиболее эффективным объектом для создания отчетов в 1С 8.1, 8.2, безусловно является СКД."

Это очень, очень спорное утверждение.
24. mxm2 1268 09.01.13 16:05 Сейчас в теме
(23) bulpi, ))) Давайте определим понятие "Эффективности"))), это некое пересечение скорости работы, простоты программирования, настройки, "широты" применения, и прочее... все современные конфигурации используют СКД - это ли не свидетельство указанного.)))
25. bulpi 217 09.01.13 22:03 Сейчас в теме
ОК
1)Скорость работы отчетов на СКД не больше, чем не на СКД (Имхо, я не проверял)
2)Простота программирования - очень, очень плохо. Если на шаг вправо - влево от простейшего, там сразу такое начинается, что специальные курсы нужны (sic!) для того, чтобы сделать простое, а не простейшее.
3)Простота настройки - плохо, именно поэтому появилась эта публикация.
4)Широта применения - хорошо.
5)"все современные конфигурации используют СКД" -имеются в виду типовые ? Ну да, еще бы. А как же программисты , находящиеся на службе 1с и франчайзи, не будут применять СКД, если творцы движка создали СКД? А зачем тогда делали?
26. mxm2 1268 09.01.13 23:30 Сейчас в теме
(25) bulpi,
2 - Запрос + вывод на экран с расшифровками у меня лично всегда занимал больше времени чем Запрос СКД + Компоновка (стандартная или близкая к стандартной), а если нужно что-то переделать/добавить... с выводом на экран...
3 - если присмотреться указанная форма всего лишь показывает на "себе" ряд стандартных окон/полей, которые просто "глубоко сидят", и написана только для того чтобы пользователю было привычно задавать отборы и прочее напрямую. (т.е. некий аналог универсального отчета), по проще )
- еще наглядность можно оценить...
28. Гость 07.07.14 11:43
(25) bulpi, (sic!) - значение знаешь?
27. trand 02.08.13 10:27 Сейчас в теме
Судя по скриншоту не хватает кнопок сворачивания и разворачивания группировок по уровням
Оставьте свое сообщение