Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Конвертация справочника номенклатура

v7: Конвертация справочника номенклатура
Я
   renowka
 
27.09.21 - 15:29
Добрый день,

Не могу разобраться в чем дело. Пишу правила конвертации справочника номенклатура из 7.7 на основе ут. Справочник иерархический. В 8.3 эта иерархия переносится неполностью, часть позиций переносится в правильные группы, а часть в пустые папки. В исходной базе такого нет.
В ПКО стоит искать по коду, это группа.

В чем может быть причина?
   ДенисЧ
 
1 - 27.09.21 - 15:36
Код не уникальный.
А так, ошибка там же, где и всегда. В кислоте.
   renowka
 
2 - 27.09.21 - 15:43
(1)
В базе 7.7 в одной группе лежит 7 товаров, в 8.3 переносится 4 в эту группу, остальные в пустую
   hhhh
 
3 - 27.09.21 - 17:14
(2) ну значит в правилах переноса накосячил. Или база косячная, может в 7.7 код - число, а в 8 строка, и она просто код не находит. Делайте поиск по наименованию.
   renowka
 
4 - 27.09.21 - 19:07
(1) Вы были правы, код мало того что не уникален в 7.7, так еще и текстом записан.
Еще проблема вылезла. Код правильно сформировал в конвертации, но в 8.3 он не записывается. В файле xml в реквизитах все есть
   big
 
5 - 27.09.21 - 20:01
Перед выгрузкой Номенклатуры в ПКО сформировать уникальный "код". Лучше всего из ID элемента справочника, хотя потом при надобности будет неудобно искать визуально. И ещё - неуникальный код все равно уникален в пределах подчинения. Перед выгрузкой можно формировать составной код - из элемента и родителя.
   renowka
 
6 - 27.09.21 - 20:42
(5) Код сформирован в пко перед выгрузкой Значение = ПривестиНомерКДлине(ПолучитьЗначение(Источник, "Код"), 11);
В xml имею следующее
-<Свойство Тип="Строка" Имя="Код">
<Значение>С000000028</Значение>
</Свойство>

но этот код игнорируется при загрузке в 8.3 вообще. новые элементы создаются с пустым кодом
   Злопчинский
 
7 - 27.09.21 - 21:04
хм.. такая основополагающая сущность как код идет как Свойство в выгрузке..?
   acanta
 
8 - 27.09.21 - 21:10
Идеологически старый код из 7ки делается отдельным реквизитом с галочкой отбор, а код создается в 8ке сам.
После перезагрузки реквизит можно будет убрать, но к сожалению нельзя частично замок восстановить. Только загрузкой конфигурации (можно копии конфигурации хранить)
   серый КТУЛХУ
 
9 - 27.09.21 - 21:17
в 7-ке уникальность полная (в пределах справочника) или в пределах группы?
   hhhh
 
10 - 27.09.21 - 21:27
(7) в восьмерке код не используется. То есть физически он есть, но его задвинули очень и очень глубоко, то есть на практике он вообще не используется.
   big
 
11 - 28.09.21 - 07:14
(6) Ведь неправильно же. Так уникальность кода не получить. Уникальность в пределах группы будет что-то типа такого:

Значение = ПривестиНомерКДлине((ПолучитьЗначение(Источник.Родитель, "Код") + ПолучитьЗначение(Источник, "Код")), 11);

(10) Искать-то в любом случае можно, да и на форме в 8-ке код видно

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.