|
Обработка для изменения Договора в документе | ☑ | ||
---|---|---|---|---|
0
ogion83
15.01.24
✎
09:31
|
День добрый.
Появилась необходимость у некоторых документов "Списание с расчетного счета" поменять Договора. Создал внешнюю обработку. Она почему то не работает, в отладчике смотрю, меняет на нужный, а результат не сохраняется. Пока ВыборкаДокументов.Следующий() Цикл Док = ВыборкаДокументов.Ссылка.ПолучитьОбъект(); Если ВыборкаДокументов.Ссылка.ПолучитьОбъект().Контрагент <> неопределено Тогда Если ВыборкаДокументов.Ссылка.ПолучитьОбъект().Контрагент.Код = "000006393" Тогда Док.Записать(РежимЗаписиДокумента.ОтменаПроведения); // Док.Контрагент = Справочники.Контрагенты.НайтиПоКоду("000006393"); Док.ЭтотОбъект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000008267"); Док.Записать(РежимЗаписиДокумента.Проведение); КонецЕсли; КонецЕсли; КонецЦикла; Подобной обработкой в этих же документах менял Контрагентов, все работало, а вот с договорами почему то не выходит. |
|||
1
Волшебник
15.01.24
✎
09:15
|
Док.ДоговорКонтрагента =
Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000008267"); |
|||
2
2S
15.01.24
✎
09:24
|
"ВыборкаДокументов.Ссылка.ПолучитьОбъект().Контрагент"
расстрелять н.уй |
|||
3
ogion83
15.01.24
✎
09:29
|
(1) Что тут?
|
|||
4
Волшебник
15.01.24
✎
09:31
|
(3) зачем столько объектов получаете?
|
|||
5
mikecool
15.01.24
✎
09:31
|
(0) воспользуйся существующими обработками(с ИТС, интернета) , рано тебе
|
|||
6
ogion83
15.01.24
✎
09:33
|
Пока ВыборкаДокументов.Следующий() Цикл
Док = ВыборкаДокументов.Ссылка.ПолучитьОбъект(); Если Док.Контрагент <> Неопределено Тогда Если Док.Контрагент.Код = "000006393" Тогда Док.Записать(РежимЗаписиДокумента.ОтменаПроведения); // Док.Контрагент = Справочники.Контрагенты.НайтиПоКоду("000006393"); Док.ЭтотОбъект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000008267"); Док.Записать(РежимЗаписиДокумента.Проведение); КонецЕсли; КонецЕсли; КонецЦикла; |
|||
7
Волшебник
15.01.24
✎
09:34
|
я же сказал в (1):
Док.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000008267"); |
|||
8
ogion83
15.01.24
✎
09:46
|
(5) Нашел обработку "Групповое изменение реквизитов". Документы нужные нашлись, но после обработки почему то Договоры все равно не поменялись.
|
|||
9
ogion83
15.01.24
✎
09:47
|
(7) У меня так и было, это я уже в попытках найти решение так сделал.
|
|||
10
Мимохожий Однако
15.01.24
✎
09:49
|
Отладчиком встань перед записью документа и посмотри, что там до и после твоих манипуляций
|
|||
11
Мимохожий Однако
15.01.24
✎
09:51
|
(0) Обрати внимание на договор, который подставляешь. Возможно, у него владелец другой или вид договора не подходящий
|
|||
12
shuhard
15.01.24
✎
09:52
|
(9) Док.ЭтотОбъект.ДоговорКонтрагента =
это херня к чему ? Док.ДоговорКонтрагента = ... |
|||
13
ogion83
15.01.24
✎
09:54
|
Договор меняется автоматически если выбрать нужного Контрагента вручную. Через обработки так не происходит. Надо наверное чтобы при этом ещё срабатывала Процедура "При Изменении"?
|
|||
14
ogion83
15.01.24
✎
09:55
|
(12) я написал (9)
|
|||
15
RVN
15.01.24
✎
10:29
|
(8)
1. Проверь правильно ли у тебя обор настроен на нужные документы. 2. Поставь в обработке режим разработчика. 3. Убедись, что обработка отрапортовала о завершении без ошибок. 4. закрой документ и открой заново (если он был открыт) З.Ы. делай сначала на копии базы, чтобы потом не было мучительно больно. |
|||
16
Волшебник
15.01.24
✎
10:35
|
(9) Было нормально. Верните как было
|
|||
17
Михаил Козлов
15.01.24
✎
21:30
|
Договор в ТЧ РасшифровкаПлатежа.
|
|||
18
ogion83
08.02.24
✎
10:39
|
(5) Благодарю за подсказку. Помогла универсальная обработка "Групповое изменение реквизитов". Она показала, что в том документе несколько реквизитов "Договор", я в своей не тот указывал.
|
|||
19
Волшебник
08.02.24
✎
10:40
|
(18) Так не бывает. Имя реквизита должно быть уникально.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |