|   |   | 
| 
 | Поле ExtID таблицы RefOpt не может принимать значение NULL | ☑ | ||
|---|---|---|---|---|
| 0
    
        TormozIT гуру 17.02.23✎ 17:10 | 
        Есть такая беда у меня (8.3.20-23 в файловой и северной базе)
 Ошибка SDBL: Поле ExtID таблицы RefOpt не может принимать значение NULL Возникает при вызове для любого справочника СправочникМенеджер.УстановитьОбновлениеПредопределенныхДанных() Сама таблица RefOpt пустая. Поле ExtID очевидно платформой не заполняется, когда она в эту таблицу добавляет запись. В другой базе с похоже конфой такого поля в этой таблице нет. Что это за поле такое? Предполагаю, что какой то внешний идентификатор справочника или идентификатор расширения конфигурации. Пробовал добавлять в базу расширение конфигурации. Проблема сохранилась. Потом удалил расширение. Проблема сохранилась. | |||
| 1
    
        TormozIT гуру 17.02.23✎ 17:21 | 
        Запрос SDBL выглядит так
 INSERT INTO RefOpt (MDID, PDUpdMode) VALUES(0x4a676240814a4d4982bc4984cd7c7903, 1) В нем очевидно не хватает 3-го имени поля (ExtID) и его значения (00000000-0000-0000-0000-000000000000) | |||
| 2
    
        rphosts 18.02.23✎ 04:50 | 
        В порядке эксперимента: а если эту колонку таблицы удалить?     | |||
| 3
    
        rphosts 18.02.23✎ 04:51 | 
        + (2) а ещё разрешить ему быть незаполненным     | |||
| 4
    
        TormozIT гуру 18.02.23✎ 07:25 | 
        (2) Так ошибка то в модели БД (SDBL) возникает. Запрос до СУБД не доходит. Т.е. исключение вызывает 1Сный транслятор запроса модели базы данных в диалект СУБД.     | |||
| 5
    
        TormozIT гуру 18.02.23✎ 07:26 | 
        Поднял в чистой базе+конфигурации режим совместимости до 8.2.22. Колонки ExtID появились в таблицах RefOpt и AccOpt. 
 Опустил режим совместимости на 8.3.15. Колонка ExtID исчезла в таблице RefOpt и осталась в таблице AccOpt. При этом вызов той функции по переключению настроек предопределенных для обоих типов метаданных проходит без ошибок. | |||
| 6
    
        TormozIT гуру 18.02.23✎ 07:27 | 
        Если в пустую базу+конфигурацию загрузить конфигурацию проблемной базы, то ошибка не воспроизводится. Т.е. она связана с содержимым одной из системных таблиц проблемной базы, но не только с конфигурацией.  При реструктуризации эта скверна сохраняется.     | |||
| 7
    
        TormozIT гуру 18.02.23✎ 08:17 | 
        Выгрузка базы. Можно восстановить в серверную или файловую базу. При запуске откроется ИР. Открыть структуру хранения БД и там сразу будет отбор по таблицам OPT. ЧТобы вызвать ошибку можно в модуле обычного приложения раскомментировать строку. 
 https://drive.google.com/file/d/1A1zmunxwqKMVgMoQwe6B6oS5cQicquDX/view?usp=sharing | |||
| 8
    
        rphosts 18.02.23✎ 09:08 | 
        (6) да, скверная фигня... 
 (7) вечером доберусь до компа - попробую поиграться. | |||
| 9
    
        TormozIT гуру 18.02.23✎ 10:18 | 
        Вычелили так.
 1. Изменить режим совместимости на 8.3.20. 2. Обновить конфигурацию БД 3. Изменить режим совместимости на 8.3.16. 4. Обновить конфигурацию БД | |||
| 10
    
        TormozIT гуру 18.02.23✎ 10:20 | 
        Спасибо доктору https://t.me/OneC_Expert/71477     | |||
| 11
    
        rphosts 18.02.23✎ 12:45 | 
        (10) значит не судьба поковырять базу....     | |||
| 12
    
        TormozIT гуру 18.02.23✎ 14:22 | 
        (11) ну 2 часа у тебя было =)     | |||
| 13
    
        Franchiser 18.02.23✎ 17:07 | 
        (10) а какой правильный ответ чтобы в чат попасть?     | |||
| 14
    
        TormozIT гуру 18.02.23✎ 18:39 | 
        (13) Бобр     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |