Имя: Пароль:
1C
1С v8
Поиск по части реквизита конвертация данных.
0 kolts23381
 
07.02.17
03:07
В базе приемнике у справочника есть реквизит типа строка(12). В базе источник соответствующий реквизит типа строка(13). Как организовать такой поиск не по полному равенству а по равенству 12 символов.
1 mehfk
 
07.02.17
04:22
Обработчики "Правила конвертации объектов"
При загрузке
Условия возникновения события
Только для платформы V8.
Событие выполняется после попытки идентификации. В случае успешной синхронизации доступен найденный объект. В противном случае его значение Неопределено. Можно произвести произвольную инициализацию, заполняемого данными объекта.

Объект - Произвольный. Загружаемый, модифицируемый объект, созданный по ссылке или найденный в информационной базе. Если способ идентификации объекта в файле не указан (т.е. отсутствует узел "Ссылка"), то параметр содержит значение Неопределено. В этом случае в обработчике возможна произвольная инициализация загружаемого объекта, в противном случае, объект будет создан автоматически.
2 mistеr
 
07.02.17
06:06
(1) Лучше все-таки использовать обработчик ПоляПоиска.
3 AneJIbcuH
 
07.02.17
06:07
(0) Есть такой вариант, правда по оптимальности, наверное, не самый лучший:

1. В настройках ПКО стоит галочка "Продолжить поиск по полям поиска, если по идентификатору не найден.."
2. В конвертации свойств этого ПКО стоит галочка "Поиск" напротив передаваемого реквизита (Назовем их "Передаваемый реквизит" и "ПолучаемыйРеквизит" соответственно).
3. В обработчике событий "Поля поиска" данного ПКО пишем код:
Если ЗначениеЗаполнено(СвойстваПоиска.Получить("ПолучаемыйРеквизит")) Тогда
КакПередаваемыйРеквизит = Лев(СвойстваПоиска.Получить("ПолучаемыйРеквизит"),12);

//Тут пишешь код получения ссылки на объект (код происходит на стороне базе приемника) по реквизиту (с помощью запроса или НайтиПоРеквизиту)

//Если ссылку на объект нашёл:
СсылкаНаОбъект = ТвояНайденнаяСсылка;
ПрекратитьПоиск = Истина;

//Иначе
СсылкаНаОбъект = Неопределено; //Будет создан новый объект

//КонецЕсли

Также тут можно организовать несколько вариантов поиска