Метод объекта не обнаружен (Свойство) Универсальный Обмен
Доброго.
Делаю в КД 2 правила обмена между ТиС 9.2 (ОРК 7.70.975, платформа 7.70.025) и БП 3.0 (3.0.43.187, платформа 8.3.9.1818).
В документе "Реализация товаров и услуг" пытаюсь сделать автоматическое заполнение СУ в ТЧ товары (на основе функций и процедур в конфигурации).
При загрузке получаю ошибку:
Проверяю, и таки да:
ТипЗнч(ПараметрыЗаполнения.ДанныеФормы.Строка) - СтрокаТабличнойЧасти
а должно быть ДанныеФормыЭлементКоллекции.
Вопрос:
Можно ли как то исправить, или придется счета учета вручную проставлять?
Делаю в КД 2 правила обмена между ТиС 9.2 (ОРК 7.70.975, платформа 7.70.025) и БП 3.0 (3.0.43.187, платформа 8.3.9.1818).
В документе "Реализация товаров и услуг" пытаюсь сделать автоматическое заполнение СУ в ТЧ товары (на основе функций и процедур в конфигурации).
ПКО_ПослеЗагрузки_РеализацияТоваровУслуг |
---|
Показать |
При загрузке получаю ошибку:
Текст ошибки |
---|
Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1258)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта
ИмяПКО = РеализацияТоваровУслуг ТипОбъекта = Реализация (акт, накладная) Объект = Реализация (акт, накладная) БП00000579 от 09.01.2017 14:45:10 Обработчик = ПослеЗагрузкиОбъекта ОписаниеОшибки = Метод объекта не обнаружен (Свойство) ПозицияМодуля = ОбщийМодуль.СчетаУчетаВДокументахКлиентСервер.Модуль(213) КодСообщения = 21 |
Проверяю, и таки да:
Если Не ПараметрыЗаполнения.ДанныеФормы.Строка.Свойство(ИмяРеквизитаДетально.Реквизит) Тогда
Возврат;
КонецЕсли;
ТипЗнч(ПараметрыЗаполнения.ДанныеФормы.Строка) - СтрокаТабличнойЧасти
а должно быть ДанныеФормыЭлементКоллекции.
Вопрос:
Можно ли как то исправить, или придется счета учета вручную проставлять?
По теме из базы знаний
Найденные решения
(1) проще используй метод
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью();
пример вызова после загрузки
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью(Объект, РежимЗаписиДокумента.Запись);
Отлично заполнит во все всем документе все счета и аналитику. А уже потом можешь дозаполнить объект как тебе нужно.
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью();
пример вызова после загрузки
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью(Объект, РежимЗаписиДокумента.Запись);
Отлично заполнит во все всем документе все счета и аналитику. А уже потом можешь дозаполнить объект как тебе нужно.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) проще используй метод
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью();
пример вызова после загрузки
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью(Объект, РежимЗаписиДокумента.Запись);
Отлично заполнит во все всем документе все счета и аналитику. А уже потом можешь дозаполнить объект как тебе нужно.
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью();
пример вызова после загрузки
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью(Объект, РежимЗаписиДокумента.Запись);
Отлично заполнит во все всем документе все счета и аналитику. А уже потом можешь дозаполнить объект как тебе нужно.
(3) К сожалению не заполняет, идет возврат в Процедура ЗаполнитьПередЗаписью():
При этом ДополнительныеСвойства тип Структура, но пустая, соответственно Функция ЗаполнятьПередЗаписью(ДополнительныеСвойства) возвращает Ложь:
Можно ли просто в Объект.ДополнительныеСвойства добавить свойство "ЗаполнитьСчетаУчетаПередЗаписью"?
Если Не ЗаполнятьПередЗаписью(Объект.ДополнительныеСвойства) Тогда
Возврат;
КонецЕсли;
При этом ДополнительныеСвойства тип Структура, но пустая, соответственно Функция ЗаполнятьПередЗаписью(ДополнительныеСвойства) возвращает Ложь:
Функция ЗаполнятьПередЗаписью(ДополнительныеСвойства)
Если Не СчетаУчетаВДокументахВызовСервераПовтИсп.ПользовательУправляетСчетамиУчета() Тогда
Возврат Истина;
КонецЕсли;
Если Не ДополнительныеСвойства.Свойство("ЗаполнитьСчетаУчетаПередЗаписью") Тогда
Возврат Ложь;
КонецЕсли;
Возврат ДополнительныеСвойства.ЗаполнитьСчетаУчетаПередЗаписью;
КонецФункции
ПоказатьМожно ли просто в Объект.ДополнительныеСвойства добавить свойство "ЗаполнитьСчетаУчетаПередЗаписью"?
(4)
Да, можно, в итоге задача решена двумя строками:
Спасибо Вам.
Можно ли просто в Объект.ДополнительныеСвойства добавить свойство "ЗаполнитьСчетаУчетаПередЗаписью"?
Да, можно, в итоге задача решена двумя строками:
Объект.ДополнительныеСвойства.Вставить("ЗаполнитьСчетаУчетаПередЗаписью",Истина);
СчетаУчетаВДокументах.ЗаполнитьПередЗаписью(Объект, РежимЗаписиДокумента.Запись);
Спасибо Вам.
В функции СчетаУчетаВДокументахКлиентСервер.НовыйПараметрыЗаполнения не проходит блок:
#Если Клиент Тогда
// Контейнер служит для передачи на сервер нужных данных объекта
Если ПараметрыЗаполнения.Заполнять Тогда
ПараметрыЗаполнения.Вставить("Контейнер", Новый Структура);
ПараметрыЗаполнения.Контейнер.Вставить("Объект");
ПараметрыЗаполнения.Контейнер.Вставить("Строка");
КонецЕсли;
#КонецЕсли
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот