2. Описание процесса разработки
В этом разделе описан программный проект системы.
Программа состоит из следующих модулей:
umain модуль главной формы
udm модуль данных
umc модуль формы добавления/редактирования материальных ценностей
uobj модуль формы добавления/редактирования устройств
uspr модуль формы справочников
uabout модуль формы вывода информации о программе
Cтруктура модуля umain (см. рисунок 2):
Рисунок 2. Структура модуля umain
Описание назначения компонентов модуля umain:
dbgmc |
Отображение информации о названии материальной ценности, ее стоимости, и количестве единиц |
dbemcinv |
Отображение инвентарного номера |
dbemcyear |
Отображение года |
dbemol |
Отображение имени ответственного за данную материальную ценность |
emcname |
Ввод символов для поиска конкретной материальной ценности |
sbmc |
Отображение информации об количестве отображаемых в данный момент материальных ценностей, с учетом условий поиска |
dbgobj |
Отображение информации о типе устройства и его названии |
dbefio |
Отображение имени ответственного за данное устройство |
dbefiomen |
Отображение информации о пользователе |
dbeipname |
Отображение IP-адреса устройства |
dbemcname |
Отображение информации о том, как данное устройство записано в инвентаре |
dbenobj |
Отображение серийного номера |
dbeobjrel |
Отображение информации о том, находится ли данное устройство в составе другого устройства |
dbeplacename |
Отображение информации о размещении данного устройства |
eobjname |
Ввод символов для поиска конкретного устройства |
sbobj |
Отображение информации об количестве отображаемых в данный момент устройствах, с учетом условий поиска |
Структура модуля udm (см. рисунок 3):
Рисунок 3 Структура модуля udm
Описание назначения компонентов модуля udm:
mmfmain |
Главное меню. Связано с формой модуля umain. Реализует функции вызова формы справочников, вызова формы, отображающей сведения о программе, создания отчетов и выхода из программы. |
Microsoft.Jet.OLEDB.4.0 |
Технология доступа к данным. Используется для связи с базой данных. |
tdep, dsdep |
Подключены к таблице dep |
tip, dsip |
Подключены к таблице ip |
tipcomp, dsipcomp |
Подключены к таблице ipcomp |
tmc, dsmc |
Подключены к таблице mc |
tmen, dsmen |
Подключены к таблице men |
tobj, dsobj |
Подключены к таблице obj |
tobjmc, dsobjmc |
Подключены к таблице objmc |
tobjplace, dsobjplace |
Подключены к таблице objplace |
tobjuse, dsobjuse |
Подключены к таблице objuse |
tplace, dsplace |
Подключены к таблице place |
ttip, dstip |
Подключены к таблице tip |
tvdep, dsvdep |
Подключены к запросу vdep |
tvip, dsvip |
Подключены к запросу vip |
tviponly, dsviponly |
Подключены к запросу viponly |
tvmcall, dsvmcall |
Подключены к запросу vmcall |
tvMCforOBJ, dsvMCforOBJ |
Подключены к запросу vMCforOBJ |
tvmcnotobj, dsvmcnotobj |
Подключены к запросу vmcnotobj |
tvmen, dsvmen |
Подключены к запросу vmen |
tvmol, dsvmol |
Подключены к запросу vmol |
tvobjmc, dsvobjmc |
Подключены к запросу vobjmc |
tvobjroot, dsvobjroot |
Подключены к запросу vobjroot |
tvplace, dsvplace |
Подключены к запросу vplace |
tvreport, dsvreport |
Подключены к запросу vreport |
tvtip, dsvtip |
Подключены к запросу vtip |
al |
Список процедур и функций. Процедуры и функции описаны в разделе 3, исходный код представлен в разделе 5. |
pmobj |
Всплывающее меню. Связано с dbgobj. Используется для добавления, изменения и удаления информации об устройствах. |
pmmc |
Всплывающее меню. Связано с dbgmc. Используется для вызова формы добавления/изменения и для удаления информации о материальных ценностях. |
Структура модуля umc (см. рисунок 4):
Рисунок 4 Структура модуля umc
Описание назначения компонентов модуля umc:
bcancel |
Кнопка для отмены изменений и закрытия формы. |
bsave |
Кнопка для сохранения значений и закрытия формы. |
dbecenaitog |
Поле ввода стоимости матценности. |
dbeinvn |
Поле ввода инвентарного номера. |
dbekolitog |
Поле ввода количества единиц. |
dbemcname |
Поле ввода названия материальной ценности. |
dbeyear |
Поле ввода года. |
dblcbmol |
Список для выбора ответственного за данную матценность. |
Структура модуля uobj (см. рисунок 5):
Рисунок 5. Структура модуля uobj
Описание назначения компонентов модуля uobj:
bcancel |
Кнопка для отмены изменений и закрытия формы. |
bsave |
Кнопка для сохранения значений и закрытия формы. |
dbenobj |
Поле ввода серийного номера. |
dbeobjname |
Поле ввода названия устройства. |
dblcbip |
Выбора IP-адреса для устройства из заранее сформированного списка. |
dblcbmen |
Выбор пользователя для устройства из заранее сформированного списка. |
dblcbobjrel |
Указание устройства, включающее в себя данное устройство. |
dblcbplace |
Выбор кабинета для устройства из заранее сформированного списка. |
dblcbtip |
Выбор типа устройства из заранее сформированного списка. |
Структура модуля uspr (см. рисунок 6):
Рисунок 6. Структура модуля uspr
Описание назначения компонентов модуля uspr:
dbgspr |
Предназначен для вывода справочной информации о подразделениях, кабинетах, пользователях, типах устройств и IP-адресах. |
dbnspr |
Служит для добавления и удаления информации. |
sbspr |
Отображение информации о количестве записей в справочнике. |
Структура модуля uabout (см. рисунок 7):
Рисунок 7. Структура модуля uabout
Описание назначения компонентов модуля uabout:
bclose |
Кнопка закрытия формы. |
labout |
Компонент Label. Через этот компонент выводится информация о программе. |
Процедуры модуля umain:
eobjnameChange |
Производит фильтрацию записей в dbgobj и их пересчет при изменении текста в поле. |
emcnameChange |
Производит фильтрацию записей в dbgmc и их пересчет при изменении текста в поле. |
FormActivate |
При активации главной формы вызывает процедуру fmainactivateExecute из модуля udm. |
Процедуры модуля udm:
Деление процедур на категории осуществляется в ActionList.
Процедура |
Категория |
Описание |
С чем связана |
aboutopenExecute |
about |
Выводит на экран информацию о программе. |
mmfmain.nabout.action |
aboutcloseExecute |
about |
Закрывает форму информации о программе. |
bclose.action |
fmainactivateExecute |
fmain |
Устанавливает активную вкладку компонента pcmain и подсчитывает количество устройств и материальных ценностей. |
Tfmain.FormActivate |
filterobjExecute |
fmain |
Производит фильтрацию записей в dbgobj. |
Tfmain.eobjnameChange |
filtermcExecute |
fmain |
Производит фильтрацию записей в dbgmc. |
Tfmain.emcnameChange |
exitExecute |
fmain |
Закрывает программу. |
mmfmain.nclose.action |
Процедура |
Категория |
Описание |
С чем связана |
depopenExecute |
spr |
Открывает справочник подразделений. |
mmfmain.ndep.action |
tvdepAfterPost |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvdepAfterPost |
tvdepAfterDelete |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvdepAfterDelete |
placeopenExecute |
spr |
Открывает справочник кабинетов. |
mmfmain.nplace.action |
tvplaceAfterPost |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvplaceAfterPost |
tvplaceAfterDelete |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvplaceAfterDelete |
tipopenExecute |
spr |
Открывает справочник типов устройств. |
mmfmain.ntip.action |
tvtipAfterPost |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvtipAfterPost |
tvtipAfterDelete |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvtipAfterDelete |
menopenExecute |
spr |
Открывает справочник пользователей. |
mmfmain.nmen.action |
tvmenAfterPost |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvmenAfterPost |
tvmenAfterDelete |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tvmenAfterDelete |
ipopenExecute |
spr |
Открывает справочник IP-адресов. |
mmfmain.ntip.action |
tviponlyAfterPost |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tviponlyAfterPost |
Процедура |
Категория |
Описание |
С чем связана |
tviponlyAfterDelete |
spr |
Вызывает процедуру rcountExecute. |
Tdm.tviponlyAfterDelete |
fsprcloseExecute |
spr |
Отключает режим добавления или редактирования для текущего набора данных. |
Tfspr.FormClose |
rcountExecute |
spr |
Подсчитывает количество записей в справочнике и выводит значение на строковую панель. |
tvdepAfterPost, tvdepAfterDelete, tvplaceAfterPost, tvplaceAfterDelete, tvtipAfterPost, tvtipAfterDelete, tvmenAfterPost, tvmenAfterDelete, tviponlyAfterPost, tviponlyAfterDelete |
fobjinsertExecute |
obj |
Открытие формы для добавления информации. |
pmobj.N1.action |
fobjeditExecute |
obj |
Открытие формы для изменения информации. |
pmobj.N2.action |
objdeleteExecute |
obj |
Удаление текущей записи. |
pmobj.N3.action |
fobjsaveExecute |
obj |
Сохранение значений и закрытие формы. |
fobj.bsave.action |
fobjcancelExecute |
obj |
Отмена изменений и закрытие формы. |
fobj.bcancel.action |
fobjcloseExecute |
obj |
Отключает режим добавления или редактирования для набора данных tobj. |
Tfobj.FormClose |
Процедура |
Категория |
Описание |
С чем связана |
objrefreshExecute |
obj |
Обновление информации в наборах данных и пересчет количества записей. |
tobjAfterDelete, tobjAfterPost |
tobjAfterDelete |
obj |
Вызывает процедуру objrefreshExecute. |
Tdm.tobjAfterDelete |
tobjAfterPost |
obj |
Вызывает процедуру objrefreshExecute. |
Tdm.tobjAfterPost |
fmcinsertExecute |
mc |
Открытие формы для добавления информации. |
pmmc.N4.action |
fmceditExecute |
mc |
Открытие формы для изменения информации. |
pmmc.N5.action |
mcdeleteExecute |
mc |
Удаление текущей записи. |
pmmc.N6.action |
fmcsaveExecute |
mc |
Сохранение значений и закрытие формы. |
fmc.bsave.action |
fmccancelExecute |
mc |
Отмена изменений и закрытие формы. |
fmc.bcancel.action |
fmccloseExecute |
mc |
Отключает режим добавления или редактирования для набора данных tmc. |
Tfmc.FormClose |
tmcAfterDelete |
mc |
Вызывает процедуру mcrefreshExecute. |
Tdm.tmcAfterDelete |
Процедура |
Категория |
Описание |
С чем связана |
tmcAfterPost |
mc |
Вызывает процедуру mcrefreshExecute. |
Tdm. tmcAfterPost |
mcrefreshExecute |
mc |
Обновление информации в наборе данных tmc и пересчет количества записей. |
tmcAfterDelete, tmcAfterPost |
createtipreportExecute |
report |
Создает отчет о типах устройств. |
mmfmain.nreptip.action |
createmcreportExecute |
report |
Создает отчет о материальных ценностях. |
mmfmain.nrepmc.action |
Процедуры модуля uobj:
FormClose |
Вызывает процедуру fobjcloseExecute. |
Процедуры модуля uspr:
FormClose |
Обновляет информацию в соответствующем наборе данных и вызывает выполнение процедуры fsprcloseExecute. |