CATEGORII DOCUMENTE |
VISUAL FoxPro 6.0
ALICATIE DE GESTIUNE ABONATI TELEFONICI
Se va crea o aplicatie de gestiune a abonatilor unei firme de telefonie.
Etapele crearii aplicatiei sunt urmatoarele:
Se va crea directorul TELEFON in interiorul directorului PROGRAME.
In directorul TELEFON se va crea baza de date TELEFON.DBC care va contine tabela FACTURA.DBF, tabela ce are urmatoarea structura:
Nume cimp |
Tip |
Lungime |
Index |
COD |
N |
DA |
|
NUME |
C | ||
PRENUME |
C | ||
NR_TEL |
N | ||
ADRESA |
M | ||
SUMA_PL |
N | ||
ACHITAT |
L |
Se va genera sistemul de meniuri FACTURA.MNX, sistem care are urmatoarea forma:
Pe optiunea OPERARE => ADAUGARE se va executa procedura:
DO FORM ADAUG.SCX
Pe optiunea OPERARE => MODIFICARE se va executa procedura:
DO FORM MODIFIC.SCX
Pe optiunea OPERARE => STERGERE se va executa procedura:
DO FORM STERG.SCX
Pe optiunea OPERARE => ACHITARE se va executa procedura:
DO FORM ACHITARE.SCX
Pe optiunea OPERARE => VIZUALIZARE => ABONATI se va executa procedura:
DO FORM VIZABON.SCX
Pe optiunea OPERARE => VIZUALIZARE => RESTANTIERI se va executa procedura:
DO FORM VIZREST.SCX
Pe optiunea NAVIGARE se va executa procedura:
DO FORM NAVIGARE.SCX
Pe optiunea LISTARE => IN ECRAN se va executa procedura:
OPEN DATABASE TELEFON.DBC
USE FACTURA.DBF
SET ORDER TO COD
REPORT FORM TELEFON.FRX PREVIEW
CLOSE ALL
Pe optiunea LISTARE => LA IMPRIMANTA se va executa procedura:
OPEN DATABASE TELEFON.DBC
USE FACTURA.DBF
SET ORDER TO COD
REPORT FORM TELEFON.FRX TO PRINTER
CLOSE ALL
Pe optiunea IESIRE => IN WINDOWS se va executa procedura:
QUIT
Pe optiunea IESIRE => IN Visual FoxPro se va executa procedura:
DEACTIVATE MENU _MSYSMENU
SET SYSMENU TO DEFAULT
CANCEL
Se va crea programul monitor ACHITARE.PRG , program care se va executa de fiecare data cind se doreste sa ruleze aplicatia:
SET DEFAULT TO C:PROGRAMETELEFON
SET PATH TO C:PROGRAMETELEFON
SET CENTURY ON
SET DATE TO DMY
DO FACTURA.MPR
READ EVENTS
Se va crea forma ADAUG.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
frmAdaug |
Caption |
Adaugarea de abonati |
|
Autocenter |
.T. |
|
Caseta de text 1 |
Name |
TxtCod |
InputMask | ||
Caseta de text 2 |
Name |
TxtNume |
InputMask |
AAAAAAAAAAAAAAAAAAAA |
|
Caseta de text 3 |
Name |
TxtPrenume |
InputMask |
XXXXXXXXXXXXXXXXXXXXXXXXX |
|
Caseta de text 4 |
Name |
TxtTelefon |
InputMask | ||
Zona de editare |
Name |
EdtAdresa |
Caseta de text 5 |
Name |
TxtSuma |
InputMask | ||
Caseta de text 6 |
Name |
ChkAchitat |
Buton de comanda 1 |
Name |
CmdAdaugare |
Caption |
ADAUGARE |
|
Buton de comanda 2 |
Name |
CmdContinuare |
Caption |
CONTINUARE |
|
Buton de comanda 3 |
Name |
CmdRevenire |
Caption |
REVENIRE |
Pe evenimentul LOAD al formei s-au introdus urmatoarele instructiuni:
OPEN DATABASES TELEFON.DBC
USE FACTURA.DBF
Pe evenimentul CLICK al butonului ADAUGARE s-au introdus urmatoarele instructiuni:
APPEND BLANK
REPLACE COD WITH THISFORM.TXTCOD.VALUE;
NUME WITH UPPER(THISFORM.TXTNUME.VALUE);
PRENUME WITH UPPER(THISFORM.TXTPRENUME.VALUE);
NR_TEL WITH THISFORM.TXTTELEFON.VALUE;
ADRESA WITH UPPER(THISFORM.EDTADRESA.VALUE);
SUMA_PL WITH THISFORM.TXTSUMA.VALUE;
ACHITAT WITH THISFORM.CHKACHITAT.VALUE
THISFORM.CMDCONTINUARE.SETFOCUS
Pe evenimentul CLICK al butonului CONTINUARE s-au introdus urmatoarele instructiuni:
THISFORM.TXTCOD.SETFOCUS
THISFORM.TXTCOD.VALUE=0
THISFORM.TXTNUME.VALUE=SPACE(20)
THISFORM.TXTPRENUME.VALUE=SPACE(25)
THISFORM.TXTTELEFON.VALUE=0
THISFORM.TXTADRESA.VALUE=SPACE(100)
THISFORM.TXTSUMA.VALUE=0
THISFORM.TXTACHITAT.VALUE=.F.
Pe evenimentul CLICK al butonului REVENIRE s-au introdus urmatoarele instructiuni:
RELEASE THISFORM
CLOSE ALL
6. Se va crea forma MODIFIC.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
frmModif |
Caption |
Modificare |
|
Autocenter |
.T. |
|
Lista 1 |
Name |
ListCod |
ControlSource |
Factura.cod |
|
RowSource |
Factura.cod |
|
RowSourceType |
6.Fields |
|
Caseta de text 1 |
Name |
TxtNume |
InputMask |
AAAAAAAAAAAAAAAAAAAA |
|
ControlSource |
Factura.nume |
|
Caseta de text 2 |
Name |
TxtPrenume |
InputMask |
XXXXXXXXXXXXXXXXXXXXXXXXX |
|
ControlSource |
Factura.prenume |
|
Caseta de text 3 |
Name |
TxtTelefon |
InputMask | ||
ControlSource |
Factura.nr_tel |
|
Zona de editare |
Name |
EdtAdresa |
ControlSource |
Factura.adresa |
|
Caseta de text 4 |
Name |
TxtSuma |
InputMask | ||
ControlSource |
Factura.suma_pl |
|
Check Box |
Name |
ChkAchit |
ControlSource |
Factura.achitat |
|
Buton de comanda 1 |
Name |
Cmdmodificare |
Caption |
MODIFICARE |
|
Autosize |
.T. |
|
Buton de comanda 2 |
Name |
CmdRevenire |
Caption |
REVENIRE |
|
Autosize |
.T. |
Pe evenimentul LOAD al formei s-au introdus urmatoarele instructiuni:
OPEN DATABASES TELEFON.DBC
USE FACTURA.DBF
Peeveimentul INTERACTIVE CHANGE al listei LISTCOD s-a introdus urmatoarea instructiune:
THIS.PARENT.REFRESH
Pe evenimentul CLICK al butonului MODIFICARE s-au introdus urmatoarele instructiuni:
REPLACE COD WITH THISFORM.TXTCOD.VALUE;
NUME WITH UPPER(THISFORM.TXTNUME.VALUE);
PRENUME WITH UPPER(THISFORM.TXTPRENUME.VALUE);
NR_TEL WITH THISFORM.TXTTELEFON.VALUE;
ADRESA WITH UPPER(THISFORM.EDTADRESA.VALUE);
SUMA_PL WITH THISFORM.TXTSUMA.VALUE;
ACHITAT WITH THISFORM.CHKACHIT.VALUE
THISFORM.COMMAND2.SETFOCUS
Pe evenimentul CLICK al butonului REVENIRE s-au introdus urmatoarele instructiuni:
RELEASE THISFORM
CLOSE ALL
7. Se va crea forma STERG.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
FrmSterg |
Caption |
Stergere fisa abonat |
|
Autocenter |
.T. |
|
Caseta de text 1 |
Name |
TxtCod |
InputMask | ||
Value | ||
Caseta de text 2 |
Name |
TxtNume |
InputMask |
AAAAAAAAAAAAAAAAAAAA |
|
Caseta de text 3 |
Name |
TxtPrenume |
InputMask |
XXXXXXXXXXXXXXXXXXXXXXXXX |
|
Caseta de text 4 |
Name |
TxtTelefon |
InputMask | ||
Zona de editare |
Name |
TxtAdresa |
Caseta de text 5 |
Name |
TxtSuma |
InputMask | ||
Caseta de text 6 |
Name |
TxtAchitat |
InputMask |
L |
|
Buton de comanda 1 |
Name |
CmdStergere |
Caption |
STERGERE |
|
Buton de comanda 2 |
Name |
CmdContinuare |
Caption |
CONTINUARE |
|
Buton de comanda 3 |
Name |
CmdRevenire |
Caption |
REVENIRE |
Pe evenimentul LOAD al formei s-au introdus urmatoarele instructiuni:
OPEN DATABASES TELEFON.DBC
USE FACTURA.DBF
Pe evenimentul LOSTFOCUS al casetei de text txtCod s-au introdus urmatoarele instructiuni:
LOCATE FOR COD=THISFORM.TXTCOD.VALUE
IF FOUND()
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTTELEFON.VALUE=NR_TEL
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
SHOW GETS
THISFORM.CMDSTERGERE.SETFOCUS
ELSE
WAIT WINDOW 'Persoana nu exista in baza de date !'
THISFORM.CMDCONTINUARE.SETFOCUS
ENDIF
Pe evenimentul CLICK al butonului STERGERE s-au introdus urmatoarele instructiuni:
DELETE NEXT 1
PACK
THISFORM.CMDCONTINUARE.SETFOCUS
Pe evenimentul CLICK al butonului CONTINUARE s-au introdus urmatoarele instructiuni:
THISFORM.TXTCOD.SETFOCUS
THISFORM.TXTCOD.VALUE=0
THISFORM.TXTNUME.VALUE=SPACE(20)
THISFORM.TXTPRENUME.VALUE=SPACE(25)
THISFORM.TXTTELEFON.VALUE=0
THISFORM.TXTADRESA.VALUE=SPACE(100)
THISFORM.TXTSUMA.VALUE=0
THISFORM.TXTACHITAT.VALUE=.F.
Pe evenimentul CLICK al butonului REVENIRE s-au introdus urmatoarele instructiuni:
RELEASE THISFORM
CLOSE ALL
8. Se va crea forma ACHITARE.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
frmAchit |
Caption |
Achitarea facturii telefonice |
|
Autocenter |
.T. |
|
Caseta de text 1 |
Name |
TxtTelefon |
InputMask | ||
Value | ||
Caseta de text 2 |
Name |
TxtCod |
InputMask | ||
Caseta de text 3 |
Name |
TxtNume |
InputMask |
AAAAAAAAAAAAAAAAAAAA |
|
Caseta de text 4 |
Name |
TxtPrenume |
InputMask |
XXXXXXXXXXXXXXXXXXXXXXXXX |
|
Zona de editare |
Name |
TxtAdresa |
Caseta de text 5 |
Name |
TxtSuma |
InputMask | ||
Caseta de text 6 |
Name |
TxtAchitat |
InputMask |
L |
|
Grup de butoane radio |
Name |
OptionGroup1 |
ButtonCount | ||
Buton radio 1 |
Name |
OptNu |
Caption |
NU |
|
Value | ||
Buton radio 2 |
Name |
OptDa |
Caption |
DA |
|
Value | ||
Buton de comanda 1 |
Name |
CmdAchitare |
Caption |
ACHITARE |
|
Buton de comanda 2 |
Name |
CmdRevenire |
Caption |
REVENIRE |
Pe evenimentul LOAD al formei se vor introduce instructiunile:
OPEN DATABASES TELEFON.DBC
USE FACTURA.DBF
Pe evenimentul LOSTFOCUS al casetei txtTelefon se vor introduce urmatoarele instructiuni:
LOCATE FOR NR_TEL=THISFORM.TXTTELEFON.VALUE
IF FOUND()
THISFORM.TXTCOD.VALUE=COD
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
SHOW GETS
THISFORM.OPTIONGROUP1.OPTNU.SETFOCUS
ELSE
WAIT WINDOW 'Telefonul nu exista !'
THISFORM.CMDREVENIRE.SETFOCUS
ENDIF
Pe evenimentul CLICK al butonului de comanda ACHITARE se vor introduce urmatoarele instructiuni:
IF THISFORM.OPTIONGROUP1.OPTDA.VALUE=1
REPLACE ACHITAT WITH .T.
WAIT WINDOW 'Suma a fost achitata !!!';
TIMEOUT 3
ELSE
WAIT WINDOW 'Suma nu a fost achitata !!!'
ENDIF
Pe evenimentul CLICK al butonului de comanda REVENIRE se vor introduce urmatoarele instructiuni:
RELEASE THISFORM
CLOSE ALL
9. Se va crea forma VIZABON.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
frmAbonati |
Caption |
Vizualizarea tuturor abonatilor |
|
Autocenter |
.T. |
|
Caseta de text 1 |
Name |
GrdAbonati |
BackColor |
0,0,128 - albastru |
|
DeleteMark |
.F. |
|
ForeColor |
255,255,255 - alb |
|
GridLineColor |
192,192,192 - gri |
|
GridLines |
3 - Both |
|
ReadOnly |
.T. |
|
RecordMark |
.F. |
|
ScrollBars |
3 - Both |
|
Buton de comanda |
Name |
CmdRevenire |
Caption |
REVENIRE |
Pe evenimentul INIT al grilei se va introduce comanda:
SET ORDER TO cod
Pe evenimentul CLICK al butonului REVENIRE se vor introduce comenzile:
RELEASE THISFORM
CLOSE ALL
10. Se va crea forma VIZREST.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
FrmRestantieri |
Caption |
Vizualizarea tuturor abonatilor restantieri |
|
Autocenter |
.T. |
|
Caseta de text 1 |
Name |
GrdRestantieri |
BackColor | ||
DeleteMark |
.F. |
|
ForeColor |
255,255,0 - galben |
|
GridLineColor |
0,255,128 - verde |
|
GridLines |
3 - Both |
|
ReadOnly |
.T. |
|
RecordMark |
.F. |
|
ScrollBars |
3 - Both |
|
Buton de comanda |
Name |
CmdRevenire |
Caption |
REVENIRE |
Pe evenimentul INIT al grilei se va introduce comanda:
SET FILTER TO achitat=.F.
SET ORDER TO cod
Pe evenimentul CLICK al butonului REVENIRE se vor introduce comenzile:
RELEASE THISFORM
CLOSE ALL
11. Se va crea forma NAVIGARE.SCX:
Proprietatile obiectelor:
OBIECT |
PROPRIETATE |
VALOARE |
Forma |
Name |
Form1 |
Caption |
Navigarea in lista abonatilor |
|
Autocenter |
.T. |
|
Buton de comanda 1 |
Name |
CmdPrim |
Caption |
PRIMUL |
|
Buton de comanda 2 |
Name |
CmdUrmator |
Caption |
URMATOR |
|
Buton de comanda 3 |
Name |
CmdAnterior |
Caption |
ANTERIORUL |
|
Buton de comanda 4 |
Name |
CmdUltim |
Caption |
ULTIMUL |
|
Buton de comanda 5 |
Name |
CmdIesire |
Caption |
IESIRE |
Pe evenimentul LOAD al formei:
OPEN DATABASES TELEFON.DBC
USE FACTURA.DBF
SET ORDER TO COD
Pe evenimentul INIT al formei:
THISFORM.TXTCOD.VALUE=COD
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTTELEFON.VALUE=NR_TEL
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
THISFORM.CMDPRIM.SETFOCUS
Pe evenimentul CLICK al butonului de comanda PRIMUL
GOTO TOP
THISFORM.TXTCOD.VALUE=COD
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTTELEFON.VALUE=NR_TEL
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
SHOW GETS
Pe evenimentul CLICK al butonului de comanda URMATORUL
IF EOF()=.F.
SKIP 1
THISFORM.TXTCOD.VALUE=COD
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTTELEFON.VALUE=NR_TEL
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
SHOW GETS
ELSE
WAIT WINDOW 'Ultima inregistrare !' TIMEOUT 3
ENDIF
Pe evenimentul CLICK al butonului de comanda ANTERIORUL
IF BOF()=.F.
SKIP -1
THISFORM.TXTCOD.VALUE=COD
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTTELEFON.VALUE=NR_TEL
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
SHOW GETS
ELSE
WAIT WINDOW 'Prima inregistrare !' TIMEOUT 3
ENDIF
Pe evenimentul CLICK al butonului de comanda ULTIMUL
GOTO BOTTOM
THISFORM.TXTCOD.VALUE=COD
THISFORM.TXTNUME.VALUE=NUME
THISFORM.TXTPRENUME.VALUE=PRENUME
THISFORM.TXTTELEFON.VALUE=NR_TEL
THISFORM.TXTADRESA.VALUE=ADRESA
THISFORM.TXTSUMA.VALUE=SUMA_PL
THISFORM.TXTACHITAT.VALUE=ACHITAT
SHOW GETS
Pe evenimentul CLICK al butonului de comanda IESIRE
RELEASE THISFORM
CLOSE ALL
12. Se va crea raportul TELEFON.FRX care are urmatoarea forma:
13. Se va crea proiectul aplicatiei TELEFON.EXE.
14. Se va crea kitul de distributie.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1560
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved