|
Прокатит копирование справочника (Установить ссылку нового)? |
☑ |
0
RomaH
14.12.23
✎
11:38
|
Хочу новые метаданные перетащить в основную конфу из расширений.
Порядок действий
1. В Основную копирую из расширения справочник (копируется вся стурктура соответсвенно)
2. в расширении в наименование добавляю префикс (Удалить_)
3. Ищу ссылки на объект расширения - и добавляю в них объект основной (составной тип получается)
4. программно обхожу справочник удаляю элемент и в новом создаю элемент через установить ссылку нового по тому же ГУИД (который удалил)
вопрос - в регистрах ссылки поменяются? прокатит такая схема?
|
|
1
Волшебник
14.12.23
✎
11:40
|
проверь на тестовой
|
|
2
Лефмихалыч
14.12.23
✎
11:44
|
думаю, что не поменяется и ты данные потеряешь. Физически в БД поле Ссылка - это два поля:
1. идентификатор типа (длинное целое, никак не связанное с именем объекта метаданных)
2. сам гуид
и вот идентификатор типа после удаления расширения станет указывать в никуда и платформа наверняка начнет чистить данные.
|
|
3
Garykom
14.12.23
✎
11:53
|
(0) не прокатит
или нормально медленно делай через замену ссылок
или на низком уровне прямыми запросами
|
|
4
AAA
14.12.23
✎
12:04
|
я бы наверное скопировал под другими именами, затем обработкой заполнил данными из расширения, затем удалил из расширения и переименовал в конфигурации. Примерно так
|
|
5
AAA
14.12.23
✎
12:06
|
Но если на него есть ссылки, то не прокатит
|
|
6
RomaH
14.12.23
✎
12:57
|
(2) идентификатор типа - его можно заменить средствами БД, но "Ведущее" - при удалении элемента справочника - удаляется и запись регистра
не все так просто оказалось - куча телодвижений
|
|
7
Лефмихалыч
14.12.23
✎
16:24
|
(6) горя хапнешь и весь устанешь, а толку не добьешься.
1. Создай нужные тебе атрибуты/реквизиты/измерения с каким-нить суффиксом или префиксом
2. заполни данные обработкой или скулём в новых реквизитах
3. Выкоси расширение
4. переименуй метаданные из пункта 1
это, хоть и выглядит тоскливо, но задачу решает и на самом деле геморроя меньше, чем вот эти твои трюки
|
|
8
RomaH
15.12.23
✎
00:47
|
(7) не понял
|
|
9
RomaH
15.12.23
✎
00:49
|
(7)
т.е. в каждом объекте где задействован переносимый справочник
создать дубль реквизита содержащий оный
не понял что скулем заполнить?
|
|
10
RomaH
15.12.23
✎
00:50
|
поле "rt" не достаточно заполнить "правильным" значением?
|
|
11
ptiz
15.12.23
✎
07:43
|
(10) Достаточно. Кстати, слетят настройки СКД и прочее, где были сохранены старые ссылки. Но они при любом варианте слетят.
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой