КУРСОВАЯ РАБОТА
"Программирование в системе 1С: Предприятие 8"
Южно-Сахалинск – 2010
Введение
«1С: Предприятие» является универсальной системой автоматизации деятельности предприятия. За счет своей универсальности система «1С: Предприятие» может быть использована для автоматизации самых разных участков экономической деятельности предприятия: учета товарных и материальных средств, взаиморасчетов с контрагентами и др.
Для специалиста, принимающего решение о выборе средства автоматизации, достаточно важно быть уверенным, что система не будет для предприятия «черным ящиком», и существует реальная возможность понять работу системы и, при необходимости, изменить. Поэтому открытость прикладных решений системы «1С: Предприятие» является очень существенным моментом. В состав системы «1С: Предприятие» входит «Конфигуратор» – мощное инструментальное средство быстрой разработки и модификации прикладных решений.
Пользователи «1С: Предприятия» могут применять те же инструментальные средства, что и разработчики фирмы «1С» или других компаний, разрабатывающих тиражные решения.
Они могут ознакомиться со всеми деталями структуры и бизнес-логики прикладного решения – как организованы справочники, как рассчитываются налоги, как учитываются скидки, как учитывается наличие товаров на складе и т.д. – и, при необходимости, вмешаться и внести изменения.
Поскольку бизнес-логика приложения открыта и доступна для изменения, очень важным достоинством «1С: Предприятия» является возможность адаптации внедренных приложений. Необходимо отметить, что важность обеспечения «подстройки» прикладного решения осознают практически все разработчики экономического ПО. Однако между гипотетической и реализованной возможностью модификации имеется большая разница. Так, любая программа для автоматизации экономической деятельности, написанная на Си++ или на языке более высокого уровня, например Delphi или Visual Basic, будет содержать несколько сотен тысяч строк исходного текста. И даже покупка ее с исходными текстами не даст реальной возможности модификации прикладной части. Чтобы разобраться и внести изменения в такую программу, нужен коллектив специалистов, «числом и умением» не сильно уступающий фирме-разработчику.
Показательной возможностью «1С: Предприятия» является то, что прикладное решение не просто поставляется в исходных кодах – оно реально рассчитано на возможность изменения, адаптации в соответствии со спецификой конкретного предприятия – как силами сотрудников предприятия, так и сторонними специалистами.
1. Конфигурируемость
Основной особенностью системы «1С: Предприятие» является ее конфигурируемость.
Собственно система «1С: Предприятие» представляет собой совокупность механизмов,
предназначенных для манипулирования различными типами объектов предметной области. Набор объектов, структуры информационных массивов, алгоритмы обработки информации, соответствующих поставленной задаче, определяет конкретная конфигурация. Вместе с конфигурацией система «1С: Предприятие» выступает в качестве уже готового к использованию программного продукта, ориентированного на определенные типы предприятий и классы решаемых задач.
Конфигурация создается и сопровождается (поддерживается) штатными средствами системы. Конфигурация обычно поставляется в качестве типовой для конкретной области применения, но может быть изменена, дополнена пользователем системы, а также разработана заново. Система «1С: Предприятие» обеспечивает поддержку типовых конфигураций стандартными средствами.
Функционирование системы делится на два процесса – разработка (описание модели предметной области средствами системы) и исполнение (обработка данных предметной области).
На этапе разработки производится:
· формирование структуры обрабатываемой информации;
· создание форм для ввода исходных данных, просмотра различных списков
· данных;
· организация хранения введенной и итоговой информации;
· написание отчетов и обработок;
· формирование командных интерфейсов для различных групп пользователей;
· формирование списка пользователей,
· назначение пользователям определенных прав.
Результатом разработки является программный продукт (конфигурация), который
представляет собой модель предметной области.
В режиме конфигурирования можно создавать новые конфигурации, редактировать имеющиеся, а также производить сравнение и объединение нескольких конфигураций.
На этапе разработки система оперирует такими универсальными понятиями (объектами), как документ, журнал документов, справочник, реквизит, форма, регистр и другие. Совокупность этих понятий и определяет концепцию системы. В свою очередь, процесс конфигурирования распадается на несколько составляющих (деление носит условный характер), определяющих последовательность написания и назначение томов описания. Это «визуальное» конфигурирование (создание структуры конфигурации, форм диалогов и выходных документов, механизм работы пользователей с данными (интерфейс) и права доступа различных групп пользователей к различной информации) и написание программ на встроенном языке «1С: Предприятия» для обработки входных и выходных данных.
На уровне системы определены сами понятия объектов и стандартные операции по их обработке. Средства конфигурирования позволяют описать структуру информации, входящей в эти объекты, и алгоритмы, описывающие специфику их обработки, для отражения различных особенностей учета.
Информационная структура проектируется на уровне предусмотренных в системе типов обрабатываемых объектов предметной области (константы, справочники, документы, регистры, перечисления и др.).
В процессе исполнения система уже оперирует конкретными понятиями, описанными на этапе конфигурирования (справочниками товаров и организаций, счетами, накладными и т.д.).
При работе пользователя в режиме 1С: Предприятие обработка информации выполняется как штатными средствами системы, так и с использованием алгоритмов, созданных на этапе конфигурирования.
2. Принципы разработки в среде «1С: Предприятие 8»
Очень важное отличие разработки бизнес-приложений в системе «1С: Предприятие» от разработки в универсальных системах состоит в том, что приложения в «1С: Предприятии» разрабатываются в терминах классов проблемно-ориентированных бизнес-сущностей (entity).
Это одна из наиболее существенных особенностей «1С: Предприятия». При разработке системы автоматизации для какого-либо предприятия, какого-либо бизнеса, необходимо описать целый ряд различных сущностей – товары, материалы, другие ресурсы, клиентов, поставщиков, счета, накладные и другие документы – и способы регистрации их движения, взаимодействия. При проектировании платформы «1С: Предприятия» все они были классифицированы и объединены в классы сущностей (прототипы), которыми и манипулирует разработчик прикладного решения. При этом стремились не умножать число классов сущностей сверх необходимости (принцип Оккама), их число не должно было превышать пары десятков.
При выделении этих классов руководствовались следующими критериями:
· Сходное назначение сущностей,
· Сходная роль сущности в модели данных.
· Сходная роль сущности в способах использования.
· Деление на классы должно давать четкую картину структуры прикладного решения,
· Деление на классы должно обеспечивать унификацию разработки прикладных решений.
Таким образом, приложения «1С: Предприятия» опираются на структуру метаданных.
Фактически можно сказать, что состав классов (объектов метаданных) определяет структуру проектирования приложения, а состав конкретных объектов определяет уже конкретное приложение. Можно также сказать, что приложения на платформе «1С: Предприятие» скорее не программируются (кодируются), а проектируются. Отнеся некоторую сущность предметной области к определенному виду метаданных (собственно создав объект метаданных), разработчик получает одновременно и готовый типовой набор функций, свойственный всем сущностям этого вида, и возможность указания конкретных особенностей, которыми может обладать данная сущность.
В платформе «1С: Предприятие» уже заложена мощная функциональность, которая позволяет не программируя, не добавляя никакой новой (по сравнению с заложенной в платформе) функциональности быстро и удобно поддерживать эти типы сущностей на уровне прикладного решения.
Основу концепции составляет понятие конфигурация.
Конфигурацией в системе «1С: Предприятие» называется совокупность взаимосвязанных составных частей:
· подсистемы;
· структуры учетных данных, их форм ввода, выбора, печати;
· состава механизмов учета итоговых данных и движений учетных данных;
· состава различных отчетов и обработок;
· командного интерфейса;
· набора ролей (прав доступа);
· набора общих процедур и функций (модуль приложения, модуль внешнего соединения, модуль сеанса, общие модули), макетов табличных документов и др.;
· вспомогательных объектов:
· функциональных опций и их параметров,
· хранилищ настроек,
· средств работы с Web (Web-сервисы, WS-ссылки),
· различной вспомогательной информации (картинки, шаблоны, стили и т.д.).
Фактически структура конфигурации является моделью предметной области.
Создание конфигурации выполняется при помощи конфигуратора. Созданная конфигурация используется системой «1С: Предприятие» для реализации программного окружения, пригодного для выполнения необходимых учетных задач.
Под объектом конфигурации в системе «1С: Предприятие» понимается формальное
описание группы понятий (предметной области, средств взаимодействия пользователя с системой) со сходными характеристиками и одинаковым предназначением.
Приведем такой пример. Объект конфигурации Справочник в системе «1С: Предприятие» предназначен для ведения списков однородных элементов данных – справочников, картотек, нормативных сборников и т.п. Использование объектов конфигурации этого типа позволяет организовать ведение любых справочников, необходимых для автоматизации деятельности предприятия.
Как правило, объекты конфигурации типа Справочник являются компьютерными аналогами реально существующих на предприятии видов справочников, например, справочника сотрудников или номенклатуры товаров, хотя могут использоваться и для организации списков, не имеющих явных физических аналогов.
Следует иметь в виду, что объект конфигурации описывает не конкретное значение, а только его вид. Например, справочник Физические лица описывает не конкретного человека, а содержит перечень реквизитов (набор видов характеристик о физическом лице), а также формы для ввода их значений, формы просмотра списков и макеты для печати информации. Другими словами, в конфигурации создается схема описания, с помощью которой учитываются все однородные объекты предметной области (в приведенном примере справочника Физические лица одно описание используется как для Петрова, Иванова, так и для любого другого физического лица).
Реализованный в системе «1С: Предприятие» при помощи объекта конфигурации компьютерный аналог конкретного понятия предметной области будем называть объектом конфигурации.
Каждый объект конфигурации обладает уникальным набором свойств. Этот набор описан на уровне системы и не может быть изменен в процессе настройки конфигурации задачи. Набор свойств объекта конфигурации определяется в основном его назначением в системе «1С: Предприятие».
Главным свойством любого объекта конфигурации является имя – краткое наименование объекта конфигурации. При создании нового объекта конфигурации ему автоматически присваивается условное имя, состоящее из слова, определяемого по виду объекта, и цифры (например, при создании реквизита создается реквизит с именем Реквизит1, при создании документа – Документ1 и т.д.). Это имя можно изменить в процессе редактирования свойств объекта конфигурации, при этом система отслеживает уникальность имен. Имя объекта конфигурации не может быть пустым.
Некоторые свойства из всего набора свойств, присущих объекту конфигурации, доступны для редактирования и могут быть так или иначе изменены в процессе конфигурирования системы. Характер изменений и их пределы также задаются на уровне системы. Специалист, осуществляющий конфигурирование системы, целенаправленным изменением свойств объекта конфигурации может добиться требуемого поведения объекта при работе системы. Однако такие изменения не затрагивают сущности объекта и не позволяют добиться от него действий, не свойственных объектам данного типа.
Приведем такой пример.
Объект конфигурации Константа в системе «1С: Предприятие» предназначен для хранения информации, которая не изменяется во времени или изменяется очень редко. При этом не важны предыдущие значения константы. Простым примером константы может служить название предприятия: оно, как правило, не меняется в процессе деятельности предприятия (если предполагается, что значения каких-либо учетных данных, изменяемых во времени, нужно выбирать с учетом времени, то для таких данных необходимо использовать не константу, а регистр сведений без измерений).
Константа обладает большим набором редактируемых свойств, из которых наиболее важными являются:
· имя константы,
· синоним,
· комментарий,
· тип данных,
· режим управления блокировкой,
· ссылка, позволяющая открыть модуль менеджера константы.
В наиболее общем случае значение в константу вводится один раз (как, например, название предприятия). С точки зрения использования константы не важно, что именно хранится в константе; главным является то, что константа сохранила записанное в нее значение.
Способность сохранять введенное в нее значение – неотъемлемая особенность константы в системе «1С: Предприятие». Редактирование свойств константы на эту способность не влияет.
Все объекты конфигурации, которые существуют в системе «1С: Предприятие», образуют несколько основных видов. Каждый вид объектов конфигурации представляет собой как раз те «строительные элементы», из которых будет создаваться конфигурация.
Формально объекты конфигурации объединяются в виды в дереве конфигурации.
Названия видов пользователь видит на первом уровне дерева конфигурации, когда открывает окно Конфигурация в конфигураторе.
Рис. 1. Дерево метаданных
Несмотря на отсутствие формального определения, названия видов объектов конфигурации широко используются при работе с системой «1С: Предприятие».
Например, специалист, осуществляющий конфигурирование системы «1С: Предприятие», видит свою цель в разработке необходимого набора справочников, документов, отчетов, журналов, которые будут реализовывать требуемую систему учета. Конечный пользователь системы «1С: Предприятие» – руководитель, бухгалтер, менеджер, кладовщик – также оперирует конкретными справочниками, документами и т.д. для решения стоящих перед ним задач. Общение между двумя этими категориями пользователей также будет происходить в понятиях видов объектов конфигурации.
Объект данных какого-либо вида является уже конкретным документом, отчетом, журналом, константой и так далее. Как правило, каждый объект используется для работы со вполне определенной информацией предметной области.
Ниже приведена краткая характеристика основных видов объектов конфигурации системы «1С: Предприятие».
Константы
Для работы с постоянной и условно постоянной информацией в системе используются объекты типа Константа. Информация, хранящаяся в константах, редко изменяется, но, как правило, часто используется в работе. Например, в константах может храниться наименование предприятия, его ИНН, фамилии директора и главного бухгалтера и другая подобная информация.
В системе может быть описано неограниченное количество констант.
Справочники
Для работы с постоянной и условно постоянной информацией с некоторым множеством значений в системе используются объекты типа Справочник. Обычно справочниками являются списки материалов, товаров, организаций, валют, сотрудников и др.
Механизм поддержки справочников позволяет спроектировать и поддерживать самые различные справочники. На этапе конфигурирования можно описать, какими свойствами обладает каждый конкретный справочник. К настраиваемым свойствам относятся, например, длина и тип кода, количество уровней иерархии, поддержка уникальности кодов, набор реквизитов справочника.
Помимо кода и наименования, механизм работы со справочниками позволяет создавать набор реквизитов для хранения любой дополнительной информации об элементе справочника (например, для номенклатуры это может быть закупочная и отпускная цены, производитель, для сотрудника – должность, образование, адрес места жительства и т.д.), а также табличные части. В табличных частях хранится однотипная информация, число которой может быть переменным, например, описание комплектующих изделия, состав семьи сотрудника, телефоны организации и т.д.
Для каждого справочника может быть задано несколько типов форм: элемента, группы, списка, выбора, выбора группы. По каждому типу форм может быть создано произвольное число форм.
Для описания соподчиненных сущностей можно использовать подчиненные справочники. В этом случае в подчиненном справочнике каждый элемент «принадлежит» к определенному элементу справочника-владельца.
В конкретной конфигурации создается необходимое количество справочников для хранения данных об объектах, используемых при автоматизации данной предметной области. Например, это могут быть справочники Организации, Товары, Сотрудники и т.д.
Перечисления
Перечисления используются в системе «1С: Предприятие» для описания постоянных наборов значений, не изменяемых в процессе работы конфигурации. На этапе конфигурирования можно описать практически неограниченное количество видов перечислений. В отличие от справочника, значения перечислений задаются на этапе конфигурирования и не могут быть изменены на этапе исполнения.
Типичными примерами перечислений являются виды оплаты (наличная, безналичная, бартер), статус клиента (постоянный, разовый) и т.д.
Одной из главных особенностей перечислений, отличающей их от справочников, является то, что набор значений перечисления не изменяется при работе конечного пользователя с программой. Например, алгоритм конфигурации может быть ориентирован на то, что каждый клиент имеет один из двух статусов-либо постоянный, либо разовый. В этом случае указание статуса клиента выполняется путем выбора одного из значений перечисления. Пользователь не может добавить новый статус.
В отличие от перечислений, для справочников конкретные значения обычно вводятся пользователем при работе с программой, например: наименования товаров, контрагентов и прочее.
Документы
Документы предназначены для отражения хозяйственных событий предприятия, которые имеют отношение к автоматизируемой предметной области. Например, в конфигурации, предназначенной для учета торговых операций, могут быть такие документы, как счет, приходная накладная, расходная накладная и проч. При помощи документов отражаются и платежи с расчетного счета, и операции по кассе, и движения по складу, и прочие подобные события.
В процессе конфигурирования настраивается произвольное количество видов документов. Типичными примерами видов документов являются такие, как Платежное поручение, Счет, Приходная накладная, Расходная накладная, Накладная на внутреннее перемещение, Приходный кассовый ордер и другие. Каждый вид документа предназначен для отражения своего типа событий. Это определяет его структуру и свойства, которые описываются в конфигурации.
Каждый вид документа может иметь неограниченное количество реквизитов и табличный частей. Несколько табличных частей требуются в тех случаях, когда одним документом необходимо зарегистрировать разные по сути, но связанные события, например: отразить поступление товара на склад и зарегистрировать понесенные дополнительные затраты – оплату транспорта, грузчиков и др.
Для документа создаются формы ввода – экранные аналоги реальных документов.
Если в других формах используются данные документов, то для включения этой информации разрабатываются формы для выбора. Для просмотра списка документов одного вида создаются формы списков. Число форм неограниченно.
Каждый документ также может иметь неограниченное число печатных форм.
Все документы характеризуются номером, датой и временем. При настройке для документа также задается длина номера документа, условия поддержки уникальности номеров и другие.
Документы играют центральную роль для основных механизмов, реализуемых системой. Все документы образуют единую хронологическую последовательность. Фактически она отражает реальную последовательность событий. Внутри даты последовательность документов определяется их временем, при этом время документа является не столько средством отражения реального (астрономического) времени ввода документа, сколько средством, позволяющим четко упорядочить документы внутри одной даты. Данные, вводимые в документ (в реквизиты и табличные части документа), обычно содержат информацию о происшедшем событии: например, в накладной – информацию о том, с какого склада, каких товаров и сколько отгружено, какие дополнительные затраты произведены при приобретении товаров.
Для документа весьма важным действием является его проведение. Если документ не является «проводимым», это значит, что событие, которое он отражает, не влияет на состояние учета, который ведется в данной конфигурации. Если документ проводится, то он изменяет состояние тех или иных учитываемых данных. При проведении документ может отразить зафиксированное им событие в механизмах, реализуемых различными регистрами.
Журналы документов
Журналы документов предназначены для просмотра документов разных видов. Каждый вид документа может быть показан в нескольких журналах. Журнал документов не добавляет новые данные в
8-09-2015, 13:10