|
Метод не доступен для данного объекта | ☑ | ||
---|---|---|---|---|
0
NovichokAlena
03.08.15
✎
09:12
|
Здравствуйте, делали внешнюю печатку для ТН. Пишет следующую ошибку: {ВнешняяОбработка.ВнешняяОбработка1.МодульОбъекта(78)}: Ошибка при вызове метода контекста (Добавить)
Отбор.Добавить("Номенклатура"); по причине: Метод не доступен для данного объекта 1С:Предприятие 8.3 (8.3.6.1977), УПП 1.3 Подскажите,как правильно? Функция Печать() Экспорт ДокОбъект = СсылкаНаОбъект.ПолучитьОбъект(); Если ДокОбъект.Модифицированность() Тогда Сообщить("Документ изменен. Необходимо записать документ."); Возврат Неопределено; ИначеЕсли НЕ ДокОбъект.Проведен Тогда Сообщить("Документ не проведен. Необходимо провести документ."); Возврат Неопределено; КонецЕсли; ДвиженияПоПартиям = РегистрыНакопления.ПартииТоваровНаСкладах.СоздатьНаборЗаписей(); ДвиженияПоПартиям.Отбор.Регистратор.Установить(СсылкаНаОбъект); ДвиженияПоПартиям.Прочитать(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ТребованиеНакладная.Номенклатура, | ТребованиеНакладная.Номенклатура.Родитель КАК Родитель, | ТребованиеНакладная.Номенклатура.НаименованиеПолное КАК Имя, | ТребованиеНакладная.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдИзм, | ТребованиеНакладная.Количество КАК Количество, | ТребованиеНакладная.ЕдиницаИзмерения КАК ЕдИзмМест, | ТребованиеНакладная.КоличествоМест, | ТребованиеНакладная.Счет, | ТребованиеНакладная.Комментарий, | ТребованиеНакладная.СчетЗатрат, | ТребованиеНакладная.Ссылка.СчетЗатрат КАК СчетЗатратСсылка, | ТребованиеНакладная.НоменклатурнаяГруппа, | ТребованиеНакладная.Номенклатура.Код |ИЗ | Документ.ТребованиеНакладная.Материалы КАК ТребованиеНакладная"; ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.Очистить(); ТабДокумент.Автомасштаб = Истина; Макет = ПолучитьМакет("Акт"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); //Шапка ЗаполнитьЗначенияСвойств(ОбластьШапка.Параметры, СсылкаНаОбъект); ОбластьШапка.Параметры.Дата = Формат(СсылкаНаОбъект.Дата, "ДЛФ=DD"); ТабДокумент.Вывести(ОбластьШапка); МетаданныеОбъекта = СсылкаНаОбъект.Метаданные(); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); Номер = 0; колНеподтвержденнных = 0; Итого = 0; Для каждого Строка из СсылкаНаОбъект.Материалы Цикл Если НЕ Строка.УТС_ПодтверждениеПоступления Тогда колНеподтвержденнных = колНеподтвержденнных + 1; Продолжить; КонецЕсли; Номер = Номер + 1; ОбластьСтрока.Параметры.Имя = Строка.Номенклатура; ОбластьСтрока.Параметры.НоменклатурнаяГруппа = Строка.НоменклатурнаяГруппа; ОбластьСтрока.Параметры.ЕдИзм = Строка.ЕдиницаИзмерения; ОбластьСтрока.Параметры.Номер = Номер; ОбластьСтрока.Параметры.Заполнить(Строка); ОбластьСтрока.Параметры.НоменклатураКод = Строка.Номенклатура.Код; Стоимость = 0; //Установить отбор по регистру ДвиженияПоПартиям по номенклатуре ДвиженияПоПартиям.Отбор.Сбросить(); Отбор = ДвиженияПоПартиям.Отбор; Если Отбор.Найти("Номенклатура") = Неопределено Тогда Отбор.Добавить("Номенклатура"); КонецЕсли; Отбор["Номенклатура"].Использование = Истина; Отбор["Номенклатура"].Значение = Строка.Номенклатура; Отбор["Номенклатура"].ВидСравнения = ВидСравнения.Равно; Для инд = 0 По ДвиженияПоПартиям.Количество() - 1 Цикл СтрокаДвижения = ДвиженияПоПартиям.Получить(инд); Если СтрокаДвижения <> Неопределено ТОгда Стоимость = СтрокаДвижения.Стоимость; КонецЕсли; КонецЦикла; ОбластьСтрока.Параметры.Цена = Стоимость / Строка.Количество; ОбластьСтрока.Параметры.Сумма = Стоимость; Итого = Итого + Стоимость; ТабДокумент.Вывести(ОбластьСтрока); КонецЦикла; Если колНеподтвержденнных = СсылкаНаОбъект.Материалы.Количество() Тогда Сообщить("Нет подтвержденных строк. Подтвердите документ."); Возврат Неопределено; КонецЕсли; ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьПодвал.Параметры.Комментарий = СсылкаНаОбъект.Комментарий; ОбластьПодвал.Параметры.Итого = Итого; ОбластьПодвал.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(Итого,ДокОбъект.мВалютаРегламентированногоУчета); ТабДокумент.Вывести(ОбластьПодвал); ТабДокумент.АвтоМасштаб = Истина; УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, 1, Ложь, ОбщегоНазначения.СформироватьЗаголовокДокумента(СсылкаНаОбъект), Ложь); Возврат Неопределено; КонецФункции |
|||
1
shuhard_серый
03.08.15
✎
09:14
|
(0) движения надо выбирать запросом
|
|||
2
D_E_S_131
03.08.15
✎
10:20
|
Жесть какая-то...
1. Условие на модифицированность только что полученного объекта? 2. Запрос без условия по документу (выборка всех строк из всех документов ТребованиеНакладная)? 3. Для чего-то получили метаданные объекта? 4. Запрос вообще не используется и просто перебираем ТЧ документа? 5. Ну и получение данных из движений shuhard_серый уже написал... |
|||
3
Mifka
03.08.15
✎
10:30
|
если не ошибаюсь ты прировнял отбор к ссылке регистратора
Отбор = ДвиженияПоПартиям.Отбор; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |