Вывод результата СКД в таблицу значений

11.12.19

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

Вывод результата СКД в таблицу значений по Отбору Компоновки Данных

Скачать файл

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

Наименование По подписке [?] Купить один файл
Вывод результата СКД в таблицу значений:
.epf 12,98Kb
105
105 Скачать (1 SM) Купить за 1 850 руб.

1) В обработку добавим Макет с типом “Схема компоновки данных” (СКД) (рис.1)

 2) Откроем нашу СКД(Макет) и опишем её (Сделаем запрос, заполним “Выбранные поля” и “Отборы”). (рис.2 и рис.3)

3) Добавим реквизит формы “ОтборНаФорме” с типом “КомпоновщикНастроекКомпоновкиДанных”. Перенесём таблицу  с отборами на форму.(рис.4). Реквизит мы назвали "ОтборНаФорме", но там не только настройки отбора. Помимо "Отбора", на форму можно вынести: "Параметры данных", "Выбор", "Порядок" - любую настройку Компоновщика Настроек - ОтборНаФорме.Настройки.  

4) Добавим реквизит формы “ТаблицаОжиданий” с типом "ТаблицаЗначений", куда будем выгружать результата нашей СКД. Перенесём таблицу на форму. (рис.5).

5) В обработчике формы “ПриСозданииНаСервере” Инициализируем компоновку, чтобы окошко с отборами заполнялось выбранными отборами нашего СКД.

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	ИнициализироватьКомпоновкуДанных(Ложь);
	
КонецПроцедуры

&НаСервере
Процедура ИнициализироватьКомпоновкуДанных(ВсегдаИспользоватьНастройкиПоУмолчанию)
	
	СхемаКомпоновкиДанных = РеквизитФормыВЗначение("Объект").ПолучитьМакет("СКДОтбора");
	
	URLСхемы = ПоместитьВоВременноеХранилище(СхемаКомпоновкиДанных, Новый УникальныйИдентификатор());
	
	ИсточникНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(URLСхемы);
	
	ОтборНаФорме.Инициализировать(ИсточникНастроек);
	
	ОтборНаФорме.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
					
КонецПроцедуры

 6) Осталось выполнить нашу СКД(Макет) по Настройкам на форме (ОтборНаФорме.Настройки) и результат загрузить в таблицу значений

&НаКлиенте
Процедура Заполнить(Команда)
	ЗаполнитьНаСервере();
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьНаСервере()
	
	ТаблицаОжиданий.Очистить();

	СхемаКомпоновкиДанных = РеквизитФормыВЗначение("Объект").ПолучитьМакет("СКДОтбора");
	
	
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, ОтборНаФорме.Настройки,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
		
	ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки);
	
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
	ТЗ = Новый ТаблицаЗначений;
	ТЗ = ТаблицаОжиданий.Выгрузить();
	ПроцессорВывода.УстановитьОбъект(ТЗ);
	ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
	
	ТаблицаОжиданий.Загрузить(ТЗ);	
		
КонецПроцедуры

 

Стоит отметить:

1) В компоновщик настроек можно передать параметры. Параметры должны быть в описании нашей СКД (закладка "Параметры").  "НастройкиКомпановщикаНастроек" - в нашем примере это "ОтборНаФорме.Настройки"

Процедура УстановитьЗначениеПараметраНастроек(НастройкиКомпоновщикаНастроек, ИмяПараметра, Значение)
	Параметр = НастройкиКомпоновщикаНастроек.ПараметрыДанных.Элементы.Найти(ИмяПараметра);
	Если Параметр <> Неопределено Тогда
		Параметр.Значение = Значение;
		Параметр.Использование = Истина;
	КонецЕсли;
КонецПроцедуры

2) Настройки нашего реквизита "ОтборНаФорме" можно сохранять/восстанавливать, например, в/из константы.

Сохраняем:

&НаСервере
Процедура СохранитьНастройкиНаСервере()
	Константы.НастройкиНазначенияЗадачПоРезультатамАнкетирования.Установить(Новый ХранилищеЗначения(ОтборНаФорме.Настройки, Новый СжатиеДанных(9)));
КонецПроцедуры

&НаКлиенте
Процедура СохранитьНастройки(Команда)
	СохранитьНастройкиНаСервере();
КонецПроцедуры

В процедуре инициализации восстанавливаем:

ТекНастройки = Константы.НастройкиНазначенияЗадачПоРезультатамАнкетирования.Получить().Получить();
Если ТекНастройки = Неопределено Или ВсегдаИспользоватьНастройкиПоУмолчанию Тогда
     ОтборНаФорме.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
Иначе
     ОтборНаФорме.ЗагрузитьНастройки(ТекНастройки);
КонецЕсли;
ОтборНаФорме.Восстановить(СпособВосстановленияНастроекКомпоновкиДанных.ПроверятьДоступность);

3) Результат СКД можно выгрузить в "ДеревоЗначений". Имеет смысл, если Структура нашего СКД тоже имеет древовидную структуру, имеет больше одной группировки.

4) Результат СКД можно выгружать не только в КоллекциюЗначений, коей является ТаблицаЗначений, но и в ТабличныйДокумент. Для этого нужно указать другой объект для вывода результата и в параметрах процедуры выполнения компоновщика указать тип генератора.

Для таблицы значений:

МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиКомпоновщикаНастроек,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;

Для табличного документа(тут тип генератора можно не указывать, подходит тип по умолчанию):

МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиКомпоновщикаНастроек);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;

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

СхемаКомпоновкиДанных.НаборыДанных.Основной1.Запрос = СтрЗаменить(ТекстЗапроса, "ПЕРВЫЕ 7", "ПЕРВЫЕ " + Строка(КоличествоДокументов));

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

Для автоматического режима ничего восстанавливать не нужно. Форму мы не открываем. Передаём сохранённую настройку из константы(НастройкаИзКонстанты) прямо в функцию выполнения Компоновщика.

МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкаИзКонстанты ,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));

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

Все описанные возможности есть в присоединённом файле.

 

СКД

См. также

SALE! 15%

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

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

10000 руб.

02.09.2020    159652    875    399    

862

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

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

15.05.2024    8720    implecs_team    6    

47

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

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

3 стартмани

05.02.2024    7010    56    obmailok    21    

79

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

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

1 стартмани

31.01.2024    3155    5    Yashazz    1    

34

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

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

2 стартмани

11.12.2023    10825    23    John_d    25    

124

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

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

05.12.2023    8046    PROSTO-1C    15    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. feva 525 04.08.17 13:54 Сейчас в теме
Полезненько! Бывают ситуации когда это нужно. Спасибо за "шаблон".
2. echo77 1906 04.08.17 14:57 Сейчас в теме
Уже было решение, правда универсальное.
Непонятно почему так:
ТЗ = Новый ТаблицаЗначений;
	ТЗ = ТаблицаОжиданий.Выгрузить();
	ПроцессорВывода.УстановитьОбъект(ТЗ);


Зачем создавать таблицу значений, потом заменять ее выгрузкой из ТЧ и устанавливать это в СКД.
Нельзя ли просто создать пустую таблицу значений и установить ее в качестве объекта СКД?
Revachol; rusmm93; 1c_ssnik; daho; ИНТЕГРА; igormiro; +6 Ответить
3. yalex9 110 04.08.17 15:05 Сейчас в теме
(2) В новой таблице обязательно нужно создавать типизированные колонки - громоздко:)
Да, в моём случае строка - "ТЗ = Новый ТаблицаЗначений;" - лишняя
Спасибо за комментарий.
4. Bazil 560 07.08.17 09:18 Сейчас в теме
(3) В новой таблице не нужно создавать типизированные колонки. Достаточно пустой таблицы.
1c_ssnik; +1 Ответить
5. yalex9 110 07.08.17 10:06 Сейчас в теме
(4) Провреил. Действительно достаточно создать пустую таблицу.
Видимо что-то поменялось в новых релизах, раньше требовал типизацию.
Тогда строка - "ТЗ = ТаблицаОжиданий.Выгрузить();" - лишняя
Спасибо.
7. nk25 09.08.17 14:20 Сейчас в теме
(4) странно, но в типовых конфигурациях уже есть:
Функция ВыгрузитьРезультатСКДПоМакету(МакетКомпоновки, ВнешниеНаборыДанных = Неопределено, ВыводВДерево = Ложь) Экспорт
	
	Результат = Новый ТаблицаЗначений;
	Если ВыводВДерево Тогда
		Результат = Новый ДеревоЗначений;
	КонецЕсли;
	
	//Создаем процессор компоновки
	ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
	Если ВнешниеНаборыДанных = Неопределено Тогда
		ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,,,Истина);
	Иначе
		ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных,,Истина);
	КонецЕсли;
	
	//Выводим в таблицу значений
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
	ПроцессорВывода.УстановитьОбъект(Результат);
	Результат = ПроцессорВывода.Вывести(ПроцессорКомпоновки, Истина);
	Возврат Результат;
	
КонецФункции
Показать

статья про велосипед?
Tatyana_012345; serverstar; leaguener; Unknown31; daho; rpgshnik; +6 Ответить
8. yalex9 110 09.08.17 14:51 Сейчас в теме
(7) Конечно есть, но тут то статья
voneska7; serverstar; victory; Мах; AndrewKop; rpgshnik; jONES1979; +7 Ответить
9. jONES1979 24.08.17 12:42 Сейчас в теме
(8) C примерами и скриншотами всегда интереснее! Спасибо!
user1600097; userMKA; voneska7; Мах; +4 Ответить
6. yegorovnv 1 09.08.17 08:56 Сейчас в теме
Компоновщик - не?
Поправьте синтаксические ошибки в статье.
10. serg1983 21 17.01.20 14:10 Сейчас в теме
хорошо глобальней вопрос? заполнить тз данными с вариантом
11. yalex9 110 17.01.20 14:41 Сейчас в теме
(10) Справочник "Варианты отчетов". В нём есть реквизит "Настройки" с типом Хранилище
12. user780057 25.08.20 17:57 Сейчас в теме
Здравствуйте! Обращаюсь не только к Александру, но и к тем кто читает этот текст. (Если можете подсказать, то буду рад и премного благодарен.)
Параметр НастройкиКомпоновщикаНастроек неопределен у вас в коде - выдает ошибку. Можете уточнить этот момент? (Это касаемо ваших примеров Стоит отметить: )
Или подскажите пожалуйста:
Есть макет СКД из отчета "СтатистикаПерсонала" Имя макета "СхемаКомпоновкиДанныхКадры" (в последних ЗУП и ERP, наименование отчета "Численность и текучесть кадров"). Никак, пока, не могу получить данные программно оттуда. Везде на форумах недописки, код не работает, либо устарел, отлаживать замучался уже.
Для меня это новая тема просто. Был бы благодарен за совет или помощь.
В общем нужны данные которые получает СКД. Выводить визуально необязательно. Мне нужно получить тз как из обычного запроса, для дальнейшей работы с полученными данными. Но в моем случае, в отличии от вашего примера, еще есть Варианты отчета в макете(см.скрин.)

Можно любой пример или ссылку, как получить данные из макета скд с вариантами отчетов (нужен только один вариант, не все)? . С запросом параметров и передачей параметров в скд если нужно.
Нужно получить данные выделенные на втором скрине где показан отчет.
Прикрепленные файлы:
13. user780057 25.08.20 20:15 Сейчас в теме
(12) Возникает ошибка
Скрытый текст


То есть значение параметра из СКД неверно передается в общий модуль при инициализации.

&НаКлиенте
Процедура Заполнить(Команда)
	ЗаполнитьНаСервере();
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьНаСервере()
	
	ТаблицаВывода.Очистить();

	СхемаКомпоновкиДанных = РеквизитФормыВЗначение("Объект").ПолучитьМакет("СхемаКомпоновкиДанныхКадры");
	
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, ОтборНаФорме.ПолучитьНастройки(),,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
	
	ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,,);
	
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
    ТЗ = Новый ТаблицаЗначений;
	ТЗ = ТаблицаВывода.Выгрузить();
	ПроцессорВывода.УстановитьОбъект(ТЗ);
	ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
	
	//ТаблицаВывода.Загрузить(ТЗ);	
		
КонецПроцедуры

Показать
Прикрепленные файлы:
15. user780057 26.08.20 16:45 Сейчас в теме
(13) С ошибкой разобрался.
При добавлении значения четвертого параметра Истина она уходит.
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,,Истина);

Но проблема остается. Отчет формируется пустой. Не важно какой макет из стандартных отчетов я беру, ни один не формируется. Кроме заголовка ничего не выводит. Перепробовал кучу вариантов с разных форумов. Уже мозг весь сломал. У кого нибудь есть рабочий вариант для примера? Желательно для ЗУП или ERP.
Что может быть не так? Прикрепил файл своей обработки. Помогите пожалуйста разобраться!
Прикрепленные файлы:
ВнешняяОбработкаКадровыеДанные.epf
16. yalex9 110 26.08.20 17:42 Сейчас в теме
(15) ТаблицаВывода = Новый ТабличныйДокумент; - Может эта строка лишняя? Есть ведь Поле табличного документа на форме
user780057; +1 Ответить
17. user780057 26.08.20 18:37 Сейчас в теме
(16) Спасибо за ответ. И так и так пробовал. Результат один и тот же - пустой отчет. Вы пробовали макеты компоновки из типовых отчетов выводить? Работает? Я из ЗУП много подставлял. Никак. Код перепроверял. Может тонкость какая в самом типовом макете СКД есть и ему каких то параметров не хватает или структура вывода другая?
18. yalex9 110 26.08.20 19:24 Сейчас в теме
(17) назовите новый табличной документ по-другому, не как ПТД на форме.
ТД = Новый ТабличныйДокумент;

Потом не Показать(), а Вывести()

ПолеВывода.Вывести(ТД);
20. user780057 27.08.20 20:18 Сейчас в теме
(18)
ПолеВывода.Вывести(ТД);

Спасибо. Тоже самое. Сейчас проверил ваш вариант. До этого тоже подобное пробовал.
У вас нет рабочего варианта с программным выводом любого макета? Я не совсем нуб же в 1с. Три года опыта. Тема с програмным выводом СКД новая для меня. В чем проблема не вижу вообще, глаз уже замылился. Нужна конкретная помощь или рабочий пример.
19. yalex9 110 27.08.20 14:16 Сейчас в теме
(17) В вашу обработку вставил свою СКД(Макет) - всё благополучно выводится.

В типовых отчетах, как правило, есть код, который выполняется из модуля отчета , и без этого кода сама по себе СКД(Макет), скорее всего, работать не будет
user780057; +1 Ответить
21. user780057 27.08.20 22:02 Сейчас в теме
(19) Благодарю. Мысль была правильной. Отчет "Статистика персонала" в общий модуль обращался для инициализации отчета и замены полей в наборе данных. Так как у меня не отчет, а обработка, то пришлось некоторые процедуры из общих модулей выдернуть, переделать под себя и вставить в мою форму, так как передаваемый в них параметр ЭтотОбъект не соответствовал запрашиваемому ими. Все заработало. +++++
Вы мой герой! )))
14. yalex9 110 26.08.20 10:33 Сейчас в теме
(12) Добрый день.

"НастройкиКомпоновщикаНастроек" - это просто наименование параметра, можно как угодно назвать.

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

Если форма не нужна, то нужно определить Настройки в коде. Например взять из справочника "Варианты отчетов".
1c_ssnik; user780057; +2 Ответить
22. cdpomaa 5 02.04.22 20:43 Сейчас в теме
Пытаюсь выполнить этот код но ТЗ на выходе пустая


СхемаКомпоновкиДанных = Отчеты.СостояниеШтатногоРасписания.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройки = СхемаКомпоновкиДанных.ВариантыНастроек.Найти("АнализШтатногоРасписания").Настройки;

КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));

ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных);

ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;

ТаблицаЗначений = Новый ТаблицаЗначений;
ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
23. pstrig 18.04.22 13:35 Сейчас в теме
24. Flipp 17.06.22 14:31 Сейчас в теме
В скаченной обработке вообще нет таблицы значений на форме, зачем так обманывать!?
Прикрепленные файлы:
25. yalex9 110 17.06.22 15:34 Сейчас в теме
(24) Во вложенном примере ТЗ/ДЗ не выводится на форму, но ведь создаётся и обрабатывается. Какие проблемы сделать на форме таблицу и вывести туда результат. Суть примера в другом и описана жирным шрифтом в конце статьи.
26. shaykhelov 24.01.23 20:40 Сейчас в теме
Приветствую!

Уточните почему могут не сформироваться наборы данных после выполнения компоновщика макета? Код выполняется:

СхемаКомпоновкиДанных = РеквизитФормыВЗначение("Объект").ПолучитьМакет("СКДОтбора");
	
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки   = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, ОтборНаФорме.Настройки,,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));

но здесь ошибка:

СхемаКомпоновкиДанных.НаборыДанных.Основной1.Запрос =  "<новый запрос>";

так как в наборах данных пусто.
27. furman2000 16 21.11.23 05:38 Сейчас в теме
Добрый день!
Файл не соответствует описанию.
Прикладываю один скрин из файла, в описании совершенно другой скрин.
Прикрепленные файлы:
28. furman2000 16 21.11.23 07:02 Сейчас в теме
Под какую конфигурация написана данная обработка?
29. krikmarin 2 12.08.24 10:34 Сейчас в теме
Инструкция работает на любых отчетах, построенных на БСП. Автор, спасибо тебе. Довольно подробно разобрал.
30. Aleksandr_prof 197 19.08.24 14:47 Сейчас в теме
Почему может быть ошибка "Не поддерживается вывод таблиц и диаграмм в универсальную коллекцию значений"?
Оставьте свое сообщение