Учет
по
бельтому
счету
Г
Артем Cosmic ШМАНЦЫРЕВ
В сегодняшнюю статью я постарался уместить такое громоздкое и неоднозначное понятие как
оперативный учет в системе «1 СЛредприятие».
Продолжение, начало см. в М К, № 36, 38, 40, 42, 44, 46,
И
так, регистры. О них можно сказать, что это наиболее
развитое, быстродействующее и в то же время самое про-
стое средство учета данных в системе 1С. В версии 7.7
на регистрах построена компонента Оперативный учет,
на базе которой чаще всего пишутся конфигурации, предна-
значенные для предприятий, занимающихся торговлей. В вер-
сии 8.0 системы 1С:Предприятие весь механизм учета данных
построен на регистрах, что придает системе дополнительное
быстродействие и упрощает понимание конфигурации разра-
ботчиком.
Предвосхищу вопрос читателей о необходимости изучения
оперативного учета. Казалось бы, зачем нам разбираться с ре-
гистрами, если мы уже умеем хранить данные в справочниках и
документах? Да, для маленького предприятия с небольшим доку-
менте- и товарооборотом теоретически можно построить учет
на документах и справочниках. Но в информационной базе 1С
документы за прошедшие периоды никуда не деваются, со вре-
менем все больше и больше загружая систему и увеличивая раз-
мер информационной базы. Через некоторое время наступает
критический момент, когда работа с базой для пользователя ста-
новится просто невыносимой — выборка из документов и спра-
вочников занимает в лучшем случое десятки минут, особенно за
большие периоды времени. Причем даже сомая современная
техника не справляется с возросшим документооборотом, «ве-
шаясь» даже на самых простых операциях. И тут появляемся мы
с нашим знанием регистров — и быстро переводим работу сис-
темы с заржавевших рельсов документов на свежесмазанные
рельсы оперативного учета, на которых отчеты даже за самые
большие периоды формируются в течение секунд или, в крайнем
случае, десятков секунд. Преимущества оперативного учета в
системе 1С неоспоримы. Поэтому все же рекомендую его рас-
смотреть, хотя бы по диагонали ©.
На уровне плат-
формы регистр — это
объект метаданных,
имеющий определен-
ный вид и обладаю-
щий измерениями, ре-
сурсами и реквизита-
ми (рис. 1).
Измерения регист-
ра можно представить
в виде осей системы
координат, на пере-
сечении которых ре-
гистр хранит опреде-
ленные значения ресурсов. Реквизиты же предназначены для до-
полнительной детализации учета в разрезе определенных зна-
чений. В качестве измерений и реквизитов могут выступать дан-
ные любого определенного в системе типа, в качестве ресурсов
могут использоваться только числа.
Регистры в системе 1С бывают двух видов — регистры остат-
ков и регистры оборотов. Разница между ними состоит в спосо-
бе учета информации. Регистр остатков обеспечивает получе-
ние значений ресурсов НА какой-то момент времени, а регистр
оборотов позволяет получить сумму движений регистра ЗА ка-
кой-то период. Также несколько различаются методы, процеду-
ры и функции встроенного языка, предназначенные для работы
с регистрами разных видов.
1 -2 (311, 313, 315, 317, 319, 321, 3 2 8 -3 2 9 )
Чтобы немножко разъяснить ситуацию, давойте создадим кон-
цептуальный (никому не нужный ©) регистр остатков с названием
остаткиденег
(если вы не знаете, как создать объект метаданных —
читайте мои предыдущие статьи цикла «Учет по большому счету»),
В нем создадим два измерения (к примеру,
Фирма
и
Склад
типа
Строке), один ресурс
(Сумма)
и один реквизит (например,
ВидОпе-
рации— тоже строкового типа). Глубокое понимание измерений,
ресурсов и реквизитов придет позже, а пока просто рекомендую
их создать ©. Процедура создания не отличается от таковой для
реквизитов справочников и других типовых элементов метаданных.
Запись в регистр можно проводить только и исключительно в
процедуре
ОбработкаПроведения ( )
, которая находится в моду-
ле документа и выполняется при проведении оного (при этом не
забывайте разрешить проведение документа и поставить галоч-
ку Оперативный учет в параметрах его настройки) Эту особен-
ность можно включить в дополнительные преимущества регист-
ров в системе 1С — содержимое их движении невозможно из-
менить вручную, исключительно при помощи документов.
Теперь мы запишем в наш регистр некоторую информацию
(программисты говорят: «Совершим движение регистра»):
Регистр. Остаткиденег. Фирма = "Наша фирма";
Регистр-ОстаткиДенег.Склад = "Основной склад";
Регистр. Остаткиденег. Сумма = 25,22;
Регистр.Остаткиденег.ВидОперации = "Внутренняя";
Регистр.Остаткиденег.ДвижениеПриходВыполнить();
Таким образом, мы оприходовали некоторую сумму денег на
основной склад нашей фирмы с видом операции «внутренняя».
Так как наш регистр является остаточным, информация, только
что нами записанная, будет доступна НА любой момент време-
ни в виде приходного движения. Заметьте, что регистр хранит в
себе движения, а не остатки, как можно было бы предположить
исходя из названия его вида. Остатки при необходимости вычис-
ляются автоматически на основе совершенных движений и из-
влекаются нами по мере надобности.
Визуально движение нашего концептуального регистра мы мо-
жем оценить, установив курсор на нашем концептуальном доку-
менте и выбрав пункт
главного меню Дей-
ствия>Движения доку-
мента (рис. 2).
Регистры, по кото-
рым документ совер-
шал движения, будут
отмечены флажком. Факт выполнения процедуры
ДвижениеПри-
ходВыполнить
() является фактом приходовония ресурса на да-
ту приходного документа. Это нам еще пригодится, а пока отве-
чу на вопрос, который наверняка уже возник у особо вдумчивых
читателей: что же за приход без расхода? Чтобы выполнить рас-
ход ресурса регистра, вместо процедуры
ДвижениеПриходВыпол-
нить()
нам нужна выполнить процедуру
ДвижениеРасходВыпол-
нитьО,
предварительно передав регистру те же параметры, ко-
торые были при приходовании. Крайне желательно обращать вни-
мание на корректное выведение остатков ресурсов в ноль, так
как это является признаком^ качественного программирования и
часто требуется при прохождении всякого рода тестов и серти-
фикаций. В реальной жизни обнуление ресурсов регистров явля-
ется обязательным условием, так как зависшие на остатках ко-
пейки отнюдь не обрадуют бухгалтера предприятия и ма'гут отри-
цательно
П О В Л И Я Т Ь
на карьерный рост программиста ©.
Теперь нам бы очень хотелось оценить в виде отчета, что же
мы натворили ©. Для этого создайте новый отчет и в процедуру
Ж Рис.1
№ 5/332 31 января-07 февраля 2005
предыдущая страница 40 Мой Компьютер 2005 05 читать онлайн следующая страница 42 Мой Компьютер 2005 05 читать онлайн Домой Выключить/включить текст