0
SkillUp
09.04.20
✎
11:59
|
Здравствуйте, помогите разобраться.
Во внешней обработке, заполнения ТЧ документа-Установка цен номенклатуры (Обычные формы). В режиме отладки все отлично, при подключении к базе в ошибка к базе: Заполнение ТЧ не произведено!
Поле объекта не обнаружено (ТаблицаЦен)
Мой код:
Об = ЭтотОбъект.СсылкаНаОбъект.Ссылка;
ФормаДокумента = Об.ПолучитьФорму();
ТипыЦен = ФормаДокумента.ТипыЦен;
ТаблицаЦен = ФормаДокумента.ТаблицаЦен;
|
|
2
SkillUp
09.04.20
✎
12:08
|
(1) Пытаюсь использовать типовую процедуру
Только, вначале этой процедуры определяю ТаблицаЦен;
Об = ЭтотОбъект.СсылкаНаОбъект.Ссылка;
ФормаДокумента = Об.ПолучитьФорму();
ТаблицаЦен = ФормаДокумента.ТаблицаЦен;
Процедура ЗаполнитьТовары(Очистить, Обновить, ПоЦенамКонтрагентов)
Если ТаблицаЦен.Количество() > 0 И Очистить Тогда
ТекстВопроса = "Перед заполнением табличная часть будет очищена. Заполнить?";
Ответ = Вопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет, , , Метаданные().Представление());
Если Ответ <> КодВозвратаДиалога.Да Тогда
Возврат;
КонецЕсли;
ТаблицаЦен.Очистить();
КонецЕсли;
Если Очистить И НЕ ТипЗнч(ПоЦенамКонтрагентов) = Тип("Строка") И ПоЦенамКонтрагентов Тогда
ТипыЦен.Очистить();
СписокТиповЦен.Очистить();
КонецЕсли;
ФормированиеЦен = Обработки.ФормированиеЦен.Создать();
ФормаЗаполнения = ФормированиеЦен.ПолучитьФорму("ФормаЗаполнения", ЭтаФорма);
ФормированиеЦен.мКоманда = "Изменить";
Если ПоЦенамКонтрагентов Тогда
ФормаЗаполнения.ИмяРегистра = "ЦеныНоменклатурыКонтрагентов";
Иначе
ФормаЗаполнения.ИмяРегистра = "ЦеныНоменклатуры";
ТаблицаТиповЦен = ТипыЦен.Выгрузить();
ТаблицаТиповЦен.Колонки.ТипЦен.Имя = "ТипЦенСкидок";
ФормированиеЦен.ТипыЦенСкидок.Загрузить(ТаблицаТиповЦен);
КонецЕсли;
Если Обновить Тогда
СписокНоменклатуры = Новый СписокЗначений;
СписокНоменклатуры.ЗагрузитьЗначения(ТаблицаЦен.ВыгрузитьКолонку("Номенклатура"));
ФормаЗаполнения.мСписокНоменклатуры = СписокНоменклатуры;
КонецЕсли;
ФормаЗаполнения.ОткрытьМодально();
УстановитьПодменюВыбораИзмененияПоТипуЦен(ЭлементыФормы.КоманднаяПанельТаблицыТиповЦен.Кнопки.ДействиеИзменить,
Новый Действие("КоманднаяПанельТаблицыТиповЦенДействиеИзменить"));
|
|