СКД: вывод строк из табличной части в одной ячейке строки

Публикация № 326358 28.01.15

Приемы и методы разработки - СКД

СКД СоединитьСтроки

Ответим на вопрос: как в одной ячейке строки вывести товары, характеристики, набор значений из табличной части через запятую, двоеточие, на новой строке или с другими параметрами.
Приведем простую последовательность из пяти шагов для решения этой задачи.
Конфигурация для теста отчета УТ 11 (ERP 2.0). Рассмотрим на примере документа "Реализация товаров и услуг".  Выведем ссылку, организацию, контрагента и номенклатуру, в итоге отчет должен принять вид показанный на рисунке ниже.
 
Примерный вид отчета
Рис. 1 Примерный вид отчета

Шаг 1. Для этого создадим новый отчет и сформируем основную схему компоновки данных. И добавим два набора данных.
Набор данных1:

ВЫБРАТЬ
	РеализацияТоваровУслуг.Ссылка,
	РеализацияТоваровУслуг.Дата,
	РеализацияТоваровУслуг.Контрагент,
	РеализацияТоваровУслуг.Организация
ИЗ
	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ГДЕ
	РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериод И &КонецПериода

Набор данных2:

ВЫБРАТЬ
	"Номенклатура" КАК КолонкаНоменклатуры,
	РеализацияТоваровУслугТовары.Ссылка,
	РеализацияТоваровУслугТовары.НомерСтроки,
	РеализацияТоваровУслугТовары.Номенклатура,
	РеализацияТоваровУслугТовары.Количество
ИЗ
	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
	РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериод И &КонецПериода

Шаг 2. Объединим эти наборы во вкладке "Связи наборов данных" со следующими параметрами:
Источник - НаборДанных1; Приемник связи - НаборДанных2; Выражение источника - Ссылка; Выражение приемника - Ссылка.
 
Шаг 3. Создадим ресурс, который будет группировать строки необходимым нам образом (вкладка "Ресурсы"):
Поле: 
                          Номенклатура (или любое другое). 
Выражение: 
                          СоединитьСтроки(ТаблицаЗначений(НомерСтроки,") ",Номенклатура," - количество (",Количество,");"),,"")
 
Функция СоединитьСтроки  - соединяет между собой "массив" данных (см. справку). 
Функция ТаблицаЗначений - формирует таблицу значений из входных параметров (см. справку). В нашем случае "массив" будет состоять из следующих элементов:[Поле:Номер строки][строка:")"][Поле:Номенклатура][строка:" - количество ("][Поле:количество][строка:");"]
 
Так же в поле группировки укажим поле "Ссылка", для того чтобы агрегирование проводилась только для него (иначе в группировках мы получим наростающую "сумму" всех строк, а это уже перебор).
 
Шаг 4. Создадим настройку варианта отчета. Он должен выглядеть как показано на рисунке ниже
В выбранные поля должны входить: Организация, Контрагент, Ссылка, Номенклатура (ресурс), КолонкаНоменклатуры. При необходимости можно отключить вывод итогов по горизонтали/вертикали.

Настройка варианта
Рис. 2 Пример варианта настройки

Шаг 5. Сохраняем и запускаем. Задача решена

Скачать файлы

Наименование Файл Версия Размер
Внешний отчет-пример использования функции СКД "Соединить Строки"

.erf 6,24Kb
209
.erf 28.01.15.1 6,24Kb 209 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. echo77 1599 28.01.15 23:24 Сейчас в теме
В языке выражений платформы 8.2 нет функций СоединитьСтроки() и Таблица(), но есть другие.

Я уже писал об этом в статье: http://infostart.ru/public/267055/
Согласен, что ваш пример более красивый для случая с табличной частью
olololeg; RustIG; +2 Ответить
2. ivanov660 3728 29.01.15 07:35 Сейчас в теме
Мы рассматривали конкретную задачу.
Привели конкретный пример для ее практического решения.
Описали быстрый старт - на основе этого примера легко начать работать с данным функционалом.
У Вас же в статье описан перечень функций и краткие советы по их использованию.

UPD. Функции СКД СоединитьСтроки и ТаблицаЗначений появились с версии 8.2.14. К тому же при необходимости можно использовать собственные функции, необходимо чтобы они были доступны в глобальном контексте или описаны в модуле менеджера отчета. В свое время для выполнения отчета создавали набор математических функций типа квадратного корня.
user751607; Hogyoku; maxunov95; sulfur17; +4 Ответить
3. Светлый ум 277 05.02.15 06:24 Сейчас в теме
4. zqzq 23 16.02.15 08:48 Сейчас в теме
СоединитьСтроки не обязательно использовать, платформа сама строковое представление сделает. И при щелчке на таблицу откроет её как расшифровку... в толстом клиенте. В тонком клиенте ТаблицаЗначений недоступна на клиенте и платформа 8.2 вылетает с ошибкой при расшифровке :) С массивом нормально отрабатывает в обоих случаях. Так что с учетом бага пока действительно лучше к строке приводить.

P.S. Часто более полезной оказывается функция ВычислитьВыражениеСГруппировкойТаблицаЗначений (см. справку).
6. echo77 1599 22.02.15 17:10 Сейчас в теме
(4) zqzq, У функции СоединитьСтроки() вся фишка в параметрах номер 2 и 3
5. SirYozha 213 19.02.15 08:43 Сейчас в теме
Спасибо! Интересное решение, возьмем на карандаш :).
+1

p.s. В шаге 4 исправьте орфографическую ошибочку в слове ОрАГнизация.
7. Kaval88 164 13.03.15 11:36 Сейчас в теме
2 набора данных не оптимально.
8. echo77 1599 13.03.15 21:38 Сейчас в теме
(7) Kaval88, согласен, но иногда позволяют красивее и проще решить некоторые задачи соединения "мух" с "котлетами" (остатков, с оборотами и т.д.) без всяческих наворотов и сильной просадки производительности.
pbahushevich; +1 Ответить
9. ivanov660 3728 14.03.15 13:42 Сейчас в теме
(7) Kaval88, приведен пример о возможностях СКД. В некоторых случаях 2 набора данных оптимальнее, Вы же знаете, что алгоритм СКД изменяет запрос в зависимости от настроек, и если в вывод отчета не попадает ни одного поля из набора 2, то данные отбираться не будут из базы.
10. maguga 19 19.11.15 16:40 Сейчас в теме
уважаемые, а на какую справку вы ссылаетесь? я вот в синтаксис помошнике нинашел ничего подобного. и если есть ссылка поделитесь пожалуйста.
11. echo77 1599 19.11.15 19:10 Сейчас в теме
(10) maguga, Справка->Содержание справки
Прикрепленные файлы:
15. пользователь 27.12.17 11:13
Сообщение было скрыто модератором.
...
12. konyavka 27 18.01.16 16:20 Сейчас в теме
Статья очень помогла. Спасибо.
13. Hikari123 09.01.17 14:19 Сейчас в теме
Отличная статья. Спасибо
14. denchik86 11 07.05.17 17:44 Сейчас в теме
Спасибо. То, что доктор прописал.
16. VickWood 18.02.18 15:54 Сейчас в теме
А если в отчете вообще нет группировок, функция не сработает?
17. ivanov660 3728 18.02.18 21:29 Сейчас в теме
18. Spacer 344 16.03.18 19:53 Сейчас в теме
(17) Как сработает? У вас же там ресурс вычисляется. А как он будет вычисляться без группировки?
19. Stas84 15.04.18 22:18 Сейчас в теме
20. pvlunegov 154 06.07.18 08:39 Сейчас в теме
Огромное спасибо за вашу публикацию.
Смог сделать конкатенацию строк в таблице по одинаковым наборам колонок.
Например у меня была таблица

НомерСтроки Контрагент Собственник
1 Азов ООО Багбадулин А.В.
2 Азов ООО Вышин С.Е.
3 Бюро ООО Жулин С.В.
4 Жизнь АО Сергеенко С.К.
5 Жизнь АО Зюлейха М.С.

Благодаря кокнатенации строк по колонке Собственник получаем на выходе отчета с СКД таблицу:

НомерСтроки Контрагент Собственник
1 Азов ООО Багбадулин А.В.
Вышин С.Е.
2 Бюро ООО Жулин С.В.
3 Жизнь АО Сергеенко С.К.
Зюлейха М.С.

В колонке Собственник у нас строка с переносами строк, выглядит как строка в виде таблицы с ФИО собственников.


Отлично!
21. Yoda77_2 06.07.18 11:55 Сейчас в теме
+ оказывется, можно, использовать ФОРМАТ:
СоединитьСтроки (ТаблицаЗначений (СтатьяЗатрат, ФОРМАТ(СуммаБезНДС,"ЧДЦ=2")),," - ")
Может пригодится
reneyr; user592949_annafromdnepr; +2 Ответить
22. acanta 06.11.18 18:02 Сейчас в теме
+ Можно, и даже с датами работает.

Выбор КОГДА ЗначениеЗаполнено(Сумма) Тогда СоединитьСтроки(Формат(Месяц,"ДФ='MMММ yyyy'"),," ")Конец
23. wolfalan 24 29.04.19 19:01 Сейчас в теме
Желательно "Номенклатура" КАК КолонкаНоменклатуры получать в первом наборе потому, что если второй набор будет пустой, то в отчете пропадут ресурсы из первого набора.
24. 7OH 67 22.01.20 18:02 Сейчас в теме
А можно совет спросить ?
Как в вашем примере убрать ССЫЛКУ из группировки и сделать одним полем ресурса такое:
Группировка - "Ассоль ООО"
Значение ресурса - "Реализация 10 (1,2,3); Реализация 1 (1,2,3,4)"
То есть соединить дважды.
Сама СКД ругается, что вложенные нельзя делать.
25. 7OH 67 23.01.20 12:09 Сейчас в теме
(24) может, кому пригодится - выражение для группировки "Контрагент"
СоединитьСтроки(
    ВычислитьВыражениеСГруппировкойТаблицаЗначений(
            "Ссылка
                , "" (""
                , СоединитьСтроки(
                    ТаблицаЗначений(Номенклатура)
                    , "",""
                    ,"""")
                , "")""
            "
            ,"Ссылка"
    )
,
,"")
Показать
reneyr; eeeio; elga2012; sergiyboy; +4 Ответить
26. sergiyboy 8 12.11.20 13:29 Сейчас в теме
(25)
СоединитьСтроки(
ВычислитьВыражениеСГруппировкойТаблицаЗначений(
"Ссылка
, "" (""
, СоединитьСтроки(
ТаблицаЗначений(Номенклатура)
, "",""
,"""")
, "")""
"
,"Ссылка"
)


Огромное спасибо за идею.
Я пошел дальше и добавил еще перенос строки и убрал лишние точки с запятой.

СоединитьСтроки(
    ВычислитьВыражениеСГруппировкойТаблицаЗначений(
           " ВидОбъектаДоступа
                , ""  (""
                , СоединитьСтроки(
                    Свернуть(ТаблицаЗначений(ОбъектДоступа))
                    , ""; ""
                    ,"""")
                , "")""
            "
            ,"ВидОбъектаДоступа"
    ),&СимволПереносаСтроки,"") 
Показать


Долго искал решение как сделать перенос строки в результате оказалось достаточно было добавить параметр и установить в него символ ALT+0160

Результат:
Прикрепленные файлы:
dammit666; SagittariusA; reneyr; mihap; zoytsa; ivanov660; +6 Ответить
28. zoytsa 22.03.21 09:56 Сейчас в теме
38. SagittariusA 06.10.22 20:19 Сейчас в теме
(26)
Так и не понял, как в параметр каретку добавить.
40. ILNIK 24 22.12.22 16:52 Сейчас в теме
(26)
ALT+0160

Как вы сделали, чтобы переносы удалились?
Нашел этот символ в интернете скопировал в параметр, все равно не работает
41. shoy 19 17.01.23 14:01 Сейчас в теме

(40)
ALT+0160

Как вы сделали, чтобы переносы удалились?


$)
Курсор установите в нужном месте. Удерживая ALT на цифровой клавиатуре наберите 0160.
dammit666; +1 Ответить
27. zoytsa 22.03.21 09:54 Сейчас в теме
спасибо! статья помогла! пробовал без статьи - после каждой колонки выходило ";" и в одну строку толком не собиралось
лишние эти ";" - видимо убирает использование 2 и 3 параметров в методе СоединитьСтроки()
29. ivanov660 3728 22.03.21 10:28 Сейчас в теме
(27) Здорово что - этот пример оказался довольно актуальным. Делал в качестве пособия коллегам в нашем отделе разработки, а заодно и сообществу пригодилось.
Тут в комментариях материала набралось похоже еще на одну публикацию)
30. tolyan_ekb 197 05.04.21 13:59 Сейчас в теме
(29) Подскажите, а расшифровка по колонке номенклатура работает?
31. ivanov660 3728 05.04.21 14:43 Сейчас в теме
(30) Расшифровка работает, но если хотите открытие справочника номенклатура (или еще что внутри), то придется обрабатывать вручную.
32. user1574479 14.09.22 01:40 Сейчас в теме
А как можно без конкатенации строк вот подобным образом, да и с разделение подстрок вложенной в строку таблицы сделать?
Прикрепленные файлы:
33. ivanov660 3728 14.09.22 11:26 Сейчас в теме
(32)Для этого вам необходимо уже работать с макетом отчета - группировать ячейки для поля ссылка. Вполне возможно сделать программно в процедуре "ПриКомпоновкеРезультата", обработав ДокументРезультат. Возможно получится и в редакторе макетов СКД.
34. user1574479 23.09.22 14:30 Сейчас в теме
(33) если группировать, то получится так что поле "Ссылка" будет на уровень выше, а поля справа будут группировкой ниже, и будут уже сворачиваемость как в иерархии, а нужно чтобы записи были как бы на одном уровне в макете, таким образом чтобы в одну строку помещать таб часть
35. ivanov660 3728 23.09.22 14:58 Сейчас в теме
(34)Это как раз можно программно обработать. Да, придется ручками поправить выходную таблицу.
36. user1574479 23.09.22 15:09 Сейчас в теме
(35)Пока не умею с отчетами программно работать, когда смотрю на эти процедуры работы с отчетом, мозг чуть не взрывается)
37. ivanov660 3728 23.09.22 16:15 Сейчас в теме
(36) Книжку Хрусталевой могу порекомендовать по СКД или тут на площадке поищите были примеры.
39. user886140 05.11.22 15:00 Сейчас в теме
Добрый день! А можно вывести в выражении "СоединитьСтроки" первые 10 записей?
вот тут например: СоединитьСтроки(ТаблицаЗначений(Номенклатура, Продажи), ";", ",")
Оставьте свое сообщение

См. также

СКД: вывод времени в формате день, час, минута, секунда

СКД Платформа 1С v8.3 Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Бухгалтерия 3.0 Россия Россия Абонемент ($m) Абонемент ($m)

Готовый пример вывода времени в формате хх д хх ч хх м хх средствами СКД.

1 стартмани

01.12.2022    1161    1    lagutiniv    2    

Еще один вариант отчета Статистика по документам

Статистика базы данных СКД Платформа 1С v8.3 Платформа 1С v8.3 Россия Россия Абонемент ($m) Абонемент ($m)

Отчет на базе СКД с отображением статистики по проведенным документам за указанный период с возможностью отбора по организации.

1 стартмани

14.10.2022    1439    1    scientes    0    

Добавление нумерации колонок СКД одной процедурой

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

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

1 стартмани

16.06.2022    2359    0    user700035_6550355    3    

Шаблон отчета на СКД (обычные формы) Промо

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

Улучшенный шаблон отчёта СКД, реализованный на обычных формах. Лаконичный и функциональный, весь необходимый минимум для управления отчётом вынесен на форму отчёта, что избавляет рядовых пользователей от необходимости лезть внутрь настроек отчёта. Форма сделана гибкой и позволяет легко себя адаптировать под Ваши потребности. Ряд элементов формы сделан сворачиваемыми и растягиваемыми.

2 стартмани

14.02.2022    5056    14    Eugen-S    3    

Таблица умножения, деления на СКД, управляемые формы (пример тестового задания)

Подготовка к аттестации СКД Платформа 1С v8.3 Платформа 1С v8.3 Абонемент ($m) Абонемент ($m)

Пример тестового задания и его реализации. Протестировано на версии платформы 8.3.18.1289.

1 стартмани

30.05.2022    3136    7    Johnson1987    13    

Вывод изображений штрихкодов на СКД

СКД Система компоновки данных Система компоновки данных 8.3.14 8.3.14 Конфигурации 1cv8 Конфигурации 1cv8 Россия Россия Абонемент ($m) Абонемент ($m)

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

1 стартмани

27.04.2022    2288    7    SergeyPZU    5    

СКД. Использование встроенного макета, разделителя страниц Промо

СКД Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

Пример работы с макетом СКД для начинающих программистов. За основу взят справочник подразделений, который есть в большинстве конфигураций. Показано, как вывести заголовок, детальные записи, подвал группировки и общий подвал. Приведен пример вставки разделителя страниц. Отчет можно использовать в любой конфигурации 1С: 8.

1 стартмани

31.03.2017    22445    26    Vin_Tik    0    

Редактирование данных в ячейках СКД (простая реализация)

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

На примере справочника "Номенклатура" рассмотрим, как в отчёте можно редактировать его реквизиты, и изменения мгновенно будут записываться в элемент справочника.

1 стартмани

11.03.2022    6459    6    Flashill    19    

Срез последних N записей, пример на СКД

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

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

1 стартмани

09.03.2022    3619    3    user-z99999    9    

Редактирование данных прямо в отчете СКД (как в Excel). Теперь с пересчетом итогов! Промо

СКД Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

Вам не подходит обычная форма ввода данных Клиент хочет прямо в отчете изменять цифры Тогда этот шаблон поможет вам быстро добавить в ваш отчет СКД механизм редактирования данных

2 стартмани

21.11.2012    52396    673    Visitizer    52    

Отчет "Документы "Реализации" на каждый день" когда была реализация

СКД Платформа 1С v8.3 Платформа 1С v8.3 1С:Комплексная автоматизация 2.х 1С:Комплексная автоматизация 2.х Россия Россия Абонемент ($m) Абонемент ($m)

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

1 стартмани

27.08.2021    2770    1    Shvapsss    2    

Авторегистрация обработок заполнения табличных частей и внешних печатных форм в информационной базе + Видео-пример использования шаблона - создание внешней печатной формы самостоятельно + Универсальный отчет СКД (набор отчетов в одном с группировками уров Промо

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

Если Вы станете использовать в Ваших разработках нижеприведенную методику, тогда Вам больше никогда не придется тратить свое время на объяснение пользователю, КАК ему зарегистрировать Вашу разработку в базе (пользователю достаточно только открыть её или перетащить драг-энд-дропом в 1С:Предприятие). И вообще, на мой взгляд данная методика является примером хорошего тона отношений разработчик-клиент

1 стартмани

03.03.2010    38202    443    Borisych    25    

Отчет с настройкой роли поля СКД со свойством период

СКД Платформа 1С v8.3 Платформа 1С v8.3 Система компоновки данных Система компоновки данных Платформа 1C v8.2 Платформа 1C v8.2 Конфигурации 1cv8 Конфигурации 1cv8 Управленческий учет Управленческий учет Абонемент ($m) Абонемент ($m)

Отчёт демонстрирует правильную настройку роли СКД со свойством «Период», по которой рассчитывается остаток. Этот отчет тестировался на конфигурации Управление торговым предприятием для Казахстана, редакции 2.0.19.2. Может работать на любой конфигурации, если имеется регистр накопления «ТоварыНаСкладах».

2 стартмани

01.04.2021    5599    4    softmaker    0    

Примеры использования функций СКД Массив (Array) и СоединитьСтроки (JoinStrings) в отчётах 1С 8

СКД Система компоновки данных Система компоновки данных Платформа 1C v8.2 Платформа 1C v8.2 Конфигурации 1cv8 Конфигурации 1cv8 Казахстан Казахстан Бухгалтерский учет Бухгалтерский учет Абонемент ($m) Абонемент ($m)

Здесь приведено два отчёта, в которых использованы функции СКД Массив (Array) и СоединитьСтроки (JoinStrings). Отчет по ГТД и отчет по продаже номенклатуры, оба тестировались на конфигурации Управление торговым предприятием (УТП) для Казахстана, редакции 2.0.19.2. Также добавлена электронная книга, в которой собраны знания по основам СКД, которые я получил, во время работы и изучения системы компоновки данных.

5 стартмани

15.03.2021    12868    38    softmaker    0    

Расшифровка СКД. Фильтр отчета по диапазону чисел. Переопределение обработки расшифровки. Не модальный режим

СКД Управляемые формы Управляемые формы Система компоновки данных Система компоновки данных 8.3.14 8.3.14 Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

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

1 стартмани

08.02.2021    8083    4    denmon88    1    

Использование характеристик в СКД Промо

СКД Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Россия Россия Абонемент ($m) Абонемент ($m)

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

1 стартмани

16.09.2011    74026    744    WaterSmith    81    

Простой пример отчета на СКД. Программное формирование, расшифровка, работа с параметрами и отборами

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

Делал внешний отчет для Документооборота, очень долго собирал примеры, как сделать его максимально простым в разработке.

1 стартмани

15.10.2020    10836    13    Stivens    10    

Быстрое формирование наборов данных Объект схемы СКД

СКД Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

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

1 стартмани

05.07.2020    11477    8    Алексей Воробьев    16    

Повторение шапки отчета в начале каждого листа при печати (СКД) + вывод колонтитулов. Промо

СКД Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Россия Россия Абонемент ($m) Абонемент ($m)

Повторение шапки отчета в начале каждого печатного листа при использовании системы компоновки данных (СКД). Пример выводов колонтитулов.

1 стартмани

21.08.2012    65857    351    nalivai-chai    30    

Получение курса валюты за период с помощью СКД

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

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

1 стартмани

04.02.2020    7626    1    KawaNoNeko    2    

Шаблон СКД (Универсальный отчет) Промо

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

Может кому понадобится. Нигде не нашел. Шаблон СКД (Универсальный отчет).

1 стартмани

11.05.2012    16711    274    tivanitsky    8    

Передача набора данных типа Объект в отчет СКД

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

Пример показывает, каким образом можно передать таблицу значений в отчет СКД (в набор данных объект). Пример работает как на обычных, так и на управляемых формах.

1 стартмани

12.11.2018    48711    12    evgen7938    4    

Примеры программной работы с СКД, а также программного создания управляемой формы

СКД Платформа 1С v8.3 Платформа 1С v8.3 Управляемые формы Управляемые формы Система компоновки данных Система компоновки данных Абонемент ($m) Абонемент ($m)

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

1 стартмани

12.08.2018    10902    31    MaxStrelok    0    

Альтернатива ОтборуСтрок() с возможностями условий отборов СКД

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

Типовой ОтборСтрок() использует только условия на равенство. Для таблицы формы, источником которой является "ДеревоЗначений" возможность отбора вообще отсутствует. Но есть возможность использовать всю широту возможностей отборов СКД.

1 стартмани

04.02.2018    11503    12    mszsuz    5    

Процессор вывода результата компоновки данных в JSON. И не только...

Внешние источники данных СКД Платформа 1С v8.3 Платформа 1С v8.3 Абонемент ($m) Абонемент ($m)

У каждого разработчика возникают задачи интеграции решений. Основная масса решений призвана вывести данные из «1С:Предприятие 8» в обусловленном формате. Разработчики используют огромную часть своих драгоценных ресурсов на реализацию определенной структуры вывода и необходимого формата. А что если...

1 стартмани

14.02.2017    32022    47    pbazeliuk    33    

Фильтр на таблицу значений системой компоновки данных

СКД Управляемые формы Управляемые формы Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

Часто здесь проскакивает вопрос, а как установить фильтр на таблицу значений в управляемых формах. На самом деле, есть только один способ - залить старую таблицу значений в новую, отфильтровав или отсортировав по каким-либо правилам. Здесь реализуем на компоновке данных.

1 стартмани

14.12.2016    15947    2    igel9780    2    

Полезные процедуры по работе с СКД и табличными документами (часть 1)

СКД Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

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

1 стартмани

03.09.2016    82082    115    json    25    

Расшифровки при программном формировании отчета на СКД

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

Что делать, если не работают расшифровки при программном формировании отчета на СКД? Ответ ниже.

1 стартмани

11.08.2016    38802    25    kotlovD    14    

Использование методов глобального контекста в системе компоновки данных или недокументированные возможности СКД

СКД Управляемые формы Управляемые формы Система компоновки данных Система компоновки данных Конфигурации 1cv8 Конфигурации 1cv8 Абонемент ($m) Абонемент ($m)

Прочитал на форуме, что СтрРазделить() и ТекущаяДата() работают в языке выражений системы компоновки данных. Почитал справку, там ничего не нашёл, поэтому не поверил. Посмотрел на практике – и правда работает… В данной статье попытался привести весь перечень методов, работающих в СКД, но не описанных в документации.

1 стартмани

05.08.2016    49776    29    klinval    41    

Разработка отчета СКД с использованием заглушек наборов данных

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

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

1 стартмани

25.06.2016    22065    10    json    15    

Штамп времени в отчете, написанном с использованием СКД

СКД Платформа 1С v8.3 Платформа 1С v8.3 Абонемент ($m) Абонемент ($m)

Иногда возникает необходимость вывести на форму отчета, который написан на СКД, какие-либо данные: - пользователя, который сформировал отчет; - время, когда был запущен отчет на формирование и т.д.

2 стартмани

25.05.2016    14678    0    wowik    7    

СКД и внешние источники данных. Набор данных — объект

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

О том, как можно работать с СКД, используя набор данных "Объект" (аналог временных таблиц, только передаваемых не напрямую в запрос, а в СКД)

1 стартмани

19.10.2015    79136    35    qapex    13