Смекни!
smekni.com

Система учёта бракованной продукции (MSAccess, Delphi, ER-Win) (стр. 2 из 4)


З. Конструкторская часть

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&bsol;Software&bsol;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-средства разработки информационных систем. - М.: Диалог-МИФИ, 19992. Маклаков С.В. Моделирование бизнес процессов с BPwin 4.0. - М.: Диалог-МИФИ, 2002.3. Кодд Е.Ф. Реляционная модель данных для больших совместно используемых банков данных. СУБД # 1, 1995, с. 145-160.

ПРИЛОЖЕНИЯ