Донецкий филиал южного университета Институт управления бизнеса и права Факультет «Прикладная информатика» КУРСОВАЯ РАБОТА по дисциплине: «Базы данных» на тему: «Проектирование и разработка базы данных редакции газеты» Выполнил: студент 3 курса Изотов И.С. Руководитель: Данченко А.Л. ВВЕДЕНИЕ В настоящее время проблема комплексной или частичной автоматизации стала актуальной для каждого предприятия. Уже не стоит вопрос “надо или не надо автоматизировать”, предприятия столкнулись с проблемой: каким образом это осуществить. Ведь не существует двух одинаковых организаций. Простое тиражирование даже очень известной и хорошей системы управления предприятием никогда не устроит заказчика полностью, поскольку не может учесть его специфики. Более того, в данном случае возникает проблема выбора именно той системы, которая наиболее подходит для конкретного предприятия. А эта проблема осложняется еще и тем, что ключевые слова, характеризующие различные системы, практически одни и те же: единая информационная среда предприятия; режим реального времени; независимость от законодательства; интеграция с другими приложениями (в том числе с уже работающими на предприятии системами); поэтапное внедрение и т.п. Проектирование информационных систем всегда начинается с определения цели проекта. Основная задача любого успешного проекта заключается в том, чтобы на момент запуска системы и в течение всего времени ее эксплуатации можно было обеспечить: требуемую функциональность системы и степень адаптации к изменяющимся условиям ее функционирования; требуемую пропускную способность системы; требуемое время реакции системы на запрос; безотказную работу системы в требуемом режиме, иными словами готовность и доступность системы для обработки запросов пользователей; простоту эксплуатации и поддержки системы; необходимую безопасность. Производительность является главным фактором, определяющим эффективность системы. Хорошее проектное решение служит основой высокопроизводительной системы. Цель курсовой работы - провести проектирование и разработку автоматизированной информационной система БУ Задачи курсовой работы: Провести анализ теоретических подходов к разработке АИС; Провести анализ деятельности предприятия, построить функционально ориентированные модели AS-IS и TO-BE; Разработать БД и приложение. ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ АВТОМАТИЗИРОВАННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ БУ .1 Понятие Автоматизированной информационной системы (АИС) Информационная система (ИС) - взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации в интересах достижения поставленной цели. Цель ИС - производство профессиональной информации. Информационная система существует всегда, независимо от того используются ли в ней средства ЭВМ или нет. Автоматизация - одно из направлений научно-технического прогресса, применение саморегулирующих технических средств, экономико-математических методов и систем управления, освобождающих человека от участия в процессах получения, преобразования, передачи и использования энергии, материалов или информации, существенно уменьшающих степень этого участия или трудоемкость выполняемых операций. Автоматизируются следующие функции и процессы: технологические, энергетические, транспортные и т. д.; проектирование сложных агрегатов, судов, промышленных сооружений, производственных комплексов и т. д.; организация, планирование и управление в рамках цеха, предприятия, строительства, отрасли, войсковой части, соединения и т. д.; научные исследования, медицинское и техническое диагностирование, учет и обработка статистических данных, программирование, инженерные расчеты и т. д. Цель автоматизации - повышение производительности и эффективности труда, улучшение качества продукции, оптимизация управления, устранение человека от работы в условиях, опасных для здоровья. Наиболее эффективной организационной формой использования компьютерных систем является создание на их базе автоматизированных рабочих мест конкретных специалистов - экономистов, статистиков, бухгалтеров, инспекторов, кладовщиков и т. д. Автоматизированное рабочее место (АРМ) - это программно-технический комплекс, предназначенный для автоматизации какой-либо деятельности. Автоматизированное средства, рабочее обеспечивающие предоставляет место объединяет взаимодействие возможность ввода программно-аппаратные человека информации с компьютером, (через клавиатуру, компьютерную мышь, сканер и т. д.) и ее вывод на экран монитора, принтера или иные устройства вывода. Автоматизированное рабочее место - это рабочее место оператора, диспетчера, конструктора, технолога и вычислительной техники для т. д., оснащенное автоматизации средствами процессов переработки и отображения информации, необходимой для выполнения производственного задания. АРМ могут быть индивидуальными, групповыми, коллективными. Применительно к групповым и коллективным АРМ в целях эффективного функционирования системы ЭВМ - специалистам (коллективу) необходимо ужесточить требования к организации работы АРМ и чётко определить функции администрирования в такой системе. Система АРМ, являющаяся «человеком - машиной», должна быть открытой, гибкой, приспособленной к постоянному развитию и совершенствованию. В такой системе должны быть обеспечены: Рисунок 1 - Структурная схема автоматизированного рабочего места Хотя для каждого объекта автоматизации необходимо разрабатывать свое собственное автоматизированное рабочее место, которое реализует подмножество функций одной или нескольких информационных подсистем в зависимости от потребностей конкретного пользователя, основные принципы создания АРМ являются общими: системность - согласно этому принципу АРМ следует рассматривать как системы, структура которых определяется функциональным назначением; гибкость - принцип означает приспособляемость системы к возможным перестройкам благодаря модульности построения всех подсистем и стандартизации их элементов; устойчивость - этот принцип заключается в том, что система АРМ должна выполнять основные функции независимо от воздействия на нее внутренних и внешних возмущающих факторов. Это значит, что неполадки в отдельных ее частях должны быть легко устраняемы, а работоспособность системы быстро восстанавливаема; эффективность - принцип следует рассматривать как интегральный показатель уровня реализации приведенных выше принципов, отнесенного к затратам по созданию и эксплуатации системы. Кроме того, рабочее место должно соответствовать определенной структуре, которая включает в себя следующую совокупность систем: аппаратные (технические) средства - к ним относятся: оборудование и устройства, из которых состоит компьютер, в частности центральный процессор, жесткий диск, устройство чтения CD-ROM, принтеры, сетевые карты, внешние накопители, дисковые массивы и т. д.; программное обеспечение - это компонент, который осуществляет диалог пользователя с компьютеров, сбор, подготовку и обработку информации. Различают следующее программное обеспечение: системные программы. К этим программам, выполняющим общие функции, обычно относят операционные системы, системы управления базами данных (СУБД) и сервисные программы, которые выполняют в компьютере основные операции, например сортировку записей (Windows, MS Office, Nero Burning Rom, Adobe Acrobat, ABBYY Fine Reader, WinRAR и т. д.); специальные (пользовательские) программы - это программы для обработки данных, которые организация или пользователь разрабатывает самостоятельно или приобретает у внешнего поставщика. Именно здесь закладывается решение задач ориентация на конкретного определенных предметных специалиста, областей обеспечивается (Клиент-Сбербанк, 1С:Предприятие, БЭСТ и т. д.). информационное обеспечение - описание системы и структуры управления применительно к вводу, обработке и выводу данных, массивы информации, хранящиеся в локальных базах данных, техническая документация и литература; организационные мероприятия - включает средства и методы организации функционирования, совершенствования и развития АРМ, а также подготовку и повышение квалификации кадров; данные - сведения о хозяйственных операциях и другая необходимая информация, которую вводят, хранят и обрабатывают в системе. Рассмотрим поподробнее автоматизированное рабочее место, предназначенное для автоматизации бухгалтерской деятельности. Под автоматизацией бухгалтерской деятельности будем понимать комплекс мероприятий, информационных направленных технологий на на внедрение предприятии. Такими современных мероприятиями являются: оснащение организации необходимыми техническими средствами (компьютерами, сетевым оборудованием, электронным оборудованием сканерами штрих-кода, фискальными регистраторами, принтерами этикеток, терминалами сбора данных и т. д.); разработка и внедрение комплексной информационной системы, автоматизирующей рабочую деятельность. Использование персональных компьютеров для автоматизации бухучета является важной составной частью системы информационного обеспечения всей деятельности предприятия. Сам по себе он состоит из множества рутинных операций, связанных с многократным выполнением одних и тех же арифметических действий, подготовки разнообразных по форме отчетных и платежных документов и переносом данных из одних документов в другие. Несмотря на кажущуюся простоту автоматизации, не так-то легко подучить решение, удобное для неискушенного в применении компьютеров человека. Кроме того, определенную трудность представляет постоянное изменение требований, предъявляемых к учету, увеличивающее потребность в гибких, быстро адаптируемых к новым условиям программных комплексах. Безусловно, компьютерная программа не может заменить грамотного работника, но она позволит сэкономить его время и силы за счет автоматизации рутинных операций, найти арифметические ошибки в учете и отчетности, оценить текущее товарное положение предприятия и его перспективы. Кроме того, автоматизированные системы способны помочь подготовить и сохранить в электронном виде первичные и отчетные документы, а также бланки часто повторяющихся форм (платежные поручения, счет-фактуры, приходные и расходные ордера, отчеты и т. д.) с уже сформированными реквизитами предприятия. После создания и внедрения автоматизированного рабочего места в работе бухгалтерии появятся следующие преимущества: позволит избавить сотрудника от рутинной повседневной работы по выписке различных документов. Сотруднику нужно будет только выбрать из списка соответствующего клиента, указать номенклатуру из справочника, выбрать дату и отправить составленный документ на печать; позволит регистрировать любое движение товара (перемещение,, списание, продажа, выдача материально ответственному лицу), что отражается как во внутренних приходно-расходных документах, так и в документах финансовой отчетности; при поиске документа, автоматизированное рабочее место позволит сделать выборку по нужной позиции и значительно сократит объем подходящих документов или сведет к одному единственному искомому документу; если привезли новый вид товара или изменилась цена на старые товары и услуги, система позволит автоматически переделать весь прайс-лист; за счет сокращения времени на выполнение долгих рутинных работ, можно повысить трудоемкость сотрудника, который может теперь выполнять не только свою работу, но и взять на себя ряд других обязанностей; позволит вести сбор и хранения информации о каждом конкретном товаре (то есть вести историю по поставщикам, накапливать статистику по браку, отслеживать динамику продаж), вести мониторинг товарных остатков в различных разрезах; предоставлять пользователю удобные инструменты для извлечения, анализа информации и составления отчетов; получать данные о том, какая продукция наиболее часто покупается и отгружается, то есть пользуется наибольшим спросом; осуществлять прием или отправку документов по каналам Intranet и Internet. Таким образом, можно сказать, что автоматизация бухгалтерии - это процесс, при котором в результате повышается эффективность и улучшается качество ведения учета на предприятии. Целью автоматизации является комплексный учет товарно-материальных ценностей, мониторинг товарных запасов, контроль за действиями персонала, оптимизация деятельности бухгалтерии. Автоматизация складского учета позволит максимально полно использовать каждый квадратный метр площади и получать максимум прибыли. Оснащение работников такими автоматизированными рабочими местами позволяет повысить производительность труда, сократить численность персонала и при этом повысить скорость обработки информации и ее достоверность, что необходимо для эффективного планирования и управления. 1.2 Описание предметной области БУ «Редакция газеты «К новым рубежам» основана: в 1937 году (первоначальное название - «Ленинская трибуна»). Занимается выпуском и распространением районной газеты. Оказывает полиграфические услуги, фотоуслуги, тиражирование и печать документов, изготовление печатной документации, разработка и размещение рекламы (макетов) и др. услуги. Компания практикует клиентно-ориентированный подход и дорожит каждым клиентом. Для этого необходимо вести единую клиентскую базу, а так же планировать контакты с клиентами, заказы, поставки и другие взаимодействия. Автоматизация работы учреждения производится для решения основных задач: минимизация ручной работы сотрудников компании и минимизация ошибок в их работе. минимизация временных затрат на заказы клиентов, продажи на основе заказов, а так же планирование будущих продаж; ведение единой клиентской базы, где собраны сведения: контакты; информация клиентах, возможные предложения и т.д. Целями внедрения АРМ является совершенствование технического управления, повышение уровня информационной обеспеченностью процесса управления, качества принимаемых решений. БУ «Редакция газеты «К новым рубежам» предоставляет свои услуги как физическим, так и юридическим лицам. В дальнейшем будем называть их клиентами. Основные функции, выполняемые отделом по работе с клиентами: работа с клиентами, регистрация заказов; разработка макетов, внесение изменений, всевозможные нововведения и улучшения; выполнение заказов; Работа с клиентами, регистрация заказов. От клиентов поступают различные заказы. Очень часто клиент не представляет как правильно и лучше изготовить макет. Разработка макетов, внесение изменений, всевозможные нововведения и улучшения; После заключения договора, сотрудники фирмы приступают к выполнению заказа. После выполнения заказа составляется акт о выполнении работ, в котором указывается характер и длительность произведенных операций. Договор и акт о выполнении работ составляются в двух экземплярах, один из которых остается на предприятии, а второй передается заказчику. Расчеты с клиентами осуществляются, как в безналичной, так и наличной форме. Документы формируемые в отделе по работе с клиентами: Договор; Счет на оплату услуги или товара (Рис. 2); Акт выполненных работ (Рис. 3); Счет-фактура (Рис. 4). Рисунок 2 - Счет на оплату Рисунок 3 - Акт выполненных работ Рисунок 4 - Счет - фактура 1.3 Построение функционально-ориентированных моделей as-is «как есть» и to-be «как должно быть» Построение модели деятельности «как есть» (AS-IS) В результате обследования деятельности БУ «Редакция газеты «К новым рубежам» построена функциональная модель существующей организации работы "как есть" (AS-IS). Данная модель реализовывалась с помощью такого CASE-средства, как BPwin 4.0. При создании модели была использована возможность построения смешанной модели, которая содержит одновременно диаграммы разных методологий, т.е. IDEF0, IDEF3 и DFD. Каждая из них решает свои специфические задачи. В основе методологии IDEF0 лежит представление изучаемой и описываемой системы в виде набора взаимодействующих и взаимосвязанных блоков, отображающих процессы, операции, действия. - это метод, позволяющий описать ситуацию, когда процессы выполняются в определенной последовательности, а также описать объекты, участвующие совместно в одном процессе. Диаграмма потоков данных (DFD) показывает перемещение данных между различными процессами их обработки. На этой диаграмме можно увидеть, где данные берут свое начало и куда они в итоге поступают, какие функции системы используют информацию от других функций. Создание модели в стандарте IDEF0 Моделируя деятельность предприятия, определяем как входную, так и выходную информацию, а также учитываем внешние факторы, влияющие на деятельность предприятия - это методические указания по логистике и маркетингу, нормативные акты, положения по бухгалтерскому учету и др. Функциональная модель предназначена для описания существующих бизнес - процессов на предприятии (так называемая модель AS-IS «как есть») и идеального положения вещей - того, к чему нужно стремиться (модель ТО-ВЕ «как должно быть»). Модель включает: структурную функциональную модель деятельности в соответствии со стандартом IDEF0 (иерархия SADT-диаграмм); функциональную модель в виде иерархии потоков данных (DFD). Методология IDEF0 предписывает построение иерархической системы диаграмм - единичных описаний фрагментов системы. Построение модели ИС начинается с описания функционирования предприятия (системы) или отдельной ее части (в нашем случае это деятельность БУ «Редакция газеты «К новым рубежам», в частности отдела по работе с клиентами) в целом в виде контекстной диаграммы (Рис. 5). Компания использует купленную бухгалтерскую информационную систему, которая позволяет оформить заказ, счет и отследить платежи по счетам. Таблица 1 - Стрелки контекстной диаграммы № 1 Имя стрелки Отдел по работе с клиентами Бухгалтер 2 Заказы клиентов Сопроводительные документы Положение по бухгалтерскому учету Выполненный заказ Выходные документы 3 4 Создадим Определение стрелки Работа с клиентами, программными средствами Оформление документации предприятия (счета, акты, и др.) Заказы клиентов Документы, предоставляемые вместе заказами Правила продаж; договора; Тип стрелки Mechanism Заказ отдан конечному пользователю Документы, прилагаемые к заказу: счет-фактура, и т.п.) Output диаграмму декомпозиции Input Control функциональной модели деятельности учреждения в стандарте IDEF0 (Рис. 6). Таблица 2 - Работы диаграммы декомпозиции А0 Имя действия Управление учреждением Основная деятельность Описание Управленческие процессы компании Работа с клиентами Декомпозируем работу «Основная деятельность» (Рис. 6) на основе результатов проведения экспертизы. Получена следующая информация: Отдел по работе с клиентами получает заказы клиентов; Менеджер данного отдела анализирует заказ и на основе анализа подбирает необходимый вариант; Составляется договор на заказ; Таблица 3 - Работы диаграммы декомпозиции А2 Имя действия Прием заказа у клиента Выставление счета Выполнение заказа Описание Принятие заказа от клиента, анализ текущего заказа Работа бухгалтера - составление договора Работа специалистов Декомпозируем процесс «Основная деятельность» (Рис.7) на: Запрашиваются сведения о клиенте и заказе; Сведения оформляются в заявку; Заключается договор Таблица 4 - Работы диаграммы декомпозиции А2.1 Имя действия Прием заказа Выставление счета Выполнение заявки Описание Запрос от клиента, сбор сведений о заказе Оформление договора Выполнение заказа Диаграмма потоков данных DFD содержит процесс «Прием и обработка заказа», взаимодействующий с внешними сущностями «Клиент», «БД с клиентами» (Рис.7). «Клиент» делает заказ и сообщает о себе информацию, если ее нет. Компания посылает клиенту коммерческое предложение, договор на оказания услуги или продаже продукта, выставляет счет. После оплаты счета компания отдает заказ клиенту и делает товарную накладную и счёт-фактуру. После заказа продукта с клиентом юридическим лицом заключается договор. Он содержит следующие данные: Наименование клиента; Юридический адрес клиента; Реквизиты клиента (ИНН, КПП, ОГРН, БИК и др.); Данные о продукте или описание услуги; Сроки выполнения; Цена; Условия поставки; Форс-мажорные обстоятельства. Договор заключается в самом начале взаимоотношений компаний и действует на протяжении всего срока работы. После того как мы получили заказ от клиента, мы оформляем заказ, после выполняем. Клиент в это время оплачивает нам работу. После оказания услуг или продажи продукта мы подписываем акт с клиентом о выполненных работах отдаем ему копию акта и счет-фактуры. Рис. 5 - Контекстная диаграмма БУ «Редакция газеты «К новым рубежам»» Рис. 6 - Декомпозиция функциональной модели деятельности учреждения Рис. 7 - Основная деятельность Рис. 8 - Прием заказа у клиента Рис. 9 Построение модели деятельности «как должно быть» (to-be) Анализ построенной функциональной модели «как есть» позволил понять, где находятся самые узкие места, в чем будет состоять преимущества новых бизнес-процессов и насколько глубоким изменениям подвергнется существующая организация бизнеса. Детализация бизнес-процессов позволила выявить недостатки библиотеки даже там, где функциональность на первый взгляд кажется очевидной. В результате построена модель TO-BE, которая имеет следующие отличия от модели AS-IS. Декомпозировав процесс «Прием заказа у клиента» мы выявили процессы, занимаемые наибольшее количество времени: сбор сведений о клиенте; обработка заказа; заключение договора. Для увеличения эффективности работы нам необходимо увеличить скорость выполнения процесса. Для автоматизации процесса «Прием заказа у клиента» мы решили разработать необходимое программное обеспечение для автоматического вывода заявки на основе занесенных данных о клиентах, ценах, готовых заказах и т.д. Разработав программное обеспечение, мы автоматизировали необходимые нам процессы и тем самым уменьшили время. Благодаря автоматизации этих процессов быстрота обслуживания клиентов, предоставление сведений об услугах, новшествах, изменениях, их ценах возросло в несколько раз, тем самым мы увеличили и объем продаж и улучшили сервис обслуживания клиентов в целом (Рис. 10). Рис. 10 Глава 2. разработка АИС БУ .1 Описание Базы данных (БД) В процессе проектирования определяется структура БД (состав таблиц, их структура и логические связи). Структура таблицы определяется составом столбцов, типом данных и размерами столбцов, ключами таблицы. Сущность - любой конкретный или абстрактный объект в рассматриваемой предметной области. Сущности - это базовые типы информации, которые хранятся в БД (в реляционной БД каждой сущности назначается таблица). К сущностям относятся: договора; клиенты: поставщики; товар; заказы; услуги; доставка. Понятие тип сущности относится к набору однородных личностей, предметов или событий, выступающих как целое (клиент, поставщики и т.д.). Атрибут - это свойство сущности в предметной области. наименование должно быть уникальным для конкретного типа сущности. Для сущности «Клиент» использованы следующие атрибуты: код клиента; наименование клиента; адрес; телефон. Для сущности «Договора» использованы следующие атрибуты: Его номер договора; код клиента; тип договора; код поставщика; код услуги; дата заключения, окончание договора; сумма договора; код товара. Для сущности «Услуги» использованы следующие атрибуты: код услуги; наименование услуги; срок исполнения; стоимость. Для сущности «Заказ» использованы следующие атрибуты: код заказа; наименование заказа; сумма заказа. В базе данных, разработанной для программы БУ «Редакция газеты «К новым рубежам»», содержится 7 таблиц. Расскажем о них поподробнее. В таблице «Клиенты» хранится информация о клиентах предприятия (Табл. 5). Таблица 5 - Таблица «Клиенты» Атрибут Код_клиента Наименование_клиента Адрес Телефон Банк Расчетный счет Тип Счетчик Текстовый Текстовый Числовой Текстовый Числовой Описание Первичный ключ Название организации Юридический адрес клиента Телефон организации Название банка клиента Номер счета В таблице «Договора» хранится информация о заключенных договорах с поставщиками и клиентами (Табл. 6). Таблица 6 - Таблица «Договора» Атрибут Номер_договора Код_клиента Тип_договора Тип Числовой Счетчик Текстовый Код_услуги Дата_заключения Дата_окончания Сумма_договора Код_заказа Числовой Дата/Время Дата/Время Денежный Числовой Описание Уникальный номер Первичный ключ Вид договора (основной, на поставку, на услуги и т.д.) Уникальный номер услуги Дата заключения договора Дата окончания договора Общая сумма договора Уникальный номер заказа В таблице «Услуги» хранится информация о предоставляемых услугах (Табл. 7). Таблица 7 - Таблица «Услуга» Атрибут Код_услуги Наименование_услуг Срок исполнения Стоимость Тип Счетчик Текстовый Текстовый Денежный Описание Первичный ключ Перечень выполняемых работ Время на изготовление рекламы, статьи Цена за выполненную работу Таблица «Заказы» хранит информацию о имеющихся заказах (Табл. 8). Таблица 8 - Таблица «Заказы» Атрибут Код_Заказа Наименование_заказа Сумма_заказа Тип Числовой Текстовый Денежный Описание Первичный ключ Обобщенная информация о товарах и услугах Общая сумма заказа 2.2 Разработка приложения Разработка приложения велась с помощью программ Borland Delphi Enterprise Version 7.0, MS Access. Методология IDEF3 была создана для сбора и описания процессов в анализируемой системе. Согласно стандарту ISO/CD 15531-1 ПРОЦЕСС - это упорядоченный набор функций, охватывающий различные сущности предприятия и завершающийся глобальной целью. В методологиях IDEF под «процессом» понимается набор операций, которые, взятые вместе, создают результат, имеющий ценность для потребителя. БИЗНЕСПРОЦЕСС - совокупность взаимосвязанных бизнес-процедур функций или действий, формирующих результат, имеющий ценность для потребителя, технологических и организационно-деловых процессов, выполняемая целенаправленно в рамках заранее заданной организационной структуры в результате которых производится определенная группа продуктов и услуг. Такое понимание процесса позволило разработать качественно новую концепцию внутрипроизводственного менеджмента - концепцию реинжиниринга. РЕИНЖИНИРИНГ есть фундаментальное переосмысление и радикальное перепроектирование бизнес-процессов для достижения существенных улучшений в таких ключевых для современного бизнеса показателях результативности, как затраты, качество, уровень обслуживания и оперативность. МЕТОДОЛОГИЯ IDEF3 (workflow diagramming) - это методология графического моделирования, предназначенная для описания и документирования информационных потоков в системе, в которой процессы выполняются в заданной последовательности, взаимоотношений между процессами обработки информации и объектами, являющихся частью этих процессов и участвующие совместно в одном процессе. Основная цель разработчиков методологии IDEF3 - обеспечение специалиста (эксперта) предметной области инструментом структурного анализа, при помощи которого он сможет представлять знания о выполнении операций в системе или организации в целом. Это метод, обеспечивающий аналитикам возможность описать ситуацию, когда процессы выполняются в определенной последовательности, а также описать объекты, участвующие совместно в одном процессе. Цель описания может состоять как в документальном оформлении и распространении знаний о процессе, так и в идентификации противоречивости или несовместимости выполнения отдельных операций. Используемая техника описания набора данных IDEF3 является частью структурного анализа, но в связи с тем, что методология IDEF3 не требует от аналитика жесткого соблюдения правил синтаксиса, то возможно создание неполных или противоречивых моделей. Методология IDEF3 может быть использована как методология разработки процессов, способная фиксировать и структурировать описание функций системы. IDEF3 дополняет IDEFO и содержит все необходимое для построения моделей, которые в дальнейшем могут быть использованы для имитационного анализа. Приобретение знаний допускается прямым сбором утверждений о практике выполнения процессов и возникновении различных ситуаций в процессе в форме, которая является наиболее естественной и может производиться из многих источников, что позволяет зафиксировать информацию от экспертов о поведении системы, а не наоборот - строить модель, чтобы приблизить поведение системы. Эта особенность IDEF3 как инструмента моделирования выделяется среди основных характеристик, отличающих IDEF3 от альтернативных предложений. IDEF3 как инструмент моделирования фиксирует следующую информацию о процессе: объекты, которые участвуют при выполнении сценария; роли, которые выполняют эти объекты (например, агент, транспорт и т.д.); отношения между работами в ходе выполнения сценария процесса; состояния и изменения, которым подвергаются объекты; время выполнения и контрольные точки синхронизации работ; ресурсы, которые необходимы для выполнения работ. Методология IDEF3 позволяет системно изучить наследование и причинно следственные связи между ситуациями и событиями в форме, понятной специалистам в данной предметной области, обеспечивает структурированный метод выражения знаний о работе организации, ее подсистем и происходящих в ней процессах. Описательные методы IDEF3 позволяют: записывать в терминах системного анализа сырые данные, полученные в ходе интервью. определять влияние информационных ресурсов организации на важнейшие сценарии деятельности, принятые на предприятии. документировать процедуры принятия решений, влияющие на состояние и жизненный цикл распределенных данных, особенно на производстве, в инженерной деятельности и при разработке спецификаций товаров. управлять конфигурацией данных и изменять правила контроля. проектировать систему управления предприятием и анализа сбыта. создавать имитационные модели. В моделях используются стрелки трех видов и различные блоки для представления данных, показанных в следующих таблицах. № 1 2 Тип стрелки Стрелка предшествования. Соединяет последовательно выполняемые операции. Стрелка отношения. Используется для привязки объектов-комментариев к операциям. Графическое представление 3 Стрелка потока объектов. Показывает поток объектов (финансовых, материальных) от одной операции к другой. Рис. 11 - Контекстная диаграмма БУ «Редакция газеты «К новым рубежам»» На рис. 11 представлена модель IDEF0 общей системы работы БУ. Рис. 12 отображает более подробное описание выполнение заявки. Рис. 12 Access - это функционально полная реляционная СУБД. В ней предусмотрены все необходимые вам средства для определения и обработки данных, а также для управления ими при работе с большими объемами информации. Система управления базами данных предоставляет вам возможность контролировать задание структуры и описание своих данных, работу с ними и организацию коллективного пользования этой информацией. СУБД также существенно увеличивает возможности и облегчает каталогизацию и ведение больших объемов хранящейся в многочисленных таблицах информации. СУБД включает в себя три основных типа функций: определение (задание структуры и описание) данных, обработка данных и управление данными. Все эти функциональные возможности в полной мере реализованы в Microsoft Access. В практике, как правило, необходимо решать и задачи с использованием электронных таблиц и текстовых процессоров. Например, после подсчета или анализа данных необходимо их представить в виде определенной формы или шаблоны. В итоге пользователю приходится комбинировать программные продукты для получения необходимого результата. В этом смысле все существенно упростят возможности, предоставляемые Microsoft Access. Предназначение СУБД Access СУБД Access предназначена для разработки баз данных реляционного типа для локального их использования на персональных компьютерах и для работы с этими базами. При проектировании базы данных, в первую очередь, необходимо определить, что именно нужно хранить. Данная СУБД была выбрана по следующим причинам: простота средств реализации, легкость освоения инструментарием разработчика (VBA), наглядность визуализации информации. Также «Microsoft Access» предоставляет большое количество внутренних средств по оптимизации работы проектируемого приложения. К ним относятся: загрузка модулей по требованию; оптимизация дерева вызовов; использование файлов MDE; автоматическая поддержка компилированного состояния; использование библиотек Windows API; индивидуальная настройка системы; эффективное использование индексов; встроенный оптимизатор запросов. Система управления базами данных (СУБД) обычно поддерживает 4 основных типа отношений между таблицами: один-к-одному (одной записи в первой таблице соответствует одна запись во второй); один-ко-многим (одной записи в первой таблице соответствует много записей во второй); много-к-одному (многим записям в первой таблице соответствует одна запись во второй); много-ко-многим (одной записи в первой таблице соответствует много записей во второй и одной записи во второй таблице соответствует много записей в первой). Связь любого из этих типов может быть обязательной, если в данной связи должен участвовать каждый экземпляр сущности, необязательной - если не каждый экземпляр сущности должен участвовать в данной связи. При этом связь может быть обязательной с одной стороны и необязательной с другой стороны. В СУБД Access процесс создания реляционной базы данных включает создание схемы данных. Схема данных наглядно отображает таблицы и связи между ними, а также обеспечивает использование связей при обработке данных. В схеме данных устанавливаются параметры обеспечения целостности связей в базе данных. Таким образом, осуществляется неразрывная связь внемашинного проектирования базы данных с этапом ее создания с помощью СУБД. В схеме данных, построенной по нормализованной модели данных предметной области, могут быть установлены одно-однозначные и одно-многозначные связи. Для таких связей обеспечивается поддержание целостности взаимосвязанных данных, при которой не допускается наличия в базе данных подчиненной записи без связанной с ней главной, при первоначальной загрузке базы данных и ее корректировках. Связи, определенные в схеме данных, используются автоматически при разработке многотабличных форм, запросов, отчетов, существенно упрощая процесс их конструирования. Взаимосвязи таблиц. При создании в Access схемы данных в ней определяются и запоминаются связи между таблицами. Это позволяет системе автоматически использовать связи, один раз определенные в схеме данных, при создании форм, запросов, отчетов на основе взаимосвязанных таблиц, а пользователь освобождается от необходимости указывать эти связи при конструировании этих объектов. Схема данных базы графически отображается в своем окне, где таблицы представлены списками полей, а связи - линиями между полями разных таблиц. Одно-многозначные (1:М) или одно-однозначные (1:1) связи. Схема данных прежде всего ориентирована на работу с таблицами, отвечающими требованиям нормализации, между которыми могут быть установлены одно-многозначные (1:М) или одно-однозначные (1:1) связи, для которых может автоматически поддерживаться связная целостность. Поэтому схему данных целесообразно строить в соответствии с информационно-логической моделью. При построении схемы данных Access автоматически определяет по выбранному полю связи тип отношения между таблицами. Если поле, по которому нужно установить связь, является уникальным ключом как в одной таблице, так и в другой, Access выявляет отношение один-к-одному. Если поле связи является уникальным ключом в одной таблице (главной таблицы связи), а в другой таблице (подчиненной таблице связи) является не ключевым или входит в составной ключ, то есть значения его могут повторяться, Access выявляет отношение один-ко-многим между записями главной таблицы к подчиненной. В этом случае можно задать автоматическое поддержание целостности связей. Отношение многие-ко-многим. Отношение многие-ко-многим предполагает, что каждой записи в одной таблице соответствует несколько записей в другой. При этом каждая сторона отношения выглядит как отношение один-ко-многим. Однако если рассматривать взаимосвязь таблиц с двух сторон, становится очевидным, что ни одна из таблиц не может быть главной и для их связывания необходима третья таблица. Связующая таблица представляет собой промежуточную таблицу, которая служит мостом между двумя таблицами в отношении многие-ко-многим. Ее ключ состоит из ключевых полей этих таблиц, с каждой из которых она связана отношением один-ко-многим. Помимо ключевых полей, связующая таблица должна содержать хотя бы одно поле, которого нет в связываемых таблицах, но которое имеет значение для каждой из них. Таким образом, отношение многие-ко-многим складывается из отношений многие-к-одному и один-ко-многим.- одна из самых мощных систем, позволяющих на самом современном уровне создавать как отдельные прикладные программы Windows, так и разветвленные комплексы, предназначенные для работы в корпоративных сетях и в Интернет. - это система визуального объектно-ориентированного программирования, позволяющая решать множество задач, в частности: Создавать законченные приложения для Windows самой различной направленности, от чисто вычислительных и логических, до графических и мультимедиа. Быстро создавать (даже начинающим программистам) профессионально выглядящий оконный интерфейс для любых приложений, написанных на любом языке; интерфейс удовлетворяет всем требованиям Windows и автоматически настраивается на ту систему, которая установлена на компьютере пользователя, поскольку использует многие функции, процедуры, библиотеки Windows. Создавать мощные системы работы с локальными и удаленными базами данных любых типов; при этом имеются средства автономной отладки приложения с последующим выходом в сеть. Создавать многозвенные распределенные приложения, основанные на различных технологиях. Создавать приложения, которые управляют другими приложения, в честности, такими программами Microsoft Office, как Word, Excel и др. Создавать кросс-платформенные приложения, которые можно компилировать и эксплуатировать как и в Windows, так и в системе Linux. Создавать приложения различных классов для работы в Интернет и в интранет. Создавать профессиональные программы установки для приложений Windows, учитывающие всю специфику и все требования Windows. И многое другое, включая создания отчетов, справочных систем, библиотек DLL, компонентов ActiveX. чрезвычайно быстро развивающаяся система, так как её создатели постоянно отслеживают все новое в информационных технологиях. Таким образом, Delphi 7 прекрасное средство создания приложений для Windows, Delphi превращается в инструмент создания приложений для многозвенных распределенных кросс-платформенных корпоративных информационных систем. Описание приложения Автоматизированная информационная система БУ «Редакция газеты «К новым рубежам»можно начать с формы «Вход» (Рис. 13). Рис. 13 - Главная форта АИС БУ «Редакция газеты «К новым рубежам» На форме расположены две кнопки «Вход» и «Выход». Нажав кнопку «Вход» появляется форма «Проверка» (Рис. 2.3). На данной форме расположены поля для ввода данных «Имя пользователя» и «Пароль». Если при вводе пароля пользователь ошибается, то возникает форма «Ошибка» которая сообщает о неверном действии. Рис. 14 - Форма на аунтификация Введя правильные данные необходимые для обеспечения безопасности системы, переходим на главную форму программы (она же форма «Договора»). На данной форме содержится информация о всех договорах компании заключенных как с поставщиками, так и с клиентами. Основные возможности формы и программы в целом это ведение учета и хранение информации, для этого первое, что необходимо АИС - добавление данных. Ниже представлена функция программ «Новый договор», которая позволяет вносить данные нового договора. Рис. 15 - Форма «Договора» Главная форма (Договора) - Кнопка «Новый договор», описывается следующим образом: procedure TForm3.BtnNewClick(Sender: TObject); begin.Show;; На (Рис. 16) представлен результат добавления данных. Рис. 16 - Форма «Договора» - результат добавления данных Кнопка «Добавить» После введения в поля «Edit» формы данных нажимаем кнопку «Добавить», описывается следующая процедура: procedure Button1Click(Sender: TObject); { Private declarations } { Public declarations };: TForm10; {$R *.dfm}TForm10.Button1Click(Sender: TObject);.insert;.FieldByName('Тип_договора').asstring:=Edit1.Text;.Post;.insert;.Fi eldByName('Код_поставщика').asstring:=Edit3.Text;.Post;.insert;.FieldByName('Ко д_услуги').asstring:=Edit4.Text;.Post;.insert;.FieldByName('Дата_заключения').asst ring:=Edit5.Text;.Post;.insert; ADOTable1.FieldByName('Дата_окончания').asstring:=Edit6.Text;.Post;.inser t;.FieldByName('Сумма_договора').asstring:=Edit7.Text;.Post;.insert;.FieldByName( 'Код_товара').asstring:=Edit8.Text; ADOTable1.Post;; Главная форма (Договора) - Кнопка «Удалить договор» procedure TForm3.BtnDeleteClick(Sender: TObject); begin.Show;; Форма «Удаление договора» procedure TForm10.Button1Click(Sender: TObject);Form3.RzPageControl1.TabIndex=0 thenForm3.ADOTable1.RecordCount>0 then.ADOTable1.Edit;.ADOTable1.DeleteRecords(arCurrent); end;; Главная форма (Договора) - Кнопка «Поиск» procedure TForm3.BtnPrintPreviewClick(Sender: TObject);.show;; Форма «Поиск» TForm15.Button1Click(Sender: TObject);s:string;((RzEdit1.Text='') or (RzEdit2.Text='')) then begin('Выберите параметры поиска'); end else((RzEdit1.Text<>'') and (RzEdit2.Text<>'')) thenForm3.RzPageControl1.TabIndex=0 then:=RZEdit1.Text;.ADOTable1.Locate(RzEdit2.Text,s,[loPartialKey]);Form3.ADO Table1.Fields[RzEdit2.ItemIndex].Value<>RzEdit1.Text найдено');;elseForm1.RzPageControl1.TabIndex=1 then then('Не s:=RZEdit1.Text;.ADOTable2.Locate(RzEdit2.Text,s,[loPartialKey]); If Form1.ADOTable2.Fields[RzEdit2.ItemIndex].Value<>RzEdit1.Text then('Не найдено');; end;; Главная форма (Договора) - Кнопка «Помощь» procedure TForm3.BtnHelpClick(Sender: TObject);(0,'open',pchar(ExtractFilePath(ParamStr(0))+'Аис.chm'),nil,'c:\',sw_shown ormal); end; Форма «Клиенты» содержит информацию о клиентах компании, так же на форме имеется функция добавления, удаления и поиск информации. На (Рис. 17) представлена функция «Новый клиент». Рис. 17 - Поиск нового клиента Форма после проведения операции добавление информации о клиенте. Рис. 18 - Форма «Клиенты» - результат добавления Форма «Доставка + Услуги» объединяет в себе две формы. Объединение данных форм было сделано для удобства добавления и поиска информации, так как информация о доставках и информация о услугах являются близкими по значению. На форме применены специальные панели «RzSplitter» на которых расположены поля для ввода информации. Также на форме представлены все необходимые функции, кнопки которых расположены на панели инструментов. Создание и вывод счет-фактуры (связь с 1С) Создаём глобальные переменные для работы с объектами 1С с типом OleVariant: var frmMain: TfrmMain; Ole1C: OleVariant; Contrag, BankSch, RaschSch, Nomenkl, VidNomenkl : OleVariant; VariantNalog, StavkaNDS, StavkaNP, EdIzm: OleVariant; Schet, Usluga, SchetFact : OleVariant; BuhSchet: OleVariant; Version1C: OleVariant; IsOper, BoolYes: OleVariant; ... implementation ... Описание:C - глобальный контекст системы 1С.- справочник Контрагенты. BankSch - справочник Банковские счета. RaschSch - справочник Расчетные счета. Nomenkl - справочник Номенклатура. VidNomenkl справочник Виды номенклатуры. VariantNalog - справочник Варианты расчета налогов. StavkaNDS и StavkaNP - справочники Ставки НДС и Ставки НП. EdIzm - справочник Единицы измерения.- документы Счет. Usluga - документы Оказание услуг. SchetFact - документы Счет-фактура.- счет Основной. Version1C - константа Номер Релиза. IsOper - константа Все Документы В Журнал Операций. BoolYes - перечисление Булево ДА. Подключимся к 1С, выполним инициализацию, создадим объекты для дальнейшей их обработки TfrmMain.FormShow(Sender: TObject); var ResOpen: Integer; path1c: string; begin path1c:='C:\1C-Config\MyConfig'; Ole1C := CreateOleObject('V77.Application'); ResOpen := Ole1C.Initialize(Ole1C.RMTrade, '/D'+ path1c, ''); if ResOpen = -1 then begin Ole1C.CreateObject('Справочник.Контрагенты'); BankSch:= Ole1C.CreateObject('Справочник.БанковскиеСчета'); Ole1C.CreateObject('Справочник.РасчетныеСчета'); RaschSch:= VariantNalog:= Ole1C.CreateObject('Справочник.ВариантыРасчетаНалогов'); Ole1C.CreateObject('Справочник.Номенклатура'); Contrag:= Nomenkl:= VidNomenkl:= Ole1C.CreateObject('Справочник.ВидыНоменклатуры'); Ole1C.CreateObject('Справочник.СтавкиНДС'); Ole1C.CreateObject('Справочник.СтавкиНП'); Ole1C.CreateObject('Справочник.ЕдиницыИзмерений'); Ole1C.CreateObject('Документ.Счет'); StavkaNDS:= StavkaNP:= EdIzm:= Schet:= Usluga:= Ole1C.CreateObject('Документ.ОказаниеУслуг'); SchetFact:= Ole1C.CreateObject('Документ.СчетФактура'); BuhSchet:= Ole1C.CreateObject('Счет.Основной'); Version1C:= Ole1C.Const.GetAttrib('НомерРелиза'); IsOper:=Ole1C.Const.GetAttrib('ВсеДокументыВЖурналОпераций'); BoolYes:=Ole1C.Enum.GetAttrib('Булево').ValueByIdentifier('Да'); end else begin ShowMessage(' Ошибка соединения!'); Ole1C:=Unassigned; frmMain.Close; Exit; end; end; Описание:Инициализации переменная, глобального принимающая контекста 1С. результат Напоминаю, выполнения что, удачная инициализация вернет число -1 (минус единица), неудачная - иное число.C - путь к базе 1С:Предприятия, как он задан в стартовой странице 1С при выборе конфигурации. Ole1C := CreateOleObject('V77.Application'); - создаем подключение к 1С. В качестве параметра указывается версия 1С (в моем случае версия 7.7). Возможные варианты: V1CEnterprise.Application - версия независимый ключ; V77.Appication - версия зависимый ключ; V77S.Application - SQL-версия, зависимый ключ; V77L.Application - локальная версия, зависимый ключ; V77M.Application - сетевая версия, зависимый ключ. Для версий 8.0 и старше смотрите документацию, раздел "Связь с внешними приложениями.:= Ole1C.Initialize(Ole1C.RMTrade, '/D'+ path1c, ''); - выполняем инициализацию системы 1С:Предприятие. Первый параметр - ссылка на Идентификатор созданного OLE объекта. Второй параметр - командная строка запуска 1С. Некоторые возможные значения ключей: /D Папка - путь к базе данных (конфигурации) 1С; /M - открыть 1С в монопольном режиме; /N Имя Пользователя и /P Пароль - эти ключи позволяют пропустить окно ввода логина и пароля. Третий параметр - чаще всего пустая строка, но может принимать значение 'NO_SPLASH_SHOW', что означает отключить заставку при запуске 1С в режиме OLE сервера.:= Ole1C.CreateObject('Справочник. Контрагенты'); Создаем объект Справочника. Соответствует методу в 1С: Контрагент = СоздатьОбъект("Справочник. создаются и объекты Контрагенты"); Документов, Аналогичным объекты способом Счетов.C:= Ole1C.Const.GetAttrib('НомерРелиза'); - В переменную сохраняем константу "Номер Релиза", в которой хранится версия обновления 1С. Номер релиза сохраняется в Документе и важен для его дальнейшего перепроведения пользователем 1С (если конечно перепроведение понадобится). Соответствует методу Констант в 1С: Версия1С = Константа. Номер Релиза;:=Ole1C.Enum.GetAttrib('Булево').ValueByIdentifier('Да'); - В переменную сохраняем значение Перечисления, соответствующее значению "да" в 1С. В дальнейшем она нам понадобится для реализации конструкций if..then..else. Соответствует методу Перечислений в 1С: ОтвДа = Перечисление. Булево. Да; Начало процедуры. Общие для всех документов данные TfrmMain.btnConvertZayavkaClick(Sender: TObject); var schet_num, nomenkl_name, full_nomenkl_name: string; usluga_doc_osn, schetfact_doc_osn: string; resultat: integer; client, rschet, dogovor, var_nalog, nomenkl_group: OleVariant; begin BankSch.FindByDescr('Сбербанк'); rschet:=BankSch.CurrentItem; Contrag.FindByCode(dm.tabZayavkaClient_Buh.Value); client:=Contrag.CurrentItem; dogovor:=client.GetAttrib('ОсновнойДоговор'); VariantNalog.FindByCode(3); var_nalog:=VariantNalog.CurrentItem; Nomenkl.FindByCode(dm.tabZayavkaClient_Buh_Group.Value); nomenkl_group:=Nomenkl.CurrentItem; Nomenkl.UseParent(nomenkl_group); nomenkl_name:=IntToStr(dm.tabZayavkaZayavka_Num.Value); dm.tabZayavkaZayavka_SubNum.Value > if 0 then nomenkl_name:=nomenkl_name+'/'+IntToStr(dm.tabZayavkaZayavka_SubNum.Valu e); Описание:.FindByDescr('Сбербанк'); - делаем текущим элементом в справочнике БанковскиеСчета элемент с наименованием «Сбербанк». Соответствует методу Справочников: БанкСчет.НайтиПоНаименованию(«Сбербанк»); rschet:=BankSch.CurrentItem; Соответствует - сохранить методу этот Справочников: элемент в переменной. ПеремРСчет = БанкСчет.ТекущийЭлемент(); .FindByCode(dm.tabZayavkaClient_Buh.Value); делаем текущим элементом в справочнике Контрагенты элемент с кодом, взятым из программы Delphi. Соответствует методу Справочников: Контраг.НайтиПоКоду(«000056»); Далее сохраняем этот элемент в переменной client.:=client.GetAttrib('ОсновнойДоговор'); - присваиваем переменной значение Основного договора ранее..FindByCode(3); Контрагента, - делаем выбранного текущим нами из справочника элементом в справочнике ВариантыНалогов элемент с кодом «3» (в нашей базе это НДС в Сумме). Далее сохраняем этот элемент в переменной var_nalog..UseParent(nomenkl_group); Установить выбранную группу номенклатуры группой по умолчанию. Теперь при создании новой номенклатуры (услуги в нашем случае), она будет записываться в эту группу. Соответствует методу Справочников: Номенклатура.ИспользоватьРодителя(«ИмяГруппы»);_name:=IntToStr(dm.tabZa yavkaZayavka_Num.Value); - Сформировать Наименование номенклатуры. Как и указывалось ранее, Наименование номенклатуры (услуги) на предприятии идентично номеру заявки Zayavka_Num. Если есть субномер, то он далее добавляется к номеру заявки через слэш. Счет-фактура. Конец процедуры _doc_osn:='Оказание услуг № ' + schet_num +SetDateFormat(dm.tabZayavkaExecution_Date.Value); + ' от ' SchetFact.New; SchetFact.DocNum:=schet_num; SchetFact.DocDate:=dm.tabZayavkaExecution_Date.Value; SchetFact.SetAttrib('ВерсияОбъекта', Version1C); SchetFact.SetAttrib('ДокументОснование', Usluga.CurrentDocument); SchetFact.SetAttrib('Контрагент', client); SchetFact.SetAttrib('Договор', dogovor); SchetFact.SetAttrib('Грузополучатель', client); SchetFact.SetAttrib('ВариантОтправки', 1); SchetFact.SetAttrib('СчетНДС', 1); SchetFact.SetAttrib('СчетАкциза', 1); SchetFact.SetAttrib('ВключатьВКнигуПродаж', 1); SchetFact.SetAttrib('ВидОперации', Ole1C.Enum.GetAttrib('ВидыОперацийСчетаФактурыВыданного').ValueByIdentif ier('Реализация')); SchetFact.SetAttrib('Комментарий', 'Введен на основании: ' + schetfact_doc_osn); SchetFact.NewLine; SchetFact.SetType('Товар', 'Справочник.Номенклатура'); SchetFact.SetAttrib('Товар', Nomenkl.CurrentItem); SchetFact.SetAttrib('Количество', 1); SchetFact.SetAttrib('Цена', dm.tabZayavkaCharter_Cost.Value); SchetFact.SetAttrib('Сумма', dm.tabZayavkaCharter_Cost.Value); SchetFact.SetAttrib('СтавкаНДС', StavkaNDS.CurrentItem); dm.tabZayavkaCharter_Cost.Value/118*18); StavkaNP.CurrentItem); dm.tabZayavkaCharter_Cost.Value); Ole1C.EvalExpr('СчетПоКоду("90.3")')); 'Справочник.ВидыНоменклатуры'); VidNomenkl.CurrentItem); SchetFact.SetAttrib('НДС', SchetFact.SetAttrib('СтавкаНП', SchetFact.SetAttrib('Всего', SchetFact.SetAttrib('Счет', SchetFact.SetType('Субконто1', SchetFact.SetAttrib('Субконто1', SchetFact.SetType('Субконто2', 'Справочник.СтавкиНДС'); SchetFact.SetAttrib('Субконто2', StavkaNDS.CurrentItem); SchetFact.Operation.Description:='Сч.-факт. покупателю: '+client.getattrib('Наименование'); SchetFact.Operation.OperSum:=dm.tabZayavkaCharter_Cost.Value; SchetFact.Write; SchetFact.MakeActions; memResultZayavka.Lines.Add(DateTimeToStr(Now) + ' Создан Счет-фактура выданный № ' + schet_num + ' - ' + client.getattrib('Наименование') + ' - ' + dogovor.getattrib('Наименование')); end; Описание:.SetType('Товар', 'Справочник. Номенклатура'); - в структуре документа Счет-фактура поле Товар неопределено. Оно может быть любого типа Справочник. Поэтому, перед присвоением ему значения, необходимо указать его тип. Для этого используется метод SetType. Соответствует методу Документов: Счет-Фактура. Назначить Тип («Товар», «Справочник. Номенклатура»). Для удобства использования и поддержи пользователя, разработана «Справка» (Рис. 20) содержащая в себе информацию о программе, разработчики и помощь по функциям программы. Стрелкой указана кнопка на панели инструментов. Рис. 19 - Форма «Справка» АИС - О программе Рис. 20 - Форма «Справка» - Разработчик Рис. 21 - Форма «Справка» - Функции В программе имеется возможность составления отчета по данным хранящимся в системе и вывод их на печать. Для того, чтобы получить отчет необходимо на панели выбрать раздел «Отчеты», после чего появиться отчет, (Рис. 22). Рис. 22 - Вывод отчета Кнопка «Отчет», описывается следующим образом: {---------------По Договорам---------------}TForm3.N11Click(Sender: TObject);i,j:integer;:integer;.ProcessMessages;:= 'Normal';:= false;.WordApplication1.Create(nil);.WordApplication1.Visible:=true;.WordApplicati on1. Documents. Addold OpenAsTemplate);.WordApplication1.Caption:='Сведения (Template, о договарах компании';.WordDocument1.ConnectKind:=ckAttachToInterface;.WordDocument1. ConnectTo(Form25.WordApplication1.ActiveDocument);:=Form25.WordDocument1 .Range;.WordApplication1.ActiveDocument.Paragraphs.Add(Template);.WordApplic ation1.ActiveDocument.Paragraphs.Add(Template);.WordDocument1.PageSetup.Left Margin:=55;.WordDocument1.PageSetup.RightMargin:=55;.WordDocument1.Paragr aphs.Alignment:=wdAlignParagraphJustify;.WordDocument1.Paragraphs.Item(1).Ra nge.Font.Size:=16;.WordDocument1.Paragraphs.Item(1).Range.Font.Bold:=1;.Word Document1.Paragraphs.Item(1).Range.InsertBefore(Договора компании'); Form25.WordDocument1.Tables.Addold(Form25.WordDocument1.Paragraphs.Item( 3).Range, 30,6); //Form25.WordApplication1.ActiveWindow.SetFocus;.WordApplication1.Acti vate; {--------заголовки столбцов полужирным-----} for i:=1 to 6 do Form25.WordDocument1.Paragraphs.Item(i+2).Range.Font.Bold := 1;.WordDocument1.Paragraphs.LineUnitAfter; {--------ширина столбцов------}i:=1 to 8 do.WordDocument1.Paragraphs.Item(i).Alignment:=wdAlignParagraphCenter;.Word Document1.Tables.Item(1).Borders.InsideLineStyle:=wdLineStyleSingle;.WordDocu ment1.Tables.Item(1).Borders.OutsideLineStyle:=wdLineStyleSingle;.WordDocumen t1.Tables.Item(1).Columns.Item(1).Width:=35;.WordDocument1.Tables.Item(1).Colu mns.Item(2).Width:=70;.WordDocument1.Tables.Item(1).Columns.Item(3).Width:=1 90;.WordDocument1.Tables.Item(1).Columns.Item(4).Width:=73;.WordDocument1. Tables.Item(1).Columns.Item(5).Width:=55;.WordDocument1.Tables.Item(1).Colum ns.Item(6).Width:=90; {------------названия столбцов----------}.WordDocument1.Tables.Item(1).Cell(1, 1).Range.Text :='Номер договора';.WordDocument1.Tables.Item(1).Cell(1, 2).Range.Text :='Код клиента';.WordDocument1.Tables.Item(1).Cell(1, 3).Range.Text :='Тип договора';.WordDocument1.Tables.Item(1).Cell(1, 4).Range.Text :='Код поставщика';.WordDocument1.Tables.Item(1).Cell(1, услуги';.WordDocument1.Tables.Item(1).Cell(1, 5).Range.Text :='Код 6).Range.Text заключения';.WordDocument1.Tables.Item(1).Cell(1, :='Дата 7).Range.Text :='Дата окончания';.WordDocument1.Tables.Item(1).Cell(1, 8).Range.Text :='Сумма договора';.WordDocument1.Tables.Item(1).Cell(1, 9).Range.Text :='Код 10).Range.Text :='Код товара';.WordDocument1.Tables.Item(1).Cell(1, заказа';.WordDocument1.Tables.Item(1).Cell(1, 11).Range.Text :='Доставка'; {-------------добавление записей в таблицу-------------}.ADOTable2.Active:=true; Form3.ADOTable2.Sort:='Dogovor';.ADOTable2.First;:=1;j:=1 Form3.ADOTable2.RecordCount do begin(j mod 30)=0 then // количество строк на 1 странице to begin(c);.WordDocument1.Tables.AddOld(Form25.WordDocument1.Paragrap hs.Last.Range, 30,6);;.WordDocument1.Tables.Item(1).Cell(j+1, 1).Range.Text := IntToStr(j);NOT (Form1.ADOTable2.Fields[1].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[1].Value+' 3).Range.Text := '+Form3.ADOTable2.Fields[2].Value+' '+Form3.ADOTable2.Fields[3].Value //добавление договора.WordDocument1.Tables.Item(1).Cell(j+1, Номер 3).Range.Text :='';NOT 2).Range.Text := (Form3.ADOTable2.Fields[2].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[2].Value //добавление клиента.WordDocument1.Tables.Item(1).Cell(j+1, 2).Range.Text Код :='';NOT (Form1.ADOTable2.Fields[7].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, 4).Range.Text Form1.ADOTable2.Fields[7].Value добавление // договора.WordDocument1.Tables.Item(1).Cell(j+1, 4).Range.Text := Тип :='';NOT (Form1.ADOTable2.Fields[8].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, 5).Range.Text '+Form1.ADOTable2.Fields[8].AsString //добавление поставщика.WordDocument1.Tables.Item(1).Cell(j+1, 5).Range.Text := ' Код :='';NOT (Form3.ADOTable2.Fields[9].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[9].Value 2).Range.Text //добавление услуги.WordDocument1.Tables.Item(1).Cell(j+1, 2).Range.Text := Код :='';NOT (Form3.ADOTable2.Fields[10].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[10].Value 2).Range.Text //добавление заключения.WordDocument1.Tables.Item(1).Cell(j+1, (Form3.ADOTable2.Fields[11].Value=NULL) 2).Range.Text := Дата :='';NOT then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[11].Value 2).Range.Text //добавление окончания.WordDocument1.Tables.Item(1).Cell(j+1, := Дата 2).Range.Text :='';NOT 2).Range.Text := (Form3.ADOTable2.Fields[12].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[12].Value //добавление договора.WordDocument1.Tables.Item(1).Cell(j+1, Сумма 2).Range.Text :='';NOT 2).Range.Text := (Form3.ADOTable2.Fields[13].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[13].Value товара.WordDocument1.Tables.Item(1).Cell(j+1, //добавление Код 2).Range.Text :='';NOT (Form3.ADOTable2.Fields[14].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[14].Value заказа.WordDocument1.Tables.Item(1).Cell(j+1, 2).Range.Text //добавление := Код 2).Range.Text :='';NOT (Form3.ADOTable2.Fields[15].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, 2).Range.Text Form3.ADOTable2.Fields[15].Value Доставка.WordDocument1.Tables.Item(1).Cell(j+1, := //добавление 2).Range.Text :='';NOT 6).Range.Text := (Form1.ADOTable2.Fields[16].Value=NULL) then.WordDocument1.Tables.Item(1).Cell(j+1, Form3.ADOTable2.Fields[16].Value услуги.WordDocument1.Tables.Item(1).Cell(j+1, //Код 6).Range.Text :='';.ADOTable2.Next;;.ADOTable2.Last;.WordApplication1.Disconnect; form25.Close; end; После завершения работы в системе на форме «Вход», необходимо нажать кнопку «Выход» (Рис. 23). Рис. 23 - Выход из системы В данном запросе описывает связь и выборки из таблиц по сущностям: Client.Код_клиента, Dogovor.Код_клиента, Zakaz.[Код заказа]Dostavka INNER JOIN (Tovar INNER JOIN (Yslygi INNER JOIN (Zakaz INNER JOIN (Postavshik INNER JOIN (Client INNER JOIN Dogovor ON Client.Код_клиента = Dogovor.Код_клиента) ON Postavshik.[Код поставщика] = Dogovor.Код_поставщика) ON Zakaz.[Код заказа] = Dogovor.Код_заказа) ON Yslygi.[Код услуги] = Dogovor.Код_услуги) ON Tovar.[Код товара] = Dogovor.Код_товара) ON Dostavka.Транспорт = Dogovor.Доставка. 2.3 Руководство пользователя О программе Автоматизированная информационная система БУ «Редакция газеты «К новым рубежам», предназначена для ведения документооборота компании, учета продукции и надежности хранения данных. Основные функции К основным функциям приложения относят: выборка и редактирование записей об клиентах, договорах, поставщиках и оборудовании; добавление записей; поиск записей по указанным полям; справочная система. Все данные функции могут быть выбраны в главном меню. При запуске программы необходимо пройти процедуру проверки «Имя пользователь» и «Пароль», что является необходимым действием для обеспечения безопасности доступа к данным. После этого открывается основное окно программы (оно же форма «Договора») приложения. Для добавления новой записи в базу данных выполняются следующие шаги: Необходимо нажать кнопку , расположенную на кнопочной панели Заполнить поля ввода нажать кнопку Добавить. Удалить запись нажать . После этого появится окно удаления записи, в котором нужно либо необходимую запись для удаления. Для поиска записи в базе данных: на панели инструментов нажать на и выбрать критерии поиска. Для отмены поиска нажать кнопку Отмена. Для вывода документа на печать необходимой нажать кнопку Для вызова помощи нужно: Нажать кнопку на панели инструментов. Появится окно, в котором отражена справочная система о программе. Разработчик Разработчиком Автоматизированной информационной системы БУ «Редакция газеты «К новым рубежам» является Гомула Екатерина Валерьевна студентка группы 71-ПЗУ ОГИС. ЗАКЛЮЧЕНИЕ В процессе дипломного проектирования были решены следующие задачи: . Проведен анализ теоретических основ разработки АИС. Анализ позволил выявить компоненты автоматизированной информационной системы БУ «Редакция газеты «К новым рубежам». . Проведен анализ деятельности предприятия БУ «Редакция газеты «К новым рубежам», построены функционально-ориентированные модели «Как есть» (as-is) и «Как должно быть» (to-be), выявлен объект автоматизации, определен набор требований. . Разработано приложение АИС БУ «Редакция газеты «К новым рубежам». Для создания АИС использовались программное обеспечение: - ОС Windows 10 Home; Borland Delphi 7; - MS Access. В процессе проектирования база данных системы определили её структуру (состав таблиц, их структура и логические связи). Структура таблицы определяется составом столбцов, типом данных и размерами столбцов, ключами таблицы. Так же были выявленные основные сущности и атрибуты, т.е. базовые типы информации, которые хранятся в БД. При разработке автоматизированной информационной системы для предприятия БУ «Редакция газеты «К новым рубежам», основным нормативным документом для выполнения задачи является техническое задание на разработку программного продукта. Все требования, изложенные в задании были выполнены, а также были учтены пожелания заказчика относительно визуального интерфейса программы. . Разработанное приложение включает в себя 5 основных форм, и 15 вспомогательных форм. БД соответствует 3 NF. БИБЛИОГРАФИЧЕСКИЙ СПИСОК 1. Алексенцев А.И. Автоматизация делопроизводства. - М.: ЗАО Бизнес-школа «Интел-синтез», 2004. . Баженова И.Ю. Delphi 7. Самоучитель программиста, Москва - 2003. . Бобровский С.И. Delphi 7. Учебный курс, Петербург - 2004. . Вендров А.М. Проектирование программного обеспечения экономических информационных систем: Учебник. - М.: Финансы и статистика, 2000. - 352 с. . Гагарина Л.Г. Разработка и эксплуатация автоматизированных информационных систем/ Л.Г. Гагарина, Е.А. Федотова, Д.В. Киселев − Инфра-М, 2009 − 384 с. . Гвоздева Т.В. Проектирование информационных систем/ Гвоздева Т.В. − Феникс, 2009 − 508 с. . Герасименко В.А. Защита информации в автоматизированных системах обработки данных (книга 1), Энергоатомиздат - 1994. . Грекул В.И. Проектирование информационных систем/ В.И. Грекул, Г.Н. Денищенко, Н.Л. Коровкина − Интернет-университет информационных технологий, 2008 - 304 с. . Григорьев С.В. Автоматизация документооборота. / Под ред. В.А. Федоовой и др. - М.: Технология, 2004. . А. Гультяев Help. Разработка справочных систем, Петербург - 2004. . Калянов Г. Н. CASE-технологии. Консалтинг в автоматизации бизнес-процессов. - 3-е изд. - М.: Горячая линия - Телеком, 2002. - 320 с. . Кирсанова М.В. Курс делопроизводства: Документационное обеспечение управления. Учебное пособие - 2- е изд. - М.: ИНФРА-М, 2005. 13. Корняков В.Н. Программирование документов и приложений MS Office в Delphi, БХВ- Петербург 2005. . Максименков А.В. Основы проектирования информационных систем. - М., 2005. . Малков О.Б., Белимова Е.В. Проектирование баз данных с использованием CASE-технологии: Методические указания. - Омск, 2003. - 48 с. . Маклаков С.В. BPwin и ERwin. CASE-средства разработки информационных систем. - М.: Диалог-МИФИ, 2001. - 304 с. . Маклаков С.В. Моделирование бизнес-процессов с BPwin 4.0. - М.: Диалог-МИФИ, 2002. - 224 с. . Петров В.Н. Информационные системы - СПб.: Питер, 2003. - 688 с. . Петров В.Н. Информационные системы.- СПб.: Питер, 2007. . Петров Ю.А., Шлимович Е.Л., Ирюпин Ю.В. Комплексная автоматизация управления предприятием, Петербург - 2001. . Проектирование экономических информационных систем: Учебник / Г. Н. Смирнова, А. А. Сорокин, Ю. Ф. Тельнов; Под ред. Ю. Ф. Тельнова. - М.: Финансы и статистика, 2001. - 512 с. 22. Род Стивенс Delphi. Готовые алгоритмы, ДМК - Пресс, 2004. . Экономическая информатика. Учебник для вузов / Под ред. проф. В.В. Евдо-кимова. - СПб: Питер, 1997. - 594 с. . Экономическая информатика: Учебник / Под ред. П.В. Конюховского и Д.Н. Колесова. - СПб: Питер, 2001. - 560 с. . Т. Тиори Проектирование структур баз данных, 1990. ПРИЛОЖЕНИЕ 1 Счет-фактура Наименован ие товара (описание выполненн ых работ, оказанных услуг) 1 Всего к оплате Едини ца измере ния Ко лич ест во 2 3 Цена (тариф) за единиц у измере ния 4 Стоимос ть товаров (работ, услуг) всего без налога 5 В том числе акциз Нал ого вая ста вка Сум ма нало га 6 7 8 Стоимост ь товаров (работ, услуг) всего с учетом налога 9 Стра на прои схож дени я 10 Номер грузов ой тамож енной деклар ации 11 ПРИЛОЖЕНИЕ 2 Заказ автоматизированный информационный база данных № п/ п Код товара Наименование товара Кол-во Необходимый срок поставки Примечание * Примечание: При покупке со склада указать - «Склад». При закупке товара для клиента по оплаченному счету или по контракту необходимо указывать «Товар оплачен». Дополнительные сведения. ПРИЛОЖЕНИЕ 3 Платежное поручение Сумма прописью Плательщик Банк плательщика Банк получателя Получатель Сумма Сч. № БИК Сч. № БИК Сч. № Сч. № Вид оп. Наз. пл Код Срок плат. Очер. Плат. Рез. поле