Сформировать ОСВ по Счету и отправить на почту регламентным заданием БП 3.0

1. БоНН 117 02.07.21 09:56 Сейчас в теме
Добрый день!
Подскажите, пожалуйста никто не занимался данным вопрос, может кто реализовывал похожую задачу поделитесь опытом.
Пытался сделать так :
	ТД = Новый ТабличныйДокумент;
	ОСВ = Отчеты.ОборотноСальдоваяВедомостьПоСчету.Создать();

	ПользовательскиеНастройкиКомпоновкиДанных = Новый ПользовательскиеНастройкиКомпоновкиДанных;
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("Счет"          , ПредопределенноеЗначение("ПланСчетов.Хозрасчетный.ВложенияВоВнеоборотныеАктивы"));
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("НачалоПериода" , НачалоКвартала(ДобавитьМесяц(ТекущаяДата(),-1)));
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("КонецПериода"  , КонецКвартала(ДобавитьМесяц(ТекущаяДата(),-1)));
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("Организация"   ,БухгалтерскийУчетПереопределяемый.ПолучитьЗначениеПоУмолчанию("ОсновнаяОрганизация",ПараметрыСеанса.ТекущийПользователь));
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("Периодичность"   ,0);
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("ВыводитьЗаголовок"   ,Истина);
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("УменьшенныйАвтоотступ"   ,Истина);
    
   // Заполняем дополнительные отборы (в примере только для субконто1 и субконто2)
	//НовыйОтбор                                        = ПользовательскиеНастройкиКомпоновкиДанных.Элементы.Добавить(Тип("ОтборКомпоновкиДанных"));
	//НовыйОтбор.ИдентификаторПользовательскойНастройки = "Отбор";    
   //ЗаполнитьЭлементОтбораКомпоновкиДанных(НовыйОтбор,Истина,ВидСравненияКомпоновкиДанных.Равно,"Субконто1", "");
    
    //Заполняем группировки
    Группировка1 = Новый Массив;
    ОписаниеГруппировки = Новый Структура("Использование,Поле", Истина, "Подразделение");
    Группировка1.Добавить(ОписаниеГруппировки);
    ОписаниеГруппировки = Новый Структура("Использование,Поле", Истина, "Субконто1");
    Группировка1.Добавить(ОписаниеГруппировки);
    ОписаниеГруппировки = Новый Структура("Использование,Поле", Истина, "Субконто2");
    Группировка1.Добавить(ОписаниеГруппировки);
    
    ПользовательскиеНастройкиКомпоновкиДанных.ДополнительныеСвойства.Вставить("Группировка", Группировка1);
    
	ОСВ.КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(ПользовательскиеНастройкиКомпоновкиДанных);
	
	ОСВ.СкомпоноватьРезультат(ТД);
	Возврат ТД;
Показать

На выходе получаю пустую таблицу.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
8. БоНН 117 07.07.21 11:06 Сейчас в теме +1 $m
Всем спасибо разобрался получилось вот так:

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

	ПараметрыОтчета.ПоказательБУ      = Истина;
	ПараметрыОтчета.ПоказательКоличество = Истина;
	ПараметрыОтчета.ПоСубсчетам       = Истина;
	ПараметрыОтчета.РазвернутоеСальдо = Ложь;
	ПараметрыОтчета.Периодичность     = 0;
	ПараметрыОтчета.ДанныеРасшифровки = ""; 
	ПараметрыОтчета.ИдентификаторОтчета = "ОборотноСальдоваяВедомостьПоСчету";
	
	ПараметрыОтчета.СхемаКомпоновкиДанных = ПоместитьВоВременноеХранилище(Схема, ЭтаФорма.УникальныйИдентификатор);
	ПараметрыОтчета.НастройкиКомпоновкиДанных = отчетОСВ.КомпоновщикНастроек.ПолучитьНастройки();

	АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор);
	БухгалтерскиеОтчетыВызовСервера.СформироватьОтчет(ПараметрыОтчета, АдресХранилища);
	РезОтчета = ПолучитьИзВременногоХранилища(АдресХранилища);
	
	Реквизит1.Вывести(РезОтчета.Результат);
Показать
himera_green; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. grey_yes 12 02.07.21 10:48 Сейчас в теме
А что в Бухгалтерии стандартная рассылка отчетов не работает/отсутствует?
Пользуюсь в ЗиУП стандартной рассылкой "Расчетных листков" на почту.
user1278383; +1 Ответить
3. БоНН 117 02.07.21 11:34 Сейчас в теме
(2)Стандартная рассылка отчетов есть и она работает, но осв по счету там нет. т.к. он Не соответствует логике построения(для него спрограммирована и форма отчета и форма настроек, а СКД потом настраивается программно). Из за чего эти настройки недоступны при автоматической рассылки и рассылка не происходит.
4. Kolesonik 15 02.07.21 11:43 Сейчас в теме
Посмотрите вот это
Прикрепленные файлы:
СКДПрограммно.erf
5. Климов Сергей 02.07.21 17:59 Сейчас в теме
Поковыряйте Банк и касса - Финансы - 1С:ФинОтчетность. Насколько я понимаю, там используется возможность программно формировать стандартные отчёты. Можно скопипастить.
6. starik-2005 3167 03.07.21 12:38 Сейчас в теме
В принципе элементарно делается, но проще сделать, чем объяснить, как)))
7. Romyl01 39 05.07.21 16:59 Сейчас в теме
а в чем проблема взять стандартную ведомость,и оттуда выдрать код.
8. БоНН 117 07.07.21 11:06 Сейчас в теме +1 $m
Всем спасибо разобрался получилось вот так:

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

	ПараметрыОтчета.ПоказательБУ      = Истина;
	ПараметрыОтчета.ПоказательКоличество = Истина;
	ПараметрыОтчета.ПоСубсчетам       = Истина;
	ПараметрыОтчета.РазвернутоеСальдо = Ложь;
	ПараметрыОтчета.Периодичность     = 0;
	ПараметрыОтчета.ДанныеРасшифровки = ""; 
	ПараметрыОтчета.ИдентификаторОтчета = "ОборотноСальдоваяВедомостьПоСчету";
	
	ПараметрыОтчета.СхемаКомпоновкиДанных = ПоместитьВоВременноеХранилище(Схема, ЭтаФорма.УникальныйИдентификатор);
	ПараметрыОтчета.НастройкиКомпоновкиДанных = отчетОСВ.КомпоновщикНастроек.ПолучитьНастройки();

	АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор);
	БухгалтерскиеОтчетыВызовСервера.СформироватьОтчет(ПараметрыОтчета, АдресХранилища);
	РезОтчета = ПолучитьИзВременногоХранилища(АдресХранилища);
	
	Реквизит1.Вывести(РезОтчета.Результат);
Показать
himera_green; +1 Ответить
9. user2053390 30.07.24 12:30 Сейчас в теме
БоНН, меня интересует отправка ОСВ по расписанию. Как с вами связаться?
10. БоНН 117 30.07.24 13:26 Сейчас в теме
(9) Добрый день что конкретно Вас интересует. Реализация или готовое решение?
11. user2053390 31.07.24 15:26 Сейчас в теме
12. user2053390 01.08.24 11:31 Сейчас в теме
Разобрался сам. Тема помогла.
13. user2053390 01.08.24 14:13 Сейчас в теме
Формирую по счету 51, выводит просто общую сумму одной строкой.
Можете подсказать, как сделать группировку по банковским счетам?

    новаяГРуппировка = ПараметрыОтчета.Группировка.Добавить();
    новаяГРуппировка.Использование = Истина;
    новаяГРуппировка.Поле = "БанковскиеСчета";
    новаяГРуппировка.Представление = "БанковскиеСчета";


так не работает.
14. user2053390 02.08.24 09:30 Сейчас в теме
Не могу понять, группировка по субконто работает, но только по второму или третьему субконто, первое почему-то вообще не выводится. Подскажите ,что я забыл?
15. user2053390 02.08.24 09:49 Сейчас в теме
Странно, но в другой базе выводит всё верно. Ну и хорошо, вопрос снят.
16. БоНН 117 02.08.24 09:51 Сейчас в теме
(15) Мне сейчас посмотреть негде попал к людям в белых халатах а по памяти не помню.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот