Программирование в системе 1С: Предприятие 8
КУРСОВАЯ РАБОТА
"Программирование в
системе 1С: Предприятие 8"
Южно-Сахалинск – 2010
Введение
«1С: Предприятие»
является универсальной системой автоматизации деятельности предприятия. За счет
своей универсальности система «1С: Предприятие» может быть использована для
автоматизации самых разных участков экономической деятельности предприятия:
учета товарных и материальных средств, взаиморасчетов с контрагентами и др.
Для
специалиста, принимающего решение о выборе средства автоматизации, достаточно
важно быть уверенным, что система не будет для предприятия «черным ящиком», и
существует реальная возможность понять работу системы и, при необходимости,
изменить. Поэтому открытость прикладных решений системы «1С: Предприятие» является
очень существенным моментом. В состав системы «1С: Предприятие» входит «Конфигуратор»
– мощное инструментальное средство быстрой разработки и модификации прикладных
решений.
Пользователи «1С:
Предприятия» могут применять те же инструментальные средства, что и
разработчики фирмы «1С» или других компаний, разрабатывающих тиражные решения.
Они могут
ознакомиться со всеми деталями структуры и бизнес-логики прикладного решения –
как организованы справочники, как рассчитываются налоги, как учитываются
скидки, как учитывается наличие товаров на складе и т.д. – и, при
необходимости, вмешаться и внести изменения.
Поскольку
бизнес-логика приложения открыта и доступна для изменения, очень важным
достоинством «1С: Предприятия» является возможность адаптации внедренных
приложений. Необходимо отметить, что важность обеспечения «подстройки» прикладного
решения осознают практически все разработчики экономического ПО. Однако между
гипотетической и реализованной возможностью модификации имеется большая
разница. Так, любая программа для автоматизации экономической деятельности,
написанная на Си++ или на языке более высокого уровня, например Delphi или
Visual Basic, будет содержать несколько сотен тысяч строк исходного текста. И
даже покупка ее с исходными текстами не даст реальной возможности модификации
прикладной части. Чтобы разобраться и внести изменения в такую программу, нужен
коллектив специалистов, «числом и умением» не сильно уступающий
фирме-разработчику.
Показательной
возможностью «1С: Предприятия» является то, что прикладное решение не просто
поставляется в исходных кодах – оно реально рассчитано на возможность
изменения, адаптации в соответствии со спецификой конкретного предприятия – как
силами сотрудников предприятия, так и сторонними специалистами.
Основной особенностью
системы «1С: Предприятие» является ее конфигурируемость.
Собственно
система «1С: Предприятие» представляет собой совокупность механизмов,
предназначенных
для манипулирования различными типами объектов предметной области. Набор
объектов, структуры информационных массивов, алгоритмы обработки информации,
соответствующих поставленной задаче, определяет конкретная конфигурация. Вместе
с конфигурацией система «1С: Предприятие» выступает в качестве уже готового к
использованию программного продукта, ориентированного на определенные типы
предприятий и классы решаемых задач.
Конфигурация
создается и сопровождается (поддерживается) штатными средствами системы.
Конфигурация обычно поставляется в качестве типовой для конкретной области
применения, но может быть изменена, дополнена пользователем системы, а также
разработана заново. Система «1С: Предприятие» обеспечивает поддержку типовых
конфигураций стандартными средствами.
Функционирование
системы делится на два процесса – разработка (описание модели предметной
области средствами системы) и исполнение (обработка данных предметной области).
На этапе
разработки производится:
·
формирование
структуры обрабатываемой информации;
·
создание
форм для ввода исходных данных, просмотра различных списков
·
данных;
·
организация
хранения введенной и итоговой информации;
·
написание
отчетов и обработок;
·
формирование
командных интерфейсов для различных групп пользователей;
·
формирование
списка пользователей,
·
назначение
пользователям определенных прав.
Результатом
разработки является программный продукт (конфигурация), который
представляет
собой модель предметной области.
В режиме
конфигурирования можно создавать новые конфигурации, редактировать имеющиеся, а
также производить сравнение и объединение нескольких конфигураций.
На этапе
разработки система оперирует такими универсальными понятиями (объектами), как
документ, журнал документов, справочник, реквизит, форма, регистр и другие.
Совокупность этих понятий и определяет концепцию системы. В свою очередь,
процесс конфигурирования распадается на несколько составляющих (деление носит
условный характер), определяющих последовательность написания и назначение
томов описания. Это «визуальное» конфигурирование (создание структуры
конфигурации, форм диалогов и выходных документов, механизм работы
пользователей с данными (интерфейс) и права доступа различных групп
пользователей к различной информации) и написание программ на встроенном языке
«1С: Предприятия» для обработки входных и выходных данных.
На уровне
системы определены сами понятия объектов и стандартные операции по их
обработке. Средства конфигурирования позволяют описать структуру информации,
входящей в эти объекты, и алгоритмы, описывающие специфику их обработки, для
отражения различных особенностей учета.
Информационная
структура проектируется на уровне предусмотренных в системе типов
обрабатываемых объектов предметной области (константы, справочники, документы,
регистры, перечисления и др.).
В процессе
исполнения система уже оперирует конкретными понятиями, описанными на этапе
конфигурирования (справочниками товаров и организаций, счетами, накладными и
т.д.).
При работе
пользователя в режиме 1С: Предприятие обработка информации выполняется как
штатными средствами системы, так и с использованием алгоритмов, созданных на
этапе конфигурирования.
Очень важное
отличие разработки бизнес-приложений в системе «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С: Предприятие» для описания постоянных наборов
значений, не изменяемых в процессе работы конфигурации. На этапе
конфигурирования можно описать практически неограниченное количество видов
перечислений. В отличие от справочника, значения перечислений задаются на этапе
конфигурирования и не могут быть изменены на этапе исполнения.
Типичными примерами
перечислений являются виды оплаты (наличная, безналичная, бартер), статус
клиента (постоянный, разовый) и т.д.
Одной из
главных особенностей перечислений, отличающей их от справочников, является то,
что набор значений перечисления не изменяется при работе конечного пользователя
с программой. Например, алгоритм конфигурации может быть ориентирован на то,
что каждый клиент имеет один из двух статусов-либо постоянный, либо разовый. В
этом случае указание статуса клиента выполняется путем выбора одного из
значений перечисления. Пользователь не может добавить новый статус.
В отличие от
перечислений, для справочников конкретные значения обычно вводятся
пользователем при работе с программой, например: наименования товаров,
контрагентов и прочее.
Документы
Документы
предназначены для отражения хозяйственных событий предприятия, которые имеют
отношение к автоматизируемой предметной области. Например, в конфигурации,
предназначенной для учета торговых операций, могут быть такие документы, как
счет, приходная накладная, расходная накладная и проч. При помощи документов
отражаются и платежи с расчетного счета, и операции по кассе, и движения по
складу, и прочие подобные события.
В процессе
конфигурирования настраивается произвольное количество видов документов. Типичными
примерами видов документов являются такие, как Платежное поручение, Счет,
Приходная накладная, Расходная накладная, Накладная на внутреннее перемещение,
Приходный кассовый ордер и другие. Каждый вид документа предназначен для
отражения своего типа событий. Это определяет его структуру и свойства, которые
описываются в конфигурации.
Каждый вид
документа может иметь неограниченное количество реквизитов и табличный частей.
Несколько табличных частей требуются в тех случаях, когда одним документом
необходимо зарегистрировать разные по сути, но связанные события, например:
отразить поступление товара на склад и зарегистрировать понесенные
дополнительные затраты – оплату транспорта, грузчиков и др.
Для документа
создаются формы ввода – экранные аналоги реальных документов.
Если в других
формах используются данные документов, то для включения этой информации
разрабатываются формы для выбора. Для просмотра списка документов одного вида
создаются формы списков. Число форм неограниченно.
Каждый
документ также может иметь неограниченное число печатных форм.
Все документы
характеризуются номером, датой и временем. При настройке для документа также
задается длина номера документа, условия поддержки уникальности номеров и
другие.
Документы
играют центральную роль для основных механизмов, реализуемых системой. Все
документы образуют единую хронологическую последовательность. Фактически она
отражает реальную последовательность событий. Внутри даты последовательность
документов определяется их временем, при этом время документа является не
столько средством отражения реального (астрономического) времени ввода
документа, сколько средством, позволяющим четко упорядочить документы внутри
одной даты. Данные, вводимые в документ (в реквизиты и табличные части
документа), обычно содержат информацию о происшедшем событии: например, в
накладной – информацию о том, с какого склада, каких товаров и сколько
отгружено, какие дополнительные затраты произведены при приобретении товаров.
Для документа
весьма важным действием является его проведение. Если документ не является
«проводимым», это значит, что событие, которое он отражает, не влияет на
состояние учета, который ведется в данной конфигурации. Если документ
проводится, то он изменяет состояние тех или иных учитываемых данных. При
проведении документ может отразить зафиксированное им событие в механизмах,
реализуемых различными регистрами.
Журналы
документов
Журналы
документов предназначены для просмотра документов разных видов. Каждый вид
документа может быть показан в нескольких журналах. Журнал документов не
добавляет новые данные в систему, а является средством для отображения в едином
списке документов нескольких видов. Например, может быть создан журнал
Складские документы, в котором будут отображаться все приходные и расходные
накладные и накладные на внутреннее перемещение.
Для журнала
могут быть определены графы журнала, предназначенные для отображения реквизитов
документов разного вида, отнесенных к данному журналу. Например, журнал
торговых документов может содержать графу Контрагент, в которой будет
отражаться реквизит Комитент документа Прием на комиссию, реквизит Организация
документа Приходная накладная и т.д. Каждый журнал может иметь неограниченное
число форм визуального представления и печатных форм.
Отчеты и
обработки
Для описания
отчетов и процедур обработки информации на этапе конфигурирования может быть
создано неограниченное число отчетов и обработок. Отчеты и обработки могут
иметь несколько форм, предназначенных, например, для ввода параметров
формирования отчета или параметров обработки данных. Например, для выдачи
складской справки – выбор конкретного склада.
Алгоритм
получения отчета может описываться с использованием встроенного языка или
формироваться системой автоматически, в случае использования системы компоновки
данных. Для вывода отчетов может быть использован как текстовый формат, так и
специализированный табличный формат отчетов (макеты).
Система также
поддерживает возможность разработки внешних обработок, хранящихся не в самой
конфигурации, а в отдельных файлах.
В системе «1С:
Предприятие» объекты Планы видов характеристик предназначены для описания
множеств однотипных объектов аналитического учета.
Объекты
данного вида предназначены для создания видов расчетов, используемых в
механизмах периодических расчетов.
План счетов
является одним из основных понятий бухгалтерского учета. Планом счетов
называется совокупность синтетических счетов, предназначенных для группировки
информации о хозяйственной деятельности предприятия. Информация, накапливаемая
на таких синтетических счетах, позволяет получить полную картину состояния
средств предприятия в денежном выражении.
Объекты
данного вида предназначены для организации обмена данными между различными
информационными базами, а также информационными базами и внешними программными
системами.
Бизнес-процессы
и задачи
Позволяют
создавать формализованные описания типичных последовательностей работ,
выполняемых в организации, и на их основе формировать списки задач, которые
необходимо выполнить тому или иному сотруднику организации в данный момент.
Например, процесс продажи товара может быть представлен как последовательность
выписки счета, его утверждения, получения наличной оплаты и отгрузки товара со
склада. За выполнение каждого из этапов могут отвечать различные сотрудники.
Таким образом, в любой момент времени можно определить, в каком состоянии
находится процесс продажи товара и кто из сотрудников в данный момент должен
выполнить какие-либо действия.
Регистры
предназначены для хранения и обработки различной информации, отражающей
хозяйственную или организационную деятельность предприятия и не имеющей
объектной природы.
В регистрах
обычно хранится информация об изменении состояний объектов или другая
информация, не отражающая непосредственно объекты предметной области.
Например, в
регистрах может храниться информация о курсах валют или информация о приходе и
расходе товаров.
В системе «1С:
Предприятие» существует 4 вида регистров:
·
регистры
сведений,
·
регистры
накопления,
·
регистры
расчетов,
·
регистры
бухгалтерии.
Специализированные
объекты конфигурации
Помимо
объектов, описывающих предметную область учета, конфигурация содержит ряд
вспомогательных объектов, не относящихся непосредственно к деятельности
предприятия, однако тесно связанных с функционированием самой системы. Это
механизмы взаимодействия пользователей с системой «1С: Предприятие» (командный
интерфейс, критерии отбора, права доступа различных групп пользователей к
различной информации); вспомогательные объекты оформительского назначения,
позволяющие производить конфигурирование на основе сформированных стилей;
библиотеки картинок, с учетом национального языка; модуль приложения и общие
модули, в которых располагаются процедуры и функции, доступные из прочих
модулей конфигурации; общие макеты печатных форм и многое другое.
В зависимости
от вида объекта конфигурации объект может иметь различные подчиненные группы
объектов. Например, реквизиты, измерения, формы, табличные части и т.д. Состав
подчиненных объектов зависит от типа объекта.
Рис. 2.
Подчиненные объекты
Реквизиты – дополнительная
информация об объекте, доступная только в пределах этого объекта.
Табличные
части – наборы дополнительной информации об объекте, представленной в виде
таблицы.
Реквизиты
табличных частей – состав табличной части объекта, доступный только в пределах
табличной части объекта.
Формы – форма
используется для ввода, просмотра и редактирования информации, хранящейся в
объекте конфигурации, содержит модуль формы – программу на встроенном языке
системы «1С: Предприятие». Способность иметь визуальное представление позволяет
объекту конфигурации организовать интерактивное взаимодействие с пользователем.
Характер такого взаимодействия разрабатывается специалистом, осуществляющим
конфигурирование системы «1С: Предприятие», и определяется в основном типом
объекта конфигурации. Для разработки форм в конфигураторе применяется
комплексный редактор форм, позволяющий редактировать все компоненты формы во
взаимосвязи. Каждый объект может иметь несколько форм.
Команды – используются
для выполнения различных операций с объектом. Команды бывают независимыми и
параметризуемыми.
Макеты – табличные,
HTML или текстовые документы (также могут использоваться двоичные и Active-документы),
предназначенные для формирования печатных форм объекта.
Графы – графы
журнала документов.
Измерения – для
регистров это объекты конфигурации, данные о которых учитываются в регистре.
Ресурсы – данные,
учитываемые в регистре.
Группы
подчиненных объектов не удаляются и не имеют редактируемых свойств.
Одним из
основных свойств некоторых объектов конфигурации является Тип данных. Это
свойство определяет, какого рода информацию может содержать объект
конфигурации. Тип данных объекта конфигурации назначается при создании или
редактировании свойств объекта в процессе настройки конфигурации.
Объекты
конфигурации, для которых может быть указан тип информации, содержащейся в
объекте, в системе «1С: Предприятие» называются типизированными объектами конфигурации.
Такие объекты
конфигурации, как Справочник, Документ, Обработка, не являются типизированными
объектами, так как содержат «комплексную» информацию и, в свою очередь,
включают в себя типизированные объекты конфигурации.
Типы данных,
которые может принимать объект конфигурации, можно разделить на две группы.
Первую группу составляют примитивные типы данных: Число, Строка, Дата и Булево.
Соответственно, информация, хранящаяся в объекте конфигурации, может быть
числом, произвольной строкой символов, датой или логической величиной.
Кроме этих
типов к примитивным типам относят NULL.
Кроме этого
некоторые объекты конфигурации системы «1С: Предприятие» также могут
образовывать типы данных. Например, константе может быть назначен тип данных
ДокументСсылка. В этом случае значение константы будет представлять собой
ссылку на один из существующих в системе «1С: Предприятие» документов.
Объекты
конфигурации, которые могут образовывать типы значений конфигурации, в системе
«1С: Предприятие» называются типообразующими объектами конфигурации.
Такими
объектами в системе «1С: Предприятие» являются:
·
справочники,
·
документы,
·
планы
видов характеристик,
·
планы
счетов,
·
планы
видов расчета,
·
планы
обмена,
·
бизнес-процессы,
·
задачи,
·
перечисления.
Необходимо
обратить внимание, что типообразующие объекты конфигурации образуют тип данных
сразу после создания в конфигураторе объекта любого из таких типов. При этом
появляются сразу три новых вида типов: Ссылка, Объект и Список.
Например,
когда в конфигураторе создается новый справочник, то в списке типов данных
появляются новые типы данных: СправочникСсылка. <ИмяСправочника>, СправочникОбъект.
<ИмяСправочника> и СправочникСписок. <ИмяСправочника>. Такие типы
данных могут быть присвоены любому из типизированных объектов конфигурации.
Некоторые
данные могут иметь составной тип. Для этого в окне редактирования типа данных
установите флажок Составной тип данных и укажите те типы, которые могут
принимать данные. Кроме того, допускается выбор специального типа ЛюбаяСсылка.
При выборе
типа данных реквизита система, помимо выбора типов, определенных в конкретном
прикладном решении, предоставляет разработчику возможность выбирать наборы
типов. Наборами типов, например, являются ЛюбаяСсылка, СправочникСсылка, Характеристика.<имя>
и др.
Наборы типов,
также как и составной тип данных, содержат некий перечень типов, определенных в
данном прикладном решении, однако, в отличие от составного типа, этот перечень
формируется системой автоматически, в результате анализа метаданных.
Командный
интерфейс – это основное средство навигации пользователя по функциональности
конфигурации. Командный интерфейс строится на основе подсистем. Разработчик
конфигурации включает прикладные объекты в соответствующие подсистемы.
На основе
этой информации (структуры подсистем и привязки объектов к подсистемам) система
автоматически строит командный интерфейс для пользователя.
Пользователю
отображается структура прикладного решения (иерархия подсистем) и
предоставляются стандартные команды доступа к функциональности прикладных
объектов (вызов списков справочников, документов, открытие отчетов, обработок и
т.д.). Однако разработчик, разумеется, может отредактировать предлагаемое
системой построение командного интерфейса (изменить порядок, видимость команд).
Для этого предназначен редактор командного интерфейса, который вызывается как
для конкретной подсистемы, так и для всех подсистем.
Сами команды,
включаемые в командный интерфейс (открытие списков, ввод новых объектов,
открытие отчетов и т.д.), предоставляются системой автоматически. Но
разработчик может создать свои команды, которые будут включаться в командный
интерфейс.
Цель создания
интерфейса – обеспечить структурированный доступ пользователей к той
информации, которая необходима им в соответствии с их обязанностями.
Форма
Совокупность
экранного диалога, модуля, реквизитов и команд называется формой.
Большинство
объектов конфигурации в системе «1С: Предприятие» могут иметь визуальную форму.
В самом общем случае форма как объект конфигурации состоит из следующих частей:
·
экранный
диалог, используемый для ввода и редактирования информации;
·
модуль
формы – программа на встроенном языке системы «1С: Предприятие». Как правило,
модуль формы выполняет обработку вводимой в диалог информации для целей
входного контроля, выполнения расчетов и т.д.;
·
список
реквизитов;
·
команды,
используемые в форме.
Любая из этих
составных частей формы может отсутствовать, то есть не содержать информации.
С помощью
формы можно реализовать интерактивное взаимодействие прикладного объекта с
пользователем. Характер такого взаимодействия разрабатывается специалистом,
осуществляющим конфигурирование системы «1С: Предприятие».
Для
разработки форм в конфигураторе применяется редактор форм, позволяющий
редактировать все компоненты формы во взаимосвязи.
Рис. 3.
Редактор форм
Модулем
называется программа на встроенном языке системы «1С: Предприятие».
Модули
располагаются в заданных точках структуры конфигурации и вызываются для
выполнения в заранее известные моменты работы системы «1С: Предприятие».
Специалист,
выполняющий конфигурирование системы, может использовать модули для описания
сложных алгоритмов взаимодействия объектов конфигурации, для которых
недостаточно имеющихся в конфигураторе визуальных средств.
В
конфигурации существует несколько видов модулей. Это модуль обычного
приложения, модуль внешнего соединения, модуль сеанса, общие модули, модули
форм и модули объектов конфигурации (менеджеров значения констант,
справочников, документов, планов видов характеристик, планов счетов, планов
видов расчета, планов обмена, бизнес-процессов, задач, отчетов, обработок,
наборов записей регистров), модули менеджеров объектов конфигурации
(справочников, документов, планов видов характеристик, планов счетов, планов
видов расчета, планов обмена, бизнес-процессов, задач, отчетов, обработок,
регистров сведений, регистров накопления, регистров бухгалтерии, регистров
расчета, перечислений, журналов документов, хранилищ настроек), модули наборов
записей (регистров сведений, регистров накопления, регистров бухгалтерии,
регистров расчета), модули команд.
Для корневого
объекта конфигурации выбирается модуль сеанса, модуль внешнего соединения и
модуль обычного приложения. Некоторые объекты (например, константы, журналы документов)
не имеют модуля.
В модулях
объектов возможно объявление переменных, процедур и функций, которые будут
доступны при работе с объектом извне во встроенном языке, дополняя контекст
объекта. В этих модулях располагают процедуры обработки различных событий,
например, ввода на основании. Также в них располагают различные процедуры, с
помощью которых выполняются действия над объектом, инициированные вне данного
объекта (например, выполнение печати).
Модуль
менеджера позволяет расширить функциональность менеджеров, предоставляемых
системой, за счет написания процедур и функций на встроенном языке. Фактически
это позволяет описать методы для объекта конфигурации (например, справочника),
которые относятся не к конкретному экземпляру объекта базы данных, а к самому
объекту конфигурации. Модуль менеджера не может иметь переменных и тела модуля.
Если функции
или процедуры модуля менеджера объявлены как экспортируемые, к ним можно будет
получить доступ через менеджер объекта:
//
Модуль менеджера справочника Контрагент.
Функция
ПолучитьСписокДебиторов()
…
КонецФункции
//
Вызов из прикладного кода.
Дебиторы =
Справочники. Контрагент. ПолучитьСписокДебиторов();
Макетом в
системе программ «1С: Предприятие» называется объект конфигурации,
предназначенный для формирования печатных форм.
Общие макеты
печатных форм располагаются в ветви Макеты ветви Общие дерева конфигурации:
печатные формы объектов конфигурации (справочников, документов, журналов
документов, планов счетов, планов видов характеристик, планов видов расчетов,
регистров, отчетов и обработок и других объектов) располагаются в подчиненных
объектах Макеты, а также во внешних файлах (в этом случае должно быть
установлено свойство табличного документа Макет).
Макеты могут
быть следующего типа:
·
Табличный
документ – предполагает использование стандартной технологии создания и
использования макетов. Подготовка макета производится с помощью табличного
редактора.
·
Двоичные
данные – используются двоичные данные.
·
ActiveDocument
– предполагает использование технологии OLE Active document.
·
HTML-документ
– предполагает использование редактора HTML-документа.
·
Текстовый
документ – предполагает использование текстового документа в качестве макета.
Подготовка текстового макета производится с помощью редактора текстовых
макетов.
·
Географическая
схема – предполагает использование географической схемы, подготовленной в
редакторе географических схем, в качестве макета.
·
Графическая
схема – предполагает использование подготовленной в редакторе графической
схемы.
·
Схема
компоновки данных – предполагает использование схемы компоновки данных,
подготовленной в конструкторе.
·
Макет
оформления компоновки данных – предполагает использование макета оформления
системы компоновки данных.
3. Технологические средства разработки
Для описания
специфических алгоритмов обработки информации и создания интерфейса,
ориентированного на удобное представление описанных в конфигурации данных, в
системе «1С: Предприятие» используются несколько технологических механизмов.
Встроенный
язык – очень важная часть «1С: Предприятия». Он имеет много общих черт с такими
языками, как Pascal, Java Script, Basic, но не является прямым аналогом
какого-либо из этих языков. Как уже было сказано, прикладные решения в «1С: Предприятии»
не программируются (кодируются) целиком, большая их часть описывается
параметрически – в виде структур метаданных, с помощью дизайнера форм, отчетов и
т.д.
Соответственно,
встроенный язык «1С: Предприятия» является скриптовым языком, предназначенным в
первую очередь для программирования бизнес-логики в контексте объектной модели «1С:
Предприятия». На нем программируются обработчики различных событий, изменяющих
состояние объектов системы, например, обработчики команд пользователя,
обработчики проведения документов и т.д.
Очень
существенным моментом является то, что особенности построения языка напрямую
соответствуют модели проектирования структур данных, реализованной в «1С: Предприятии».
То, что вся
разработка конфигурации ведется на основе использования стандартных объектов
системы, позволяет разработчику прикладных решений применять соответствующие им
объекты встроенного языка, имеющие большой набор функций и высокую гибкость.
В числе
наиболее значимых технологических особенностей встроенного языка:
·
предварительная
компиляция. Перед исполнением модули преобразуются во внутренний код;
·
кэширование
скомпилированных модулей в памяти;
·
мягкая
типизация – тип переменных может изменяться в процессе работы;
·
отсутствие
программного описания объектов конфигурации – прикладное решение может
манипулировать либо встроенными в платформу «1С: Предприятия» объектами, либо
объектами, описанными разработчиком в процессе визуального конструирования
системы в виде объектов метаданных.
Так как
система сочетает в себе визуальные и языковые средства конфигурирования,
использование встроенного языка в системе имеет событийно-зависимую ориентацию,
то есть языковые модули используются в конкретных местах для отработки
отдельных алгоритмов, настраиваемых в процессе конфигурации. Так, например, для
документа можно описать алгоритм автоматического заполнения реквизитов при вводе
нового документа. Данная процедура будет вызвана системой в нужный момент.
Запросы в
системе «1С: Предприятие 8» предназначены для выборки информации из базы
данных. По сути, запрос – это обращение к системе с просьбой выбрать
определенную информацию из базы данных, а часто не только выбрать, но и
произвести некоторую обработку: сгруппировать, отсортировать, вычислить.
Например, с помощью запроса можно легко выбрать всех сотрудников, занимающих
определенную должность, или можно узнать объем продаж каждого товара в течение
года с детализацией до месяца.
Язык запросов
1С: Предприятия основан на SQL, но при этом содержит значительное количество
расширений, ориентированных на отражение специфики финансово-экономических
задач и на максимальное сокращение усилий по разработке бизнес-приложений.
В числе
наиболее существенных возможностей:
·
Разыменование
ссылочных полей, т.е. обращение к полям через точку (».»). Если поля какой-либо
таблицы имеют ссылочный тип и хранят ссылки на объекты другой таблицы,
разработчик может в запросе ссылаться на них через точку, при этом, что самое
важное, количество уровней вложенности таких ссылок система не ограничивает.
·
Обращение
к вложенным таблицам (табличным частям документов и элементов справочников).
Система поддерживает обращения к вложенным табличным частям как к отдельным
таблицам и как к целым полям одной таблицы. Например, при обращении к расходной
накладной (документу, содержащему табличную часть с составом отгружаемых
товаров) мы можем считать табличную часть как отдельную таблицу (при этом
получить записи из разных объектов), а также можем считать заголовочную запись
расходной накладной, в которой значением поля будут все записи вложенной
таблицы, подчиненные этому объекту.
·
Автоматическое
упорядочивание. Для выбора наиболее правильного («естественного») порядка
вывода информации на экран или в отчет разработчику в большинстве случаев
достаточно задать режим автоматического упорядочивания.
·
Поддержка
виртуальных таблиц. Виртуальные таблицы, предоставляемые системой, позволяют
получить практически готовые данные для большинства бизнес-задач без
необходимости составления сложных запросов. Например, такая виртуальная таблица
может предоставить данные по остаткам товаров в разрезе периодов на какой-то
момент времени. При этом виртуальные таблицы максимально используют хранимую
информацию, например, ранее рассчитанные итогах и т.д.
·
Естественно,
в языке запросов «1С: Предприятия» поддерживаются стандартные для SQL операции,
такие, как объединение (Union), соединение (Join) и т.д.
Рис. 4.
Организация хранения данных
Встроенный
текстовый редактор используется для создания программных модулей на встроенном
языке и для редактирования документов в текстовом виде.
Одной из
особенностей редактора является возможность контекстного выделения цветом
синтаксических конструкций встроенного языка, а также группировка различных
синтаксических конструкций.
При наборе
текстов на встроенном языке удобно пользоваться контекстной подсказкой и
шаблонами.
Благодаря
тому, что встроенный язык системы имеет мощные средства манипулирования
текстами, текстовый формат может быть успешно использован для обмена с другими
системами самой различной информацией.
Встроенный
редактор форм. Работа с настраиваемыми структурами данных и работа в интерфейсе
операционной системы Microsoft Windows вызывает необходимость произвольной
настройки форм для ввода и редактирования информации. Для этого в системе «1С:
Предприятие» существует встроенный редактор форм.
Редактор
позволяет оформить большинство окон, которые используются в системе для ввода и
просмотра предметной информации (формы документов, справочников, настройки
отчетов).
Встроенный
редактор табличных документов. Для всех выходных документов (первичных
документов и отчетов) в системе предусмотрен единый формат – формат табличных
документов.
Редактор
табличных документов – это мощное средство, сочетающее в себе оформительские
возможности табличной структуры и векторной графики. Он может быть использован
как для создания небольших документов с очень сложной структурой линий (типа
платежного поручения), так и для объемных ведомостей, журналов и других
подобных документов.
Редактор
табличных документов предоставляет пользователям богатый набор оформительских
возможностей (шрифты, цвета, линии, узоры). Имеется возможность вывода
информации в графическом виде (диаграммы).
Одной из
главных особенностей редактора является ориентация на формирование отчетов при
помощи встроенного языка системы «1С: Предприятие». Гибкое построение отчетов с
его помощью становится возможным благодаря наличию механизма манипулирования
именованными областями документа. Сочетание возможностей редактора с таким
объектом, как система компоновки данных, позволяет создавать универсальные
отчеты, которые дают возможность обрабатывать и представлять информацию в
различных разрезах и различной детализации без дополнительного вмешательства
разработчика.
С другой
стороны, табличный документ может выступать в качестве элемента управления
формы и таким образом использоваться для ввода данных.
Конструкторы –
вспомогательные инструменты, облегчающие разработку стандартных элементов
системы «1С: Предприятие». В системе имеются, например, конструкторы форм констант,
справочников, документов, журналов документов, отчетов и других объектов,
конструкторы печатных форм, конструкторы движений регистров и другие.
С помощью
конструкторов производится не только формирование визуальных составляющих этих
объектов, но и в некоторых случаях (ввод на основании, печать, выходная форма и
др.) формируются программные модули.
Система
настройки пользовательского интерфейса. Для того чтобы интерфейс конкретной
конфигурации системы полностью отражал настроенные структуры данных и
алгоритмы, в системе «1С: Предприятие», помимо редактора диалоговых форм и
табличных документов, предусмотрена возможность настройки командного интерфейса
системы.
При этом
командный интерфейс автоматически учитывает права доступа пользователя, который
вошел в систему. При этом пользователю будут показаны только те объекты
системы, доступ к которым пользователю разрешен.
Подсистемы.
Конфигуратор позволяет на этапе проектирования в рамках одной конфигурации
выделить различные подсистемы (например, торговый учет и исследовательский
комплекс). Для каждой подсистемы можно указать объекты конфигурации, которые в
нее входят. Допускается указание принадлежности одного объекта к нескольким
подсистемам. Фактически подсистемы определяют основные разделы конфигурации, с
которыми будет работать пользователь. В связи с тем, что структура подсистем
определяет интерфейс конфигурации, следует уделять вопросам проектирования
подсистем (и их иерархии) особое внимание.
Система
настройки прав доступа (роли). Данная система позволяет описывать наборы прав,
соответствующие должностям пользователей или виду деятельности.
Структура
прав определяется конкретной конфигурацией системы. Например, могут быть
введены такие наборы прав, как Главный бухгалтер, Кладовщик, Менеджер,
Начальник отдела.
Кроме того,
для объектов, хранящихся в базе данных (справочник, документы, регистры и т.д.),
могут быть определены права доступа к отдельным полям и записям.
Сам список
пользователей создается уже для конкретной организации. Каждому пользователю назначается
одна или несколько ролей, основной интерфейс и язык, используемые при работе с
программой.
Отладчик. Для
удобства разработки конфигурации в системе предусмотрен отладчик. Отладчик
позволяет прослеживать исполнение программных модулей конфигурации, замерять
сравнительное время исполнения, просматривать содержимое переменных.
Хранилище
конфигураций. Для групповой разработки конфигурации разработчики используют
механизм хранилища конфигурации. Он позволяет распределить права доступа по
модификации объекта конфигурации и производить необходимые изменения
одновременно, а не последовательно.
Поддержка
конфигураций. Для удобства проведения обновлений конфигураций предусмотрен
механизм формирования разработчиками типовых конфигураций файлов поставки и комплектов
поставки (включают программу установки), а также механизм обновления типовых
конфигураций, находящихся на поддержке.
4. Краткое
описание типовой конфигурации «управление торговлей»
среда
предприятие конфигурируемость управление торговля
На платформе
1С Предприятие 8 разработано огромнейшее количество прикладных решений как
самой 1С, так и фирмами-партнёрами. Каждое решение имеет свою область
применения и свои особенности.
Кроме того
выделяют 3 типовые конфигурации:
·
Зарплата
и управление персоналом
·
Бухгалтерия
предприятия
·
Управление
торговлей
Каждая из них
направлена на организацию учёта в определённой деятельности предприятия.
Рассмотрим
конфигурацию «Управление торговлей» (УТ).
Розничный
магазин, филиал крупной сети, осуществляет торговлю бижутерией. Для учёта
используется конфигурация «Управление торговлей». Информационный обмен с центральным
офисом осуществляется в электронном виде. Необходимо минимизировать ручную
работу при обмене данными между магазином и офисом.
Задача 1. При
заказе магазином товара из головного офиса через Интернет формируется
электронная таблица в формате Excel, содержащая необходимые данные о товаре: кодовый
номер товара, наименование, артикул, штрих код в формате EAN-8, количество,
закупочная цена, розничная цена.
Задача 2. Для
лучшей заполненности магазина товаром, головной офис осуществляет ежедневный
контроль остатков товара. Т.е. в конце рабочего дня должна происходить
автоматическая отправка данных об остатках через Интернет.
Формат
отправляемых данных – CSV.
CSV (от англ.
Comma Separated Values – значения, разделённые запятыми) – текстовый формат,
предназначенный для представления табличных данных. Каждая строка файла – это
одна строка таблицы. Значения отдельных колонок разделяются разделительным
символом (delimiter) – запятая (,) или точка с запятой (;). Используемый символ
разделителя зависит от установленной в системе локали. В США это запятая, а в
России – точка с запятой, так как запятая используется для дробных чисел (в отличие
от США, где это точка). Значения, содержащие зарезервированные символы, такие
как: запятая, точка с запятой или новая строка обрамляются символом двойные
кавычки (»); если в значении встречаются кавычки – они представляются в файле в
виде двух кавычек подряд. Строки разделяются парой символов CR LF (в DOS и Windows
эта пара генерируется нажатием клавиши Enter).
Для
реализации первой задачи был выбран механизм COM и приложение MS Excel. Основная задача,
решаемая с помощью COM-соединения – обеспечение надежного и быстрого
программного доступа к данным системы 1С: Предприятие 8 из внешних приложений,
так и наоборот – из 1С к данным прикладных приложений.
Для
организации доступа к данным Excel из системы 1С: Предприятие 8 через COM-соединение,
выполняется следующая последовательность действий:
·
создается
COM-объект, с помощью которого производится установка соединения;
·
через
полученный объект COM-соединения производится обращение к допустимым методам и
свойствам объекта.
Создадим
внешнюю обработку, которая будет загружать данные из Excel в документ 1С.
Действия
выполняются в режиме Конфигуратора.
1.
Создаём
новую обработку.
2.
В
основном модуле объекта разместим программный код из приложения и сохраним.
3.
Подключим
обработку как «внешнюю обработку заполнения табличных частей».
4.
В
дальнейшем мы можем пользоваться обработкой из документа, выбрав файл с
данными.
На основе
данных будут созданы необходимые документы для правильного отражения выполненного
заказа в учёте.
Для
реализации второй задачи необходимо внести изменения в документ «ЧекККМ».
1.
Откроем
форму «ФормаРегистрацииПродаж».
2.
Создадим
новый пункт в меню «Сервис» и зададим его свойства.
3.
Добавим
в модуль формы процедуру.
|