Файл: Разработка программного обеспечения автоматизированного рабочего места учёта кадров предприятия.docx
Добавлен: 08.11.2023
Просмотров: 437
Скачиваний: 10
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
1.1 Описание предметной области
1.3 Обоснование решений по использованию технических и программных средств реализации
1.4 Основные документы, на основании которых ведётся учет работников
Документы для заполнения личной карточки
Порядок заполнения личной карточки
Личная карточка: электронная или бумажная
(1:М), и «многие – ко - многим» (М:М). Иногда эти типы связей называются степенью связи (или кардинальностью).
Связь один ко многим в реляционных базах данных реализуется тогда, когда объекту А может принадлежать или же соответствовать несколько объектов Б, но объекту Б может соответствовать только один объект А У нас есть таблица, в которой содержатся данные о клиентах и у нас есть таблица, в которой хранятся их телефоны. Мы можем смело утверждать, что у одного клиента может быть несколько телефонов, но в тоже время мы можем быть уверены в том, что один конкретный номер может быть только у одного клиента. Это типичный пример связи один ко многим.
Связь многие ко многим реализуется в том случае, когда нескольким объектам из таблицы А может соответствовать несколько объектов из таблицы Б, и в тоже время нескольким объектам из таблицы Б соответствует несколько объектов из таблицы А. Рассмотрим простой пример. Связь один к одному – самая редко встречаемая связь между таблицами. В 97 случаях из 100, если вы видите такую связь, вам необходимо объединить две таблицы в одну. Таблицы будут связаны один к одному тогда, когда одному объекту таблицы А соответствует один объект таблицы Б, и одному объекту таблицы Б соответствует один объект таблицы А. Как я уже говорил: если вы видите, что связь один к одному – смело объединяйте таблицы в одну, за исключением тех случаев, когда происходит модернизация базы данных.
Например, у нас была таблица, в которой хранились данные о сотрудниках компании. Но произошли какие-то изменения в бизнес-процессе и появилась необходимость создать таблицы с теми же самыми сотрудниками, но не для всей компании, а разбив их по отделам. Таблицы отделов будут дочерними по отношению к таблице, в которой хранятся данные обо всех сотрудниках компании, и связаны такие таблицы будут связью один к одному.
Запускается C++ Builder обычным образом, т. е. выбором из меню Пуск команды C++Builder 6
Рис. 12 Запуск программы
Вид экрана после запуска C++ Builder несколько необычен. Вместо одного окна на экране появляются пять:
Окно редактора кода почти полностью закрыто окном стартовой формы
Рис. 13 Вид экрана после запуска C++ Builder
В главном окне находится меню команд, панели инструментов и палитра компонентов.
Окно стартовой формы (Form1) представляет собой заготовку главного окна разрабатываемой программы (приложения).
Рис.14 Главное окно программы
Borland C++ Builder обладает широкими возможностями доступа к базам данных. Так как базы данных предназначены не только для хранения, но и для выбора и обработки информации, одним из важнейших аспектов их использования является создание запросов к ним. Поэтому сегодня мы рассмотрим, как в C++ Builder решаются проблемы построения запросов.
Запрос в C++ Builder - это объект, представляющий собой набор данных. Обычно для создания запроса используется компонент TQuery - потомок абстрактного класса TDataSet. Программа была составлена в следующем порядке:
На начала открывается новая форма, для этого нужно нажать на компонент New Form в меню компонентов;
Далее на форму перемешается компонент ADOConnection для соединения с базой данных Access. С помощью компонента ADOConnection можно указывать местоположение базы данных и работать с транзакциями. Рассмотрим основные свойства компонента ADOConnection, отображаемые в окне инспектора объектов
Рис. 15 Соединение БД Access при помощи свойства ConnectionString
В качестве поставщика данных выберем Microsoft Jet 4.0 OLE DB Provider:
Рис. 16 Поставщик данных
Укажем путь до нашей базы данных:
Рис. 17 Путь до БД
Далее размещаем на форме компонент ADOTable для отображения наших таблиц к каждой таблице соответственно. Для связи компонентов ADOTable c ADOConnection необходимо добавить компонент DataSource.
Компонент DataSource действует как посредник между компонентами TDataSet (TTable, TQuery, TStoredProc) и компонентами Data Controls - элементами управления, обеспечивающими представление данных на форме. Компоненты TDataSet управляют связями с библиотекой Borland Database Engine (BDE), а компонент DataSource управляет связями с данными в компонентах Data Controls. Он является аналогом компонента Table, расположенного на закладке BDE, и предназначен для доступа к таблице с помощью механизма ADO. Компонент ADOTable имеет свойства, которые мы уже рассматривали ранее в компонентах Table и ADODataSet, поэтому мы не будем возвращаться к ним еще раз.
В свойстве Dataset компонента DataSource1 выберем ADOTable1:
Рис. 18 Связь компонента DataSource и ADOTable
В свойстве Connection компонента ADOTable1 выберем ADOConnection:
Рис.19 Связь компонента ADOTable и ADOConnection
Компонент TDBGrid обеспечивает табличный способ отображения на экране строк данных из компонентов TTable или TQuery. Приложение может использовать TDBGrid для отображения, вставки, уничтожения, редактирования данных БД. Обычно DBGrid используется в сочетании с DBNavigator, хотя можно использовать и другие интерфейсные элементы, включив в их обработчики событий методы First, Last, Next, Ptior, Insert,
В свойстве DataSource компонента
DBGrid1 укажем DataSource1
:
Рис. 20 Связь компонента DBGrid1 и DataSource
Функции программы:
Рис. 21 Главное окно программы
Просмотр редактирование осуществляется при помощи навигационной панели
Рис. 22 Просмотр, добавление, редактирование, удаление записей
Рис. 23 Сортировка по полю ФИО
Рис. 24 Фильтрация по полю стаж работы
Рис. 25 Поиск работника по ID
Рис. 26 Кнопка Загрузить фото указывает путь к фото
Рис. 27 Кнопка Сброса возвращает к изначальной таблице
Рис. 28 Кнопка перехода к следующей форме
Рис. 29 Фильтрация по полю ID
Рис. 30 Сортировка по полю должности
Рис. 31 Переход к следующей форме
Рис. 32 Фильтрация по полю Квалификация
Рис. 33 Сортировка по полю специальность
Рис. 34 Поиск по полю ФИО работника
Рис. 35 Переход к следующей форме
Рис. 36 Переход к таблице отделы
Рис. 37 Фильтрация по полю ID
Рис. 38 Сортировка по полю Отдел
Рис. 39 Выход из программы
Выходной документ «Список работников»:
Рис. 40 Выходной документ
Связь один ко многим в реляционных базах данных реализуется тогда, когда объекту А может принадлежать или же соответствовать несколько объектов Б, но объекту Б может соответствовать только один объект А У нас есть таблица, в которой содержатся данные о клиентах и у нас есть таблица, в которой хранятся их телефоны. Мы можем смело утверждать, что у одного клиента может быть несколько телефонов, но в тоже время мы можем быть уверены в том, что один конкретный номер может быть только у одного клиента. Это типичный пример связи один ко многим.
Связь многие ко многим реализуется в том случае, когда нескольким объектам из таблицы А может соответствовать несколько объектов из таблицы Б, и в тоже время нескольким объектам из таблицы Б соответствует несколько объектов из таблицы А. Рассмотрим простой пример. Связь один к одному – самая редко встречаемая связь между таблицами. В 97 случаях из 100, если вы видите такую связь, вам необходимо объединить две таблицы в одну. Таблицы будут связаны один к одному тогда, когда одному объекту таблицы А соответствует один объект таблицы Б, и одному объекту таблицы Б соответствует один объект таблицы А. Как я уже говорил: если вы видите, что связь один к одному – смело объединяйте таблицы в одну, за исключением тех случаев, когда происходит модернизация базы данных.
Например, у нас была таблица, в которой хранились данные о сотрудниках компании. Но произошли какие-то изменения в бизнес-процессе и появилась необходимость создать таблицы с теми же самыми сотрудниками, но не для всей компании, а разбив их по отделам. Таблицы отделов будут дочерними по отношению к таблице, в которой хранятся данные обо всех сотрудниках компании, и связаны такие таблицы будут связью один к одному.
2. Соединение БД Access с программой C++ Builder
Запускается C++ Builder обычным образом, т. е. выбором из меню Пуск команды C++Builder 6
Рис. 12 Запуск программы
Вид экрана после запуска C++ Builder несколько необычен. Вместо одного окна на экране появляются пять:
-
главное окно – C++Builder 6; -
окно стартовой формы – Form1; -
окно редактора свойств объектов – Object Inspector; -
окно просмотра списка объектов – Object TreeView; -
окно редактора кода – Unitl.cpp.
Окно редактора кода почти полностью закрыто окном стартовой формы
Рис. 13 Вид экрана после запуска C++ Builder
В главном окне находится меню команд, панели инструментов и палитра компонентов.
Окно стартовой формы (Form1) представляет собой заготовку главного окна разрабатываемой программы (приложения).
Рис.14 Главное окно программы
Borland C++ Builder обладает широкими возможностями доступа к базам данных. Так как базы данных предназначены не только для хранения, но и для выбора и обработки информации, одним из важнейших аспектов их использования является создание запросов к ним. Поэтому сегодня мы рассмотрим, как в C++ Builder решаются проблемы построения запросов.
Запрос в C++ Builder - это объект, представляющий собой набор данных. Обычно для создания запроса используется компонент TQuery - потомок абстрактного класса TDataSet. Программа была составлена в следующем порядке:
На начала открывается новая форма, для этого нужно нажать на компонент New Form в меню компонентов;
Далее на форму перемешается компонент ADOConnection для соединения с базой данных Access. С помощью компонента ADOConnection можно указывать местоположение базы данных и работать с транзакциями. Рассмотрим основные свойства компонента ADOConnection, отображаемые в окне инспектора объектов
Рис. 15 Соединение БД Access при помощи свойства ConnectionString
В качестве поставщика данных выберем Microsoft Jet 4.0 OLE DB Provider:
Рис. 16 Поставщик данных
Укажем путь до нашей базы данных:
Рис. 17 Путь до БД
Далее размещаем на форме компонент ADOTable для отображения наших таблиц к каждой таблице соответственно. Для связи компонентов ADOTable c ADOConnection необходимо добавить компонент DataSource.
Компонент DataSource действует как посредник между компонентами TDataSet (TTable, TQuery, TStoredProc) и компонентами Data Controls - элементами управления, обеспечивающими представление данных на форме. Компоненты TDataSet управляют связями с библиотекой Borland Database Engine (BDE), а компонент DataSource управляет связями с данными в компонентах Data Controls. Он является аналогом компонента Table, расположенного на закладке BDE, и предназначен для доступа к таблице с помощью механизма ADO. Компонент ADOTable имеет свойства, которые мы уже рассматривали ранее в компонентах Table и ADODataSet, поэтому мы не будем возвращаться к ним еще раз.
В свойстве Dataset компонента DataSource1 выберем ADOTable1:
Рис. 18 Связь компонента DataSource и ADOTable
В свойстве Connection компонента ADOTable1 выберем ADOConnection:
Рис.19 Связь компонента ADOTable и ADOConnection
Компонент TDBGrid обеспечивает табличный способ отображения на экране строк данных из компонентов TTable или TQuery. Приложение может использовать TDBGrid для отображения, вставки, уничтожения, редактирования данных БД. Обычно DBGrid используется в сочетании с DBNavigator, хотя можно использовать и другие интерфейсные элементы, включив в их обработчики событий методы First, Last, Next, Ptior, Insert,
В свойстве DataSource компонента
DBGrid1 укажем DataSource1
:
Рис. 20 Связь компонента DBGrid1 и DataSource
Функции программы:
-
Добавление нового сотрудника, изменение данных, редактирование -
Фильтрация данных (по полю Стаж работы, ID, квалификации). -
Поиск данных по полю ID, ФИО Работника. -
Сброс данных -
Сортировка по полю ФИО, Должности, Специальность, Отдел. -
Просмотр (редактирование, изменение, удаление данных формы Работники ) -
Просмотр (редактирование, изменение, удаление данных формы Должности). -
Просмотр (редактирование, изменение, удаление данных формы Образование). -
Просмотр (редактирование, изменение, удаление данных формы Отделы). -
Загрузка фото работника -
Выходной документ (список работников) -
Выход из программы
Рис. 21 Главное окно программы
Просмотр редактирование осуществляется при помощи навигационной панели
Рис. 22 Просмотр, добавление, редактирование, удаление записей
Рис. 23 Сортировка по полю ФИО
Рис. 24 Фильтрация по полю стаж работы
Рис. 25 Поиск работника по ID
Рис. 26 Кнопка Загрузить фото указывает путь к фото
Рис. 27 Кнопка Сброса возвращает к изначальной таблице
Рис. 28 Кнопка перехода к следующей форме
Рис. 29 Фильтрация по полю ID
Рис. 30 Сортировка по полю должности
Рис. 31 Переход к следующей форме
Рис. 32 Фильтрация по полю Квалификация
Рис. 33 Сортировка по полю специальность
Рис. 34 Поиск по полю ФИО работника
Рис. 35 Переход к следующей форме
Рис. 36 Переход к таблице отделы
Рис. 37 Фильтрация по полю ID
Рис. 38 Сортировка по полю Отдел
Рис. 39 Выход из программы
Выходной документ «Список работников»:
Рис. 40 Выходной документ