Имя: Пароль:
1C
 
Ошибка компоновки макета по причине: Поле не найдено. Где искать?
0 DenYuliya
 
06.04.22
12:58
Добрый день всем!
Подскажите пожалуйста, может кто-то сталкивался?

Конфигурация УПЖКХ (1С:Учет в управляющих компаниях ЖКХ, ТСЖ и ЖСК, редакция 3.0 (3.0.108.2)), платформа  8.3 (8.3.18.1289), доработка через расширения.

Есть документ, у него есть форма отбора, данные для отбора получаются через макет компоновки данных.
В запросе нет никаких временных таблиц, источники данных - справочник и 2 регистра.

До добавления второго регистра в запрос (и его реквизита в качестве отбора) - все отлично работало.
А теперь невнятная ошибка, второй день с ней мучаюсь. Может есть у кого идеи, где искать, чего может не хватать? Я понимаю, что ГДЕ_ТО это самое поле "Действует" не найдено. Где, блин?!
Кеш чистила. На всякий случай сбросила к начальным настройкам форму документа, непосредственно в форме отбора их нет. Расширение выгружала- загружала обратно. Макет СКД переименовывала. Галку "Автозаполнение" на вкладке "Наборы данных" туда-сюдла тыркала. В консоли запросов запрос отрабатывает правильно и без ошибок. Фото в профиле есть)))).


Вот ошибка, вываливается на первой строке, которая "КомпоновщикМакета.Выполнить():

Поле не найдено "Действует"
{ГСР_ДопРеквизиты Документ.УПЖКХ_Предупреждение.Форма.ГСР_ФормаОтбора.Форма(54)}:    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаСКД, НастройкиКомпоновки, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
{ГСР_ДопРеквизиты Документ.УПЖКХ_Предупреждение.Форма.ГСР_ФормаОтбора.Форма(22)}:    МассивЛицевыхСчетов = ПолучитьМассивЛицевыхСчетов();

по причине:
Ошибка компоновки макета
по причине:
Поле не найдено "Действует"

Вот весь запрос:

ВЫБРАТЬ
    КВП_ЛицевыеСчета.Ссылка КАК ЛицевойСчет,
    КВП_ЛицевыеСчета.ГСРДОПСобственность КАК ПризнакСобственности,
    КВП_ЛицевыеСчета.Адрес.Владелец КАК Здание,
    ОтветственныйСрезПоследних.ОтветственныйВладелец КАК СобственникНаниматель,
    КВП_ЛицевыеСчетаСрезПоследних.Действует КАК Действует
ИЗ
    РегистрСведений.КВП_ЛицевыеСчета.СрезПоследних(&Период, ) КАК КВП_ЛицевыеСчетаСрезПоследних
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КВП_ЛицевыеСчета КАК КВП_ЛицевыеСчета
            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УПЖКХ_ОтветственныйСобственникНанимательЛицевогоСчета.СрезПоследних(, ) КАК ОтветственныйСрезПоследних
            ПО КВП_ЛицевыеСчета.Ссылка = ОтветственныйСрезПоследних.ЛицевойСчет
        ПО КВП_ЛицевыеСчетаСрезПоследних.ЛицевойСчет = КВП_ЛицевыеСчета.Ссылка
{ГДЕ
    (КВП_ЛицевыеСчета.Ссылка В ИЕРАРХИИ (&ЛицевойСчет)),
    (КВП_ЛицевыеСчета.Адрес.Владелец В ИЕРАРХИИ (&Здание))}
1 DenYuliya
 
06.04.22
13:14
В продолжение: если вынести этот запрос именно в отчет, то ошибки нет...
2 DenYuliya
 
06.04.22
13:26
Короче я сама спросила, сама ответила)))).


1) В модуле формы документа я получала одноименный макет, но другого документа. Заметила, создав новый макет с нуля, ему присвоилось автоматическое имя - 1С ругнулась другим матом - я полезла смотреть, ну и увидела.

Было: СхемаСКД = Документы.УПЖКХ_НачислениеПени.ПолучитьМакет("ДОПМакет");
а должно было быть:
СхемаСКД = Документы.УПЖКХ_Предупреждение.ПолучитьМакет("ДОПМакет");

2) В реквизитах ФОРМЫ есть реквизит с типом "КомпоновщикНастроекКомпоновкиДанных".
У него есть реквизит ОтборОбъект (туда варианты отбора пихаются), у которого заданы типы данных. В общем, я просто не добавила туда тип "Булево" для нового отбора.
Независимо от того, куда вы едете — это в гору и против ветра!