Опыт работы с Универсальным отчетом для УПП 1.3

13.09.14

Разработка - Универсальные функции

Хочу поделиться примерами работы  с Универсальным отчетом для Управление производственным предприятием, редакция 1.3.31.1.

Скачать файл

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

Наименование По подписке [?] Купить один файл
ФинОтчеты.zip
.zip 90,31Kb
14
14 Скачать (1 SM) Купить за 1 850 руб.

Приемы:

1. Широко используются различные методы "УниверсальныйОтчет" и "УниверсальныйОтчетПоМетаданным", которые используются большинством отчетов УПП 1.3.

 	 ... 
Форма_Отчет = Отчеты.УниверсальныйОтчетПоМетаданным.ПолучитьФорму();
Объект_Отчет =  Форма_Отчет.ОтчетОбъект;
Форма_Отчет.РасширеннаяНастройка = Ложь;
Форма_Отчет.ЭтоОтработкаРасшифровки  = Истина;
...

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

	 ... 
ДеревоРезультатов = УниверсальныйОтчет.ПостроительОтчета.Результат.Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
УниверсальныйОтчет.УстановитьПредставленияПолей(УниверсальныйОтчет.мСтруктураПредставлениеПолей, УниверсальныйОтчет.ПостроительОтчета);
УдалитьОтборПериодичность_Локальный(УниверсальныйОтчет, ОтборПериодичность);
...
Результат_Продажи = Получить_Результат_Продажи(); //дз
Результат_ВедомостьПоТоварам_19 = Получить_Результат_ВедомостьПоТоварам(Ложь); //дз
Результат_ВедомостьПоТоварам_20 = Получить_Результат_ВедомостьПоТоварам(Истина); // дз
ТЗ_Дополнительные_Договора = ТЗ_Дополнительные_Договора(); // тз
Подготовить_ДЗ(ДеревоРезультатов,  Результат_Продажи, Результат_ВедомостьПоТоварам_19, Результат_ВедомостьПоТоварам_20, ТЗ_Дополнительные_Договора); // сложение ДЗ и ТЗ
ТабличныйДокумент.Очистить();
Из_Макета_IgorXml(ТабличныйДокумент); // Вывод через макет...

Из СКД:

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


3. Для всех запросов применяются единые отборы и настройки.

	 // сохранить измерения
Список_Измерения  = Новый СписокЗначений;
Для каждого Стр_Измерения Из УниверсальныйОтчет.ПостроительОтчета.ИзмеренияСтроки  Цикл
    Список_Измерения.Добавить(Стр_Измерения);
КонецЦикла; 
// сохранить отбор
Список_Отборы = Новый СписокЗначений;
Для каждого Стр_Отборы Из УниверсальныйОтчет.ПостроительОтчета.Отбор  Цикл
    Список_Отборы.Добавить(Стр_Отборы);
КонецЦикла;

4. Во многих случаях делается расшифровка.

 	 ...
ТабличныйДокумент.Вывести(Область,1,"Группа",Истина);
Для каждого СтрокаУровень_1 Из ДеревоРезультатов.Строки  Цикл
    Для каждого Стр_ПроектРодитель Из СтрокаУровень_1.Строки  Цикл
        Область_ПроектРодитель = Макет.ПолучитьОбласть("СтрокаПроектРодитель");
        ЗаполнитьЗначенияСвойств(Область_ПроектРодитель.Параметры,Стр_ПроектРодитель );
        Расшифровка_6  = Новый Структура;
        Расшифровка_6.Вставить("ПроектРодитель", Стр_ПроектРодитель.ДоговорКонтрагентаОсновнойПроектРодитель);
        Расшифровка_6.Вставить("НомерЗапроса", 6);
        Область_ПроектРодитель.Параметры.Расшифровка_6 =  Расшифровка_6;
...


5. Работают свойства и категории объектов. 

 	     ...
    // Добавление дополнительных полей
    // Необходимо вызывать для каждого добавляемого дополнительного поля.
    // УниверсальныйОтчет.ДобавитьДополнительноеПоле(, , );
    //***00X***IgorXml***04.07.2014 10:59:05***(        
    //УниверсальныйОтчет.ДобавитьДополнительноеПоле("ВалютаВзаиморасчетов");    
    // Сумма - св-во договор
    УниверсальныйОтчет.ДобавитьДополнительноеПоле("ДоговорКонтрагентаСвойство693d68a6f4ce11e1be4f782bcb70dca2Значение",ТипРазмещенияРеквизитовИзмерений.Отдельно , 3);
    // Номер смет - св-во договора
    УниверсальныйОтчет.ДобавитьДополнительноеПоле("ДоговорКонтрагентаСвойство1885578effa011e3800b782bcb70dca2Значение",ТипРазмещенияРеквизитовИзмерений.Отдельно , 3);
    // Передан на хранение - св-во договора
    УниверсальныйОтчет.ДобавитьДополнительноеПоле("ДоговорКонтрагентаСвойство7dacacce443911e29165782bcb70dca2Значение",ТипРазмещенияРеквизитовИзмерений.Отдельно , 3);
    //***)        
КонецПроцедуры // УстановитьНачальныеНастройки()


Список отчетов:
1. Карточка подрядчика.
2. Отчет финансирование-поставки-затраты.

Универсальный отчет СКД УПП

См. также

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Расчет себестоимости в типовых конфигурациях 1С – для многих «черный ящик», работающий по жестко зашитым в него алгоритмам. Реализация этого «черного ящика» может меняться в зависимости от конкретной конфигурации – УПП, БП 3.0, ERP. Но принцип работы везде одинаковый. Расскажем о том, как устроен расчет себестоимости, как его дорабатывать, и какие методы могут быть эффективны и без доработок.

27.12.2024    12761    Begemoth80    32    

87

Универсальные функции Программист Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Благодаря этим пяти строчкам можно больше не заморачиваться с загрузкой из внешних файлов. Пользуюсь везде, всегда и постоянно.

21.05.2024    28418    dimanich70    83    

151

Универсальные функции Программист Стажер Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    30406    atdonya    25    

59

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Программист Стажер Платформа 1С v8.3 1С:Бухгалтерия 3.0 Бесплатно (free)

Используются для создания новых объектов в конфигурации, чтобы не забыть, что нужно сделать. Сделано на примере 1С:Бухгалтерия предприятия, в других конфигурациях могут быть другие, а могут быть и похожие объекты.

28.12.2023    7469    mrXoxot    11    

113

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

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    6354    ke.92@mail.ru    17    

66

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Управленческий учет Бесплатно (free)

Разбираемся, зачем в системе ЕРП созданы справочники: ключи аналитик учета, зачем созданы аналогичные по набору измерений регистры сведений. Какие проблемы они решают, какие создают новые и что с этим делать.

08.11.2023    15781    ids79    26    

84
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. PiccaHut001 22.09.14 18:43 Сейчас в теме
Допишите статью, пока не понятно откуда что берётся и зачем оно надо.
Вызов
Из_Макета_IgorXml(ТабличныйДокумент); // Вывод через макет...
вообще убил, к чему он? Какой-то сон разума.
2. IgorXml 731 22.09.14 19:40 Сейчас в теме
(1) PiccaHut001, Есть случаи, когда одним запросом трудно собрать все нужные данные. Я ещё беру из СКД-шных отчетов. Собираю в разные таблицы значений и ДЗ. Потом это надо вывести. Лучше в свой макет. Да ещё с расшифровками. Только своим Макетом и можно.
3. DEG156 28 26.09.14 11:28 Сейчас в теме
Автор молодец. Как пример - возьму на заметку.
Оставьте свое сообщение