|
В КД 2.1 при конвертации 7->8 не срабатывает "НеСоздаватьОбъектЕслиНеНайден". | ☑ | ||
---|---|---|---|---|
0
evgeniybel
22.09.21
✎
15:23
|
В КД 2.1 при конвертации 7->8 не срабатывает "НеСоздаватьОбъектЕслиНеНайден".
В "При загрузке" документов пишу: Если Объект.Дата < ДатаНачала Тогда Если ОбъектНайден Тогда НеЗамещатьОбъект = Истина; Иначе НеСоздаватьОбъектЕслиНеНайден = Истина; КонецЕсли; КонецЕсли; Это для того, чтобы не менялись и не грузились по ссылкам документы, расположенные раньше ДатаНачала. Но при этом нужно, чтобы, если документ до ДатаНачала уже есть, то ссылка в загружаемом более позднем документе на него проставлялась. Поэтому нельзя просто не выгружать ранние документы в "Перед выгрузкой". Так вот, "НеЗамещатьОбъект" нормально отрабатывает. Если документ, расположенные раньше ДатаНачала, находится по ссылке, то он подставляется, но не изменяется. А вот "НеСоздаватьОбъектЕслиНеНайден" никак не хочет работать. И вариант с "Отказ = Истина" тоже не помогает: Если Объект.Дата < ДатаНачала Тогда Если ОбъектНайден Тогда НеЗамещатьОбъект = Истина; Иначе Отказ = Истина; КонецЕсли; КонецЕсли; |
|||
1
Ёпрст
22.09.21
✎
15:39
|
Почитай хелп по обработчикам в кд.
В при загрузке нет отказа. Втыкай в после загрузки |
|||
2
Aleksey
22.09.21
✎
16:10
|
Что такое "НеСоздаватьОбъектЕслиНеНайден " у обработчиков в КД нет такого параметрах
|
|||
3
Ёпрст
22.09.21
✎
16:35
|
(2) это параметр функции НайтиОбъектПоСсылке..
Не помню точно, можно ли его переопределять, как параметр из всяких Перед/после/при загрузки |
|||
4
Aleksey
22.09.21
✎
16:54
|
(3) Там тоже такого нет
если НеСоздаватьЕслиНеНайден – Булево. По умолчанию определяется в форме элемента правила конвертации объекта. Если Истина, то выполняется только поиск объекта в приемнике, новый объект не создается. но это перед выгрузкой |
|||
5
evgeniybel
22.09.21
✎
18:50
|
(4) Вот спасибо! "НеСоздаватьЕслиНеНайден" в "перед выгрузкой" рабротает!!!
Опишу окончательное решение. --------------------------------------- *** Задача: Нужно, чтобы при выгрузке из 7 в 8 ни при каких обстоятельствах не менялись и не загружались новые документы с датой, меньшей чем ДатаНачала. И при этом, если в более позднем загружаемом документе присутствует ссылка на уже существующий документ с датой, меньше чем ДатаНачала, эта ссылка должна нормально загрузиться. *** Решение: в "Перед выгрузкой" документов пишем: Если Источник.ДатаДок < ДатаНачала Тогда НеСоздаватьЕслиНеНайден = 1; КонецЕсли; в "При загрузке" документов пишем: Если Объект.Дата < ДатаНачала Тогда Если ОбъектНайден Тогда НеЗамещатьОбъект = Истина; КонецЕсли; КонецЕсли; |
|||
6
серый КТУЛХУ
22.09.21
✎
19:00
|
нахрена так сложно?
Если Объект.Дата < ДатаНачала Тогда Отказ=Истина; Возврат; КонецЕсли; |
|||
7
evgeniybel
22.09.21
✎
19:22
|
(6) потому что работать так не будет
|
|||
8
серый КТУЛХУ
22.09.21
✎
19:25
|
(7): у меня работает.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |