Курсовая работа: Система учёта бракованной продукции (MSAccess, Delphi, ER-Win)
2.4. Итоги исследования.
По результатам исследования окончательно принимаем следующий вариант разработки программного обеспечения для АРМ учёта брака:
1. БД проектируется с помощью среды Erwin и реализуется в СУБД Microsoft Access.
2. Программное приложение для ввода данных разрабатывается в среде Borland Delphi 7 и реализует алгоритмы ввода данных и контроля от ошибочного ввода.
3. Отдельное приложение, так же разработанное в среде Borland Delphi 7 реализует алгоритмы подготовки и создания отчётов, переноса их в MS Excel.
З. Конструкторская часть
3.1 Разработка модели БД с помощью ERWin
Процесс построения информационной модели состоит из следующих шагов:
· определение сущностей;
· определение зависимостей между сущностями;
· задание первичных и альтернативных ключей;
· определение атрибутов сущностей;
· приведение модели к требуемому уровню нормальной формы;
· переход к физическому описанию модели:назначение соответствий имя сущности - имя таблицы, атрибут сущности - атрибут таблицы; задание триггеров, процедур и ограничений;
· генерация базы данных.
Теперь проведём этот процесс применительно к нашей БД. Сущности нашей БД будут следующие:
1. Таблица FIRMS - справочник фирм-покупателей продукции завода.
2. Таблица BRAK – справочник видов брака ванн.
3. Таблица VANNY – номенклатура ванн выпускаемых заводом
4. Таблица KONTR – список контролёров ОТК
5. Таблица TB_VALUES – таблица для хранения данных о возврате бракованных ванн.
Таблица TB_VALUES зависима от остальных таблиц связью один-ко-многим, т.к. данные для этой таблицы берутся из справочников. Каждый справочник будет иметь поле ID – уникальный автоинкрементный целочисленный ключ. Это поле для каждого справочника будет являться первичным ключом, однозначно идентифицирующим запись в БД. Кроме того каждый справочник будет содержать поле NAME – наименование фирмы, вида брака, типа ванны, ФИО контролёра соответственно для каждого справочника.
Таблица TB_VALUES будет содержать записи, отражающие данные актов возврата бракованной продукции. Одним из полей её будет целое число – NUM (номер акта). Далее поля связанные со справочниками, хранящие данные фирма, вида брака, тип ванны, ФИО контролёра. Следующие поля – DATA (дата составления акта), MES (месяц) и GOD (год) составления акта (необходимы для формирования групповых отчётов по годам и месяцам), а так же SUM (количество ванн с данным видом брака по текущему акту).
Кроме того справочник VANNY содержит булевое поле SILVER (признак того что ванна изготовлена по технологии Silver – эмаль с добавлением серебра). А справочник BRAK содержит булевое поле ISTEHN – признак того, что брак является технологическим (по причине нарушения технологии).
В итоге получится модель представленная на рис 3.1
Рис 3.1
Далее необходимо определить связи между сущностями. Все таблицы-справочники будут связаны с таблицей TB_VALUES связью один-ко-многим, так как каждой уникальной записи в справочнике соответствуют многие записи в таблице TB_VALUES. Для создания связей необходимо воспользоваться инструментом Relationship среды ERWin. Необходимо создать отношения каждого справочника к таблице TB_VALUES. В настройках Relationship Properties для каждого отношения установить свойство отношения Cardinality в «One or More». Пример показан на рис. 3.2.
Рис 3.2
В итоге модель БД будет иметь вид, представленный на рис 3.3. На этом разработку БД в Erwin можно считать завершённой.
Рис 3.3
ERwin создает визуальное представление (модель данных) для решаемой задачи. Это представление может использоваться для детального анализа, уточнения и распространения как части документации, необходимой в цикле разработки. ERwin автоматически создает базу данных (таблицы, индексы, хранимые процедуры, триггеры для обеспечения ссылочной целостности и другие объекты, необходимые для управления данными).
Следующим шагом будет создание физической модели БД. Необходимо создать новую пустую БД ACCESS, а затем средствами Erwin перенести структуру в эту БД. В результате будет получена БД Access – рис 3.4
Рис 3.4
3.2 Разработка приложения ввода данных в Borland Delphi 7
В среде Borland Delphi 7 необходимо создать новое приложение, сохранить его в специально созданную папку. Для работы с БД будут использоваться компоненты с закладки на палитре компонентов «ADO», реализующие доступ к данным на основе технологии ADO (Microsoft ActiveX Data Object). Так же будут использованы стандартные компоненты и компоненты связи и отображения данных (TDataSet, TDBGrid, TDBLookupComboBox). Особо следует обратить внимание на использование специально разработанного для переноса данных MS EXCEL компонента TLIP_Excel. Он реализует самые необходимые свойства и методы для открытия заготовки отчёта, получения данных из ячеек и возврата данных в ячейки. Полный исходный текст компонента см. в приложении. Рабочее окно проектирования приложения показано на рис. 3.5
Рис 3.5
Отдельного внимания заслуживает алгоритм соединения с БД. Он использует метод класса TADOConnection – ConnectionString. Метод открывает стандартное окно Windows связи с поставщиком данных и возвращает строку типа WideString, содержащую необходимые параметры соединения. Для использования метода необходимо подключить модуль AdoConEd (в строке uses).
Для фильтрации возвращаемого и отображаемого в DBGrid набора данных служит форма «Фильтры». Она вызывается нажатием одноимённой кнопки на главной форме. Вид формы на этапе проектирования показан на рис. 3.6
Рис 3.6
В соответствии с выбранными параметрами впоследствии корректируется запрос к БД. Затем он выполняется и отфильтрованные данные отображаются в DBGrid, а так же могут быть напечатаны по нажатию кнопки «Простой отчёт».
3.3 Разработка системы создания отчётности в MS EXCEL
Параметры соединения, а так же алгоритм соединения с БД в программе Reporter целиком взяты из программы Brak. Независимо от того в какой из программ получена строка соединения с БД, впоследствии она запоминается в системном реестре операционной системы и используется при последующих вызовах обеих программ.
Программа реализует выбор файлов-заготовок при помощи TOpenFileDialog и затем по нажатию кнопки запускает цикл просмотра файла-заготовки, создания запросов на основе прочитанных строк и возврат данных из запроса в исходные ячейки.
Вид формы на этапе проектирования показан на рис. 3.7
Рис. 3.7
4. Технологическая часть
4.1 Инструкция системного программиста
Требования к аппаратному и программному обеспечению:
· ПК с процессором не ниже Pentium2
· ОЗУ не менее 128 МБ
· Принтер
· ОС Windows
· Установленный пакет MS Office (как минимум MS Excel)
Установка программы:
Необходимо создать на жёстком диске компьютера отдельную папку программы, скопировать в неё файлы KZDB.mdb, Brak.exe, Reporter.exe, а так же файлы - заготовки отчётов (с расширением .xls).
Первый запуск.
При первом запуске программы Brak.exe или Reporter.exe необходимо выполнить соединение с базой данных KZDB.mdb.
Рис 4.1
Для этого справа от поля ввода «Строка подключения к БД» нажать кнопку смены параметра «>>». См. рис. 4.1. При этом откроется стандартное окно изменения строки подключения к БД MS ADO. См. рис. 4.2
Рис 4.2
В этом окне необходимо нажать кнопку «Build», для выбора новой БД.
Далее в предложенном списке поставщиков данных выбрать Microsoft Jet 4.0 OLE Provider, а на закладке «подключение» выбрать нужную БД (файл KZDB.mdb). См. рис 4.3. Пароль для БД должен быть пустым, пользователь - Admin.
программа ввод информационный система
Рис 4.3
После того как подключение создано, можно его проверить с помощью кнопки «проверить подключение» на той же вкладке, затем нажать кнопку «ОК».
В результате строка подключения АDO запоминается приложением, она будет записана в ветке реестра Windows «HKEY_CURRENT_USER\Software\Brak». Необходимо помнить, что эта настройка будет сохранена только для текущего пользователя операционной системы. При смене пользователя настройку строки подключения необходимо повторить. На этом настройки приложений заканчиваются.
Язык заготовок отчётов в MS EXCEL.
Для того чтобы получать отчёты из БД в MS EXCEL создаются заготовки отчётов. Эти заготовки в последствии открываются программой Reporter, заполняются необходимыми данными для дальнейшей печати и анализа. В заготовках, в соответствующих ячейках, в которые затем должны быть выведены данные, располагаются запросы к БД. Запросы представляют собой обычные запросы языка SQL к БД KZDB.mdb, но и к тому же дополнены служебными символами:
### - префикс запроса, далее следует запрос на SQL. Пример :
### SELECT sum(summa) as val1 from Values_all where brak_id=15 and mes=1 and god=2008. В ячейку с этим текстом будет возвращена сумма ванн за первый месяц (январь) 2008 г. С определённым типом брака.
Кроме того можно передать и другие параметры:
#DATE# - данные за дату, которая указана в календаре в программе Reporter
#DATE_NM# - дата начала месяца, указанного в календаре в программе Reporter
'#NACHMES# - дата начала месяца для текущего времени операционной системы.
#NOW#' – текущая дата из операционной системы.
С помощью этих параметров можно составлять запросы для заранее неопределённых периодов времени. Например, следующий запрос вернёт в ячейку сумму бракованных ванн за период от начала текущего месяца до текущей даты:
### SELECT sum(summa) as val1 from Values_all where Data>= '#NACHMES# and Data<=#NOW#.
Таким образом достигается гибкость создания отчётов. Заготовки можно создавать не изменяя исходный код программы.
4.2 Инструкция пользователя
Добавление данных из актов о возврате продукции.
Для добавления данных из актов о возврате продукции необходимо запустить программу Brak.exe. Откроется окно показанное на рис. 4.4.
Рис. 4.4
В соответствующие поля внести данные из актов: покупатель, продукция, тип брака, дата составления акта, номер акта, количество ванн с браком данного типа по акту, ФИО контролёра ОТК. Если данных нет в выпадающем списке (например новая фирма-покупатель) их необходимо добавить нажав кнопку «>>» справа от поля ввода. При этом следует помнить, что программа не может проверить уникальность названий при неполном совпадении символов в названии. Так названия фирмы ООО«Интерскол» и ООО «Интерскол» из-за добавления пробела будут восприниматься программой как разные фирмы. За этим необходимо следить!
Когда все данные набраны можно нажать кнопку «применить» и все данные попадут в БД. Для того чтобы можно было просмотреть данные по уже введённым актам, служат фильтры. Нажав кнопку «Фильтры», можно отсортировать уже введённые данные по покупателю, типу брака и т.д.. Отфильтрованные таким образом данные можно сразу перенести в Excel и распечатать с помощью кнопки «Простой отчёт». Перенесено будет именно то, что отфильтровано и отображается в поле данных.
Для построения более сложных отчётов служит приложение Reporter. Запустить его из программы Brak можно с помощью кнопки «отчёты».
Работа с программой Reporter.
Для создания отчётов из заготовок необходимо запустить программу Reporter.exe. Откроется окно показанное на рис. 4.5.
Рис. 4.5.
В поле выбора даты по умолчанию открывается текущая системная дата операционной системы. В поле выбора заготовки необходимо выбрать файл заготовки отчёта. По умолчанию программа сначала открывает папку запуска программы Reporter.exe и в ней ищет файлы заготовок с расширением .xls. Но можно указать и другой путь к заготовкам.
После выбора заготовки можно сформировать отчёт нажав соответствующую кнопку. Отчёт формируется в программе MS Excel и может быть затем распечатан. Итоговый отчёт автоматически сохраняется в папке с именем «Reports_Xls», которая создаётся в папке запуска программы Reporter.exe.
5. Заключение
Моделирование играет большую роль в разработке успешных информационных систем. В данной работе было продемонстрировано использование среды разработки Logic Works ERwin. Использование этого продукта поможет правильно оценить стоящие задачи, предложить адекватное решение, и разработать центральную часть любой информационной системы - базы данных - с использованием информации, полученной во время обследования предприятия (моделирование базы данных). Эти инструменты сами по себе не являются решением проблемы, но их грамотное и своевременное использование поможет свести рутинный труд разработчика к минимуму, позволит ему сконцентрироваться на собственно разработке системы и снизит потери времени, которые обычно происходят при согласовании моделей со специалистами предметной области. Кроме того, использование этих инструментов дает возможность получить набор полностью документированных и согласованных моделей, что в значительной степени облегчит поддержку созданных систем в будущем, а также может быть повторно использовано при разработке других систем.
Таким образом, была смоделирована и реализована БД, а так же программные приложения к ней, вцелом позволившие создать информационную систему учёта возврата бракованных штук на завод по производству чего надо.
6.Литература
1. Маклаков С.В. BPwin и ERwin. CASE-средства разработки информационных систем. - М.: Диалог-МИФИ, 1999
2. Маклаков С.В. Моделирование бизнес процессов с BPwin 4.0. - М.: Диалог-МИФИ, 2002.
3. Кодд Е.Ф. Реляционная модель данных для больших совместно используемых банков данных. СУБД # 1, 1995, с. 145-160.
ПРИЛОЖЕНИЯ