|
Ошибка при обновлении информационной базы. | ☑ | ||
---|---|---|---|---|
0
Skaliy_art
08.04.15
✎
03:49
|
1С 8.3.5.1517
Через конфигуратор обновил до 3.0.39.53 и запустил предприятие. Началось обновление и вылезла ошибка: {Справочник.СпособыВыплатыЗарплаты.МодульМенеджера(99)}: Ошибка при вызове метода контекста (Записать) СпособВыплаты.Записать(); по причине: Предопределенный элемент не уникален Откатываюсь на старую версию - все норм. Как я понимаю, при обновлении, в новой конфигурации появляется элемент с Код, идентичным уже существующему элементу. И нужно где-то что-то поменять или удалить. Не могу понять где и что делать. Подскажите пожалуйста. |
|||
1
Попытка1С
08.04.15
✎
04:51
|
Запусти отладку, посмотри что он там пытается записать, какой элемент, сравни со своим справочником, сделай выводы.
|
|||
2
cons74
08.04.15
✎
06:48
|
Написано же: Справочник.СпособыВыплатыЗарплаты
там есть предопределенный элемент. Поменяй им номера. |
|||
3
Skaliy_art
08.04.15
✎
10:54
|
Там один единственный предопределенный элемент, у которого поле "код" пустое. Только наименование "Зарплата".
Это я в конфигураторе смотрю. |
|||
4
Skaliy_art
08.04.15
✎
11:06
|
При вызове обработчика обновления:
"Справочники.СпособыВыплатыЗарплаты.ЗаполнитьОкругление()" произошла ошибка: "{Справочник.СпособыВыплатыЗарплаты.МодульМенеджера(99)}: Ошибка при вызове метода контекста (Записать) СпособВыплаты.Записать(); по причине: Предопределенный элемент не уникален". Эта ошибка перед ошибкой, указанной в теме |
|||
5
Stim
08.04.15
✎
11:10
|
типовая?
|
|||
6
1sanekmaloi1
08.04.15
✎
11:16
|
(3) Ну и поменяй имя предопределенного на "Зарплата1", обновись, перекинь ссылки "Зарплата1" на "Запрплата" который создастся при обновлении.
|
|||
7
Skaliy_art
08.04.15
✎
11:44
|
Stim
да (бухгалтерия) 1sanekmaloi1 Не помогло, поменял и "Имя" и "Наименование" элемента - при запуске отладки - такая же ошибка. |
|||
8
Skaliy_art
08.04.15
✎
11:47
|
(6) (5)
|
|||
9
D_E_S_131
08.04.15
✎
11:48
|
Уже 100 раз тут по моему обсуждалось. Нужно в режиме "Предприятия" "убить" задвоенные предопределенные элементы.
|
|||
10
Skaliy_art
08.04.15
✎
11:55
|
(9) мне получается нужно откатиться на рабочую конфигурацию и в ней искать? Потому что в обновленной - в режим предприятия не заходит.
|
|||
11
Stim
08.04.15
✎
11:55
|
(9) необязательно.
можно еще установить свойство Обновление предопр данных в Не обновлять автоматически у статей затрат |
|||
12
Skaliy_art
08.04.15
✎
12:01
|
(11) не помогло
|
|||
13
D_E_S_131
08.04.15
✎
12:17
|
(10) Да, откатиться. Потом посмотреть на этот справочник и там уже должны быть задвоенные предопределенные элементы. Их и исправлять.
|
|||
14
Skaliy_art
08.04.15
✎
12:54
|
(13) а может быть такое, что задвоенные предопределенные элементы появляются после обновления. Как мне тогда их вычислить и удалить?
|
|||
15
Emvika
08.04.15
✎
16:46
|
(0) а с какого релиза и в какой последовательности обновлял?
|
|||
16
Skaliy_art
09.04.15
✎
08:28
|
(13) Спасибо, подтолкнули в правильном направлении.
Написал мануальчик по своему случаи, может пригодится: 1) Открываем рабочую конфу через режим "Предприятия" и ищем дубли с помощью "Администрирование"->"Поддержка и обслуживание"->"Поиск и удаление дублей" 2) Выбираем "Искать в" (в нашем случаи СпособыВыплатыЗарплат), отбирать (жмём крестик - получится "Все элементы") и ищем дубли. Тот элемент, которого у нас больше, тот и считаем за главный, соответственно, тот, которого меньше, считаем дублем, который нужно удалить. 3) При нажатии кнопки "Удалить Дубли" возникает сложность в том, что проведенные документы, на основании которых уже существуют другие док-ты, невозможно заменить необходимым элементом. Для это воспользуемся обработкой "Выгрузка и загрузка данных XML 8.3" 4) Выгружаем в XML файл (в нашем случаи справочник СпособыВыплатыЗарплат) и смотрим уникальные номера (с тегом Ref) дублирующихся элементов. 5) Следующий шаг - это выгрузить XML файл документа, в котором у нас используются дублирующий элемент (в нашем случае ВедомостьНаВыплатуЗарплатыВКассу) - файлы могут быть очень большими по размеру. 6) Теперь логика: в XML файле документа, где используются дубли, необходимо заменить Ref дубликатного элемента Ref-ом главного элемента. 7) После замены - загружаем исправленный файл через обработку обратно. Грубо говоря мы сделали так, что дублирующий элемент никаким боком у нас не присутствует в документах. Теперь надо вообще удалить его. 8) Далее, так как предопределенный элемент справочника просто так не удалить, необходимо сделать это через конфигуратор. Заведамо нужно в Конфигурация->Поддержка->Настройка Поддержки включить возможность редактирования 9) Открываем конфигурацию, справочники (в Нашем случаи СпособыВыплатыЗарплат). Нажимаем два раза -> Прочее -> Предопределенные -> и удаляем единственный элемент (который и является дублем). 10) Не забываем после редактиирование нажать кнопку "Обновить конфигурацию базы данных" 11) Далее запускаем предприятие через отладку и повторяем пункты 1 и 2 - успешно удалив дубли. 12) Спокойно обновляем конфу и ошибка пропала. |
|||
17
Mashinist
09.04.15
✎
08:35
|
(16) А разве п. 3) нельзя было сделать через поиск и замену? не если нет стандартной, то можно было свою написать.
Потом как-то напрягает... В документах допустим ссылки поменяли. Возможно, что для данного варианта прокатит. А если ссылки есть еще в регистрах? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |