После обновления на релиз 1С:ERP. Управление холдингом (3.2.4.2) стала возникать ошибка при проведении документа "Приобретение товаров и услуг". В версии 3.2.4.5 ошибка не исправлена, и по-прежнему возникает. Возможно, ошибка появилась в более ранних версиях, в каких, сказать не могу, т.к. промежуточные версии не тестировали и не проверяли, но обновления прошли без ошибок. Могу точно сказать, что в версии 3.2.1.83 ее не было. Смотрел зарегистрированные ошибки на сайте 1С и смотрел расширения исправлений ошибок вендора от 1С - никакой официальной инфы от вендора не нашел.
Текст ошибки:
Ошибка при вызове метода контекста (Записать)
{РегистрСведений.АналитикаУчетаПоПартнерам.МодульМенеджера(184)}:ВызватьИсключение(ОписаниеОшибки())
{РегистрСведений.АналитикаУчетаПоПартнерам.МодульМенеджера(32)}:КлючАналитики = СоздатьКлючАналитики(ПараметрыАналитики);
{ОбщийМодуль.ВзаиморасчетыСервер.Модуль(20083)}:Запись.АналитикаУчетаПоПартнерам = РегистрыСведений.АналитикаУчетаПоПартнерам.ЗначениеКлючаАналитики(ПараметрыАналитики);
{ОбщийМодуль.ВзаиморасчетыСервер.Модуль(3852)}:ПроверитьЗаполнитьАналитикуУчетаПоПартнерам(ТаблицаРасчетыСПоставщиками);
{ОбщийМодуль.ПроведениеДокументов.Модуль(2146)}:Механизм.Значение.МодульМеханизма.ОтразитьДвижения(ТаблицыДляДвижений, Документ.Движения, Отказ);
{ОбщийМодуль.ПроведениеДокументов.Модуль(1755)}:ОтразитьДвиженияПодчиненныхРегистров(Механизмы, Документ, ТаблицыДляДвижений, Отказ);
{ОбщийМодуль.ПроведениеДокументов.Модуль(246)}:ПровестиДокумент(Документ, Отказ, ДопПараметры);
{Документ.ПриобретениеТоваровУслуг.МодульОбъекта(875)}:ПроведениеДокументов.ОбработкаПроведенияДокумента(ЭтотОбъект, Отказ);
{ОбщийМодуль.ОбщегоНазначенияУТКлиент.Модуль(1989)}:Результат = Форма.Записать(ПараметрыЗаписи);
{Документ.ПриобретениеТоваровУслуг.Форма.ФормаДокумента.Форма(9246)}:ОбщегоНазначенияУТКлиент.ОбработатьЗаписьОбъектаВФорме(ЭтотОбъект, ПараметрыДляЗаписи);[ОшибкаВоВремяВыполненияВстроенногоЯзыка]
по причине:
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{РегистрСведений.АналитикаУчетаПоПартнерам.МодульМенеджера(125)}: Ошибка при вызове метода контекста (Заблокировать): Неверный тип значения: РегистрСведений.АналитикаУчетаПоПартнерам.Организация
[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ИсключениеВызванноеИзВстроенногоЯзыка]
Ошибка возникает в ПТУ где "Порядок расчетов" = "Аванс по заказам, долг по накладным" (с другими вариантами порядка расчета ошибка не возникала. Это типовая ошибка релиза вендора. Связана с тем, что у документа ПТУ в табличной части "ЭтапыГрафикаОплаты" не заполнен "Заказ" и при формировании движений данные по полям "АналитикаУчетаПоПартнерам", "ОбъектРасчетов" и "Организация" остаются пустыми (null или неопределено).
Типовой код заполнения ПТУ:
Решение:
Доработать этот общий модуль "ВстраиваниеУХПриобретениеТоваровУслуг" с помощью пары строк кода:
Для каждого Строка Из Объект.ЭтапыГрафикаОплаты Цикл Если Не ЗначениеЗаполнено(Строка.Заказ) Тогда Строка.Заказ = Объект.ЗаказПоставщику; КонецЕсли; КонецЦикла;
Я доработал через расширение:
Или можете использовать расширение, прикрепленное к статье.
Проверено на следующих конфигурациях и релизах:
- 1С:Управление холдингом 3.2 (русский и английский интерфейсы), релизы 3.2.4.2