Содержание:
1. Где в конфигурации системы 1С находятся регистры?
2. Действия над регистрами и их представление в 1С: Бухгалтерия 8
3. Запрос сведений в конфигурации 1С: Бухгалтерия 3.0
1. Где в конфигурации системы 1С находятся регистры?
Регистр — упорядоченный набор данных построчно представленной информации, и каждая строка отвечает за какое-либо изменение состояния для некоторого множества субъектов (или измерений).
Именно в регистрах хранятся все сведения о действиях/изменениях в системе. Запись данных в регистр производится по факту проведения документов. Важно, чтобы сохраненную информацию было легко получить и проанализировать. Эти две характеристики нужно учитывать при проектировании новых регистров.
Выделяют 4 типа регистров 1С:
• Регистры сведений — аналог exel-таблиц, применяется для хранения какой-либо информации в упорядоченном виде.
• Регистры накопления программно — информация по остаткам и доступности товаров, оборотам, общим итогам, представленная в табличной форме. Регистры бухгалтерии 1С — таблицы, созданные на основе бухгалтерских планов счетов в 1С. В таких таблицах содержатся сведения о бухгалтерских проводках.
• Регистры расчетов 1С — таблицы, основанные на планах видов расчетов. Применяются для отслеживания начислений заработной платы в 1С.
Рассмотрим, как найти регистры, на примере 1С на управляемых формах. Возьмем конфигурацию – 1С Бухгалтерия 3.0.
Откроем Главное меню – Настройки – Параметры.
Настройки
А затем отметим чек-боксом «Режим технического специалиста».
Режим технического специалиста
Если повторно открыть выпадающий список, открывающийся по кнопке «Главное меню», то самой последней строкой списка добавится вариант «Функции для технического специалиста».
Функции для технического специалиста
Выберем «Функции для технического специалиста» и в появившемся окне для использования доступны все четыре варианта регистров.
2. Действия над регистрами и их представление в 1С: Бухгалтерия 8
Рассмотрим на примере регистра сведений таблицы. Для каждой такой таблицы доступен один из следующих вариантов взаимодействия с имеющейся информацией: добавление, изменение, чтение, удаление или очистка регистра. Далее будем рассматривать операции в контексте регистра сведений.
В отдельную группу выделяют периодические регистры 1С. В процессе создания каждого регистра важно определить, потребуется ли применять в дальнейшем использовании хранение данных относительно времени и минимальную периодичность, с которой записи будут храниться. Если периодичность задана, регистр называют периодическим.
Регистр сведений представляется как таблица со следующими полями:
• измерения — характеризуют области содержащие информацию;
• период — атрибут, применяемый для структурирования сведений в соответствии с временным параметром. Если значение для параметра «Периодичность» будет отличным от «Не периодичный», поле добавиться по умолчанию;
• регистратор — если для режима записи 1С будет указано, что необходимо подчинение регистратору, поле добавится по умолчанию. Нужен для хранения документа связанного с записью;
• ресурсы — сохраняют данные для комбинации измерений;
• реквизиты — произвольные данные, относящиеся к определенному объекту регистра сведений.
В регистрах сведений все записи уникальны, т.е. недопустимо наличие 2 идентичных строк информации. Идентичными называются записи с совпадающими значениями измерений, периодом и регистратором (когда эти характеристики прописаны).
Для примера, рассмотрим выполнение операции «Чтение».
3. Запрос сведений в конфигурации 1С: Бухгалтерия 3.0
Поиск данных в регистрах лучше выполнять с применением запросов. Так система позволяет выполнять поиск нужных объектов сразу в нескольких таблицах, пользоваться различными отборами.
Возьмем регистр «курс валют».
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| КурсВалют.Период,
| КурсВалют.Валюта,
| КурсВалют.Курс
|ИЗ
| РегистрСведений.КурсВалют КАК КурсВалют»;
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий()
// прохождение итогов от срабатывания запроса
Цикл
КонецЦикла;
// Найдем объект с параметром «валюта» совпадающим с прописанным в «НашаВалюта» и периодом<= значению переменной «НашаДата»
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| КурсВалютСрезПоследних.Период,
| КурсВалютСрезПоследних.Валюта,
| КурсВалютСрезПоследних.Курс
|ИЗ
| РегистрСведений.КурсВалют.СрезПоследних(&Период, Валюта = &Валюта) КАК КурсВалютСрезПоследних»;
Запрос.УстановитьПараметр(«Валюта», НашаВалюта);
Запрос.УстановитьПараметр(«Период», НашаДата);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий()
Цикл
// прохождение итогов от срабатывания запроса
КонецЦикла;
Используются такие методы и совместно с методами объектной модели.
Ниже приведем образцы записи запросов с указанием и без указания периодичности:
• Выбрать(<Отбор>,<Порядок>) — отберет записи в соответствии с параметром, указанным в отборе и в указанном порядке и выведет их;
• ВыбратьПоРегистратору(<Регистратор>) — выведет все записи, регистратор которых совпадет с прописанным в условии отбора;
• Выбрать(<Отбор>,<Порядок>) — отберет записи в соответствии с параметром, указанным в отборе и в необходимом порядке и выведет их;
• ВыбратьПоРегистратору(<Регистратор>) — выведет все записи, где регистратор совпадет тем, что установлен в условии отбора;
• Выбрать(<НачалоИнтервала>,<КонецИнтервала>,<Отбор>,<Порядок>) — отбирает объекты, удовлетворяющие критериям, прописанным в параметре «отбор» и дата которых попадает между началом и концом необходимого интервала;
• ВыбратьПоРегистратору(<Регистратор>) — ищет все записи обозначенного регистратора;
• Получить(<Период>,<Отбор>) — получает ресурсы записи с отбором по всем измерениям и периоду;
Все запросы ниже выполняют действия в соответствующих обозначенным периоду и отбору:
• ПолучитьПервое(<НачалоПериода>,<Отбор>) — получает ресурсы самой ранней записи;
• СрезПервых(<НачалоПериода>,<Отбор>) — получает таблицу самых ранних записей.
Специалист компании "Кодерлайн"
Марина Анапольская