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