Смекни!
smekni.com

Реляційна база данних трудової книжки (стр. 3 из 3)

CheckBox5->Checked = Table1->Fields->FieldByName("isgpdgod")->AsInteger ? true:false;

CheckBox6->Checked = Table1->Fields->FieldByName("iskruzok")->AsInteger ? true:false;

CheckBox7->Checked = Table1->Fields->FieldByName("isklasruk")->AsInteger ? true:false;

CheckBox8->Checked = Table1->Fields->FieldByName("iskabinet")->AsInteger ? true:false;

CheckBox9->Checked = Table1->Fields->FieldByName("isproverkatet")->AsInteger ? true:false;

CheckBox10->Checked = Table1->Fields->FieldByName("ispsiholog")->AsInteger ? true:false;

CheckBox11->Checked = Table1->Fields->FieldByName("isorganizator")->AsInteger ? true:false;

CheckBox23->Checked = Table1->Fields->FieldByName("ismuzskola")->AsInteger ? true:false;

//utrimannya

CheckBox12->Checked = Table1->Fields->FieldByName("isprofsoyuz")->AsInteger ? true:false;

CheckBox13->Checked = Table1->Fields->FieldByName("islgotnik")->AsInteger ? true:false;

CheckBox14->Checked = Table1->Fields->FieldByName("ismnogodetmama")->AsInteger ? true:false;

CheckBox15->Checked = Table1->Fields->FieldByName("isodinokmama")->AsInteger ? true:false;

CheckBox16->Checked = Table1->Fields->FieldByName("isvdova")->AsInteger ? true:false;

CheckBox17->Checked = Table1->Fields->FieldByName("isvdovec")->AsInteger ? true:false;

CheckBox18->Checked = Table1->Fields->FieldByName("isdetiinvalidi")->AsInteger ? true:false;

CheckBox21->Checked = Table1->Fields->FieldByName("ispens")->AsInteger ? true:false;

//sotrudniki

CheckBox19->Checked = Table1->Fields->FieldByName("issotrudnik")->AsInteger ? true:false;

RadioButton1->Checked = Table1->Fields->FieldByName("isadminsotr")->AsInteger ? true:false;

//derzsluzbovci

CheckBox20->Checked = Table1->Fields->FieldByName("isderzsluzbovec")->AsInteger ? true:false;

}

//---------------------------------------------------------------------------

void __fastcall Talgo::FormClose(TObject *Sender, TCloseAction &Action)

{

activeflag=0;

Table1->Close();

Table2->Close();

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo2Change(TObject *Sender)

{

if(activeflag){

Query2->Close();

Query2->SQL->Clear();

Query2->SQL->Add(

"select constanta from z_nastr_vch_kateg where id="+wwDBLookupCombo2->Text

);

Query2->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo3Change(TObject *Sender)

{

if(activeflag){

Query3->Close();

Query3->SQL->Clear();

Query3->SQL->Add(

"select constanta from z_nastr_vch_perevirkazosh where id="+wwDBLookupCombo3->Text

);

Query3->Open();

}

}

//---------------------------------------------------------------------------

void Talgo::knopka()

{

AnsiString x="";

vbazu();

Query8->SQL->Clear();

Query8->SQL->Add(" delete from z_algo_result ");

Query8->ExecSQL();

Query8->SQL->Clear();

Query8->SQL->Add(" insert into z_algo_result values(1,0,0,0,0)");

Query8->ExecSQL();

//vchiteli

Query4->Close();

Query4->Open();

char buf[30];

sprintf(buf,"%f",Query4->Fields->FieldByName("res")->AsFloat);

Query8->SQL->Clear();

Query8->SQL->Add(

x+" update z_algo_result set vchzarp="+buf

);

Query8->ExecSQL();

//sotrudnik inshi

if(Table1->Fields->FieldByName("issotrudnik")->AsInteger && RadioButton2->Checked){

sprintf(buf,"%f", DBText26->Caption.ToDouble() );

Query8->SQL->Clear();

Query8->SQL->Add(

x+" update z_algo_result set spivrobzarp = "+buf

);

Query8->ExecSQL();

}

//sotrudnik admin

if(Table1->Fields->FieldByName("issotrudnik")->AsInteger && RadioButton1->Checked){

sprintf(buf,"%f",Table1->Fields->FieldByName("admsotrstavka")->AsFloat * (1+DBText32->Caption.ToDouble()/100));

Query8->SQL->Clear();

Query8->SQL->Add(

x+" update z_algo_result set spivrobzarp = "+buf

);

Query8->ExecSQL();

}

//derzsluzbovec

if(Table1->Fields->FieldByName("isderzsluzbovec")->AsInteger){

sprintf(buf,"%f",(DBText15->Caption.ToDouble()+DBText17->Caption.ToDouble())*(1+DBText19->Caption.ToDouble()/100+DBText21->Caption.ToDouble()/100+DBText29->Caption.ToDouble()/100));

Query8->SQL->Clear();

Query8->SQL->Add(

x+" update z_algo_result set derzsluzzarp = "+buf

);

Query8->ExecSQL();

}

//utrimano

if(wwDBLookupCombo6->Text.ToInt() == 1 ){

Query9->Close();

Query9->Open();

sprintf(buf,"%f",Query9->Fields->FieldByName("res")->AsFloat);

}

if(wwDBLookupCombo6->Text.ToInt() == 2 ){

Query16->Close();

Query16->Open();

sprintf(buf,"%f",Query16->Fields->FieldByName("res")->AsFloat);

}

Query8->SQL->Clear();

Query8->SQL->Add(

x+" update z_algo_result set utrim="+buf

);

Query8->ExecSQL();

Query10->Close();

Query10->Open();

}

void Talgo::vbazu(){

Table1->Refresh();

Table1->Edit();

// uchiteli

Table1->Fields->FieldByName("iskategoriya")->AsInteger = CheckBox3->Checked;

Table1->Fields->FieldByName("isnachskgod")->AsInteger = CheckBox2->Checked ? 1:0;

Table1->Fields->FieldByName("isstklasigod")->AsInteger = CheckBox4->Checked ? 1:0;

Table1->Fields->FieldByName("isgpdgod")->AsInteger = CheckBox5->Checked ? 1:0;

Table1->Fields->FieldByName("iskruzok")->AsInteger = CheckBox6->Checked ? 1:0;

Table1->Fields->FieldByName("isklasruk")->AsInteger = CheckBox7->Checked ? 1:0;

Table1->Fields->FieldByName("iskabinet")->AsInteger = CheckBox8->Checked ? 1:0;

Table1->Fields->FieldByName("isproverkatet")->AsInteger = CheckBox9->Checked ? 1:0;

Table1->Fields->FieldByName("ispsiholog")->AsInteger = CheckBox10->Checked ? 1:0;

Table1->Fields->FieldByName("isorganizator")->AsInteger = CheckBox11->Checked ? 1:0;

Table1->Fields->FieldByName("ismuzskola")->AsInteger = CheckBox23->Checked ? 1:0;

//sotr

Table1->Fields->FieldByName("isadminsotr")->AsInteger = RadioButton1->Checked ? 1:0;

// urtimannya

Table1->Fields->FieldByName("isprofsoyuz")->AsInteger=CheckBox12->Checked ? 1:0;

Table1->Fields->FieldByName("islgotnik")->AsInteger =CheckBox13->Checked ? 1:0;

Table1->Fields->FieldByName("ismnogodetmama")->AsInteger=CheckBox14->Checked ? 1:0;

Table1->Fields->FieldByName("isodinokmama")->AsInteger=CheckBox15->Checked ? 1:0;

Table1->Fields->FieldByName("isvdova")->AsInteger=CheckBox16->Checked ? 1:0;

Table1->Fields->FieldByName("isvdovec")->AsInteger=CheckBox17->Checked ? 1:0;

Table1->Fields->FieldByName("isdetiinvalidi")->AsInteger=CheckBox18->Checked ? 1:0;

Table1->Fields->FieldByName("ispens")->AsInteger=CheckBox21->Checked ? 1:0;

Table1->Post();

}

void __fastcall Talgo::CheckBox3Click(TObject *Sender)

{

vbazu();

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo4Change(TObject *Sender)

{

if(activeflag){

Query5->Close();

Query5->SQL->Clear();

Query5->SQL->Add(

"select constanta from z_nastr_vch_klasruk where id="+wwDBLookupCombo4->Text

);

Query5->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo5Change(TObject *Sender)

{

if(activeflag){

Query6->Close();

Query6->SQL->Clear();

Query6->SQL->Add(

"select constanta from z_nastr_vch_visluga where id="+wwDBLookupCombo5->Text

);

Query6->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo6Change(TObject *Sender)

{

if(activeflag){

Query7->Close();

Query7->SQL->Clear();

Query7->SQL->Add(

"select constanta from z_nastr_sposobpensfond where id="+wwDBLookupCombo6->Text

);

Query7->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::Button2Click(TObject *Sender)

{

vbazu();

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo7Change(TObject *Sender)

{

if(activeflag){

Query11->Close();

Query11->SQL->Clear();

Query11->SQL->Add(

"select constanta,znach from z_nastr_adm_posadi where id="+wwDBLookupCombo7->Text

);

Query11->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::CheckBox19Click(TObject *Sender)

{

Table1->Edit();

if(CheckBox19->Checked){

Table1->Fields->FieldByName("issotrudnik")->AsInteger = 1;

GroupBox18->Visible=true;

}

else

{

Table1->Fields->FieldByName("issotrudnik")->AsInteger = 0;

GroupBox18->Visible=false;

}

Table1->Post();

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo8Change(TObject *Sender)

{

if(activeflag){

Query12->Close();

Query12->SQL->Clear();

Query12->SQL->Add(

"select constanta,znach from z_nastr_derzsluz_posada where id="+wwDBLookupCombo8->Text

);

Query12->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo9Change(TObject *Sender)

{

if(activeflag){

Query13->Close();

Query13->SQL->Clear();

Query13->SQL->Add(

"select constanta,znach from z_nastr_derzsluz_rang where id="+wwDBLookupCombo9->Text

);

Query13->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::CheckBox20Click(TObject *Sender)

{

Table1->Edit();

if(CheckBox20->Checked){

Table1->Fields->FieldByName("isderzsluzbovec")->AsInteger = 1;

GroupBox20->Visible=true;

}

else

{

Table1->Fields->FieldByName("isderzsluzbovec")->AsInteger = 0;

GroupBox20->Visible=false;

}

Table1->Post();

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo10Change(TObject *Sender)

{

if(activeflag){

Query14->Close();

Query14->SQL->Clear();

Query14->SQL->Add(

"select constanta,znach from z_nastr_derzsluz_intensiv where id="+wwDBLookupCombo10->Text

);

Query14->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo11Change(TObject *Sender)

{

if(activeflag){

Query15->Close();

Query15->SQL->Clear();

Query15->SQL->Add(

"select constanta,znach from z_nastr_derzsluz_premiya where id="+wwDBLookupCombo11->Text

);

Query15->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo13Change(TObject *Sender)

{

if(activeflag){

Query17->Close();

Query17->SQL->Clear();

Query17->SQL->Add(

"select constanta,znach from z_nastr_vch_visluga where id="+wwDBLookupCombo13->Text

);

Query17->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo12Change(TObject *Sender)

{

if(activeflag){

Query18->Close();

Query18->SQL->Clear();

Query18->SQL->Add(

"select a.constanta, a.znach, greatest(a.znach,b.znach) as superznach from z_nastr_spivrob_posadi a,z_nastr_const_nar b where a.id="+wwDBLookupCombo12->Text+

" and b.id=1 "

);

Query18->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo14Change(TObject *Sender)

{

if(activeflag){

Query19->Close();

Query19->SQL->Clear();

Query19->SQL->Add(

"select constanta,znach from z_nastr_derzsluz_visluga where id="+wwDBLookupCombo14->Text

);

Query19->Open();

}

}

//---------------------------------------------------------------------------

void __fastcall Talgo::wwDBLookupCombo15Change(TObject *Sender)

{

if(activeflag){

Query20->Close();

Query20->SQL->Clear();

Query20->SQL->Add(

"select constanta,znach from z_nastr_likarnyani where id="+wwDBLookupCombo15->Text

);

Query20->Open();

}

}

//---------------------------------------------------------------------------


Робота з програмою

Головне вікно управління персоналом

Вікно введення та редагування персональних даних

Всі листинги а також приклади роботи програми знаходяться на дискеті

Висновки

Основні ідеї сучасної інформаційної технології базуються на концепції, відповідно до якої дані повинні бути організовані в бази даних з метою адекватного відображення реального миру, що змінюється, і задоволення інформаційних потреб користувачів. Ці бази даних створюються й функціонують під керуванням спеціальних програмних комплексів, називаних системами керування базами даних (СУБД).

Збільшення обсягу й структурної складності збережених даних, розширення кола користувачів інформаційних систем привели до широкого поширення найбільш зручних і порівняно простих для розуміння реляційних (табличних) СУБД. Для забезпечення одночасного доступу до даних безлічі користувачів, нерідко розташованих досить далеко друг від друга й від місця зберігання баз даних, створені мережні версії СУБД. У них тим або іншим шляхом вирішуються специфічні проблеми паралельних процесів, цілісності (правильності) і безпеки даних, а також санкціонування доступу.


Література

1. Дейт К. Руководство по реляционной СУБД DB2. - М.: Финансы и статистика, 1988. - 320 с.

2. Кириллов В.В. Основы проектирования реляционных баз данных. Учебное пособие. - СПб.: ИТМО, 1994. - 90 с.

3. Мейер М. Теория реляционных баз данных. -М.: Мир, 1987. - 608 с.

4. Ульман Дж. Базы данных на Паскале. -М.: Машиностроение, 1990. - 386 с.