![]() |
![]() |
![]() |
|
Как установить соответствие объектов при сравнении основной конфы и конфы БД? | ☑ | ||
---|---|---|---|---|
0
altaykniga
22.02.15
✎
20:58
|
Подскажите, люди умные... (с наступающим праздником мужиков!)
Выполняю обновление измененной конфигурации. Проблема вот в чем. В итоге имеется обновленная основная конфигурация и не обновленная конфигурация базы данных. РегистрБухгалтерии-ЕПСБУ-Реквизиты ВидПервичногоДокумента НомерПервичногоДокумента ДатаПервичногоДокумента Эти реквизиты не связаны между этими двумя конфигурациями, т. е. в основной они помечены как новые, и в конфигурации БД также помечены как новые. При обновлении конфы БД получается, что эти реквизиты удаляются, а, следовательно, и их значения. Т.е. после обновления конфы БД заходим в проводки и видим, что эти поля пустые (ВидПервичногоДокумента, НомерПервичногоДокумента, ДатаПервичногоДокумента). Пробовал сделать так. Конфигурация-Конфигурация базы данных — Сравнить, объединить с конфигурацией базы данных. Выходит окно сравнения объектов, устанавливаю соответствие злополучных реквизитов этих. Жму кнопку обновить. Вроды бы в окне сравнения больше не выходит, что эти объекты разные. Что делать дальше? Снимаю галки со всех объектов в таблице сравнения, жму Выполнить. Конфигурация базы данных типа обновляется. А при повторном сравнении этих конфиг все повторяется, т. е. Соответствие между этими реквизитами теряется. Как сделать так, чтобы при обновлении конфы базы данных значения этих реквизитов не пропали? |
|||
1
altaykniga
23.02.15
✎
12:16
|
поднимаю
|
|||
2
EugeniaK
23.02.15
✎
12:20
|
(0) А как вообще так получилось, что они разные?
Скорее всего, криво обновили когда-то в прошлом, что идентификаторы сбились. Наиболее правильное решение: 1. Переименовать свои в: УдалитьВидПервичногоДокумента УдалитьНомерПервичногоДокумента УдалитьДатаПервичногоДокумента 2. Обновить конфигурацию, перенеся новые поля из обновления. При этом в базе будут и старые заполненные и новые пустые. 3. Заполнить групповой обработкой новые по старым. 4. Удалить старые. |
|||
3
altaykniga
23.02.15
✎
13:18
|
(2) "Переименовать свои в:" - поля в конфе базы данных переименовать нельзя. Может переименовать эти поля в основной конфе, т.е. в обновленной? Потом обновить конфу БД, обработкой заполнить новые данные по старым, затем удалить старые реквизиты, а потом назад переименовать новые реквизиты в нужные?
|
|||
4
altaykniga
23.02.15
✎
13:19
|
а почему в моей ситуации не срабатывает установка соответствий?
|
|||
5
altaykniga
23.02.15
✎
13:38
|
интересно. Если выгрузить конфу БД в файл, а затем сравнивать основную конфу с этим файлом, то эти реквизиты соответствуют друг другу. При сравнении, объединении с файлом соответствие проходит по именам объектов, а не по внутренним идентификаторам?
|
|||
6
EugeniaK
23.02.15
✎
13:46
|
(3) Разумеется, в основной. В той, в которой работаете.
(4) (5) При сравнении с файлом соответствие выполняется по именам объектов, при обновлении по УИДам. Он могут быть разные, если изначально эти поля добавлялись не стандартным обновлением, а вручную. Выгрузите конфигурацию не в .cf, а в .xml. В конфигураторе "Конфигурация" - "Выгрузить конфигурацию в файлы". В этом случае в текстовом файле будут видны УИДы метаданных. Сравните УИДы вашей конфигурации с УИДами типовой. Думаю, они у вас отличаются. |
|||
7
altaykniga
23.02.15
✎
13:52
|
(6) а можно как-нибудь подменить уиды в конфигурации базы данных?
|
|||
8
Serg_1960
23.02.15
✎
14:13
|
(7) Можно. Но менять нужно не в конфигурации БД, а в основной конфигурации - там нет данных и, соответственно, речь о потере данных не актуально :)
|
|||
9
Serg_1960
23.02.15
✎
14:16
|
PS: У меня были такие проблемы. Имхо, это временный глюк платформы - при последующем обновлении ошибки соответствия не повторялись. Как выкручивался?
Не обновляя конфигурацию БД, выгрузил обновленную основную конфигурацию (А) и конфигурацию БД (Б); загрузил конфигурацию (Б) и накатил через "сравнить/объединить" конфигурацию (А). После этого обновил конфигурацию БД. Если вы каким-то образом "потеряете" версию конфигурации поставщика - это легко восстанавливается повторным обновлением (сняв все галочки в окне сравнения/объединения) |
|||
10
EugeniaK
23.02.15
✎
14:32
|
(7) Стандартными средствами нельзя. Самый простой вариант я описала в (2).
(9) Скорее всего, это не глюк платформы. Это кривое обновление в прошлом. altaykniga, выгрузите в xml и проверьте. Возможно, проблема в чем-то еще. Но скорее всего просто в прошлом криво вручную добавили поля. |
|||
11
EugeniaK
23.02.15
✎
14:33
|
(8) Можно в основной конфигурации. Но в этом случае при обновлении конфигурации БД по основной физические поля с данными просто исчезнут и появятся новые пустые с правильными УИДами. По-моему, это не совсем то, что нужно.
|
|||
12
Serg_1960
23.02.15
✎
14:52
|
(10) "Скорее всего, это не глюк платформы. Это кривое обновление в прошлом." - Вы противоречите сами себе. Даже если "кривое обновление в прошлом" - это тоже глюк платформы. В прошлом :)
Моё утверждение базируется на трех слонах: конфигурация поставщика - недоступна; внутренние идентификаторы "из вне" недоступны; при обновлении внутренние идентификаторы в существующих объектах не изменяются. |
|||
13
altaykniga
23.02.15
✎
17:14
|
(2) "заполнить групповой обработкой новые по старым"
как заполнить новые реквизиты в РегистреБухгалтерии по старым?? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |