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

Вызвать функцию модуля в документе! Ошибка!

Автор Anton_Nikitin, 24 мар 2011, 08:28

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

Anton_Nikitin

Общий модуль!
Функция ГруппировкаЭРИ(ДокументОбъект) Экспорт
МетаданныеДокумента = ДокументОбъект.Метаданные();
   Если ДокументОбъект.ЭтоНовый() ТОгда
    Группа=Справочники.ГруппаЭРИ.СоздатьЭлемент();
    Группа.ДатаПоступления=ДокументОбъект.Дата;
    Группа.Изготовитель=ДокументОбъект.Контрагент;
    Группа.ТипЭРИ=ДокументОбъект.ТабличнаяЧасть.ТипЭРИ;
    Группа.Количество=ДокументОбъект.ТабличнаяЧасть.Количество;
    Группа.Партия=ДокументОбъект.ТабличнаяЧасть.Партия;
    Группа.ДатаИзготовления=ДокументОбъект.ТабличнаяЧасть.ДатаИзг;
    Группа.ЕдИзм=ДокументОбъект.ТабличнаяЧасть.ЕдИзм;
    Группа.Счет=ДокументОбъект.Счет;
    Группа.Записать();
КонецЕсли;
КонецФункции
Документ
Процедура ПередЗаписью()
УправлениеЭРИ.ГруппировкаЭРИ(ЭтотОбъект);
КонецПроцедуры
Ошибка
{ОбщийМодуль.УправлениеЭРИ(7)}: Поле объекта не обнаружено (ТипЭРИ)
    Группа.ТипЭРИ=ДокументОбъект.ТабличнаяЧасть.ТипЭРИ;
В чем ошибка подскажите!

Nail2010

**** Группа.ТипЭРИ=ДокументОбъект.ТабличнаяЧасть.ТипЭРИ;**** - Что такое Табличная часть? Может просто:

   Группа.ТипЭРИ=ДокументОбъект.ТипЭРИ
?

Anton_Nikitin


Anton_Nikitin

А ТабличнаяЧать-Табличная Часть документа.

cska-fanat-kz

Одно из двух: или у справочника нет этого реквизита или у табличной части документа (или у документа - вы по ходу дела сами не разобрались?)

Точку останова на этой строчке и станет более ясно...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Anton_Nikitin

Все реквизиты есть и у справочника и у таб.части!

cska-fanat-kz

Чудес не бывает )

В любом случае точку останова на этой строчке и смотрите значение у

ДокументОбъект.ТабличнаяЧасть
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Makifka

Может в табличной части строчку для начала взять? Она там одна, я так полагаю?
Для каждого Стр из ДокументОбъект.ТабличнаяЧасть Цикл    //(или, может, Стр = ДокументОбъект.ТабличнаяЧасть[0]; )
    Группа.ТипЭРИ=Стр.ТипЭРИ;
    Группа.Количество=Стр.Количество;
    Группа.Партия=Стр.Партия;
    Группа.ДатаИзготовления=Стр.ДатаИзг;
    Группа.ЕдИзм=Стр.ЕдИзм;
КонецЦикла;
   

Klyacksa

Ну в любом случае вот эта запись ошибочна:
Группа.ТипЭРИ=ДокументОбъект.ТабличнаяЧасть.ТипЭРИ;
Если обращаетесь к табличной части, то нужно обращаться к конкретной строке табличной части, то есть как-то так:
Группа.ТипЭРИ=ДокументОбъект.ТабличнаяЧасть[НомерСтроки].ТипЭРИ;
ТипЭРИ - это что такое у документа? Реквизит документа или реквизит табличной части?
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Makifka

Может в табличной части строчку для начала взять? Она там одна, я так полагаю?
Для каждого Стр из ДокументОбъект.ТабличнаяЧасть Цикл   
    Группа.ТипЭРИ=Стр.ТипЭРИ;
    Группа.Количество=Стр.Количество;
    Группа.Партия=Стр.Партия;
    Группа.ДатаИзготовления=Стр.ДатаИзг;
    Группа.ЕдИзм=Стр.ЕдИзм;
КонецЦикла;

Теги:

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

Рейтинг@Mail.ru

Поиск