- Главная
- Программирование 1С
- 1C. Запросы. Как получить вид движения регистра накопления в запросе.
- 1C. Запросы. Как получить вид движения регистра накопления в запросе.
- Пример проверки на вид движения в запросе 1с
- Что же такое регистр накопления в 1С 8?
- Регистр накопления в конфигураторе
- Измерения регистра накопления
- Ресурс регистра накопления
- Реквизиты регистра накопления 1C
- Виды регистра накопления
- Правильное проектирование регистров накопления
- Индексация измерений регистра накопления
1C. Запросы. Как получить вид движения регистра накопления в запросе.
Бывает, что нужно выбрать запросом записи регистра накопления с отбором по виду движения.
Обратиться к виду движения регистра накопления можно непосредственно в запросе. Используем для этого метод ЗНАЧЕНИЕ . Конструкция будет такая:
Проверка на вид движения в запросе 1с может понадобится, если в запросе вы используете полную таблицу регистра накопления. Так как в таком случае иначе не понять, какая строка регистра соответствует приходу, а какая расходу.
Проверка на вид движения возможна только в регистрах накопления с видом регистра Остатки. У регистра с видом Обороты вида движения нет, значения ресурсов там принимают либо положительные, либо отрицательные значения.
Пример проверки на вид движения в запросе 1с
Пример запроса по регистру Себестоимость товаров (Управление торговлей 11) с использованием проверки на вид движение регистра накопления:
Задача любой учетной системы — хранение и оперативное отображение информации для пользователя, т.е. цель проектирования любой системы — оперативно предоставить пользователю отчет. С помощью полученных данных, как правило, принимаются управленческие решения на предприятиях.
Предположим, что у нас есть 1000 разных документов: поступление товаров, списание, возврат, продажа и т.д. И каждый из документов изменяет количество определенного товара на складе. Чтобы получить информацию о текущем количестве на складе, необходимо перебрать все документы: какие-то увеличивают количество товара, какие-то уменьшают, какие-то могут и увеличивать, и уменьшать. А если необходимо учитывать еще и склад, организацию. Такая система очень ресурсоёмкая.
Для упрощения данного процесса разработчики 1С придумали особые объекты конфигурации. Используются они для удобства хранения и получения информации, в 1С 8.3 и 8.2 используются всевозможные регистры, в данной статье речь пойдет именно про Регистры накопления.
Что же такое регистр накопления в 1С 8?
Сам регистр накопления представляет собой таблицу с информацией, в которой собраны все движения (поступления/списания или обороты) определенных документов. Рассмотрим, как выглядит таблица движения, на примере типового регистра накопления «Товары на складах» в конфигурации «Управление торговлей 10.3»:
Здесь мы видим, что документы 1C «Реализации» уменьшают количество определенного товара в определенном месте хранения, а документы поступления, наоборот, увеличивают количество. В итоге мы получаем общую картину, в которой отчетливо видно, что, когда и в каком количестве поступило (было списано) по учету. По такой таблице уже гораздо удобнее строить отчет.
Регистр накопления в конфигураторе
Что же такое регистр накопления с точки зрения разработки конфигурации? Начнем, пожалуй, с рассмотрения полей регистра накопления в конфигураторе:
Получите 267 видеоуроков по 1С бесплатно:
У регистра накопления есть Измерения, Ресурсы, Реквизиты и Стандартные реквизиты.
Рассмотрим сначала стандартные реквизиты регистра накопления:
- период — дата движения, не обязательно должна совпадать с датой документа;
- регистратор — документ, который производит запись в регистре;
- номер строки — порядковый номер строки в наборе записи, уникален в пределах регистратора;
- активность — отвечает за попадание записи в виртуальные таблицы (о них ниже);
- виддвижения — приход или расход.
Измерения регистра накопления
Измерение — это разрез, в котором ведется учёт. На вышеприведенном примере разрезом учета являются: склад, номенклатура, характеристика номенклатуры, серия номенклатуры, качество. Т.е задав интересующие нас измерения, мы можем в любой момент получить количество — ресурс. В разрезе разных измерений в дальнейшем, например, можно получать остатки на определенную дату.
Ресурс регистра накопления
Ресурс — это числовое поле, в котором хранится информация в разрезе измерений, о которых писали выше.
Иначе взаимодействия измерений/ресурсов можно схематично изобразить как систему координат:
Два измерения — абсцисса и ордината системы координат, т.е. на данном примере измерения это склад и номенклатура. На пересечении измерений мы можем получить количество — ресурс. Например, на «основном» складе товара «карандаш» в наличии 1 штука.
Реквизиты регистра накопления 1C
Реквизиты регистры накопления несут в себе роль «комментария» или дополнительной информации, в разрезе измерений нельзя получить остатки/обороты. Используются достаточно редко.
Виды регистра накопления
Существует два вида регистра накопления — обороты и остатки.
Если целью регистра накопления не является получение остатков, обязательно нужно использовать вид регистра накопления — обороты. Типичный пример использования оборотного регистра — регистрация объема продаж. В данном случае нам нужно знать только, какие продажи были за определенный период времени, остатки в данном случае не имеют смысла.
Если же среди целей использования регистра накопления — получение остатков на определенный период, нам необходим регистр с видом остатки. Такой тип позволяет получать как остатки, так и обороты. Для такого регистра система автоматически рассчитывает остатки. Пример «остаточного» регистра — товары на складах, деньги в кассе.
Использование вида регистра остатки, где можно обойтись оборотами, считается грубой ошибкой при проектировании регистра накопления с точки зрения производительности системы.
В зависимости от вида регистра система будет создавать разные виртуальные таблицы для регистра накопления. Виртуальная таблица – быстрый способ получения профильной информации из регистров.
Для регистра накопления это:
Для разработчика решения данные берутся из одной (виртуальной) таблицы, но на самом деле платформа 1С берёт из множества таблиц, преобразовывая их в нужных вид.
Правильное проектирование регистров накопления
Регистры накопления необходимо проектировать из необходимых отчетов. Самое трудное в системе 1С 8.3 — правильно хранить информацию, чтобы её в любой момент было легко получить.
Среди особенностей проектирования регистра следует отметить необходимость правильно расставлять по порядку измерения в регистре. Выше всего необходимо ставить измерения, которые будут чаще запрашиваться в системе.
Индексация измерений регистра накопления
У измерений регистра накопления имеется свойство — «индексировать». Это свойство необходимо устанавливать на измерения в тех случаях, когда по измерению планируется часто накладывать отборы при получении данных и данное измерение может иметь большое количество вариантов значения.
Например, регистр «ТоварыНаСкладах», измерения — «Склад, Номенклатура», ресурс — «Количество».
Правильнее проиндексировать «Номенклатуру», а поле»Склад» индексировать не стоит, потому как количество складов в системе, как правило, не существенное.
Другие статьи по 1С:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.