1С регистр накопления без регистратора

В 1С:Предприятии 8 все регистры, кроме регистров сведений, всегда связаны с регистраторами. Регистры сведений могут быть независимыми или также подчиненными регистратору. В этом разделе мы опишем работу с регистрами, подчиненными регистраторам.

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

Однако в 1С:Предприятии 8 существует возможность изменять записи регистров без участия документа. При этом следует учитывать, что каждая запись регистра всегда подчинена одному и только одному регистратору (документу). Поэтому с точки зрения "времени жизни" записи всегда подчинены конкретным регистраторам. Однако, записи могут изменяться без участия самого документа. Главное, чтобы в них имелась ссылка на документ.

Для изменения записей регистров, подчиненных регистраторам, используются наборы записей. При этом всегда используется отбор по регистратору. То есть совокупность записей, подчиненных одному регистратору, является "гранулой" изменения регистра. Нельзя добавлять или удалять отдельные записи. Можно только считывать и записывать записи по регистратору.

При изменении записей регистра можно использовать набор записей, входящий в коллекцию движений документа (свойство Движения объекта ДокументОбъект). Однако это не обязательно. Для изменения записей регистра можно использовать и набор записей созданный с помощью менеджера регистра.

Таким образом, чтобы изменить записи регистра необходимо:

  • создать набор записей;
  • установить отбор по определенному регистратору;
  • прочитать набор;
  • изменить записи набора;
  • записать набор.

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

//Выберем всех регистраторов регистра
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
| УчетНоменклатуры.Регистратор
|ИЗ
| РегистрНакопления.УчетНоменклатуры КАК УчетНоменклатуры";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
//Обойдем регистраторов
Пока Выборка.Следующий() Цикл
Сообщить("Изменение записей по регистратору: " + Выборка.Регистратор);
//Для каждого регистратора выполним изменение набора записей
НаборЗаписей = РегистрыНакопления.УчетНоменклатуры.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Значение = Выборка.Регистратор;
НаборЗаписей.Прочитать();
Для каждого Запись Из НаборЗаписей Цикл
Запись.Реквизит1 = "Тест";
КонецЦикла;
НаборЗаписей.Записать();
КонецЦикла;

Читайте также:  Схема таймера оттайки тим 01

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

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

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

sashuly
21.08.2014 16:54
Прочитано: 29656

В регистре накопления есть запись, в которой не заполнено одно Измерение. Подскажите как программно заполнить с помощью внешней обработки.

Yandex
Возможно, вас также заинтересует
E_Migachev
21.08.2014 22:55
Ответ № 1

Примерно так, основа:

Код 1C v 8.х

E_Migachev
21.08.2014 23:45
Ответ № 2

+ нашел на компе обработку по редактированию регистров Pravka registrov (korrektirovka registrov).rar

Регистр накопления – это прикладной объект конфигурации, предназначенный для хранения информации об операциях документов-регистраторов. Он служит для оперативного получения информации по операция «Поступления», «Списание» и т. д. Предлагаем рассмотреть подробнее регистр накопления в 1С и узнать все необходимые для работы подробности.

Рассмотрим основные вкладки регистра накопления «Движение товаров»:

Вкладка «Основные»

Как и для регистров сведений, в поле «Имя» вносится уникальное имя регистра, в поле «Синоним» — название, которое будет видно пользователям. Особое внимание следует обратить на поле «Вид регистра». Регистры накопления бывают нескольких видов:

  • «Обороты» — регистр позволяет получить информацию о приходах и расходах за определенный период времени;
  • «Остатки» – регистр так же содержит информацию о приходах и расходах за определенный период времени, но кроме того он так же содержит таблицу итогов, благодаря которой мы можем точно сказать, количество остатков.

При проектировании регистра требуется хорошо продумать какой вид мы укажем, т.к. регистр вида «Остатки» требует большее производительности.

Вкладка «Подсистемы»

На вкладке «Подсистемы» указываются подсистемы в которые может быть включен регистр сведений.

Вкладка «Данные»

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

Измерения предназначены для определения «разреза» информации. Измерения могут иметь любой тип данных. По измерениям можно проводить отборы в записях регистра. В нашем регистре в качестве измерений указаны «Номенклатура», «Характеристика», «Склад», «Назначение», «Распоряжение». Так же важен порядок в котором указаны измерения, измерения которые чаще используются необходимо указывать первыми.

Ресурсы для регистра накопления всегда имеют только числовой тип данных. В нашем регистре это «Планируемые поступления», «Планируемые поступления под заказ» и т.д.

Реквизиты – дополняющая информация. Для регистра он не несёт никакой важно информации и никак не повлияет на его записи, но может быть полезен в качестве справочной информации. В нашем регистре это реквизиты «Корректировка» и «Дата распоряжения»

В нижней части окна расположена кнопка «Стандартные реквизиты», именно в ней мы можем увидеть «Период», «Регистратор», «Номер строки», «Активность».

Вкладка «Регистраторы»

На данной вкладке можно отметить документы, которые будет добавлять записи в наш регистр, ссылка на документ-регистратор будет записываться в реквизит «Регистратор». Для регистра накопления необходимо указывать хотя бы один документ регистратор, т.к. регистр не может быть независимым. При попытке создать регистр без указания документов-регистраторов система выдаст ошибку и запретит «Обновление конфигурации базы данных».

После указания документа – регистратора так же необходимо будет указать правила по которым добавляется запись в регистр, для этого необходимо воспользоваться «Конструктором движений»

Вкладка «Формы»

На данной вкладке можно создать «Форму записи» и «Форму списка» регистра. Создавать формы не обязательно, т.к. если форма не указана, но в режиме 1С.Предприятие открыть регистр, то программа самостоятельно сформирует для него стандартную форму.

Вкладка «Права»

На данной вкладке необходимо выбрать роли и установить для них права. Стоит учитывать, как необходимость «чтения» пользователями данных из регистра, так и возможность добавления записей в регистр. Не опытные программисты часто забывают назначать права при создании новых регистров сведений, что ведёт к ошибкам «Недостаточно прав» у пользователей.

Вкладка «Прочее»

На данной вкладке стандартно располагаются кнопки доступа к «Модулям». Так же здесь расположен флаг «Разрешить разделение итогов» — механизм позволяющий включить более высокую параллельность при работе с регистром (чтение, запись).

Наш регистр в режиме 1С. Предприятие имеет следующий вид:

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

Как оптимизировать работу с программой?

У вас нет специалистов 1С в штате или вы не хотите отвлекать их от более стратегических задач? Тогда мы предлагаем оставить сопровождение или доработку 1С компании «ПРОГРАММЫ93»!

Почему клиенты обращаются именно к нам?

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

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

Среди наших сотрудников не только специалисты 1С, но и опытные бухгалтера и юристы, поэтому мы подходим всесторонне к вопросу документооборота и отчетности.

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

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

Читайте также:  Чем открыть файлы компаса cdw
Оцените статью
Добавить комментарий

Adblock detector