1С УПП. Создала внешний отчет "Консолидированный баланс", но не получается сделать расшифровку. Подскажите,пожалуйста.
Расшифровка нужна как в оборотно-сальдовой ведомости,т.е. если нажимаем на цифру по 60 счету(или сам счет),------>то открывается ведомость по 60 счету,
если в ведомости нажимаем на цифру,-------> то открывается карточка счета 60.
Как прописать в процедуре кнопки остальное?Через ,но правильно у меня не получилось это сделать.Помогите решить этот вопрос,пожалуйста.
Вот часть кода отчета.
Расшифровка нужна как в оборотно-сальдовой ведомости,т.е. если нажимаем на цифру по 60 счету(или сам счет),------>то открывается ведомость по 60 счету,
если в ведомости нажимаем на цифру,-------> то открывается карточка счета 60.
Как прописать в процедуре кнопки остальное?Через
ЗаполнитьПараметрыРасшифровкиОборотноСальдовойВедомости
Вот часть кода отчета.
Процедура КнопкаСформироватьНажатие(Кнопка)
............
.............
//Запрос "Касса"
Запрос = новый Запрос;
Запрос.УстановитьПараметр("Счет50",ПланыСчетов.Хозрасчетный.НайтиПоКоду("50"));
Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток КАК Касса_Н,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток КАК Касса_К
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , Счет В ИЕРАРХИИ (&Счет50), , ) КАК ХозрасчетныйОстаткиИОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Касса_Н = 0;
Касса_К = 0;
Касса_Н = Выборка.Касса_Н;
Касса_К = Выборка.Касса_К;
ОбластьДанные.Параметры.Касса_Н = Касса_Н;
ОбластьДанные.Параметры.Касса_К = Касса_К;
КонецЦикла;
// Запрос Денежные средства под отчетом
Запрос = новый Запрос;
Запрос.УстановитьПараметр("Счет60",ПланыСчетов.Хозрасчетный.НайтиПоКоду("60"));
Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
Запрос.УстановитьПараметр("Субконто1_1",Справочники.Контрагенты.НайтиПоКоду("БП-000431"));
Запрос.УстановитьПараметр("Субконто1_2",Справочники.Контрагенты.НайтиПоКоду("БП-000433"));
Запрос.УстановитьПараметр("Субконто1_3",Справочники.Контрагенты.НайтиПоКоду("БП-000432"));
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК СуммаНачальныйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СуммаКонечныйОстатокДт
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
| &НачалоПериода,
| &КонецПериода,
| ,
| ,
| Счет В ИЕРАРХИИ (&Счет60),
| ,
| Субконто1 = &Субконто1_1
| ИЛИ Субконто1 = &Субконто1_2
| ИЛИ Субконто1 = &Субконто1_3) КАК ХозрасчетныйОстаткиИОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
//ДСПО_Н = 0;
//ДСПО_К = 0;
ДСПО_Н = Выборка.СуммаНачальныйОстатокДт;
ДСПО_К = Выборка.СуммаКонечныйОстатокДт;
ОбластьДанные.Параметры.ДСПО_Н = ДСПО_Н;
ОбластьДанные.Параметры.ДСПО_К = ДСПО_К;
КонецЦикла;
// Запрос "Дебиторская задолженность"
Запрос = новый Запрос;
Запрос.УстановитьПараметр("Счет62",ПланыСчетов.Хозрасчетный.НайтиПоКоду("62"));
Запрос.УстановитьПараметр("Счет6201",ПланыСчетов.Хозрасчетный.НайтиПоКоду("62.01"));
Запрос.УстановитьПараметр("Счет6202",ПланыСчетов.Хозрасчетный.НайтиПоКоду("62.02"));
Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток КАК ДебиторскаяЗадолженность_Н,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток КАК ДебиторскаяЗадолженность_К
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
| &НачалоПериода,
| &КонецПериода,
| ,
| ,
| Счет В ИЕРАРХИИ (&Счет62)
| И НЕ Счет В (&Счет6201, &Счет6202),
| ,
| ) КАК ХозрасчетныйОстаткиИОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ДебиторскаяЗадолженность_Н = 0;
ДебиторскаяЗадолженность_К = 0;
ДебиторскаяЗадолженность_Н = Выборка.ДебиторскаяЗадолженность_Н;
ДебиторскаяЗадолженность_К = Выборка.ДебиторскаяЗадолженность_К;
ОбластьДанные.Параметры.ДебиторскаяЗадолженность_Н = ДебиторскаяЗадолженность_Н;
ОбластьДанные.Параметры.ДебиторскаяЗадолженность_К = ДебиторскаяЗадолженность_К;
КонецЦикла;
// Запрос "Готовая продукция"
Запрос = новый Запрос;
Запрос.УстановитьПараметр("Счет43",ПланыСчетов.Хозрасчетный.НайтиПоКоду("43"));
Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток КАК ГотоваяПродукция_Н,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток КАК ГотоваяПродукция_К
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , Счет В (&Счет43), , ) КАК ХозрасчетныйОстаткиИОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ГотоваяПродукция_Н = 0;
ГотоваяПродукция_К = 0;
ГотоваяПродукция_Н = Выборка.ГотоваяПродукция_Н;
ГотоваяПродукция_К = Выборка.ГотоваяПродукция_К;
ОбластьДанные.Параметры.ГотоваяПродукция_Н = ГотоваяПродукция_Н;
ОбластьДанные.Параметры.ГотоваяПродукция_К = ГотоваяПродукция_К;
КонецЦикла;
//Задолженность перед подотчетными лицами
Запрос = новый Запрос;
Запрос.УстановитьПараметр("Счет60",ПланыСчетов.Хозрасчетный.НайтиПоКоду("60"));
Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
Запрос.УстановитьПараметр("Субконто1_1",Справочники.Контрагенты.НайтиПоКоду("БП-000431"));
Запрос.УстановитьПараметр("Субконто1_2",Справочники.Контрагенты.НайтиПоКоду("БП-000433"));//
Запрос.УстановитьПараметр("Субконто1_3",Справочники.Контрагенты.НайтиПоКоду("БП-000432"));
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК РасходныеМатериалы_Н,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК РасходныеМатериалы_К
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
| &НачалоПериода,
| &КонецПериода,
| ,
| ,
| Счет В ИЕРАРХИИ (&Счет60),
| ,
| Субконто1 = &Субконто1_1
| ИЛИ Субконто1 = &Субконто1_2
| ИЛИ Субконто1 = &Субконто1_3) КАК ХозрасчетныйОстаткиИОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
РасходныеМатериалы_Н = 0;
РасходныеМатериалы_К = 0;
РасходныеМатериалы_Н = Выборка.РасходныеМатериалы_Н;
РасходныеМатериалы_К = Выборка.РасходныеМатериалы_К;
ОбластьДанные.Параметры.ЗППЛ_Н = РасходныеМатериалы_Н;
ОбластьДанные.Параметры.ЗППЛ_К = РасходныеМатериалы_К;
КонецЦикла;
//Собственный капитал.
Запрос = новый Запрос;
Запрос.УстановитьПараметр("Счет99",ПланыСчетов.Хозрасчетный.НайтиПоКоду("99"));
Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток КАК РасходныеМатериалы_Н,
| ХозрасчетныйОстаткиИОбороты.СуммаОборот КАК РасходныеМатериалы_К
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , Счет В ИЕРАРХИИ (&Счет99), , ) КАК ХозрасчетныйОстаткиИОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
РасходныеМатериалы_Н = 0;
РасходныеМатериалы_К = 0;
РасходныеМатериалы_Н = Выборка.РасходныеМатериалы_Н;
РасходныеМатериалы_К = Выборка.РасходныеМатериалы_К;
ОбластьДанные.Параметры.СК_Н = РасходныеМатериалы_Н;
ОбластьДанные.Параметры.СК_К = РасходныеМатериалы_К;
КонецЦикла;
ТабДок.Вывести(ОбластьДанные);
КонецПроцедуры
Процедура ЗаполнитьПараметрыРасшифровкиОборотноСальдовойВедомости(Знач ДатаНач, Знач ДатаКон, Знач ИмяРегистраБухгалтерии,
Область, Выборка, ОтборСубконто = Неопределено, ВыведенныйСчет = Неопределено, Знач ВВалютеСценария = Неопределено)
// Заполение значений для расшифровки
СчетДляРасшифровки = ?(Выборка.Счет <> NULL, Выборка.Счет, ВыведенныйСчет);
// Заполнение параметров расшифровки
ПараметрыОСВПоСчету = Новый Соответствие;
ПараметрыОСВПоСчету.Вставить("ИмяОбъекта", "ОборотноСальдоваяВедомостьПоСчету" + ИмяРегистраБухгалтерии);
ПараметрыОСВПоСчету.Вставить("ЗаполнитьПоУмолчанию", Истина);
ПараметрыОСВПоСчету.Вставить("Счет", СчетДляРасшифровки);
ПараметрыОСВПоСчету.Вставить("ДатаНач", ДатаНач);
ПараметрыОСВПоСчету.Вставить("ДатаКон", ДатаКон);
ПараметрыОСВПоСчету.Вставить("Отбор", ОтборСубконто);
Если ВВалютеСценария <> Неопределено Тогда
ПараметрыОСВПоСчету.Вставить("ВВалютеСценария", ВВалютеСценария);
КонецЕсли;
СписокРасшифровки = Новый СписокЗначений;
СписокРасшифровки.Добавить(ПараметрыОСВПоСчету, "ОСВ по счету " + Выборка.СчетПредставление);
Область.Параметры.Расшифровка = СписокРасшифровки;
КонецПроцедуры
Процедура ТабДокОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
БухгалтерскиеОтчеты.ДокументРезультатОбработкаРасшифровкиОборотноСальдовойВедомо сти(Элемент, Расшифровка, СтандартнаяОбработка, Ложь);
КонецПроцедуры
ПоказатьПрикрепленные файлы:
По теме из базы знаний
- Нестандартная расшифровка СКД или расшифровка одного отчета СКД при помощи другого отчета СКД установкой пользовательских настроек (в управляемых формах, методика + пример для УТ11)
- Расшифровка одного отчета СКД при помощи другого отчета СКД (в управляемых формах, классический вариант, методика + пример для УТ11)
- Нестандартная расшифровка СКД или расшифровка одного отчета СКД при помощи другого отчета СКД с выбором варианта настроек (в управляемых формах, методика + пример для УТ11)
- Расшифровка к отчету УНФ "Прибыли и убытки"
- Расшифровка статистических отчетов ЗКГУ
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот