- •Аннотация
- •Введение
- •Назначение разработки данного проекта
- •Логическая схема программы
- •Инструкция пользователю по эксплуатации
- •Входная и выходная информация программного объекта
- •Используемые базы данных
- •Описание отдельных программных объектов
- •Системные требования
- •Программный код
- •Тексты sql-запросов
- •Заключение Используемые источники
Программный код
Unit7.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit7.h"
#include "Unit1.h"
#include "Unit4.h"
#include "Unit3.h"
#include "Unit6.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm7 *Form7;
//---------------------------------------------------------------------------
__fastcall TForm7::TForm7(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm7::N2Click(TObject *Sender) // выбор альтернативы «Получатель» в главном меню
{
Form1->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm7::N3Click(TObject *Sender) // выбор альтернативы «Банки» в главном меню
{
Form4->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm7::N4Click(TObject *Sender) // выбор альтернативы «Плательщик» в главном меню
{
Form3->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm7::N5Click(TObject *Sender) // выбор «Платежные поручения» в главном меню
{
Form6->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm7::N7Click(TObject *Sender) // выбор альтернативы «Выход» в главном меню
{
Form7->Close();
}
//---------------------------------------------------------------------------
Unit1.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{ }
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender) //сортировка по алфавиту
{
Table1->Active= false;
Table1->IndexFieldNames= "ORGANIZACI";
Table1->Active= true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender) //добавление записи
{
if (Form1->Table1->Active==false)
{
Application->MessageBox("Нет базы данных","Ошибка",MB_OK);
}
else
{
If (!Form2->Visible==true)
{
Form2->Caption= "Addition";
Form2->Edit1->Clear();
Form2->Edit2->Clear();
Form2->Edit3->Clear();
Form2->Edit5->Clear();
Form2->DBLookupComboBox1->Refresh();
Form2->Show();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender) //редактирование данных
{
If (Form1->Table1->Active==false)
{
Application->MessageBox("Нет базы данных","Ошибка",MB_OK);
}
else
{
If (!Form2->Visible==true)
{
Form2->Caption="Редактирование";
Form2->Edit1->Text= Form1->Table1->FieldByName("ORGANIZACI")->Value;
Form2->Edit2->Text= Form1->Table1->FieldByName("INN")->Value;
Form2->Edit3->Text= Form1->Table1->FieldByName("KPP")->Value;
Form2->DBLookupComboBox1->ListField= Form1->Table1->FieldByName("BANK")->Value;
Form2->Edit5->Text= Form1->Table1->FieldByName("RAS_SCHET")->Value;
Form2->Edit1->ReadOnly=true;
Form2->Show();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender) //удаление записи
{
If (Form1->Table1->Active==false)
{
Application->MessageBox("Нет базы данных","Ошибка",MB_OK);
}
else
if ( Application->MessageBox("Do your really want to detele this record?","Delete",MB_OKCANCEL)==IDOK)
Table1->Delete();
}
//---------------------------------------------------------------------------
Unit2.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{ }
//---------------------------------------------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender) // выход без сохранения (кнопка «Назад»)
{
Form2->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm2::FormCreate(TObject *Sender)
{
if (Form2->Caption == "Addition")
{
Form1->Table1->Last();
Form2->Edit1->Text=Form1->Table1->FieldByName("ORGANIZACI")->Value+1; // добавление новой строки в DBDrid1
}
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button2Click(TObject *Sender) // кнопка «Сохранить»
{
if (Form2->Caption == "Addition")
Form1->Table1->Insert();
else
Form1->Table1->Edit();
Form1->Table1->FieldByName("ORGANIZACI")->AsString=Edit1->Text;
Form1->Table1->FieldByName("INN")->AsInteger=StrToInt(Edit2->Text);
Form1->Table1->FieldByName("KPP")->AsInteger=StrToInt(Edit3->Text);
Form1->Table1->FieldByName("BANK")->AsString=DBLookupComboBox1->Text;
Form1->Table1->FieldByName("RAS_SCHET")->AsString=Edit5->Text;
Query2->SQL->Clear();
Query2->Active=false;
Query2->SQL->Add("SELECT *");
Query2->SQL->Add("FROM poluchatel");
Query2->SQL->Add("WHERE (((poluchatel.INN)='"+Edit2->Text+"'))");
Query2->Active=true;
if (0<Query2->RecordCount) //обработка ошибки дублирования данных
{
Application->MessageBox("Такой получатель уже есть!!","Ошибка",MB_OK);
}
else
Form1->Table1->Post();
Edit1->Clear();
Edit2->Clear();
Edit3->Clear();
DBLookupComboBox1->Refresh();
Edit5->Clear();
Edit1->ReadOnly=false;
Form2->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Edit5KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) // обеспечиваем ввод в поле «Рас. счет» исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Edit2KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) / / обеспечиваем ввод в поле исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Edit3KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) // обеспечиваем ввод в поле исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
Unit3.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit3.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm3 *Form3;
//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner)
: TForm(Owner)
{ }
//---------------------------------------------------------------------------
Unit4.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit4.h"
#include "Unit5.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm4 *Form4;
//---------------------------------------------------------------------------
__fastcall TForm4::TForm4(TComponent* Owner)
: TForm(Owner)
{ }
//---------------------------------------------------------------------------
void __fastcall TForm4::Button4Click(TObject *Sender) //сортировка по алфавиту
{
Table1->Active = false;
Table1->IndexFieldNames= "BANK";
Table1->Active = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::Button1Click(TObject *Sender) // нажатие кнопки «Добавить»
{
if (Form4->Table1->Active==false)
{
Application->MessageBox("No fail","Error",MB_OK);
}
else
{
If (!Form5->Visible==true)
{
Form5->Caption= "Addition";
Form5->Show();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm4::Button2Click(TObject *Sender) // нажатие кнопки «Редактировать»
{
If (Form4->Table1->Active==false)
{
Application->MessageBoxA("No fail","Error",MB_OK);
}
else
{
If (!Form5->Visible==true)
{
Form5->Caption="Редактирование";
Form5->Edit1->Text= Form4->Table1->FieldByName("BANK")->Value;
Form5->Edit2->Text= Form4->Table1->FieldByName("ADRES")->Value;
Form5->Edit3->Text= Form4->Table1->FieldByName("BIK")->Value;
Form5->Edit4->Text= Form4->Table1->FieldByName("KOR_CHET")->Value;
Form5->Edit1->ReadOnly=true;
Form5->Show();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm4::Button3Click(TObject *Sender) // удаление записи
{
If (Form4->Table1->Active==false)
{
Application->MessageBox("Нет базы данных","Ошибка",MB_OK);
}
else
if (Application->MessageBox("Do your really want to detele this record?","Delete",MB_OKCANCEL)==IDOK)
Table1->Delete();
}
//---------------------------------------------------------------------------
Unit5.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit5.h"
#include "Unit4.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm5 *Form5;
//---------------------------------------------------------------------------
__fastcall TForm5::TForm5(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm5::Button1Click(TObject *Sender) // выход без сохранения
{
Form5->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm5::Button2Click(TObject *Sender) //добавление нового банка
{
if (Form5->Caption == "Addition")
Form4->Table1->Insert();
else
Form4->Table1->Edit();
Form4->Table1->FieldByName("BANK")->AsString=Edit1->Text;
Form4->Table1->FieldByName("ADRES")->AsString=Edit2->Text;
Form4->Table1->FieldByName("BIK")->AsInteger=StrToInt(Edit3->Text);
Form4->Table1->FieldByName("KOR_CHET")->AsString=Edit4->Text;
if (Form5->Edit1->Text=="") // обработка ошибки
{
Application->MessageBox("Заполните все поля!",MB_OK);
}
else
Query1->SQL->Clear();
Query1->Active=false;
Query1->SQL->Add("SELECT *");
Query1->SQL->Add("FROM banki");
Query1->SQL->Add("WHERE (((banki.BIK)='"+Edit3->Text+"'))");
Query1->Active=true;
{
if (0<Query1->RecordCount) //обработка ошибки дублирования
{
Application->MessageBox("Такой банк уже есть!!","Ошибка",MB_OK);
}
else
Form4->Table1->Post();
Edit1->Clear();
Edit2->Clear();
Edit3->Clear();
Edit4->Clear();
Edit1->ReadOnly=false;
Form5->Close();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm5::FormCreate(TObject *Sender)
{
if (Form5->Caption == "Addition")
{
Form4->Table1->Last();
Form5->Edit1->Text=Form4->Table1->FieldByName("BANK")->Value+1; //добавление строки
}
}
//---------------------------------------------------------------------------
void __fastcall TForm5::Edit3KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) // обеспечение ввода исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm5::Edit4KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) // обеспечение ввода исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
Unit6.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit6.h"
#include "Unit8.h"
#include "Unit10.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm6 *Form6;
//---------------------------------------------------------------------------
__fastcall TForm6::TForm6(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button4Click(TObject *Sender) // сортировка по номеру платежного поручения
{
Table1->Active=false;
Table1->IndexFieldNames="NOMER";
Table1->Active=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button2Click(TObject *Sender) // удаление записи
{
if (Application->MessageBox("Удалить запись?","Delete",MB_OKCANCEL)==IDOK)
Table1->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button1Click(TObject *Sender) // добавление записи
{
Form8->Caption="Addition";
Form8-> Edit1->Clear();
Form8->Edit2->Clear();
Form8->Edit5->Clear();
Form8->Edit6->Clear();
Form8->Edit7->Clear();
Form8->DBLookupComboBox1->Refresh();
Form8->Edit8->Clear();
Form8->Edit9->Clear();
Form8->Edit10->Clear();
Form8->Edit11->Clear();
Form8->Edit13->Clear();
Form8->Edit14->Clear();
Form8->Edit12->Clear();
Form8->Edit4->Clear();
Form8->Edit3->Clear();
Form8->Show(); // открытие формы для добавления
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button5Click(TObject *Sender) // редактирование
{
Form8->Caption="Edit";
Form8->Show();
Form8->Edit1->Text=Form6->Table1->FieldByName("NOMER")->Value;
Form8->Edit2->Text=Form6->Table1->FieldByName("DATA_PLAT")->Value;
Form8->Edit3->Text=Form6->Table1->FieldByName("VID_PLATEJ")->Value;
Form8->Edit4->Text=Form6->Table1->FieldByName("STATUS")->Value;
Form8->Edit5->Text=Form6->Table1->FieldByName("SUMMA")->Value;
Form8->Edit6->Text=Form6->Table1->FieldByName("NAZNA4ENIE")->Value;
Form8->Edit7->Text=Form6->Table1->FieldByName("SROK_PLATE")->Value;
Form8->Edit8->Text=Form6->Table1->FieldByName("O4EREDNOST")->Value;
Form8->Edit9->Text=Form6->Table1->FieldByName("OSNIVANIE")->Value;
Form8->Edit10->Text=Form6->Table1->FieldByName("PERIOD")->Value;
Form8->Edit11->Text=Form6->Table1->FieldByName("NUMBER")->Value;
Form8->Edit12->Text=Form6->Table1->FieldByName("DATA")->Value;
Form8->Edit13->Text=Form6->Table1->FieldByName("TIP_PLATEG")->Value;
Form8->Edit14->Text=Form6->Table1->FieldByName("SUM_PROPIS")->Value;
Form8->DBLookupComboBox1->KeyField=Form6->Table1->FieldByName("POLUCHATEL")->Value;
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button6Click(TObject *Sender) // печать
{
Form10->QuickRep1->Preview(); // открытие окна предварительного просмотра
}
//---------------------------------------------------------------------------
Unit8.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit8.h"
#include "Unit6.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm8 *Form8;
//---------------------------------------------------------------------------
__fastcall TForm8::TForm8(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm8::Button1Click(TObject *Sender) //выход без сохранения
{
Form8->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm8::Button2Click(TObject *Sender) //добавление записи
{
If (Form8->Caption=="Addition")
Form6->Table1->Insert();
else
Form6->Table1->Edit();
Form6->Table1->FieldByName("NOMER")->AsInteger=StrToInt(Edit1->Text);
Form6->Table1->FieldByName("DATA_PLAT")->AsString=StrToDate(Edit2->Text);
Form6->Table1->FieldByName("POLUCHATEL")->AsString=DBLookupComboBox1->Text;
Form6->Table1->FieldByName("SUMMA")->AsFloat=StrToFloat(Edit5->Text);
Form6->Table1->FieldByName("NAZNA4ENIE")->AsString=Edit6->Text;
Form6->Table1->FieldByName("O4EREDNOST")->AsInteger=StrToInt(Edit8->Text);
Form6->Table1->FieldByName("SROK_PLATE")->AsString=StrToDate(Edit7->Text);
Form6->Table1->FieldByName("OSNIVANIE")->AsString=Edit9->Text;
Form6->Table1->FieldByName("PERIOD")->AsString=Edit10->Text;
Form6->Table1->FieldByName("TIP_PLATEG")->AsString=Edit13->Text;
Form6->Table1->FieldByName("SUM_PROPIS")->AsString=Edit14->Text;
Form6->Table1->FieldByName("NUMBER")->AsInteger=StrToInt(Edit11->Text);
Form6->Table1->FieldByName("STATUS")->AsInteger=StrToInt(Edit4->Text);
Form6->Table1->FieldByName("DATA")->AsString=StrToDate(Edit12->Text);
Form6->Table1->FieldByName("VID_PLATEJ")->AsString=Edit3->Text;
Form6->Table1->Post();
Edit1->Clear();
Edit2->Clear();
Edit5->Clear();
Edit6->Clear();
Edit7->Clear();
DBLookupComboBox1->Refresh();
Edit8->Clear();
Edit9->Clear(); // очищаем поля Edit перед закрытием формы
Edit10->Clear();
Edit11->Clear();
Edit13->Clear();
Edit14->Clear();
Edit12->Clear();
Edit4->Clear();
Edit3->Clear();
Edit1->ReadOnly=false;
Form8->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm8::Edit8KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) //обеспечиваем ввод исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm8::Edit11KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) //обеспечиваем ввод исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm8::Edit4KeyPress(TObject *Sender, char &Key)
{
If ((Key!=VK_BACK)&&(Key<'0'||Key>'9')) //обеспечиваем ввод исключительно цифр
Key=0;
}
//---------------------------------------------------------------------------
Unit10.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit10.h"
#include "Unit6.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm10 *Form10;
//---------------------------------------------------------------------------
__fastcall TForm10::TForm10(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------