В процессе обновления информационной базы произошла критическая ошибка по причине: Ошибка SDBL: Тип поля Code несовместим с типом литерала STRING

16.03.16

Задачи пользователя - Корректировка данных

В этой статье описан способ решения ошибки "В процессе обновления информационной базы произошла критическая ошибка по причине: Ошибка SDBL: Тип поля Code несовместим с типом литерала STRING". Сразу оговорюсь, что описанный метод больше похож на "танцы с бубнами", но, возможно, кому-нибудь сможет помочь или пригодится что-то из того, что я перепробовал. По крайней мере, поможет натолкнуть на правильную мысль, а также будут подняты другие проблемы, интересные к обсуждению.

В процессе обновления нетиповой ИБ выходит ошибка:

Ошибка возникает на этапе обновления конфигурации базы данных.

 

Начнём с того, что мне посоветовали:

  1. Выгрузить/загрузить базу
  2. Выгрузить/загрузить .сf
  3. Провести "Тестирование и исправление информационной базы"

Первые 2 пункта мне не помогли, а ТиИ именно на проверке логической целостности вываливается со следующей ошибкой:

Причину этой ошибки выявить не удалось, как и загрузить в файловую версию, т.к. 2 таблицы (

AccumRg27945 - это РегистрНакопления.ЗатратыНаВыпускПродукцииНалоговыйУчет

AccumRg27891 -РегистрНакопления.ЗатратыНаВыпускПродукцииБухгалтерскийУчет) превышают 4 гига.

Буду рад услышать в комментариях ваше мнение по решению этой, уже другой ошибки. Конечно, не очень хотелось заниматься сворачиваем этих регистров ради выгрузки в файловую версию ради проведения ТиИ, а просто заставить ТиИ работать на клиент-серверной версии. А всё началось просто с ошибки обновления. Вернемся к ней...

Предположив, что ошибка обновления выходит из-за конкретного документа, справочника или другого объекта, проводим обновления методом исключения, т.е. при сравнении\объединении без фильтрации по дважды измененным свойствам снимаем галочки с половины объектов. Если обновление проходит успешно, значит, ошибка в другой половине, если с ошибкой, значит, в этой половине.  Затем эту половину снова делим на 2 и т.д.

В результате недельного труда, виновником оказался Справочник.ВидыДокументов, он же "Виды подтверждающих документов".

Немного об этом справочнике: "Виды подтверждающих документов" - предназначен для хранения типов документов, которые участвуют в системе электронного обмена подтверждающими документами с уполномоченным банком, что позволяет банку ускорить процесс проверки платежных поручений.

Типовой справочник, который появился в предыдущем обновлении месяц-два назад. Самое интересное что он в текущей базе не используется, потому что организация не занимается государственными контрактами и в настройке параметров учета эта функциональность отключена. Всё, что там есть - это предопределенные элементы.

В моей базе справочник типовой, но при сравнении/объединении показывает что будто бы изменили динамический список в форме списка справочника.

Получается, если просто снять галочку с этого справочника, т.е. не обновлять справочник, то обновление пройдёт успешно. Но помнить о том, что нужно снимать галочку каждый раз, когда поставщик вносит изменения, не лучшее решение.

Делаем запрос и ищем странности в этом справочнике:

Из странностей видим только то, что в коде одного из элементов куча пробелов, проверяем в основной конфигурации и старой конфигурации поставщика - там тоже эти лишние пробелы, а в новой конфигурации поставщика нет пробелов.

Далее смотрим, какие же изменения вносит поставщик:

 

Видим, что поставщик уменьшил длину кода с 9 до 3, но самое интересное тут то, что поставщик изменил тип кода со "строки" на "число". Видимо, именно об этом и говорит ошибка "Тип поля Code несовместим с типом литерала STRING". Получается, платформа меняет тип кода, а потом не может записать строковые коды предопреденных элементов в числовое поле. Или что там в какой последовательности, я точно не знаю.

Проверяем. В конфигураторе включаем возможность редактирования справочника, переводим тип кода в числовой тип. Обновляем конфигурацию БД.  Тип кода сменился без ошибок, а значит, коды предопределенных элементов преобразовались без ошибок.

Теперь накатываем обновление поставщика, видим, что тип кода и его длина не участвуют в обновлении, потому что совпадают, зато участвуют предопреденные элементы.

Обновление прошло успешно! Теперь осталось дождаться выходных и накатить это на рабочую базу.

И последнее, о чем следует упомянуть, это то, что все эти действия выполнялись на платформе 1С:Предприятие 8.3 (8.3.5.1248), при переходе с релиза УПП 1.3.73.2 на 1.3.74.1

ошибка Тип поля Code несовместим с типом литерала STRING

См. также

Исправление в 1С:ЗУП/ЗКГУ ошибок по НДФЛ и взаиморасчетам с сотрудниками на начало расчетного года.

Корректировка данных Зарплата Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

4800 руб.

06.10.2023    2320    29    15    

33

Тестирование и исправление ключей аналитики ERP, УТ11, КА

Корректировка данных Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Незаменимая обработка для сопровождения конфигураций: ERP, УТ, КА. Позволяет вычистить многие ошибки в ключах аналитики, в ключевых справочниках конфигурации.

3600 руб.

10.02.2017    106807    633    173    

676

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    27378    79    146    

59

Исправление ошибки закрытия месяца "Обнаружены ненулевые остатки по суммам при нулевом остатке по количеству в регистре себестоимости по организации". УТ 11.4,УТ 11.5, КА 2.4,КА 2.5, ERP 2.4, ERP 2.5, КА 2 Казахстан, Управление торговлей 3 для Казахстана

Закрытие периода Корректировка данных Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Закрытие месяца - важный процесс в современных конфигурациях, таких как УТ 11.4, УТ 11.5, КА 2.4, КА 2.5 ERP 2.4,ERP 2.5, КА 2 Казахстан, УТ 3 Казахстан регламентные операции влияют на расчет себестоимости, и ошибки в данном расчете не дают картины деятельности организации.

2400 руб.

27.10.2021    22320    299    35    

71

SALE! 20%

Заполнение документа "Корректировка регистров" произвольными данными

Закрытие периода Корректировка данных Платформа 1С v8.3 Система компоновки данных 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Внешняя обработка, позволяющая произвольным образом заполнять документ "Корректировка регистров" Предназначена для использования в конфигурациях "Управление торговлей 11", "Управление небольшой фирмой", "ERP Управление предприятием", а также в других конфигурациях, в состав которых входит библиотека стандартных подсистем (БСП) версии 2.2+ и указанный выше документ.

2400 1920 руб.

13.07.2015    50165    171    29    

121
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. alexks321 16.03.16 14:48 Сейчас в теме
Интересная статья.
Тоже вышла ошибка при переходе с релиза УПП 1.3.73.2 на 1.3.74.1,но платформа 1С:Предприятие 8.2 (8.2.19.130).
Ошибка была следующего характера "Код справочника стал не уникальным: Статьи калькуляции (0)".
Хотя данный справочник не используется по причине того, что он связан настройкой "Государственные контракты", которые не ведутся в организации.
progr-2008; Anesk; +2 Ответить
2. Anesk 17 16.03.16 15:03 Сейчас в теме
(1) alexks321, аналогично вышла. И тоже не используется. Это не критичная ошибка, в случае чего просто нужно будет изменить код.
4. alexks321 18.03.16 07:28 Сейчас в теме
(2) Конечно, так и сделал, просто проигнорировал это предупреждение, но остался осадок, а все ли верно прошло с обновлением. О таких вещах можно было и предупрелить, особно осторожных, что это штатная ситуатция.
3. kapustinag 16.03.16 18:55 Сейчас в теме
Описанная в статье ошибка - со справочником ВидыДокументов - не выходит при обновлении типовой УПП 1.3.73.2 на 1.3.74.1 на платформе 8.2.19.90 и 8.2.19.83. А насчет уникальности кода статьиКалькуляции предупреждение - выходит.
5. wano37 21.03.16 23:26 Сейчас в теме
Спасибо за статью! Вылетела эта же ошибка при обновлении УПП.
6. Anesk 17 22.03.16 07:06 Сейчас в теме
(5) wano37, рад помощь)
pioneeer; +1 Ответить
7. Andrefan 23.03.16 08:50 Сейчас в теме
Интересный подход по решению неочевидной проблемы. Надо взять на заметку. Однозначно плюс.
pioneeer; +1 Ответить
8. daho 8 24.03.16 15:23 Сейчас в теме
Спасибо за информацию. Однозначно может пригодится. Еще не натыкался на такую ситуацию а уже один из вариантов решения если что будет в запасе..)
pioneeer; +1 Ответить
9. pioneeer 06.04.16 17:23 Сейчас в теме
Ащее респект! Столько времени сэкономил! Благодарен очень)
10. igorbel 41 13.04.16 10:21 Сейчас в теме
Спасибо, столкнулся с такой же проблемой.
11. alexnov 48 14.04.16 13:38 Сейчас в теме
спасибо за помощь! А вообще хотелось бы узнать более правильный способ нахождения такой ошибки...
12. Anesk 17 14.04.16 15:26 Сейчас в теме
(11) alexnov, мне кажется если обновить на более новом релизе платформы, то этой ошибки не будет - может это более правильный способ, но и указанный способ вполне безопасен.
13. frkbvfnjh 785 02.08.16 11:35 Сейчас в теме
Большое спасибо за то, что поделились опытом! Сэкономил кучу времени...
14. luchyk 21.10.16 10:54 Сейчас в теме
Спасибище, только представил себе как это всё самому искать, это ж целый день запросто угробить можно.
15. kudlach 12 26.06.17 13:20 Сейчас в теме
Добавлю (спустя еще год).
После обновления при проведении конкретного документа вылезло аналогичное. "Ошибка SDBL" тип """" не совпадает с типом поля Bl00909200
Вылезло после обновления. Тестирование и исправление останавливается именно на таблице этого документа. В конфигураторе обнаруживаю единственный реквизит, вставленный программистами. И тип реквизита после обновления вместо типа "Документ" стал типом "Строка".
Поменял на нужное - все исправилось. Повезло, что потерянные данные не критичны для работы.
16. Derek777 4 05.10.17 14:06 Сейчас в теме
Присоединяюсь. Респект автору. То же УПП те же релизы платформы и конф. Единственное после изменения типа кода с строки на число, при обновлении опять ругнулась: В процессе обновления информационной базы произошла критическая ошибка
по причине:
Попытка вставки неуникального значения в уникальный индекс:
Microsoft SQL Server Native Client 10.0: Не удается вставить повторяющуюся строку ключа в объект "dbo._ReferenceChngR2121NG" с уникальным индексом "_Refere2121_ByDataKey_RRNG". Повторяющееся значение ключа: (0x97b6002590a25f6611e5aec6c6ce632f, 0x00000012, 0x97b9002590a25f6611e61201af44237e).
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=E, native=2601, line=1

В этом же справочнике удали все предопределенные элементы. Затем в режиме приложения удалил помеченные объекты. Затем провел обновление, все норм.
17. nvv1970 09.10.17 08:31 Сейчас в теме
Интересно, какие особенности эксплуатации заставляют пользоваться столь древней платформой? Даже на момент написания статьи...
Для описания подобного рода ошибок следует делать проверку на последних версиях, чтобы понимать является ли это особенностью конкурентной версии.
18. Anesk 17 09.10.17 13:21 Сейчас в теме
(17) вот и сделайте, кто вам мешает? Все данные есть, номера релизов есть проверяйте.

Позвольте мне самому решать, что "следует" "Для описания подобного рода ошибок" делать.
Не нравится не читайте, правила сайта соблюдены. А то нашелся тут, советчик, который советует как делать публикации, а сам при этом не имеет ни одной.
19. nvv1970 09.10.17 14:05 Сейчас в теме
(18) Зачем так критично. Ошибка интересная. Я, например, с ней не встречался.
Почему упомянул об обновлении платформы? Потому что не исключено, что это может быть исправленный баг старых версий. Тогда правильный вывод из публикации будет не "знайте эту ошибку и вот вам метод как ее исправить", а "вовремя обновляйте платформу для исправления известных ошибок". Такие вопросы напрашиваются сами собой.

За публикацию и однозначно спасибо. На то и открытые комментарии, чтобы в спорах родить/узнать истину.
Вы хотели только хвалебные комментарии? ))) Их нещадно заминусуют как творение ботов )

не имеет ни одной
да уж... Не нашел пока в себе мотивации. И до сих пор не знаю для чего это другие делают (слава? деньги? некуда время девать?).
20. progr-2008 118 07.12.17 21:03 Сейчас в теме
При обновлении типовой УПП 1.3.73.2 на 1.3.74.1 на платформе 8.3.8.2322 - стали неуникальными коды предопределенных элементов справочника статьи калькуляции, который не используется.
А вот других ошибок на этом обновлении - не было.
21. mburkin 11 14.05.19 09:15 Сейчас в теме
Ну вот на дворе 2019 год, платформа 8.3.13.1809, обновляю без дважды измененных свойств бухгалтерию Проф на версию Корп, того же релиза. Выскакивает ошибка SDBL с указанием некого Document34 и поля Parent - но такого в базе данных нет... да и какой у документа Parent...

уже даже отказался от доработок и привёл к типовому виду. Обновляю уже без сравнения - всё равно Выскакивает ОШИБКА SDBL уже без каких-либо вообще дополнительных слов...сейчас делаю ТиИ сообщилась ошибка

Тестирование начато
Проверка логической целостности. Справочник.ФизическиеЛица М****в Юрий Николаевич
ОбщийРеквизит.ОбластьДанныхОсновныеДанные = 0
Неправильная ссылка на родителя. Перенесен в корень.
Тестирование закончено


Вроде как про родителя речь... надеюсь в этом было дело... обновляю теперь опять на корп... посмотрим что будет
22. mburkin 11 14.05.19 10:03 Сейчас в теме
(21) продолжение

Обновление прошло без ошибок в конфигураторе, а вот в режиме предприятия такое сообщение...
Прикрепленные файлы:
23. mburkin 11 14.05.19 12:39 Сейчас в теме
(22) продолжение

В общем сделал тестирование и исправление - реструктуризацию и реиндексацию. База выросла с 9 гб до 12 гб. Но ошибка ушла - всё хорошо обновилось
Оставьте свое сообщение