Значение не является значение объектного типа (ПолучитьОбласть)

1. tomskiy_proger1c 13 24.01.24 20:13 Сейчас в теме
Процедура СформироватьОтчет(ТабДок) Экспорт

    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента КАК ДоговорКонтрагента,
        |    СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента.Владелец КАК ДоговорКонтрагентаВладелец,
        |    СчетаУчетаРасчетовПоЗаймамИКредитам.СчетОсновногоДолга КАК СчетОсновногоДолга,
        |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК СуммаНачальныйОстатокДт,
        |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СуммаКонечныйОстатокДт,
        |    ХозрасчетныйОстаткиИОбороты.Период КАК Период
        |ПОМЕСТИТЬ ВТ_Долги
        |ИЗ
        |    РегистрСведений.СчетаУчетаРасчетовПоЗаймамИКредитам КАК СчетаУчетаРасчетовПоЗаймамИКредитам
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, , , {(&ВидыСубконто)}, {(Субконто1 = &Контрагент) КАК Поле2, (Субконто2 = &ДоговорКонтрагента) КАК Поле4}) КАК ХозрасчетныйОстаткиИОбороты
        |        ПО СчетаУчетаРасчетовПоЗаймамИКредитам.СчетОсновногоДолга = ХозрасчетныйОстаткиИОбороты.Счет
        |            И СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента.Владелец = ХозрасчетныйОстаткиИОбороты.Субконто1
        |            И СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента = ХозрасчетныйОстаткиИОбороты.Субконто2
        |ГДЕ
        |    (ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт > 0
        |            ИЛИ ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт > 0)
        |;
        |
        |////////////////////////////////////////////////////////////­////////////////////
        |ВЫБРАТЬ
        |    СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента КАК ДоговорКонтрагента,
        |    СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента.Владелец КАК ДоговорКонтрагентаВладелец,
        |    СчетаУчетаРасчетовПоЗаймамИКредитам.СчетОсновногоДолга КАК СчетОсновногоДолга,
        |    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт,
        |    ХозрасчетныйОстаткиИОбороты.Период КАК Период
        |ПОМЕСТИТЬ ВТ_Проценты
        |ИЗ
        |    РегистрСведений.СчетаУчетаРасчетовПоЗаймамИКредитам КАК СчетаУчетаРасчетовПоЗаймамИКредитам
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, , , {(&ВидыСубконто)}, {(Субконто1 = &Контрагент) КАК Поле2, (Субконто2 = &ДоговорКонтрагента) КАК Поле4}) КАК ХозрасчетныйОстаткиИОбороты
        |        ПО СчетаУчетаРасчетовПоЗаймамИКредитам.СчетУчетаПроцентов = ХозрасчетныйОстаткиИОбороты.Счет
        |            И СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента.Владелец = ХозрасчетныйОстаткиИОбороты.Субконто1
        |            И СчетаУчетаРасчетовПоЗаймамИКредитам.ДоговорКонтрагента = ХозрасчетныйОстаткиИОбороты.Субконто2
        |ГДЕ
        |    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт > 0
        |;
        |
        |////////////////////////////////////////////////////////////­////////////////////
        |ВЫБРАТЬ
        |    ВТ_Долги.ДоговорКонтрагента КАК ДоговорКонтрагента,
        |    ВТ_Долги.ДоговорКонтрагентаВладелец КАК ДоговорКонтрагентаВладелец,
        |    ВТ_Долги.СчетОсновногоДолга КАК СчетОсновногоДолга,
        |    ВТ_Долги.СуммаНачальныйОстатокДт КАК СуммаНачальныйОстатокДт,
        |    ВТ_Долги.СуммаКонечныйОстатокДт КАК СуммаКонечныйОстатокДт,
        |    ВТ_Проценты.СуммаОборотДт КАК СуммаОборотДт,
        |    ВТ_Проценты.СуммаОборотДт / 2 * 100 КАК Поле1,
        |    ВТ_Проценты.СуммаОборотДт / 2 * 100 * 365 КАК Поле2,
        |    ВТ_Долги.Период КАК Период
        |ПОМЕСТИТЬ ВТ_ИТОГ
        |ИЗ
        |    ВТ_Долги КАК ВТ_Долги
        |        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Проценты КАК ВТ_Проценты
        |        ПО ВТ_Долги.ДоговорКонтрагента = ВТ_Проценты.ДоговорКонтрагента
        |            И ВТ_Долги.ДоговорКонтрагентаВладелец = ВТ_Проценты.ДоговорКонтрагентаВладелец
        |            И ВТ_Долги.Период = ВТ_Проценты.Период
        |;
        |
        |////////////////////////////////////////////////////////////­////////////////////
        |ВЫБРАТЬ
        |    ВТ_ИТОГ.Период КАК Период,
        |    ВТ_ИТОГ.ДоговорКонтрагента КАК ДоговорКонтрагента,
        |    ВТ_ИТОГ.ДоговорКонтрагентаВладелец КАК Контрагент,
        |    ВТ_ИТОГ.СчетОсновногоДолга КАК Счет,
        |    ВТ_ИТОГ.СуммаНачальныйОстатокДт КАК СальдоНаНачало,
        |    ВТ_ИТОГ.СуммаКонечныйОстатокДт КАК СальдоНаКонец,
        |    ВТ_ИТОГ.СуммаОборотДт КАК НачисленныеПроценты,
        |    ВТ_ИТОГ.Поле1 КАК ПроцентнаяСтавкаДневная,
        |    ВТ_ИТОГ.Поле2 КАК ПроцентнаяСтавкаГодовая
        |ИЗ
        |    ВТ_ИТОГ КАК ВТ_ИТОГ
        |
        |УПОРЯДОЧИТЬ ПО
        |    Контрагент";
    
    Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода);
    Запрос.УстановитьПараметр("КонецПериода", КонецПериода);
    Запрос.УстановитьПараметр("Контрагент", Контрагент);
    Запрос.УстановитьПараметр("ДоговорКонтрагента", ДоговорКонтрагента);
    
    РезультатЗапроса = Запрос.Выполнить();
    
    Выборка = РезультатЗапроса.Выбрать();
    
    Макет = ПолучитьМакет("Макет");
    Область = Макет.ПолучитьОбласть("Шапка");
    ТабДок.Вывести(Область);
    
    Пока Выборка.Следующий() Цикл
        
        Область.Макет.ПолучитьОбласть("СтрокаОтчета");
        Область.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(Область);
        
    КонецЦикла;

КонецПроцедуры
Показать



Тут выдает ошибку и прерывается. Почему и как поправить? Не формировал особо отчетов вот так, не через скд, что то могу не знать.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
2. Sashares 33 24.01.24 20:28 Сейчас в теме
(1)
Область.Макет.ПолучитьОбласть("СтрокаОтчета");
не работает
Область = Макет.ПолучитьОбласть("Шапка");
работает
Найди отличия.
tomskiy_proger1c; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 33 24.01.24 20:28 Сейчас в теме
(1)
Область.Макет.ПолучитьОбласть("СтрокаОтчета");
не работает
Область = Макет.ПолучитьОбласть("Шапка");
работает
Найди отличия.
tomskiy_proger1c; +1 Ответить 1
4. пользователь 25.01.24 05:52
Сообщение было скрыто модератором.
...
3. Bukaska 147 24.01.24 22:36 Сейчас в теме
Как у вас выглядит макет?
Как я понимаю:
Область шапка
Область заголовок
Область Поставщик
Область Покупатель
Область Товар
Область подписи
Есть ли у вас в макете конкретно название области "Строка Отчета" Или вы решили выборку данных назвать таковой переменной?
Должна быть логика
ОбластьМакет. ПолучитьОбласть(1)
...
табДок.Вывести(1)

И так далее по каждой области. Разом все заполнить нельзя, 1С не телепат
Посмотрите статью. Старая правда, но думаю информации для понятия должно хватить https://infostart.ru/1c/tools/258450/
Оставьте свое сообщение

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