КД УТ 10.3 -> БП 2.0 Реализация товаров и услуг, ошибка #597353


#0 by sora_tm
Пытаюсь править правило в КД, необходимо чтобы при выгрузке из УТ, если стоит в документе контрагент, и у контрагента есть головной контрагент, чтобы в БП в реализацию попадал Головной контрагент. Проблема возникла с договорами. Есть код в ПКО РЕализация Т и у, в ПослеВыгрузки Объект.Контрагент = Объект.Контрагент.ГоловнойКонтрагент; Ошибка при обмене в БП: Начало загрузки:   23.02.2012 18:58:23 Ошибка в обработчике события ПослеЗагрузкиОбъекта    ИмяПКО                 =  РеализацияТоваровУслуг    ТипОбъекта             =  Реализация товаров и услуг    Объект                 =  Реализация товаров и услуг УТ000000465 от 04.01.2012 0:00:01    Обработчик             =  ПослеЗагрузкиОбъекта    ОписаниеОшибки         =  Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(6,1)}: Ожидается последовательность операторов Ошибка при загрузке данных: {Обработка.ОбменДаннымиXML(1596)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта    ИмяПКО                 =  РеализацияТоваровУслуг    ТипОбъекта             =  Реализация товаров и услуг    Объект                 =  Реализация товаров и услуг УТ000000465 от 04.01.2012 0:00:01    Обработчик             =  ПослеЗагрузкиОбъекта    ОписаниеОшибки         =  Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(6,1)}: Ожидается последовательность операторов Окончание загрузки: 23.02.2012 18:58:27 Где накосячил? В обработке код работает, хочу его сунуть в обмен...
#1 by sora_tm
Я исправил, но тоже самое.
#2 by Агент Инфостарта
При выгрузке или загрузке договоров надо менять владельца.
#3 by eduspec82
отладку включи при выгрузке с подстановкой кодов процедур сразу увидишь где ошибка ...
#4 by Агент Инфостарта
Нет, владельца менять не следует, создавать новый договор для головного контрагента.
#5 by eduspec82
ошибка компиляции = синтаксическая ошибка кода при выполнить (...)
#6 by sora_tm
Дык я и пытаюсь создавать...
#7 by Агент Инфостарта
А в чём проблема?
#8 by sora_tm
ТАк в же все написал.
#9 by sora_tm
Функция ПолучитьДоговорКонтрагента ищет, если не находит создает.
#10 by sora_tm
К сожалению как это сделать не знаю, пользуюсь только когда код пишу, а как при обмене использовать не понял.
#11 by Агент Инфостарта
Надо пользоваться алгоритмами КД2, если эта функция у вас не входит в конфигурацию.
#12 by sora_tm
Т.е. описывать функцию в ПКО в ПослеВыгрузки нельзя?
#13 by Агент Инфостарта
Можно, флажок "Использовать при загрузке" алгоритма. Похоже, вы неправильно понимаете принцип использования алгоритмов в КД 2.
#14 by sora_tm
В справке написано, что используются алгоритмы, когда необходимо один алгоритм использовать в нескольких ПКО, у меня один ПКО :)
#15 by Агент Инфостарта
Тогда пишите код непосредственно в обработчике, раз в справке "напейсано". Так сказал капрал, а капралу надо верить. (с)
#16 by sora_tm
Так у меня все и написано. Может вы не разворачивали +Code в первом посте?
#17 by Агент Инфостарта
Развернул. Сама Функция ПолучитьДоговорКонтрагента(Контрагент, Дата) где у вас находится? Если в алгоритмах, то так не правильно.
#18 by sora_tm
Нет, все сейчас находится в ПКО РеализацияТоваровУслуг, в вкладке После Загрузки
#19 by Агент Инфостарта
Функции и процедуры в обработчиках не объявляются, так как код обработчика выполняется  через процедуру Выполнить(.............);
#20 by sora_tm
Спасибо огромное, в этом и проблема. Т.е. ее надо объявить в алгоритмах?
#21 by Агент Инфостарта
Объявить в алгоритмах, но вызывать не как процедуру/функцию.
#22 by sora_tm
Спасибо огромное, все получилось!!
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С