5.4.2 Работа с основным приложением (таблица дополнительных договоров)
Рисунок 5.12 – Таблица основных и дополнительных договоров
Редактирование таблицы дополнительных договоров осуществляется через диалоговые окна, возникающие при нажатии на соответствующую кнопку или при нажатии правой кнопки манипулятора мыши.
Для этой таблици характерен набор пунктов меню:
- "Добавить" для добавления записи.
- "Удалить" для удаления записи.
- "Редактировать" позволяет изменить данные о договоре.
- "Просмотр" позволяет просмотреть данные перед печатью и потом распечатать.
- "Печать" выводит данные таблици дополнительных договоров на печать.
Все остальные операции (сортировка,поиск,фильтрация и т.д.) бессмысленны, т.к. таблица является детализируемой (а не основной), что ведет за собой нарушение ссылочной целостности данных.
При изменении дополнительного договора открывается новое окно, где пользователь изменяет данные (Регистрационный номер, юридический номер, дату регистрации, дату договора, срок окончанияпредмета договора, сумму договора и исполнителя) о договоре.
Рисунок 5.13 – Редактирование доп. Договоров
При добавлении дополнительного договора открывается новое окно, где пользователь вносит данные (Регистрационный номер, юридический номер, дату регистрации, дату договора, срок окончания, предмета договора, сумму договора и исполнителя) о договоре. Контрагента нельзя вносить в таблицу дополнительных договоров, т.к. она связана с таблицей основных договоров по этому полю. При внесении новой записи в таблицу дополнительных договоров данные о контрагенте автоматически добавляются из таблици основных договоров .Окно "Добавить запись доп. договора" выглядит так же как и редактирование.
При нажатии на кнопки "Просмотр" и "Печать" программа выполняет те же действия что и в таблице основных договоров. См. стр. 7
Рисунок 5.14 -Выходной документ дополнительных договоров
5.5 Рекомендации по освоениюДля освоения описываемого приложения пользователю достаточно опыта работы в самых обычных Windows – приложениях, поскольку интерфейс программы прост, и все его элементы снабжены всплывающими подсказками. Для закрепления навыков пользователю предоставляется возможность произвести базовые операции работы с б.д.. А также администратор может предоставить пользователю фиктивную БД, с которой можно отработать основные операции, реализуемые программой, после чего приступать к работе с реальной БД.
Приложение "Law" достаточно эффективно решает поставленную задачу, простой и понятный интерфейс программы доступен любому пользователю, имеется весь необходимый набор операций для выполнения поставленных задач.
К достоинствам программы следует причислить отсутствие требования знаний СУБД к пользователю, возможность экспорта данных в средства Ms Office, а так же различные виды печати и богатый набор функций и инструментов для работы с данными.
Недостатками программы являются отсутствие справки .
Список использованных источников
1. Томас К., Каролин Б., Анна С. Базы данных. Проектирование, реализация и сопровождение. Теория и практика, Второе издание исправленное и дополненное, Вильяис, М. – 2000г.
2. Джен Харрингтон Проектирование объектно-реляционных баз данных, ДМК издательство, М. – 2000г.3. Глушаков С.В., Ломотько Д.В. Базы Данных.Учебный курс, издательство АСТ, М. – 2002г.
4. Вендров А.М. Проектирование программного обеспечения экономических информационных систем: учебник, финансы и статистика, М. – 2003г.
5. Малыхина M. П. Базы данных: основы, проектирование, использование, СПб., БВХ-Петербург, 2004г.
6.Кириллов В.В. Структуризованный язык запросов (SQL). СПб.: ИТМО, 1994г.
Приложение А (обязательное)
Описание модулей программы
Основной модуль программы -MainUnit
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "DataModule.h"
#include "MainUnit.h"
#include "Saw21.h"
#include "Unit2.h"
#include "Unit3.h"
#include "Unit13.h"
#include "Unit14.h"
#include "Unit15.h"
#include "Unit16.h"
#include "Unit17.h"
#include "Unit18.h"
#include "Unit19.h"
#include "Unit20.h"
#include "Unit21.h"
#include "Unit22.h"
#include "Unit25.h"
#include "Unit26.h"
#include "ContractorDiagram.h"
#include "DateAgreemDiagram.h"
#include "ObjectAgreemDiagramm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "CSPIN"
#pragma link "FR_Class"
#pragma link "FR_Chart"
#pragma link "FR_ChBox"
#pragma link "FR_DCtrl"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
RadioButton3->Checked=false; /*Установка видимости компонентов при создании формы */
Edit1->Text="by Evgen Corp. version1.0(Demo)";
ToolButton9->Enabled=false;
EditObjAgreem->Visible=false;
// DataModule2->Table1->Active=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N15Click(TObject *Sender)
{
DataModule2->Table1->IndexFieldNames="Register_number";/*Сортировка по регистрационному номеру */
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N16Click(TObject *Sender)
{
DataModule2->Table1->IndexFieldNames="Juridical_number";/* Сортировка по юридическому номеру*/
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N17Click(TObject *Sender)
{
DataModule2->Table1->IndexFieldNames="Contractor";/* Сортировка по контрагенту */
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N18Click(TObject *Sender)
{
FormBySort->ShowModal(); /Вызов формы сортировки
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(RadioButton3->Checked==true)/*При выборе включаем фльтр*/
DataModule2->Table1->Filtered=false;
else
{
if (RadioButton1->Checked==true)
DataModule2->Table1->Filter="Contractor='"+CBContract->Text+"'";/*Фильтр по контрагенту*/
else if(RadioButton2->Checked==true)
{
DataModule2->Table1->Filter="Object_agreement='"+EditObjAgreem->Text+"'";/*Фильтр по предмету договора*/
}
else DataModule2->Table1->Filter= "(Contractor='"+CBContract->Text+"') and (Object_agreement="+(DataModule2->Table1->FieldByName("Object_agreement")->AsString+EditObjAgreem->Text)+")";/*Фильтр по контрагенту и предмету договора*/
}
DataModule2->Table1->Filtered=false;/*Выключаем фильтр*/
DataModule2->Table1->Refresh();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N9Click(TObject *Sender)
{
Form2->ShowModal();//Вызов формы "Добавить договор"
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N10Click(TObject *Sender)
{
Form3->ShowModal();//Вызов формы "Редактировать договор"
Form3->Position=poOwnerFormCenter;/*Установка свойств формы(позиция и стиль)*/
Form3->BorderStyle=bsToolWindow;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N11Click(TObject *Sender)
{
if(Application->MessageBox("Вы действительно хотите удалить запись?","Подтвердите удаление записи!",MB_YESNO+MB_ICONEXCLAMATION)==IDYES)
DataModule2->Table1->Delete();
DataModule2->Table1->Refresh();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton13Click(TObject *Sender)
{
Form1->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton5Click(TObject *Sender)
{
if(DataModule2->Table1->Modified==true)//Сохраняем изменения в базе
DataModule2->Table1->Post();
ShowMessage("Вы сохранили изменнения в таблице!!");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::DBGrid1DblClick(TObject *Sender)
{
Form3->ShowModal();//Вызов формы "Редактировать договор"
Form3->Position=poOwnerFormCenter;
Form3->BorderStyle=bsToolWindow;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton11Click(TObject *Sender)
{
DataModule2->Table1->Next();//Переходим на след. запись
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N6Click(TObject *Sender)
{
if(DataModule2->Table1->Modified==true)//Сохраняем изменения в таблице
DataModule2->Table1->Post();
ShowMessage("Вы сохранили изменнения в таблице!!");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton3Click(TObject *Sender)
{
Form2->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ToolButton7Click(TObject *Sender)
{
ReportAgreem->QuickRep1->Print();//Печать
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N27Click(TObject *Sender)
{
ReportAgreem->QuickRep1->Preview();//Предварительный просмотр перед //печатью
}
//---------------------------------------------------------------------------
void __fastcall TForm1::QuickReport1Click(TObject *Sender)
{
ReportAgreem->QuickRep1->Print();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Form14->QuickRep1->Preview();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Form14->QuickRep1->Print();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
Form15->ShowModal();
Form15->Position=poOwnerFormCenter;
Form15->BorderStyle=bsToolWindow;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button6Click(TObject *Sender)
{
if(Application->MessageBox("Вы действительно хотите удалить запись?","Подтвердите удаление записи!",MB_YESNO+MB_ICONEXCLAMATION)==IDYES)
DataModule2->Table2->Delete();
DataModule2->Table2->Refresh();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
{
Form16->ShowModal();
Form16->Position=poOwnerFormCenter;
Form16->BorderStyle=bsToolWindow;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::DBGrid2DblClick(TObject *Sender)
{
Form16->ShowModal();
Form15->Position=poOwnerFormCenter;
Form15->BorderStyle=bsToolWindow;
}
void __fastcall TForm1::N29Click(TObject *Sender)
{
Form17->ShowModal();
Form15->Position=poOwnerFormCenter;
Form15->BorderStyle=bsToolWindow;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N8Click(TObject *Sender)
{
Form1->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N110Click(TObject *Sender)
{
Form18->ShowModal();
Form15->Position=poOwnerFormCenter;
Form15->BorderStyle=bsToolWindow;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N30Click(TObject *Sender)
{
Form19->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N35Click(TObject *Sender)
{
Form22->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MsWord1Click(TObject *Sender)
{
Form20->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N7Click(TObject *Sender)
{
DBGrid1->Visible=true;
DBGrid2->Visible=true;
EditObjAgreem->Visible=true;
Edit1->Visible=false;
Memo1->Visible=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N13Click(TObject *Sender)
{
DataModule2->Table1->Filtered=false;
DataModule2->Table1->Active=false;
DataModule2->Table1->Active=true;
RadioButton1->Checked=false;
RadioButton2->Checked=false;
RadioButton3->Checked=false;
RadioButton4->Checked=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MsWord21Click(TObject *Sender)
{
Form23->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N37Click(TObject *Sender)
{
DataModule2->Table3->Active=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N38Click(TObject *Sender)
{
DataModule2->Table3->Active=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N39Click(TObject *Sender)
{
Form25->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N40Click(TObject *Sender)
{
Form26->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N41Click(TObject *Sender)
{
Form2->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N42Click(TObject *Sender)
{
Form3->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N43Click(TObject *Sender)
{
if(Application->MessageBox("Вы действительно хотите удалить запись?","Подтвердите удаление записи!",MB_YESNO+MB_ICONEXCLAMATION)==IDYES)
DataModule2->Table1->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N44Click(TObject *Sender)
{
DataModule2->Table1->Filtered=false;
DataModule2->Table1->Active=false;
DataModule2->Table1->Active=true;
RadioButton1->Checked=false;
RadioButton2->Checked=false;
RadioButton3->Checked=false;
RadioButton4->Checked=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N45Click(TObject *Sender)
{
Form25->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N46Click(TObject *Sender)
{
Form26->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N47Click(TObject *Sender)
{
ReportAgreem->QuickRep1->Preview();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N48Click(TObject *Sender)
{
Form20->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N49Click(TObject *Sender)
{
Form15->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N50Click(TObject *Sender)
{
Form16->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N51Click(TObject *Sender)
{
DataModule2->Table2->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N52Click(TObject *Sender)
{
Form14->QuickRep1->Preview();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N12Click(TObject *Sender)
{
Form1->frReport1->ShowReport();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N19Click(TObject *Sender)
{
FormRep->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N55Click(TObject *Sender)
{
FormRepAgreem->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N57Click(TObject *Sender)
{
Form4->ShowModal();
}
//---------------------------------------------------------------------------
Unit20
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Saw12.h"
#include "Unit20.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Word_2K_SRVR"
#pragma resource "*.dfm"
TForm20 *Form20;
//---------------------------------------------------------------------------
__fastcall TForm20::TForm20(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton2Click(TObject *Sender)
{
//Прверка наличия открытого документа
if(WordApplication1->Documents->Count==0)
{
Application->MessageBoxA(PChar("В Word нет открытого документа"),"Varning",MB_OK+MB_ICONEXCLAMATION);
Abort();
}
WordDocument1->ConnectTo(WordApplication1->ActiveDocument);
}
//---------------------------------------------------------------------------
void __fastcall TForm20::FormCreate(TObject *Sender)
{
DataModule2->Table1->Open();
//Выключение проверок синтаксиса и грамматики что бы не замедлять работу Winword
WordApplication1->Options->CheckSpellingAsYouType=false;
WordApplication1->Options->CheckGrammarAsYouType=false;
if(WordApplication1->Documents->Count==0)
{
ToolButton3->Enabled=false;
ToolButton4->Enabled=false;
ToolButton6->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton5Click(TObject *Sender)
{
//Открытие нового документа
WordApplication1->Documents->Add(EmptyParam, EmptyParam);
ToolButton3->Enabled=true;
ToolButton4->Enabled=true;
ToolButton5->Enabled=true;
ToolButton6->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton6Click(TObject *Sender)
{
//Перенос в документ всех записей
TBookmark SavePlace;
//Закладка на текущей записи
SavePlace=DataModule2->Table1->GetBookmark();
DataModule2->Table1->First();
StatusBar1->SimpleText="Идет формирование документа";
//Настройка диаграммы
ProgressBar1->Max=DataModule2->Table1->RecordCount;
ProgressBar1->Position=0;
ProgressBar1->Visible=true;
//Цикл по записям
while(! DataModule2->Table1->Eof)
{
ARecordExecuteClick(Sender);
ProgressBar1->Position=ProgressBar1->Position+1;
DataModule2->Table1->Next();
}
//Возвращение на текущую запись
DataModule2->Table1->GotoBookmark(SavePlace);
//Очистка закладки,полосы состояния и диаграммы
StatusBar1->SimpleText="";
ProgressBar1->Visible=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ARecordExecuteClick(TObject *Sender)
{
TVariant snew="\n";
//Перенос в документ одной записи
//DocumentSearch();
WordApplication1->Selection->InsertAfter(snew);
WordApplication1->Selection->InsertAfter(
TVariant(DataModule2->Table1Register_number->AsString + ' ' +
DataModule2->Table1Juridical_number->AsString + ' ' +
DataModule2->Table1Date_register->AsDateTime + ' ' +
DataModule2->Table1Date_agreement->AsDateTime + ' ' +
DataModule2->Table1Contractor->AsString + ' ' +
DataModule2->Table1Object_agreement->AsString + ' ' +
DataModule2->Table1Sum_agreement->AsInteger+ '\n'));
WordApplication1->Selection->InsertAfter(snew);
if(ToolButton7->Enabled==true)
{
WordApplication1->Selection->InsertAfter(
TVariant (DataModule2->Table1Date_completion->AsString + "Срок окончания \n"));
WordApplication1->Selection->InsertAfter(snew);
}
if(ToolButton8->Enabled==true)
{
WordApplication1->Selection->InsertAfter(
TVariant (DataModule2->Table1Perfomance->AsString + "Исполнитель\n"));
}
WordFont1->ConnectTo(WordApplication1->Selection->Font);
WordParagraphFormat1->ConnectTo(WordApplication1->Selection->ParagraphFormat);
TVariant Direction = wdCollapseEnd;
WordApplication1->Selection->Collapse(&Direction);
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton3Click(TObject *Sender)
{
//DocumentSearch();
WordApplication1->Dialogs->Item(wdDialogFileSaveAs)->Show(EmptyParam);
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton1Click(TObject *Sender)
{
//Открытие и соединение с word, если пользователь случайно закрыл его
WordApplication1->Connect();
//Включение видимости сервера
WordApplication1->Visible;
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ApplicationEvents1Hint(TObject *Sender)
{
//Отображение подсказок в строке состояния
StatusBar1->SimpleText=Application->Hint;
}
//---------------------------------------------------------------------------
void __fastcall TForm20::FormDestroy(TObject *Sender)
{
//Разрываем соединение с базой
DataModule2->Table1->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton4Click(TObject *Sender)
{
//Предварительный просмотр документа
//DocumentSearch();
WordDocument1->PrintPreview();
WordApplication1->Visible;
}
//---------------------------------------------------------------------------
void __fastcall TForm20::BitBtn1Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm20::ToolButton15Click(TObject *Sender)
{
//Открытие файла
WordApplication1->Visible;
if(WordApplication1->Dialogs->Item(wdDialogFileOpen)->Show(EmptyParam)==-1)
{
ToolButton3->Enabled=false;
ToolButton4->Enabled=false;
ToolButton5->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm20::CheckBox1Click(TObject *Sender)
{
if(CheckBox1->Checked==true){
ToolButton6->Enabled=true;
ToolButton7->Enabled=true;
ToolButton8->Enabled=true;}
else {
ToolButton6->Enabled=false;
ToolButton7->Enabled=false;
ToolButton8->Enabled=false; }
}
//---------------------------------------------------------------------------
void __fastcall TForm20::FormShow(TObject *Sender)
{
CheckBox1->Checked=false;
}
//---------------------------------------------------------------------------
//Поиск в БД
#include <vcl.h>
#pragma hdrstop
#include "Unit25.h"
#include "Saw12.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm25 *Form25;
//---------------------------------------------------------------------------
__fastcall TForm25::TForm25(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm25::ComboBox1Change(TObject *Sender)
{
if(ComboBox1->ItemIndex==0){ //Установка видимости компонентов, //связанных с данными
EditReg->Visible=true;
EditJur->Visible=false;
EditDateReg->Visible=false;
EditDateAgreem->Visible=false;
EditObjAgreem->Visible=false;
EditContractor->Visible=false;}
else if(ComboBox1->ItemIndex==1){
EditJur->Visible=true;
EditReg->Visible=false;
EditDateReg->Visible=false;
EditDateAgreem->Visible=false;
EditObjAgreem->Visible=false;
EditContractor->Visible=false;}
else {if(ComboBox1->ItemIndex==2){
EditDateReg->Visible=true;
EditJur->Visible=false;
EditReg->Visible=false;
EditDateAgreem->Visible=false;
EditObjAgreem->Visible=false;
EditContractor->Visible=false;
}
else {if(ComboBox1->ItemIndex==3){
EditDateAgreem->Visible=true;
EditDateReg->Visible=false;
EditJur->Visible=false;
EditReg->Visible=false;
EditObjAgreem->Visible=false;
EditContractor->Visible=false;
}
else {if(ComboBox1->ItemIndex==4){
EditObjAgreem->Visible=true;
EditDateReg->Visible=false;
EditJur->Visible=false;
EditReg->Visible=false;
EditDateAgreem->Visible=false;
EditContractor->Visible=false;
}
else {if(ComboBox1->ItemIndex==5){
EditContractor->Visible=true;
EditDateReg->Visible=false;
EditJur->Visible=false;
EditReg->Visible=false;
EditDateAgreem->Visible=false;
EditObjAgreem->Visible=false;
}
}
}
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm25::BitBtn2Click(TObject *Sender)
{
Form25->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm25::BitBtn1Click(TObject *Sender)
{
if(ComboBox1->ItemIndex==0){ //Поиск в записи в базе данных
DataModule2->Table1->IndexFieldNames="Register_number";
DataModule2->Table1->SetKey();
DataModule2->Table1->FieldByName("Register_number")->AsString=EditReg->Text;
Form25->Close();
if(!DataModule2->Table1->GotoKey())
ShowMessage("Запись не найдена!");}
else {if(ComboBox1->ItemIndex==1){
DataModule2->Table1->IndexFieldNames="Juridical_number"; //
DataModule2->Table1->SetKey();
DataModule2->Table1->FieldByName("Juridical_number")->AsInteger=StrToInt(EditJur->Text);
Form25->Close();
if(!DataModule2->Table1->GotoKey())
ShowMessage("Запись не найдена!!");}
else {if(ComboBox1->ItemIndex==2){
DataModule2->Table1->IndexFieldNames="Date_register";
DataModule2->Table1->SetKey();
DataModule2->Table1->FieldByName("Date_register")->AsDateTime=StrToDate(EditDateReg->Text); //
Form25->Close();
if(!DataModule2->Table1->GotoKey())
ShowMessage("Запись не найдена");}
else {if(ComboBox1->ItemIndex==3){
DataModule2->Table1->IndexFieldNames="Date_agreement"; //
DataModule2->Table1->SetKey();
DataModule2->Table1->FieldByName("Date_agreement")->AsDateTime=StrToDate(EditDateAgreem->Text);
Form25->Close();
if(!DataModule2->Table1->GotoKey())
ShowMessage("Запись не найдена");}
else {if(ComboBox1->ItemIndex==4){
DataModule2->Table1->IndexFieldNames="Object_agreement"; //
DataModule2->Table1->SetKey();
DataModule2->Table1->FieldByName("Object_agreement")->AsString=EditObjAgreem->Text;
Form25->Close();
if(!DataModule2->Table1->GotoKey())
ShowMessage("Запись не найдена");}
else {if(ComboBox1->ItemIndex==5){
DataModule2->Table1->IndexFieldNames="Contractor";
DataModule2->Table1->SetKey();
DataModule2->Table1->FieldByName("Contractor")->AsString=EditContractor->Text;
Form25->Close();
if(!DataModule2->Table1->GotoKey())
ShowMessage("Запись не найдена");}
}
}
}
}
}
}
//---------------------------------------------------------------------------
Модуль фильтрации БД
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit26.h"
#include "Saw12.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm26 *Form26;
//---------------------------------------------------------------------------
__fastcall TForm26::TForm26(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm26::BitBtn2Click(TObject *Sender)
{
Form26->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm26::ComboBox1Change(TObject *Sender)
{
if(ComboBox1->ItemIndex==0){
Label2->Visible=true;
Label3->Visible=true;
EditDateRegMin->Visible=true;
EditDateRegMax->Visible=true;
EditSumAgrMin->Visible=false;
EditSumAgrMax->Visible=false;
EditDateCompMin->Visible=false;
EditDateCompMax->Visible=false;
EditDateAgreemMin->Visible=false;
EditDateAgreemMax->Visible=false;}
else { if(ComboBox1->ItemIndex==1){
Label2->Visible=true;
Label3->Visible=true;
EditDateAgreemMin->Visible=true;
EditDateAgreemMax->Visible=true;
EditDateRegMin->Visible=false;
EditDateRegMax->Visible=false;
EditSumAgrMin->Visible=false;
EditSumAgrMax->Visible=false;
EditDateCompMin->Visible=false;
EditDateCompMax->Visible=false;}
else {if(ComboBox1->ItemIndex==2){
Label2->Visible=true;
Label3->Visible=true;
EditDateCompMin->Visible=true;
EditDateCompMax->Visible=true;
EditDateAgreemMin->Visible=false;
EditDateAgreemMax->Visible=false;
EditDateRegMin->Visible=false;
EditDateRegMax->Visible=false;
EditSumAgrMin->Visible=false;
EditSumAgrMax->Visible=false;}
else {if(ComboBox1->ItemIndex==3){
Label2->Visible=true;
Label3->Visible=true;
EditSumAgrMin->Visible=true;
EditSumAgrMax->Visible=true;
EditDateCompMin->Visible=false;
EditDateCompMax->Visible=false;
EditDateAgreemMin->Visible=false;
EditDateAgreemMax->Visible=false;
EditDateRegMin->Visible=false;
EditDateRegMax->Visible=false;
}
}
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm26::FormShow(TObject *Sender)
{
Label2->Visible=false;
Label3->Visible=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm26::BitBtn1Click(TObject *Sender)
{
if(ComboBox1->ItemIndex==0){
DataModule2->Table1->IndexFieldNames="Date_register";
DataModule2->Table1->SetRangeStart();
DataModule2->Table1->FieldByName("Date_register")->AsDateTime=StrToDate(EditDateRegMin->Text);
DataModule2->Table1->SetRangeEnd();
DataModule2->Table1->FieldByName("Date_register")->AsDateTime=StrToDate(EditDateRegMax->Text);
DataModule2->Table1->ApplyRange();
DataModule2->Table1->Refresh();
Form26->Close();}
else {if(ComboBox1->ItemIndex==1){
DataModule2->Table1->IndexFieldNames="Date_agreement";
DataModule2->Table1->SetRangeStart();
DataModule2->Table1->FieldByName("Date_agreement")->AsDateTime=StrToDate(EditDateAgreemMin->Text);
DataModule2->Table1->SetRangeEnd();
DataModule2->Table1->FieldByName("Date_agreement")->AsDateTime=StrToDate(EditDateAgreemMax->Text);
DataModule2->Table1->ApplyRange();
DataModule2->Table1->Refresh();
Form26->Close();}
else {if(ComboBox1->ItemIndex==2){
DataModule2->Table1->IndexFieldNames="Date_completion";
DataModule2->Table1->SetRangeStart();
DataModule2->Table1->FieldByName("Date_completion")->AsDateTime=StrToDate(EditDateCompMin->Text);
DataModule2->Table1->SetRangeEnd();
DataModule2->Table1->FieldByName("Date_completion")->AsDateTime=StrToDate(EditDateCompMax->Text);
DataModule2->Table1->ApplyRange();
DataModule2->Table1->Refresh();
Form26->Close();}
else {if(ComboBox1->ItemIndex==3){
DataModule2->Table1->IndexFieldNames="Sum_agreement";
DataModule2->Table1->SetRangeStart();
DataModule2->Table1->FieldByName("Sum_agreement")->AsString=EditSumAgrMin->Text;
DataModule2->Table1->SetRangeEnd();
DataModule2->Table1->FieldByName("Sum_agreement")->AsString=EditSumAgrMax->Text;
DataModule2->Table1->ApplyRange();
DataModule2->Table1->Refresh();//
Form26->Close();}
}
}
}
}
//---------------------------------------------------------------------------
Приложение Б (обязательное)
Отчеты
Рисунок А.1 - Отчет по основным договорам
Рисунок A.1 - Отчет по дополнительным договорам
... непосредственно к таблицам системы, а также к сектору отчетов, где отображаются характеристики работы средства размещения и строятся диаграммы. Необходимы также элементы управления, позволяющие управлять построением отчетов и их распечаткой. Среди автоматических возможностей системы чрезвычайно полезным может оказаться ежедневная распечатка предстоящих заездов и выездов, осуществляемая системой ...
... Ø учет информации о безналичных расчетах, Ø получение финансовых и статистических отчетов. IV. Отечественные системы бронирования и резервирования. 4.1. Сирена. 4.1.1.История создания. Первая автоматизированная система резервирования авиационных билетов «СИРЕНА» в бывшем СССР, разработанная учёными АН СССР и специалистами ...
... продукции, создавать новые рынки, расширять производство, изменять организационные структуры управления, обеспечивая их адаптивность к основным изменениям характеристики рынка и поведения потребителя. Использование автоматизированной системы продажи сотовых телефонов, которая включает в себя создание базы данных клиентов, дает возможность отслеживать потребности и приоритеты в выборе телефона ...
... не всегда можно выразить в цифрах, и определяется она обычно целым комплексом организационно-технических решений и субъективных обстоятельств. 3. Проект внедрения компьютерной системы управления гостиничным предприятием на примере гостиницы «Александровский сад» 3.1 Общая характеристика гостиницы «Александровский сад» Гостиничный комплекс "Александровский сад" открылся в Нижнем Новгороде ...
0 комментариев