Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
17 июн 2024, 15:40

Замена Метода ЕстьРеквизитДокумента в Комплексной Автоматизации

Автор novichok12, 17 июн 2014, 09:14

0 Пользователей и 1 гость просматривают эту тему.

novichok12

Доброго времени суток. Была печатная форма - в УТ работала нормально, когда перешли на КА стало выдавать ошибку
Метод объекта не обнаружен (ЕстьРеквизитДокумента)
Сам в 1с почти опыта работы не имею, подскажите как поправить(

Как я понял ругается на этот участок кода в частности на метод ЕстьРеквизитДокумента

#// Процедура заполняет построитель отчета.
//
// Параметры:
//  ИмяМакета -Название макета, в который выводится печатная форма.
//
Процедура ЗаполнитьПостроительОтчета(НеЗаполнятьНастройки = Ложь)  Экспорт



МетаданныеДокумента = Метаданные.Документы[ВидДокументов];

ИмяДокумента = МетаданныеДокумента.Имя;




Если мИмяМакета = Неопределено И ОбщегоНазначения.ЕстьРеквизитДокумента("СкладОтправитель", МетаданныеДокумента) Тогда
мИмяМакета = "БланкОтправитель";
КонецЕсли;

Если ОбщегоНазначения.ЕстьРеквизитДокумента("Склад", МетаданныеДокумента) Тогда
мИмяРеквизитаСклад = "Склад";
ИначеЕсли ОбщегоНазначения.ЕстьРеквизитДокумента("СкладОрдер", МетаданныеДокумента) Тогда
мИмяРеквизитаСклад = "СкладОрдер";
ИначеЕсли ОбщегоНазначения.ЕстьРеквизитДокумента("СкладГруппа", МетаданныеДокумента) Тогда
мИмяРеквизитаСклад = "СкладГруппа";
ИначеЕсли мИмяМакета = "БланкОтправитель"
    И ОбщегоНазначения.ЕстьРеквизитДокумента("СкладОтправитель", МетаданныеДокумента) Тогда
мИмяРеквизитаСклад = "СкладОтправитель";
ИначеЕсли мИмяМакета = "БланкПолучатель"
    И ОбщегоНазначения.ЕстьРеквизитДокумента("СкладПолучатель", МетаданныеДокумента) Тогда
мИмяРеквизитаСклад = "СкладПолучатель";
КонецЕсли;

мСклад = Документ[мИмяРеквизитаСклад];

ЕстьСкладВТабЧасти = ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("Склад", МетаданныеДокумента, "Товары");
ЕстьСоставНабора   = ОбщегоНазначения.ЕстьТабЧастьДокумента("СоставНабора", МетаданныеДокумента);

Если ОбщегоНазначения.ЕстьРеквизитДокумента("Сделка", МетаданныеДокумента) Тогда
ДокументРезерва = Документ.Сделка;
Иначе
ДокументРезерва = Документы.ЗаказПокупателя.ПустаяСсылка();
КонецЕсли;

ПостроительОтчета.Параметры.Вставить("ТекДокумент"    , Документ);
ПостроительОтчета.Параметры.Вставить("МассивСклады"   , ПолучитьМассивСкладов());
ПостроительОтчета.Параметры.Вставить("ДокументРезерва", ДокументРезерва);


cska-fanat-kz

Здравствуйте!

1. с УТ скопируйте этот метод и поместите в общий модуль ОбщегоНазначения
(если конечно можете вносить изменение в конфигурацию)
2. если такой реквизит точно есть - замените вызов метода на "ИСТИНА"

Удачи!
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск