Автоматизированная система анализа государственных контрактов

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

ешний ключ. [3]

 

5.1Схема данных

 

База данных BASE.FBD состоит из 9 таблиц, связанных между собой.

Таблица PODRAZDELENIYA используется для хранения данных о названиях подразделений ФССП по Архангельской области и имеет следующие поля (таблица 1):

 

Таблица 1

ИмяОписаниеТипIdидентификатор подразделения (первичный ключ)INTEGERPodrназвание подразделенияVARCHARGOS_CONTR_IDвнешний ключ на таблицу GOS_CONTRINTEGERTEX_ZAD_IDвнешний ключ на таблицу TEX_ZADINTEGERSCH_F_IDвнешний ключ на таблицу SCH_FINTEGER

Таблица NAIM_IZD используется для хранения данных о наименовании изделий и имеет следующие поля (таблица 2):

 

Таблица 2

ИмяОписаниеТипIdидентификатор изделия (первичный ключ)INTEGERNAIM_IZDнаименование изделияVARCHARVID_RAB_IDвнешний ключ на таблицу VID_RABINTEGERPRILOZH_IDвнешний ключ на таблицу PRILOZHINTEGERSCH_F_IDвнешний ключ на таблицу SCH_FINTEGER

Таблица ISPOLN используется для хранения данных об исполнителях и имеет следующие поля (таблица 3):

 

Таблица 3

ИмяОписаниеТипIdидентификатор исполнителя (первичный ключ)INTEGERNAZVНазвание исполнителяVARCHARADRESSАдрес исполнителяVARCHARDIRECTORДиректорVARCHARINNИНН исполнителяINTEGERKPPКПП исполнителяINTEGERR_SРасчетный счет исполнителяINTEGERBANKБанкVARCHARK_SКассовый счетINTEGERGOS_CONTR_IDвнешний ключ на таблицу GOS_CONTRINTEGERSCH_F_IDвнешний ключ на таблицу SCH_FINTEGER

Таблица PREDM используется для хранения данных о предметах государственных контрактов и имеет следующие поля (таблица 4):

Таблица 4

ИмяОписаниеТипIdидентификатор предмета договора, государственного контракта (первичный ключ)INTEGERPREDMпредмет договора, государственного контракта.VARCHARPRILOZH_IDвнешний ключ на таблицу PRILOZHINTEGERTEX_ZAD_IDвнешний ключ на таблицу TEX_ZADINTEGER

Таблица VID_RAB используется для хранения данных о видах работ и имеет следующие поля (таблица 5):

 

Таблица 5

ИмяОписаниеТипIdидентификатор вида работ (первичный ключ)INTEGERVID_RABвид работVARCHARNAIM_IZDнаименование изделия (вторичный ключ)INTEGERGOS_CONTR_IDвнешний ключ на таблицу GOS_CONTRINTEGERSCH_F_IDвнешний ключ на таблицу SCH_FINTEGERNAIM_IZD_IDвнешний ключ на таблицу SCH_FINTEGER

Таблица TEX_ZAD используется для хранения данных о технических заданиях для будущих государственных контрактов и договоров и имеет следующие поля (таблица 6):

 

Таблица 6

ИмяОписаниеТипIdидентификатор технического задания (первичный ключ)INTEGERPODRВнешний ключ на таблицу PODRAZDELENIYAINTEGERPREDMПредмет договора, государственного контрактаVARCHARDATA_RAZMДата размещения заявкиDATADATA_RASSMДата рассмотрения заявкиDATADATA_ZAKLДата заключения контрактаDATAN_KZНомер котировочной заявкиINTEGERPREDM_IDВнешний ключ на таблицу PREDMINTEGERN_GK_IDВнешний ключ на таблицу GOS_CONTRINTEGERТаблица GOS_CONTR используется для хранения данных о государственных контрактах и имеет следующие поля (таблица 7):

 

Таблица 7

ИмяОписаниеТипIdидентификатор государственных контрактов (первичный ключ)INTEGERNНомер государственного контрактаINTEGERDATAДатаDATAISPИсполнительINTEGERVID_RABВид работINTEGERPODRПодразделениеINTEGERSUMMСуммаINTEGERISPOLN_IDВнешний ключ на таблицу ISPOLNINTEGERVID_RAB_IDВнешний ключ на таблицу VID_RABINTEGERPODRAZDELENIYA_IDВнешний ключ на таблицу PODRAZDELENIYAINTEGER

Таблица PRILOZH используется для хранения данных о приложениях к государственным контрактам и имеет следующие поля (таблица 8):

 

Таблица 8

ИмяОписаниеТипIdидентификатор приложенийINTEGERN_DOGНомер договораINTEGERPREDMПредмет договораINTEGERVID_RABВид работINTEGERNAIM_IZDНаименование изделияINTEGERED_IZMЕдиница измеренияVARCHARKOLКоличествоINTEGERSTOIMСтоимостьINTEGERSUMMСуммаINTEGERPREDM_IDВнешний ключ на таблицу PREDMETINTEGERVID_RAB_IDВнешний ключ на таблицу VID_RABINTEGER

Таблица SCH_F используется для хранения данных о счет-фактурах и имеет следующие поля (таблица 9):

Таблица 9

ИмяОписаниеТипIdидентификатор счет-фактурINTEGERN_SCH_FНомер счет-фактурыINTEGERN_AKTAНомер актаINTEGERN_DOGНомер договораINTEGERDATAДатаISPИсполнительINTEGERPODRПодразделениеINTEGERKOLКоличествоINTEGERVID_RABВид работINTEGERNAIM_IZDНаименование изделияINTEGERPRICEСтоимостьINTEGERSTOIMСуммаINTEGERISPOLN_IDВнешний ключ на таблицу ISPOLNINTEGERPODRAZDELENIYA_IDВнешний ключ на таблицу PODRAZDELENIYAINTEGERVID_RAB_IDВнешний ключ на таблицу VID_RABINTEGERNAIM_IZD_IDВнешний ключ на таблицу NAIM_IZDINTEGER

Реляционные связи между вышеперечисленными таблицами представлены на рисунке 5.2.

 

Рис. 5.2. Реляционная схема данных

5.2Создание автоматизированной системы

 

Доступ к данным этой СУБД необходимо осуществлять с помощью SQLdb. В качестве компонентов доступа к базе данных использовался набор IBConnection. SQLdb - это интерфейс прикладного уровня, который используется разработчиками приложений для доступа к данным.

В разработке программы использовались следующие компоненты:

-IBConnection - этот компонент используется другими компонентами для подключения к источникам данных SQLdb;

-TSQLQuery - потомок TDataset и он представляет данные из SQL запроса в виде таблицы. Также этот компонент можно использовать для выполнения запроса, не возвращающих данных.

-TSQLTransaction - cоздает транзакцию на сервере базы данных.

-TDataSource - обеспечивает взаимодействие набора данных с компонентами отображения данных;

-TMainMenu - определяет главное меню формы;

-TPanel - представляет собой контейнер общего назначения;

-TEdit - представляет собой однострочный редактор текста. С его помощью можно вводить и / или отображать достаточно длинные текстовые строки;

-TDBLookupComboBox - реализация списков подстановки в текущий набор данных из другого набора данных;

-TDBEdit - представляет собой однострочный редактор текста, привязанный к определенному столбцу таблицы базы данных, позволяющий вводить и редактировать данные;

-TDBGrid - используется для манипуляций с данными, извлеченными ?/p>