ПКО для дублируещего элемента справочника

1. region.eburg 4 22.06.16 09:53 Сейчас в теме
Всем доброго дня. Проблема в правилах обмена УТ-БП созданных в КД.
Суть следующая, справочник "Номенклатура" поиск осуществляется по "Наименованию". В УТ 11 есть номенклатура с кодом 00-000005 "Ведро" и в БП 3.0 так же есть номенклатура с кодом 00-000005 "Савок". Так как посик по наименованию, следовательно, при обмене номенклатура не находится, а при попытке содать новую пишет что номер код не уникально. Как можно это побороть?

Ошибка записи объекта
ТипОбъекта = Номенклатура
Объект = Биокондиционеры
ОписаниеОшибки = Ошибка при вызове метода контекста (Записать): Значение "00-00002617" поля "Код" не уникально
ПозицияМодуля = ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(4870)
КодСообщения = 26
Вознаграждение за ответ
Показать полностью
Найденные решения
15. netesoff 5 22.06.16 10:42 Сейчас в теме
А нельзя просто убрать перенос кода в конвертации свойств и поставить галочку "Автоматически генерировать номер или код, если он не задан" в настройках ПКО?
Захаров_Николай; alex-l19041; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. dmitrichenko.ivan 6 22.06.16 10:00 Сейчас в теме
Не переносить код, а устанавливать новый. Перед первым обменов - выровнять текущие коды (чтобы небыло дублей)
3. alex-l19041 8 22.06.16 10:01 Сейчас в теме
если это единичный случай, то проще вручную изменить код номенклатуры в исходной базе
4. region.eburg 4 22.06.16 10:05 Сейчас в теме
таких дублей очень много, примерно 1000 позиций. Обмен не единичный, а постоянных. Номенклатуру заводят как в УТ так и в БП.
Пробовал не переносить код выдает ошибку, что то типо не может записать. Точного текста нет, не сохранил. Может где то в КД есть возможность, указать, что если ошибка код не уникален, тогда УстановитьНовыйКод(); ?
11. alex-l19041 8 22.06.16 10:37 Сейчас в теме
(4) region.eburg, "Номенклатуру заводят как в УТ так и в БП" - тяжелый случай... ошиблись в одном символе наименования и будет создаваться при переносе номенклатура с похожим наименованием... потом будут путать... Лучше один раз обработкой синхронизировать коды и потом устанавливать соответствие по коду. И еще договориться, что новая номенклатура создается только в одной базе.
13. Захаров_Николай 13 22.06.16 10:41 Сейчас в теме
(11) alex-l19041, какой смысл сейчас об этом говорить? Никто переделывать уже не будет.
В целом согласен бред полный. Но реалии таковы что с таким приходиться сталкиваться в разы чаще чем хотелось. Причина - спешка и не профессионализм.
14. region.eburg 4 22.06.16 10:42 Сейчас в теме
(11) alex-l19041, С этим полностью согласен. С этой конторой только начал работать. говорил, о том, что бы заводить только в одной базе номенклатуру, ответ, был, что они ее заносят по определенному формату, а формат наименования им выдает инженер.
5. region.eburg 4 22.06.16 10:07 Сейчас в теме
Или ПриЗагрузке, как то обратиться к коду и добавит префикс, например было 00-00005, а сделать КБ--00005. Только какэто реализовать? Где прописать, не могу разобраться.
6. dmitrichenko.ivan 6 22.06.16 10:11 Сейчас в теме
(5) region.eburg,
ПКО "Номенклатура", ПриЗагрузке
Организуй доп. поиск по коду. Если найден элемент с таким кодом, но другой ссылкой - установи новый код текущему (УстановитьНовыйКод())
16. region.eburg 4 22.06.16 10:45 Сейчас в теме
(6) dmitrichenko.ivan, Сделал через УстановитьНовыйКод() пробовал и в ПередЗагрузкой и ПриЗагрузке и ПослеЗагрузки, ошибка не исправилась, Код не уникален. На каком то сайте прочитал, что УстановитьНовыйНомер() не работает при обмене, так как считается. что код переходит из базы источника.
17. Захаров_Николай 13 22.06.16 10:48 Сейчас в теме
(16) region.eburg, в (15) более оптимальное решение.
18. region.eburg 4 22.06.16 10:52 Сейчас в теме
(17) Захаров_Николай, Сейчас как разх пробую. Минут 10 на обмен нужно
19. dmitrichenko.ivan 6 22.06.16 10:53 Сейчас в теме
(17) Захаров_Николай, (15) netesoff, Я первым посоветовал))
21. Захаров_Николай 13 22.06.16 11:13 Сейчас в теме
(19) dmitrichenko.ivan, Так-то да. :)
7. alex-l19041 8 22.06.16 10:19 Сейчас в теме
(5) region.eburg, "и добавит префикс" - плохая идея: собьется нумерация в БП...
8. Захаров_Николай 13 22.06.16 10:21 Сейчас в теме
(5) region.eburg, в правиле конвертации свойств. поставте галочку "не замещать значение свойств у существующего объекта.
9. dmitrichenko.ivan 6 22.06.16 10:23 Сейчас в теме
(8) Захаров_Николай, Это не поможет, т.к. если номенклатуры с таким наименованием нет, а с кодом есть - появится ошибка о неуникальности кода
10. Захаров_Николай 13 22.06.16 10:33 Сейчас в теме
(9) dmitrichenko.ivan, Тогда в ПКО перед загрузкой делать проверку.
Есть вариант загружать в режиме ЗагрузкаДанных = Истина. В этом случае будут дубли номеров и никаких ошибок не возникнет. А потом сделать сквозную перенумерацию. Так проще мне кажется.
12. region.eburg 4 22.06.16 10:39 Сейчас в теме
(8) Захаров_Николай, Ошибка такая же, код не уникален.
15. netesoff 5 22.06.16 10:42 Сейчас в теме
А нельзя просто убрать перенос кода в конвертации свойств и поставить галочку "Автоматически генерировать номер или код, если он не задан" в настройках ПКО?
Захаров_Николай; alex-l19041; +2 Ответить
20. region.eburg 4 22.06.16 11:02 Сейчас в теме
(15) netesoff, Это то, что доктор прописал, все получилось.
Всем спасибо за помощь!!!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот