Главная страница

агенство. текст. Разработка информационной системы


Скачать 136.29 Kb.
НазваниеРазработка информационной системы
Анкорагенство
Дата30.03.2023
Размер136.29 Kb.
Формат файлаdocx
Имя файлатекст.docx
ТипДиплом
#1026313
страница7 из 11
1   2   3   4   5   6   7   8   9   10   11
· Модуль редактирования проекта предназначен для редактирования данных одного конкретного проекта и задания свойств проекта для этого проекта;
· Модуль свойств проекта предназначен для ведения списка свойств проекта;
· Модуль редактирования свойства проекта предназначен для редактирования данных одного конкретного свойства;
· Модуль клиентов предназначен для просмотра и редактирования списка клиентов, включая редактирование всех данных клиента, а также для выбора клиентов в вызывающую форму;
· Модуль производителей предназначен для просмотра и редактирования списка клиентов, включая редактирование всех данных клиента, а также для выбора клиентов в вызывающую форму;
· Модуль свойств товаров предназначен для просмотра списка свойств товаров;
· Модуль редактирования свойств товаров предназначен для редактирования данных оного конкретного свойства товаров и для задания всех возможных значений этого свойства;
· Модуль значений свойств предназначен для просмотра и редактирования значений свойств товаров
· Модуль складов предназначен для просмотра списка складов и выбора складов в вызывающую форму;
· Модуль редактирования складов предназначен для редактирования данных конкретного склада;
Подсистема учета движения товаров содержит модули. Отвечающие за основной функционал программы: обеспечение движения товаров на складах и подсчет остатков товаров:
· Модуль журнала документов содержит список операций, которые записаны в таблицу операций базы данных;
· Модуль документа предназначен для редактирования одной операции, включая все ее компоненты. Этот модуль также как и модуль товаров вызывает многие другие формы для выбора значений.
· Модуль редактирования строки табличной части операции предназначена редактирования данных одной строки документа.
Подсистема аналитической отчетности включает в себя следующие модули:
· Модуль составления отчета по остаткам товаров на складах;
· Модуль составления отчета по движениям товара по складам.
В визуальной интегрированной среде разработки Borland С++ Builderосновной составной частью программы является форма. Форма инкапсулирует в себе элементы интерфейса пользователя и программный код, заключающий в себе реакцию на действия пользователя. Это полностью отвечает принципам объектно-ориентированного программирования. C++ Builder автоматически создает для формы класс формы, который содержит компоненты, размещенные на форме, свойства и методы формы как автоматически создаваемые C++ Builder, так и определяемые пользователем. В разработанном приложении определены следующие формы:
· Форма Fmain – главная форма приложения, реализованная в файле UnitMain.cpp выполняет функции основного интерфейса доступа пользователя ко всем функциям программы через главное меню приложения и панель кнопок быстрого доступа. Кроме того, главная форма выполняет роль контейнера всех остальных форм, в которых происходит ввод и обработка данных.
· Форма FTovar, реализованная в файле UnitTovar.cpp, выполняет функции просмотра списка товаров, введенных в таблицу товаров базы данных системы. Главным элементом формы является компонент DBGrid палитры компонентов C++ Builder, который отображает таблицу товаров в виде списка. Колонки компонента DBGrid отображают соответствующие поля таблицы товаров: наименование, англоязычное наименование, штрихкод и производитель. Эта же форма служит для выбора товара в случае вызова этой формы из других форм для выбора того или иного товара например в форму отчета по остаткам.
· Форма FTovarEdit, реализованная в файле UnitTovarEdit.cpp, предназначена для просмотра и редактирования данных о товаре. В этой форме расположены органы управления, в которых отображаются основные данные товара, такие как наименование, англоязычное наименование, подробное описание, синонимы, штрих-код и цена и производитель. Отметим, что производитель выбирается путем открытия формы производителей и выбора его из предлагаемого списка. Кроме основных данных в форме редактирования товара отображаются и данные связанных справочников, записи, которых связаны с данным товаром: аналоги, проекты, к которым относится товар и свойства этого товара с их значениями. Отображении данных связанных справочников в одной форме очень удобно, так как все необходимые данные о товаре находятся вместе. Их можно просмотреть и отредактировать.
· Форма FormClients, реализованная в файле FormClientsU.cpp, предназначена для просмотре и редактирования данных о контрагентах системы: поставщиках и покупателях. Форма построена таким образом, что позволяет просматривать в левой своей части список покупателей, а в правой подробные данные о текущем покупателе. В списке выводится только наименование покупателя из поля наименования таблицы базы данных, в органах управления в правой части выводятся данные из всех остальных полей. Такой подход весьма удобен, так как позволяет просматривать и редактировать полные данные о клиенте в одной форме. Кнопки «Добавить», «Сохранить» и «Удалить» вызывают процедуры, выполняющие SQL-запросы на добавление, изменение и удаление записей из базы данных.
· Форма FormVendirs, реализованная в файле FormVendirsU.cpp, предназначена для просмотре и редактирования данных о производителях товаров. Форма построена таким образом, что позволяет просматривать в левой своей части список производителей, а в правой подробные данные о текущем производителе. В списке выводится только наименование производителя из поля наименования таблицы базы данных, в органах управления в правой части выводятся данные из всех остальных полей. Такой подход весьма удобен, так как позволяет просматривать и редактировать полные данные о производителе в одной форме. Кнопки «Добавить», «Сохранить» и «Удалить» вызывают процедуры, выполняющие SQL-запросы на добавление, изменение и удаление записей из базы данных.
· Форма FProj, реализованная в файле FProjU.cpp, выполняет функции просмотра списка проектов, введенных в таблицу проектов базы данных системы. Главным элементом формы является компонент DBGrid палитры компонентов C++ Builder, который отображает таблицу проектов в виде списка. Колонки компонента DBGrid отображают только поле «Наименование» таблицы проектов. Эта же форма служит для выбора проекта в случае вызова этой формы из других форм для выбора того или иного проекта например в форму редактирования данных о товаре.
· Форма FProjEdit, реализованная в файле UnitProjEdit.cpp, предназначена для просмотра и редактирования полных данных проекта, а также для назначения проекту свойств проекта. В левой части формы в соответствующих органах управления отображаются все данные проекта из таблицы проектов: наименование, подробное наименовании и подробное описание, а в левой части располагается список свойств этого проекта. По кнопке «Добавить свойство» открывается форма для выбора справочника свойств проектов, которая позволяет выбрать и назначить проекту свойство. Удаление свойства из списка свойств проекта происходит при нажатии кнопки «Удалить свойство».
· Форма FSimp, реализованная в файле UnitSimp.cpp предназначена для просмотра списка свойств проектов, которые дополнительно характеризуют проект.
· Форма FSimpEditпредназначена для просмотра и редактирование одного конкретного свойства проекта, которое выбрали для редактирования. Форма позволяет задать основные и дополнительные данные свойства проекта.
· Форма FProperty, реализованная в файле UnitProperty.cpp, представляет из себя список свойств товаров. В этой форме присутствует лишь список наименований свойств, который пользователь может просмотреть и выбрать одно из этих свойств в вызывающую форму, если форма была открыта для выбора свойства из какой-либо другой формы.
· Форма FPropertyEdit, реализованная в файле UnitPropertyEdit.cpp предназанчена для редактирования наименования свойства и подробного описания свойства товара, а также для задания значений свойства товаров в списке в правой части формы. Кнопки управления списком позволяют открыть форму значений свойств для выбора значения свойства. Которое может быть назначено данному свойству, а также для редактирования значения свойства, удалить значение свойства.
· Форма FSklad, реализованная в файле UnitSklad.cpp предназначена для просмотра списка складов, в котором представлены наименования складов. Эта же форма позволяет выбирать текущую запись склада в вызывающую форму
· Форма FSkladEdit, реализованная в файле UnitSkladEdit.cpp предназначена для просмотра подробных данных и редактирования как наименования, так и дополнительных данных склада.
· Форма FVals, реализованная в файле UnitVals.cpp предназначена для выбора значения свойства для элемента справочника товаров и вызывается только из формы товаров. Форма значений свойств отображает список свйоств товаров либо полностью, либо только тех значений, которые подчитнены определенному свойству, которое можно выбрать нажав кнопку открытия для выбора формы свойств. После того как свойство выбрано в списке значений свойств отображаются только те значения, которое может принимать данное свойство.
· Форма FValsEdit, реализованная в файле UnitValsEdit.cpp предназначена для редактирования значения свойства товаров, путем задания его наименования и подробного описания.
· Форма FormFilter, реализованная в файле FormFilterU.cpp предназначена для решения задачи отбора товаров по совокупности их свойств. Для отбора могут использоваться как основные данные товара (наименование, англоязычное наименование, синонимы, полное наименование, подробное описание) так и связанные данные товара: аналогии и свойства товаров. Так как основные данные товара представляют из себя строковые значения, то форма предлагает пользователю организовать гибкий отбор по этим данным. Можно организовать отбор записей таблицы товары по точному совпадению на введенную фразу, по вхождению введенной фразы в поле отбора, по вхождению в поле отбора всех слов из введенной фразы в любой последовательности или по вхождению в поле отбора хотя бы одного из слов введенной фразы. Такой отбор можно организовать по любому из полей таблицы отбора. Кроме отбора по основным свойствам форма фильтра предоставляет возможность организовать отбор по проектам, которым относится товар. Для этого заполняется список проектов, записи в который добавляются путем выбора проектов из формы списка проекта, когда она открывается для выбора. Органы управления списка проектов позволяют добавлять в список записи, удалять записи из списка, отметить все записи или полностью очистить список. Все записи списка могут имеют отметку использования в отборе или не использования (галочку), сняв которую пользователь может исключить отбор по данному проекту. В результате в отбор записей справочника товаров попадут только те товары, которые относятся к перечисленным в списке проектам. Также в форме реализована отбор по свойствам товаров и их значениям. В список свойств товаров можно добавлять записи из справочника свойств путем открытия формы списка свойств для выбора и выбора из нее определенного свойства. Для текущей записи в списке свойств отображаются все значения, которое может принимать данное свойство из которых пользователь выбирает путем проставления в них отметок нужные. В результате в сформированный отбор попадут только те товары, которые имеют перечисленные в списке значения перечисленных свойств. Форма фильтра не вызывается из главного меню непосредственно, а вызывается только из формы списка товаров, в том числе, когда она открывается для выбора, в случае, если в этой форме нужно организовать отбор товаров по совокупности каких-либо критериев.
· Форма DM, реализованная в файле UnitDM.cpp представляет из себя модуль хранения компонентов С++ Builder, обеспечивающих доступ к базе данных. Для каждой таблицы базы данных выделен отдельный компонент TQuery, который позволяет вводить и выполнять SQL-запросы, которые позволяют выбирать, редактировать и удалять записи в таблицах базы данных. То что для каждой таблицы выделен лишь один компонент доступа и то что они все объединены в одном модуле связано с тем, что программа имеет MDI-интерфейс и изменении данных в одной форме приводит к моментальному изменению их отображения во всех остальных формах. Кроме компонентов доступа к данным в этой форме хранятся и компоненты, служащие источником данных для компонентов отображения данных в формах. Компонент Database обеспечивает физическую связь всех остальных компонентов программы с базой данных.
· Форма FJornal предназначена для просмотра журнала документов – т.е. перечня операций, которые уже были выполнены с товарами. В форме размещен компонент TDBGrid, который отображает список операций с указанием для каждой записи следующих параметров: дата операции, номер операции, склад, с которого оформлена операция, клиент, с которым оформлена операция.
· Форма FDocs предназначена для редактирования или ввода новой операции по движению товара на складе. В верхней части формы размещены компоненты, в которых отображаются основные свойства операции: дата и номер операции, клиент, склад и код операции. Для выбора клиента и склада открываются для выбора формы соответсвующих справочников, в которых можно выбрать нужную запись. В нижней половине формы размещена табличная часть операции, которая представляет из себя список товаров, с указанием количества.
· Форма FJornalEdit, реализованная в файле UnitJornalEdit.cpp предназначена для редактирования одной строки операции. Эта форма вызывается из формы FJornal для редактирования текущей строки. Форма предоставляет простой интерфейс для ввода и изменения товара и количества в строке. Для выбора товара вызывается форма списка справочника товаров, выбранная запись в которой переносится в форму FJornalEdit.
· Форма FUsers предназначена для ведения списка пользователей. В компоненте DBGrid данной формы при помощи SQL-запроса формируется список пользователей системы, а в органах управления отображаются свойства пользователя: логин, пароль, фамилия, имя отчество и категория пользователя. Категория пользователя отображается радиокнопками. При нажатии на кнопки управления выполняется SQL-запрос по добавлению, редактированию данных и удалению пользователя. При удалении пользователя контролируется ссылочная целостность базы данных
· Форма FReg предназначена для аутентификации пользователя при начале сеанса работы с системой. Система проверяет наличие пользователя в базе данных, сверяет его пароль и в случае успеха открывает доступ к тем функциям, которые доступны пользователю в зависимости от его уровня доступа.
· Форма FRepForm, реализованная в файле UnitRepForm.cpp предназначена для подготовки и формирования отчета по движения товара по складам. Органы управления этой формы позволяют пользователю задать условия формирования отчета, а именно выбрать клиента, с которым была проведена операция прихода или расхода, а также склад, с которого была проведена эта операция. В нижней части формы содержится таблица, в которую пользователь может выбрать несколько записей из справочника товаров, в этом случае отчет по движениям будет строиться именно по этим товарам.
Каждая форма выполняет функции соответствующего модуля при помощи компонентов среду С++ Builder, помещенных на форму из палитры компонентов. Среда быстрого создания приложений или RAD-среда (RapidApplicationDevelopment – RAD) С++ Builder используют библиотеку визуальных компонентов VCL (VisualComponentLibrary – VCL), которая состоит из готовых к употреблению визуальных и не визуальных объектов и оболочек. Она позволяет с минимальными затратами создавать приложения, в то же время предоставляя определенную степень независимости от библиотеки VCL.
При работе с компонентами С++ Builder широко использует принцип повторного использования объектов. Компоненты являются экземплярами классов которые доступны с помощью палитры компонентов ComponentPalette. Что может быть проще при создании приложения чем просто опустить нужный компонент на форму, задав его свойства, затем определив обработчики событий. Именно при помощи компонентов формы выполняют те функции, которые заложены в них.
2.3 Технологическое обеспечение задачи

2.3.1 Организация технологии сбора, передачи, обработки и выдачи информации

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

В данном разделе представлены функционально-технологические схемы решения задачи.
В первую очередь рассмотрим задачу ведения справочников, назовем ее А1. Для ее реализации менеджер по ведению каталогов сортирует данные, а затем вводит данные в соответствующие таблицы. Задача ввода данных может быть разбита на несколько этапов. Функционально-технологическая схемарешения задачи А1 приведена на рисунке 2.13.
1   2   3   4   5   6   7   8   9   10   11


написать администратору сайта