Имя: Пароль:
1C
1С v8
Удаления данных при обновлении конфигурации
0 abbas
 
24.03.22
07:01
Добрый день.
Есть конфигурация (бухгалтерия) на 8.3.20
Был добавлен один документ без использования расширения, при появлении новой конфигурации, физически добавляем в новую конфигурацию путем копированием данный документ.
Но когда загружаем (не сравнить объединить) в базу со старым релизом, то данные данного документа удаляются.
А типовые документы норм обновляются.
Этот документ при сравнении 2х конфигураций, не отображается, т.к. идентичные.
https://ibb.co/h270pL3 при реорганизации
Данный принцип работал со дня изменения конф с долгой протяженностью, но сегодня не сработал.
Подскажите пжста в чем может быть дело?
1 Serg_1960
 
24.03.22
08:37
"добавляем в новую конфигурацию путем копированием данный документ." - методически неверный подход (изменяются внутренние идентификаторы)
"Но когда загружаем [конфигурацию], то данные данного документа удаляются." - внутренние идентификаторы не совпадают.
"Этот документ при сравнении 2х конфигураций, не отображается, т.к. идентичные." - вероятно сравнение происходит по свойству "Имя" объекта.

"Особенности сравнения и объединения конфигураций в режиме обновления"
https://its.1c.ru/db/metod8dev/content/2299/hdoc

Для сопоставления объектов при объединении конфигурации в 1С:Предприятии 8 используются свойство "Имя" объекта метаданных и его внутренний идентификатор. Однако в различных вариантах сравнения алгоритм сопоставления объектов разный. Прежде чем подробно описать различные варианты, сначала опишем правила изменения внутреннего идентификатора. Идентификатор в пределах одной конфигурации никогда не изменяется. Идентификатор не изменяется при выгрузке конфигурации в cf или dt файлы (включая файлы поставки cf и обновления cfu). Идентификатор не изменяется при использовании механизма групповой разработки (в процессе перемещений между конфигурацией и хранилищем). Идентификатор всегда изменяется при копировании объекта, в том числе в процессе объединения конфигураций...
2 hhhh
 
24.03.22
11:43
(1) обычно CtrlC, CtrlV прокатывает и идентификатор тот же. Наверно, нестандартная ситуация - идентификатор такой уже есть в новой базе.
3 John83
 
24.03.22
11:48
(2) у меня ни разу не прокатывало - объекты всегда удалялись
4 DJ Anthon
 
24.03.22
11:59
(2) внутренние  идентификаторы там невооруженным взглядом не видно. имена объектов - это не внутренние идентификаторы. надо пользоваться сравнением и объединением конфиг. а сейчас уже и расширения нормально работают.
5 Serg_1960
 
24.03.22
14:38
У меня такое же, как у автора, было и не раз. Но это было давно, на старых платформах и особо я не заморачивался - устанавливал соответствие "вручную" и двигался дальше. Однажды удалось поймать "неуловимого Джо": платформа лажанулась при сравнении/объединении конфигураций, когда у объекта метаданных в текущей конфигурации было свойство "на поддержке с возможность изменения", а в другой конфигурации объект был "на поддержке".
6 ДедМорроз
 
25.03.22
00:32
Выгрузить конфигурацию в файлы там будет файл идентификаторов,в нем можно править,только при загрузке обратно будет такая же фигня - исправленные улетят.
Поэтому,делать на пустой конфигурации заготовку с правильными идентификаторами,и ничего не улетит.
7 rudnitskij
 
25.03.22
18:55
(6) я так реквизиты табчасти спасал один раз. Но данные удалось не потерять
8 Фрэнки
 
26.03.22
08:45
Похоже, что при таком подходе к разработке и саппорту нужно помнить, что накатываемая обновленная конфигурация должна быть потомком для той базы, которая уже установлена.

Т.е. изначально есть прод-база.

Сниаем с нее копию для разработки. И начинаем вносить изменния в конфигурацию. При этом, сама конфигурация не должна откуда-то извне перезаливаться.
Разработали в ней чего-то. Обновляли в типовом смысле, доливали, дописывали. Дошли до готовности переноса конфиги на прод.
Выгружаем конфиг в файл.
Открываем прод-базу - и можно даже залить базу на прод из файла (не сравнивая и не объединяя, а просто залить) Но надо понимать, что заливаемая конфига для прод-базы явялется потомком - прямым наследником. И тогда все будет хорошо.

Гораздо удобней для таких манипуляций использовать Хранилище конфигурации, которое надо генерить изначально из прод-базы.
Тогда даже при радикальном изменении всех типовых объектов на разработческой базе, получившей конфигурацию из хранилища, будет сохранятся наследование метаданных от прод-базы
9 Фрэнки
 
26.03.22
08:49
Т.е. в данном конкретном случае очевидно, что манипуляция с копированием документа из прода в конфигурацию для разработки происходит при том, что конфига для разработки "не родная" для этого прода.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn