Как устранить ошибку отсутствия регистратора для регистра в 1С?

База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как устранить ошибку отсутствия регистратора для регистра в 1С?

Просмотр 1 ветки ответов
  • Автор
    Записи
    • #38732
      Фото аватараOdineski
      Участник

        РегистрСведений.LES_ПородныйСоставЛесосек: Ни один из документов не является регистратором для регистра
        При проверке метаданных обнаружены ошибки!
        Операция не может быть выполнена.

      • #38733
        bot_avaOdin — Одинэсник
        Участник

          Ошибка означает, что регистр сведений LES_ПородныйСоставЛесосек настроен как регистр, подчиненный регистраторам, но в его свойствах не указан ни один документ-регистратор.

          Из-за этого 1С не понимает, каким документом должны записываться движения регистра.

          ## Вариант 1. Регистр должен заполняться документами

          Это наиболее распространенный вариант для регистра породного состава лесосек.

          ### Что сделать в конфигураторе

          1. Откройте:

          2. В свойствах регистра найдите:

          Должно быть установлено:

          3. Ниже откройте список:

          4. Добавьте документы, которые должны записывать движения регистра.

          Например:

          или другой документ, в котором формируется породный состав лесосек.

          5. Откройте свойства документа-регистратора:

          6. Проверьте, что регистр присутствует в списке регистров, по которым документ может формировать движения.

          В зависимости от версии конфигуратора это может находиться в:

          или в свойствах документа в списке регистров.

          Добавьте туда:

          7. В модуле объекта документа должны формироваться движения регистра.

          Пример:

          Названия измерений и ресурсов нужно заменить на фактические названия в вашем регистре.

          Важно: если регистр подчинен регистратору, записи должны создаваться через движения документа, а не произвольной записью регистра.

          ## Какой документ выбрать регистратором

          Нужно определить, какой документ является источником данных породного состава.

          Например:

          — LES_ПроектЛесовосстановления;
          — LES_ФормированиеЛесосеки;
          — LES_Таксация;
          — LES_ИзменениеПородногоСостава.

          Регистратором должен быть документ, после проведения которого появляется или изменяется породный состав лесосеки.

          Если данные вводятся непосредственно в форме документа LES_ПроектЛесовосстановления, то именно этот документ логично указать регистратором:

          ## Вариант 2. Регистр не должен иметь регистратора

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

          ### Что сделать

          Откройте:

          Измените свойство:

          с:

          на:

          После этого регистр можно будет записывать напрямую:

          Для независимого регистра не используется Регистратор в качестве обязательной связи с документом.

          ## Как выбрать правильный вариант

          ### Оставляйте регистр подчиненным регистратору, если:

          — записи должны появляться при проведении документа;
          — нужно видеть движения документа;
          — нужно отменять движения при распроведении;
          — регистр хранит историю изменений по документам;
          — данные должны удаляться или замещаться при перепроведении документа.

          В этом случае нужно обязательно добавить хотя бы один документ-регистратор.

          ### Делайте регистр независимым, если:

          — он заполняется напрямую программным кодом;
          — записи не связаны с проведением документа;
          — это вспомогательное хранилище текущего состояния;
          — регистр используется как самостоятельная таблица данных;
          — документы не должны формировать движения.

          ## Возможная причина после обновления или работы с расширением

          Если раньше ошибка не появлялась, проверьте следующие ситуации.

          ### Удален документ-регистратор

          В свойствах регистра мог быть указан документ, который затем удалили или переименовали.

          Откройте список регистраторов и проверьте, не пустой ли он.

          ### Документ-регистратор отключен в расширении

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

          Также проверьте, не отключено ли расширение, в котором был добавлен регистратор.

          ### Регистр добавлен, но движения документа не настроены

          Самого указания документа в списке регистраторов недостаточно. Нужно также:

          1. Добавить регистр в движения документа.
          2. Установить Движения.LES_ПородныйСоставЛесосек.Записывать = Истина.
          3. Заполнить движения в модуле объекта документа.

          ## Что сделать в вашей ситуации

          Судя по названию регистра LES_ПородныйСоставЛесосек, наиболее правильная схема, вероятно, такая:

          Затем в документе LES_ПроектЛесовосстановления нужно включить движения по этому регистру и сформировать записи при проведении.

          Если же LES_ПородныйСоставЛесосек создавался исключительно для хранения данных, которые записываются отдельной обработкой, установите:

          После изменения:

          1. Запишите изменения в конфигураторе.
          2. Выполните проверку конфигурации.
          3. Обновите конфигурацию базы данных.
          4. Проверьте проведение документа-регистратора, если выбран первый вариант.

          Текущая ошибка не связана с данными регистра. Это ошибка структуры метаданных: у регистра установлен режим записи через регистратор, но список регистраторов пуст.

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С