Безопасное хранилище данных, имеются записи с одинаковыми измерениями


Столкнулся с проблемой при обновлении ЗУП 3.1. до релиза 3.1.2.183. При реструктуризации выскакивает ошибка «БезопасноеХранилищеДанных имеются записи с одинаковыми измерениями» и кнопка принять неактивна. Как-то даже поначалу растерялся, что еще за БезопасноеХранилищеДанных, что там 1С еще придумало за новое хранилище 🙂 поиск по проблеме быстрого результата не дал, хотя запросы похоже есть. Пришлось разбираться, и делюсь полученной информацией 🙂

Собственно БезопасноеХранилищеДанных — это регистр сведений, входящий в БСП и предназначенный для "записи конфиденциальных данных в безопасное хранилище, например, паролей для доступа к сторонним системам и т.п.". Что было не совсем очевидно из сообщения при реструктуризации данных, хотя, может, я и невнимательно прочитал 🙂 Его "безопасность" — это отдельный вопрос. 🙂 А природа ошибки в том, что у единственного измерения Владелец исключен тип строка и записи с владельцем — строкой становятся не уникальными.

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

Всё актуально и для Бухгалтерии 3.0, и УТ 11, и для других конфигураций на БСП.

Тут можно посмотреть обработку для чтения данных из этого регистра и их изменения — //infostart.ru/public/1155324/ 

7 Comments

  1. vovan_victory

    Эту ошибку в рознице я исправлял запуском тестирования и исправления(правда пришлось запускать 2 раза). Вылечил без обработок.

    Reply
  2. zuevkl

    Попробую для БП 3.0 выполнить тестирование и исправление. База в файловом варианте, интересно из-за чего возникают двойные записи.?

    Reply
  3. de0nis

    (2) скорее всего или сбой базы, тога должно помогать тестирование и исправление. Или в каком-то релизе ам вроде было еще одно измерение, а при обновлении его убрали или наоборот новое добавили или тип поменяли, из-за чего какие-то строки стали с пустым измерением, точно не помню уже, давно было.

    Reply
  4. SLord

    Добрый день,

    Есть ошибка

    «Обнаружено нарушение ссылочной целостности:

    У регистра сведений «»Безопасное хранилище данных»» в измерении, по комбинации измерений «»Владелец»» указан несуществующий элемент: «»<Объект не найден> (15:bb21c025e90ecd4b11e7d68432643d07)»».

    Тестирование не помогает.

    Ваша обработка может помочь?

    Reply
  5. de0nis

    (4) Добрый день. Сейчас нет возможности посмотреть, уже точно не помню. По-моему она только на незаполненность объекта проверяет. <Объект не найден> — это заполненное поле, но «битой ссылкой», т.е. ссылка есть, а объекта нет. Т.е. скорее всего не подойдет, но можно добавить проверку на: Владелец.ПолучитьОбъект() = неопределено и тоже очищать запись.

    Странно, что тестирование не помогает. Должна помогать проверка ссылочной целостности с флажками Удалять объект и Очищать ссылки. Как минимум она должна очистить поле <Объект не найден> и потом если останется пустое значение, его можно очистить моей обработкой.

    Если есть возможность, могу глянуть по удалёнке.

    Reply
  6. SLord

    В том-то и дело, что странно, при тестировании все галочки ставил, как Вы пишите.

    А при проверке должно писаться, что найдена «битая ссылка»?

    У меня только пишет, «Начато тестирование» и «Закончено тестирование».

    1С пишет

    «В большинстве случаев для расследования причин возникновения проблемы можно воспользоваться историей изменений проблемного объекта:

    • открыть карточку объекта и перейти по гиперссылке «»История изменений»»;

    • с помощью сравнения в списке версий определить, кто, когда и какие именно изменения вносил в объект.

    Если история изменений отключена, то можно воспользоваться журналом регистрации, установив отбор по проблемному объекту.»

    Не подскажите, где искать эти карточки объектов?

    PS: это конечно не критично, но в ЗУП начиная, кажется, с версии 3.1.110, на главную страницу вывели ошибки тестирования, и теперь сияет красная строка «Некорректные данные».

    А может это глюк проги и ошибки этой насамом деле уже нет?!?!

    Reply
  7. de0nis

    (6) Да. Должно быть сообщение типа: найдена ссылка на не существующий объект — Ссылка удалена . Дословно не помню но смысл такой 🙂

    Попробуйте посмотреть консолью запросов — что в регистре содержится. Или попробовать обновить главную страницу или тестирование еще раз запустить.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *