1С предприятие. Работа с БД

Федеральное агентство по образованию Российской Федерации

Государственное образовательное учреждение

Высшего профессионального образования

Московский  Государственный Университет Экономики,

Статистики  и Информатики

(МЭСИ) 
 
 

                   

Реферат

По теме: «1С предприятие. Работа с БД» 
 
 
 
 

                                                       Студентка: Викторова А.А

Группы 3УАСУ-1

                                                       Преподаватель: Кафанова Е.А.  
 
 
 
 
 
 
 

Кемерово 2011

Введение

     1С:  Предприятие  является  системой  программ  для автоматизации различных областей  экономической  деятельности.  В  конкретный  программный  продукт, входящий в  систему  программ  1С:  Предприятие,  включаются  те  функции  и возможности, которые отвечают назначению этого продукта.

     Все составляющие системы программ 1С: Предприятие  можно  разделить  на Технологическую  платформу   и   Конфигурации.   Технологическая   платформа представляет   собой   набор   различных   механизмов,   используемых    для автоматизации экономической  деятельности  и не  зависящих от  конкретного законодательства  и  методологии  учета.  Конфигурации  являются  собственно прикладными решениями. Каждая конфигурация  ориентирована  на  автоматизацию  определенной  сферы  экономической деятельности  и,  разумеется,   отвечает принятому законодательству. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Модель  работы с базой  данных

     Модель  базы данных 1С:Предприятия 8.0 имеет ряд особенностей, отличающих ее от классических моделей СУБД (например, основанных на реляционных таблицах), с которыми имеют дело разработчики в универсальных системах.

     Основное  отличие заключается в том, что  разработчик 1С:Предприятия не обращается к базе данных напрямую. Непосредственно он работает с платформой 1С:Предприятия. При этом он может:

     - описывать структуры данных в конфигураторе;

     - манипулировать данными с помощью объектов встроенного языка;

     - составлять запросы к данным, используя язык запросов.

     Платформа 1С:Предприятия обеспечивает операции исполнения запросов, описания структур данных и манипулирования данными, транслируя их в соответствующие команды. Это могут быть команды MS SQL Server, в случае клиент-серверного варианта работы, или команды собственного движка базы данных для файлового варианта.

 

Общая система типов

     Важной  особенностью работы с базой данных является то, что в 1С:Предприятии 8 реализована общая система типов языка и полей баз данных. Иными словами, разработчик одинаковым образом определяет поля базы данных и переменные встроенного языка и одинаковым образом работает с ними.

     Этим  система 1С:Предприятие выгодно отличается от универсальных инструментальных средств. Обычно, при создании бизнес-приложений с использованием универсальных сред разработки, используются отдельно поставляемые системы управления базами данных. А это значит, что разработчику приходится постоянно заботиться о преобразованиях между типами данных, поддерживаемыми той или иной системы управления базами данных, и типами, поддерживаемыми языком программирования. 

Хранение  ссылок на объекты

     При манипулировании данными, хранящимися  в базе данных 1С:Предприятия, зачастую используется объектный подход. Это значит, что обращение (чтение и запись) к некоторой совокупности данных, хранящихся в базе, происходит как к единому целому. Например, используя объектную технику, можно манипулировать данными справочников, документов, планов видов характеристик, планов счетов и т.д.

     Характерной особенностью объектного манипулирования  данными является то, что на каждый объект, как совокупность данных, существует уникальная ссылка, позволяющая однозначно идентифицировать этот объект в базе данных.

     Эта ссылка также хранится в поле базы данных, вместе с остальными данными  объекта. Кроме того, ссылка может  быть использована как значение какого-либо поля другого объекта. Например, ссылка на объект справочника Контрагенты может быть использована как значение соответствующего реквизита документа Приходная накладная.

Составные типы

     Существенной  возможностью модели данных, которая  поддерживается 1С:Предприятием 8, является то, что для поля базы данных можно определить сразу несколько типов данных, значения которых могут храниться в этом поле. При этом значение в каждый момент времени будет храниться одно, но оно может быть разных типов — как ссылочных, так и примитивных — число, строка, дата и т.п.:

 

     Такая возможность очень важна для  экономических задач — например, в расходной накладной в качестве покупателя может быть указано либо юридическое лицо из справочника  организаций, либо физическое лицо из справочника частных лиц. Соответственно, при проектировании базы данных разработчик  может определить поле, которое будет  хранить значение любого из этих типов. 

Хранение  любых данных как  Хранилище значения

     Идеология создания прикладных решений в 1С:Предприятии 8 предполагает, что все файлы, имеющие отношение к данному прикладному решению, нужно хранить в самой базе данных.

     Для этого введен специальный тип  данных – Хранилище Значения. Поля базы данных могут хранить значения такого типа, а встроенный язык содержит специальный одноименный объект, позволяющий преобразовывать значения других типов к специальному формату Хранилища значений.

     Благодаря этому разработчик имеет возможность  сохранять в базе данных значения, тип которых не может быть выбран в качестве типа поля базы данных, например, графические изображения.

Создание  и обновление структур данных на основе метаданных

     В процессе создания или модификации  прикладного решения разработчик  избавлен от необходимости каких-либо действий по непосредственному изменению  структуры полей базы данных прикладного  решения.

     Разработчику  достаточно путем визуального конструирования  описать структуру используемых объектов прикладного решения, состав их реквизитов, табличных частей, форм и пр.

     Все действия по созданию или изменению  структуры таблиц базы данных платформа  выполнит самостоятельно, на основании  состава объектов прикладного решения  и их характеристик.

     Например, для того, чтобы в справочнике  сотрудников появилась возможность  хранить сведения о составе семьи  сотрудника, разработчику 1С:Предприятия не нужно создавать в базе данных специальную новую таблицу, задавать правила, по которым данные, хранящиеся в этой таблице, будут связаны с данными из основной таблицы, программировать алгоритмы совместного доступа к данным этих таблиц, создавать алгоритмы проверки прав доступа к данным, находящимся в подчиненной таблице и пр.

     Все, что требуется сделать разработчику - щелчком мыши добавить к справочнику  табличную часть и задать два  ее строковых реквизита: Имя и  Родство. При сохранении или обновлении конфигурации платформа самостоятельно выполнит реорганизацию структуры  базы данных, создаст необходимые  таблицы и т.д.

Объектный / табличный доступ к данным

     Штатной возможностью 1С:Предприятия 8 является поддержка двух способов доступа к данным — объектного (для чтения и записи) и табличного (для чтения).

     В объектной модели разработчик оперирует  объектами встроенного языка. В  этой модели обращения к объекту, например документу, происходят как  к единому целому — он полностью  загружается в память, вместе с  вложенными таблицами, к которым  можно обращаться средствами встроенного  языка как к коллекциям записей  и т.д.

 

     При манипулировании данными в объектной  модели обеспечивается сохранение целостности  объектов, кэширование объектов, вызов  соответствующих обработчиков событий  и т.д.

     В табличной модели все множество  объектов того или иного класса представляется как совокупность связанных между  собой таблиц, к которым можно  обращаться при помощи запросов —  как к отдельной таблице, так  и к нескольким таблицам во взаимосвязи:

     В этом случае разработчик получает доступ к данным сразу нескольких объектов, что очень удобно для анализа  больших объемов данных, например, при создании отчетов. Однако в силу того, что данные, выбираемые таким  способом, содержат не все, а лишь некоторые  реквизиты анализируемых объектов, табличный способ доступа не позволяет  изменять эти данные. 

Дополнительная  информация

     Конфигуратор представляет собой специальный режим запуска системы 1С:Предпритие 8.0. Этот режим позволяет выполнять изменение существующих прикладных решений и создание новых, а также выполнять действия по администрированию информационной базы. Конфигуратор может быть вызван прямо из окна запуска 1С:Предприятия:

     Конфигуратор  предоставляет разработчику все  необходимые инструменты для "визуального" описания структуры прикладного  решения, создания форм диалогов и выходных документов, механизмов работы пользователей  с данными (интерфейсов) и прав доступа  различных групп пользователей  к различной информации. Кроме  этого конфигуратор позволяет создать  и настроить взаимодействие различных  элементов прикладного решения  друг с другом и написать модули на встроенном языке для обработки  различных событий и реализации специфических алгоритмов взаимодействия.

     Встроенный  язык является важной частью технологической платформы 1С:Предприятия 8.0, поскольку позволяет разработчику описывать собственные алгоритмы функционирования прикладного решения.

     Встроенный  язык имеет много общих черт с другими языками, такими как Pascal, Java Script, Basic, что облегчает его освоение начинающими разработчиками. Однако он не является прямым аналогом какого-либо из перечисленных языков.

Вот лишь некоторые, наиболее значимые особенности  встроенного языка:

- предварительная компиляция; перед исполнением модули, содержащие текст на встроенном языке, преобразуются во внутренний код;

- кэширование скомпилированных модулей в памяти;

- мягкая типизация - тип переменной определяется типом значения, которое она содержит, и может изменяться в процессе работы;

- отсутствие программного описания объектов конфигурации; разработчик может использовать либо встроенные в платформу объекты, либо объекты, созданные системой в результате визуального конструирования прикладного решения.  

Событийная  ориентированность  встроенного языка

     Назначение  встроенного языка в системе 1С:Предприятие определяется идеологией создания прикладных решений. Прикладные решения в 1С:Предприятии 8.0 не кодируются целиком. Большая часть прикладного решения создается разработчиком путем визуального конструирования - создания новых объектов конфигурации, задания их свойств, форм представления, взаимосвязей и пр. Встроенный язык используется лишь для того, чтобы определить поведение объектов прикладного решения, отличное от типового, и создать собственные алгоритмы обработки данных.

     По  этой причине модули, содержащие текст  на встроенном языке, используются системой в конкретных, заранее известных  ситуациях, которые могут возникнуть в процессе работы прикладного решения. Такие ситуации называются событиями. События могут быть связаны с  функционированием объектов прикладного  решения или с самим прикладным решением, как таковым.

     Например, с функционированием объекта  прикладного решения Справочник связан ряд событий, среди которых есть событие ПередЗаписью.

     Это событие возникает непосредственно  перед тем, как данные элемента справочника  должны быть записаны в базу данных. Разработчик, используя встроенный язык, может описать алгоритм, который, например, будет проверять корректность данных, введенных пользователем. Разместив этот алгоритм в соответствующем модуле, разработчик обеспечит то, что каждый раз, как пользователь будет выполнять запись элемента справочника, система будет выполнять созданный разработчиком алгоритм и проверять, не забыл ли пользователь заполнить обязательные реквизиты справочника.

     Таким образом можно сказать, что встроенный язык является скриптовым языком для программирования бизнес-логики, а использование модулей на встроенном языке является событийно-зависимым, т.е. выполнение модулей происходит при возникновении определенных событий в процессе функционирования прикладного решения.

Универсальные коллекции значений

     Встроенный  язык поддерживает работу с большим  количеством разнообразных объектов. Безусловно, основную группу объектов составляют прикладные объекты, позволяющие  описывать алгоритмы функционирования бизнес-логики.

     Однако  не менее важной группой являются объекты, предназначенные для хранения временных наборов данных в течение  сеанса работы пользователя. Как правило, они служат для вспомогательного сбора, группировки, анализа и обработки информации.

Их возможности:

Массив 

     Представляет  собой пронумерованную коллекцию  значений произвольного типа. К элементу массива можно обращаться по его  индексу. В качестве элементов массива  могут выступать, в частности, другие массивы. Это позволяет создавать  многомерные массивы.

Структура

     Представляет  собой поименованную коллекцию, состоящую из пар Ключ - Значение. Ключ может быть только строковым, значение - произвольного типа. К элементу структуры можно обращаться по значению его ключа, т.е. по имени. Обычно используется для хранения небольшого количества значений, каждое из которых имеет  некоторое уникальное имя.

Соответствие

     Также как и Структура, представляет собой  коллекцию пар Ключ - Значение. Однако, в отличие от Структуры, ключ может  быть практически любого типа.

Список  значений

     Используется, как правило, для решения интерфейсных задач. Позволяет строить динамические наборы значений и манипулировать ими (добавлять, редактировать, удалять  элементы, сортировать). Он может содержать  значения любого типа, кроме того, в  одном списке типы хранимых значений могут быть разными.

     Например, список значений может использоваться для выбора конкретного документа  из списка возможных документов, сформированного  по сложному алгоритму.

Таблица значений

     Таблица значений позволяет строить динамические наборы значений и манипулировать ими. Она может быть наполнена значениями любого типа, и в одной таблице  типы хранимых значений могут быть разными.

     Одним из примеров использования таблицы  значений может служить организация  представления в форме списка элементов справочника, отобранных по сложному алгоритму.

Дерево  значений

     Дерево  значений представляет собой динамически  формируемый набор значений любого типа, похожий на таблицу значений. В отличие от таблицы значений, строки дерева значений могут образовывать иерархические структуры: каждая строка дерева может иметь набор подчиненных  строк, каждая из подчиненных строк, в свою очередь, также может иметь  набор подчиненных строк и  так далее. При этом поиск значений, сортировка, получение итогов могут  осуществляться либо по текущему уровню иерархии, либо включая все подчиненные.

COMSafeArray

     Представляет  собой объектную оболочку над  многомерным массивом SAFEARRAY из COM. Позволяет  создавать и использовать SAFEARRAY для  обмена данными между COM-объектами.

ФиксированныйМассив

     Неизменяемый  массив. Массив заполняется системой при инициализации объектов данного  типа или разработчиком, с помощью  конструктора.

Редактор  текстов и модулей

     Для создания и изменения текстов  на встроенном языке разработчик  может использовать специальный  редактор, обладающий удобными средствами создания, редактирования и синтаксической проверки модулей.

Язык  запросов. Одним из способов доступа к данным, которые поддерживает технологическая платформа 1С:Предприятия, является механизм запросов. Используя этот механизм, разработчик может читать и обрабатывать данные, хранящиеся в информационной базе; изменение данных с помощью запросов невозможно. Это объясняется тем, что запросы специально предназначены для быстрого получения и обработки некоторой выборки из больших массивов данных, которые могут храниться в базе данных 1С:Предприятия.

Табличный способ доступа к данным

     Запросы реализуют табличный способ доступа  к данным, которые хранятся в базе данных 1С:Предприятия. Это означает, что все данные представляются в виде совокупности связанных между собой таблиц, к которым можно обращаться как по-отдельности, так и к нескольким таблицам во взаимосвязи:

     Такой способ работы с данными позволяет  получать сложные выборки данных, сгруппированные и отсортированные  определенным образом. Для этих выборок  могут быть рассчитаны общие и  промежуточные итоги, наложены ограничения  на количество или состав записей и пр.

Язык  запросов

     Для того чтобы разработчик имел возможность  использовать запросы для реализации собственных алгоритмов, в 1С:Предприятии реализован язык запросов. Этот язык основан на SQL, но при этом содержит значительное количество расширений, ориентированных на отражение специфики финансово-экономических задач и на максимальное сокращение усилий по разработке прикладных решений. Можно перечислить наиболее существенные возможности, реализуемые языком запросов:

Обращение к полям через точку (".")

     Если  поля какой-либо таблицы имеют ссылочный  тип (хранят ссылки на объекты другой таблицы), разработчик может в  тексте запроса ссылаться на них  через ".", при этом количество уровней вложенности таких ссылок система не ограничивает.

Обращение к вложенным таблицам (табличным  частям документов и элементов справочников)

     Система поддерживает обращения к вложенным  табличным частям и как к отдельным  таблицам, и как к целым полям  одной таблицы. Например, при обращении  к документу Реализация товаров (содержащему табличную часть  Товары с составом отгружаемых товаров), мы можем считать табличную часть  как отдельную таблицу:

     Но  также мы можем считать заголовочную запись документа, в которой значением  поля Товары будут все записи вложенной  таблицы, подчиненные этому объекту (документу):

Автоматическое  упорядочивание

     Для выбора наиболее правильного ("естественного") порядка вывода информации на экран  или в отчет разработчику в  большинстве случаев достаточно задать режим автоматического упорядочивания.

Многомерное и многоуровневое формирование итогов

     Итоги и подитоги формируются с учетом группировки и иерархии, обход уровней может выполняться в произвольном порядке с подведением подитогов, обеспечивается корректное построение итогов по временным измерениям.

Поддержка виртуальных таблиц

     Виртуальные таблицы, предоставляемые системой, позволяют получить практически  готовые данные для большинства  прикладных решений без необходимости  составления сложных запросов. Например, такая виртуальная таблица может  предоставить данные по остаткам товаров  в разрезе периодов на какой-то момент времени. При этом виртуальные таблицы  максимально используют хранимую информацию, например, ранее рассчитанные итоги  и т.д.

Стандартные SQL операции

     В языке запросов "1С:Предприятия" поддерживаются стандартные для SQL операции, такие, как объединение (Union), соединение (Join) и т.д.

Конструктор запросов

     Для облегчения труда разработчика технологическая  платформа содержит специальный  инструмент - конструктор запросов. Он служит для того, чтобы помочь разработчику составить правильный текст запроса, используя только визуальные средства. Выбирая мышкой нужные поля таблиц, разработчик может  составить работоспособный запрос, даже не зная синтаксиса языка запросов.

     Платформа 1С:Предприятие 8 была создана с учетом 6-летнего опыта применения системы программ 1С:Предприятие 7.7, которую используют десятки тысяч разработчиков. В настоящее время более 1 000 000 организаций использует для автоматизации своей деятельности продукты, входящие в систему программ «1С:Предприятие». Несмотря на значительные изменения, версия 8 сохранила идеологическую преемственность с предыдущими версиями.

     Общая архитектура 1С:Предприятия

Общие механизмы

     Система 1С:Предприятие 8 имеет в своей основе ряд механизмов, определяющих концепцию создания прикладных решений. Наличие этих механизмов позволяет максимально соотнести технологические возможности с бизнес-схемой разработки и внедрения прикладных решений.

     В качестве ключевых моментов можно выделить изоляцию разработчика от технологических  подробностей, алгоритмическое программирование только бизнес-логики приложения, использование собственной модели базы данных и масштабируемость прикладных решений без их доработки.

Прикладные  механизмы

     Состав  прикладных механизмов 1С:Предприятия ориентирован на решение задач автоматизации учета и управления предприятием. Использование проблеммно-ориентированных объектов позволяет разработчику решать самый широкий круг задач складского, бухгалтерского, управленческого учета, расчета зарплаты, анализа данных и управления на уровне бизнес-процессов.

Интерфейсные  механизмы 

     В 1С:Предприятии 8.0 реализован современный дизайн интерфейса и повышена комфортность работы пользователей при работе с системой в течение длительного времени.

Масштабируемость

     Технологическая платформа обеспечивает различные  варианты работы прикладного решения: от персонального однопользовательского, до работы в масштабах больших  рабочих групп и предприятий. Ключевым моментом масштабируемости является то, что повышение производительности достигается средствами платформы, и прикладные решения не требуют доработки при увеличении количества одновременно работающих пользователей.

Интеграция

     Система 1С:Предприятие 8 является открытой системой. Предоставляется возможность для интеграции практически с любыми внешними программами и оборудованием на основе общепризнанных открытых стандартов и протоколов передачи данных.

     В системе 1С:Предприятие 8 имеется целый набор средств, с помощью которых можно:

- создавать, обрабатывать и обмениваться данными различных форматов;

- осуществлять доступ ко всем объектам системы 1С:Предприятие 8, реализующим ее функциональные возможности;

- поддерживать различные протоколы обмена;

- поддерживать стандарты взаимодействия с другими подсистемами;

- создавать собственные интернет-решения.

Система прав доступа

     Система прав доступа позволяет разрешать  доступ пользователей только к тем  данным, которые необходимы им для  выполнения определенных функций в  прикладном решении. Разработчик может  создавать наборы прав, соответствующие  должностям пользователей или виду деятельности. Например, могут быть введены такие наборы прав, как «Главный бухгалтер», «Кладовщик», «Менеджер», «Начальник отдела» и т.д.

Обмен данными

     Механизмы обмена данными, реализованные в  технологической платформе 1С:Предприятие 8, позволяют создавать территориально распределенные информационные системы как на основе информационных баз 1С:Предприятия 8, так и с участием других информационных систем, не основанных на 1С:Предприятии 8.

1С предприятие. Работа с БД