Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Crearea unei baze de date

Informatica


Crearea unei baze de date

Crearea fisierului bazei de date



1. Se creeaza o baza de date goala si se salveaza sub numele PrimaBaza.mdb (īn folder-ul Clasa114

Crearea unei baze de date cu Databse Wizard

2. Se creeaza o baza de date cu Database Wizard, pornind de la sablonul "Resource Scheduling"

4.1.1. Crearea unui tabel cu Table Wizard

3. Se creeaza un tabel cu Table Wizard, īn baza de date PrimaBaza, pornind de la sablonul "Tasks" (teme, activitati, sarcini etc.).

4.1.2. Crearea unui tabel īn modul Datasheet View

4. Se creeaza un tabel īn Datasheet View (se modifica numele coloanelor si se introduc date īn tabel):

Field1 (NrInmatric

Field2 (Marca

Field3 (AnCumparare

BC10ABC

Dacia 1310

B10AAA

Mercedes

AAAAAAAA

Ford Mondeo

(Tabelul se salveaza īn baza de date PrimaBaza sub numele Auto, fara cheie principala: se face click pe No īn caseta cu mesajul "There is no primary key defined".)

4.1.3. Crearea unui tabel īn modul Design

5. Se creeaza tabelul Salariati si se salveaza īn baza de date PrimaBaza

Structura:

Field Name

Data Type

Marca

Number

Nume

Text

Initiala

Text

Prenume

Text

DataNasterii

Date/Time

Adresa

Memo

SporVechime

Number

ClasaSalarizare

Number

Salariu

Currency

FunctieConducere

Yes/No

TelefonFix

Text

TelefonMobil

Text

4.1.6. Proprietatile cāmpurilor

4.1.6.1. Proprietatile din tab-ul General

6. Proprietatea Field Size (tabelul Salariati

Marca

Integer

Nume

Initiala

Prenume

SporVechime

Single

ClasaSalarizare

Byte

TelefonFix

TelefonMobil

7. Proprietatea Format pentru cāmpuri Text

a)      pentru tabelul Salariati

Nume

>

Initiala

>

Prenume

>

b)      pentru tabelul Auto (din PrimaBaza):

Cāmp

Format

Val. introdusa

Val. afisata

NrInmatric

BC10ABC

BC 10 ABC

B10AAA

B 10 AAA

AAAAAAAA

AAA AA AAA

BC10ABC

BC 10 ABC

B10AAA

B1 0A AA

AAAAAAAA

AA AA AAAA

@@ @@ @@ [Red]

Marca

<**

@ @@@"(Euro 2)"

@ @@@\(Euro 2)

8. Proprietatea Format pentru cāmpuri numerice

Marca: format particularizat 000 (marca sa afiseze trei cifre, de ex. valoarea 1 sa se afiseze ca 001).

SporVechime: Percent (atentie la introducerea datelor, vor fi īnmultite cu 100!).

Salariu: Euro.

9. Proprietatea Format pentru cāmpuri Date/Time

DataNasterii: se aleg, pe rānd, formatele standard:

General Date;

Long Date;

Medium Date;

Short Date.

Pentru acelasi cāmp, DataNasterii, se creeaza formatul particularizat: d(ddd)-m-yyyy

10. Proprietatea Format pentru cāmpuri Yes/No

FunctieConducere: se aleg, pe rānd, formatele standard: True/False, On/Off.

Pentru a se afisa aceste valori, se modifica proprietatea Display Control (tab-ul Lookup), din Check Box īn Text Box

11. Proprietatea Decimal Places

Marca

SporVechime: 2 sau Auto afiseaza tot 2 zecimale!

Salariu

12. Proprietatea Input Mask

TelefonFix

Nume: >L< ? ? ??????

(prima litera este transformata īn majuscula, iar restul literelor (19) īn minuscule. Se elimina formatul ">

Initiala: >L< (se elimina formatul ">

Prenume : >L< ? ? ?????? (se elimina formatul ">

13. Cu Input Mask Wizard se creeaza o masca de introducere pentru cāmpul DataNasterii

14. Se creeaza un sablon particularizat care sa poata fi folosit cu Input Mask Wizard

a)     Se deschide tabelul Salariati īn modul Design

b)     Se selecteaza cāmpul DataNasterii

c)     Se face click pe butonul corespunzator proprietatii Input Mask (se afiseaza caseta de dialog Input Mask Wizard

d)     Se face click pe butonul de comanda Edit List (se afiseaza caseta de dialog Customize Input Mask Wizard

e)     Se face click pe butonul (New Record) pentru a adauga o īnregistrare goala.

f)       Se completeaza casetele:

Description: cu numele sablonului (exemplu: Data particularizata sau alt text)

Input Mask: cu caracterele sablonului (exemplu: 0000

Placeholder: cu caracterul de īnlocuire (exemplu: _)

Sample Data: cu o data calendaristica

Mask Type: se selecteaza Date-Time

g)     Se face click pe Close (se īnchide caseta de dialog Customize Input Mask Wizard si se reafiseaza caseta de dialog Input Mask Wizard

h)     Se selecteaza numele sablonului mai sus creat din lista si se face click pe Next (se afiseaza caseta de dialog Input Mask Wizard - pentru pasul urmator).

i)       Daca este necesar, se modifica sablonul. Se face click pe Next (se afiseaza caseta de dialog Input Mask Wizard - pentru ultimul pas).

j)       Se face click pe Finish

15. Proprietatea Caption

DataNasterii

Data nasterii

SporVechime

Spor vechime

ClasaSalarizare

Clasa salarizare

FunctieConducere

Functie conducere

TelefonFix

Telefon fix

TelefonMobil

Telefon mobil

16. Proprietatea Default Value

Salariu: 300 (daca s-a selectat Euro pentru proprietatea Format

17. Proprietatile Validation Rule si Validation Text

Cāmp

Validation Rule

Validation Text

SporVechime

<=0,25 (nu 25%)

Sporul de vechime este maxim 25%

DataNasterii

<Date()

Data nasterii incorecta

ClasaSalarizare

Between 15 And 40

Clasa de salarizare in afara limitelor

18. Proprietatile Required si Allow Zero Length

Se creeaza interogarea Query1 pe baza tabelului Salariati

click pe View; īn rezultatul interogarii sunt luate īn calcul numai īnregistrarile cu cāmpul TelefonMobil completat;

se modifica proprietatea Allow Zero Length a cāmpului TelefonMobil pe Yes si se introduce "" īn cāmpurile necompletate;

click pe View; īn rezultatul interogarii sunt luate īn calcul si īnregistrarile cu cāmpul TelefonMobil completat.

19. Proprietatea Indexed

Īn tabelul Salariati, cāmpul Nume este indexat automat (Yes(Duplicates OK)) pentru ca īncepe cu Num

se selecteaza cāmpul Marca, apoi se face click pe instrumentul Primary Key; proprietatea Indexed a cāmpului Marca este setata automat pe Yes(No Duplicates)

Se indexeaza cāmpul SporVechime Indexed Yes(Duplicates OK)

20. Proprietatea New Values

Īn tabelul Salariati se mai adauga cāmpul OrdineAngajare Data Type: AutoNumber

Proprietatea New Values Increment (implicit), se modifica īn Random si se introduce īnca o īnregistrare. Proprietatea New Values nu mai poate fi setata din nou pe Increment.

Obs. Īntr-un tabel poate fi adaugat un singur cāmp cu Data Type AutoNumber

4.1.6.2. Proprietatile din tab-ul Lookup

21. Se creeaza tabelul Functii (īn PrimaBaza), cu doua cāmpuri:

CodFunctie Data Type: AutoNumber

DenFunctie Data Type: Text

Field Size

CodFunctie se declara cheie principala.

Īn tabel se introduc īnregistrarile (numai DenFunctie

Director general

Director adjunct

Sef serviciu

Sef Birou

Inginer

Economist

Īn tabelul Salariati se introduce cāmpul CodFunctie cu:

Data Type: Number

Field Size: Long Integer

Proprietatile din tab-ul Lookup pentru cāmpul CodFunctie

Display Control : Combo Box

Row Source Type : Table/Query

Row Source : Functii

Bound Column : 1

Column Count : 2

Column Heads : se īncearca si cu No si cu Yes

Column Widths : 1cm;3cm (apoi se īncearca si 0cm;3cm)

List Rows : 8

List Width : 4cm (apoi 3cm)

Limit To List : No (apoi Yes)

22. Īn tabelul Salariati se adauga cāmpul Studii Data Type: Text, Field Size

Proprietatile din tab-ul Lookup pentru cāmpul Studii

Display Control : Combo Box

Row Source Type : Value List

Row Source : "F";"M"

Bound Column : 1

Column Count : 1

Column Heads : No

Limit To List : Yes

4.1.7. Crearea cāmpurilor de Lookup

4.1.7.1. Crearea unui cāmp de Lookup din cāmpul unui tabel

23. Se creeaza tabelul Compartimente (īn PrimaBaza), cu cāmpurile:

CodCompartiment Data Type: AutoNumber

DenCompartiment Data Type: Text

Field Size

CodCompartiment se declara cheie principala.

Īn tabel se introduc īnregistrarile (numai DenCompartiment

Personal

Contabilitate

Marketing

Contracte

Īn tabelul Salariati se adauga cāmpul CodCompartiment, iar din lista Data Type se selecteaza Lookup Wizard si se urmeaza pasii indicati de acesta).

4.1.7.2. Crearea unui cāmp de Lookup din valorile introduse de utilizator de la tastatura

24. Īn tabelul Salariati se introduce cāmpul Religie, iar cu Lookup Wizard se introduc valorile: ortodoxa, catolica, greco catolica etc.

4.2. Cheia principala

25. Au fost create la tabelele: Salariati Functii si Compartimente

Se va analiza cheia principala (compusa) a tabelului Conventii. Īn acest tabel, cheia principala compusa este obligatorie pentru a nu se permite ca la aceeasi societate comerciala sa se introduca de mai multe ori acelasi curs (acelasi simbol si aceeasi serie).

4.3. Reguli de validare la nivel de īnregistrari

26. Īn tabelul Salariati se adauga cāmpul DataAngajarii Data Type: Date/Time, Input Mask se seteaza cu Input Mask Wizard

Validation Rule: Year([DataAngajarii])-Year([DataNasterii])>=20

Validation Text: Angajat prea devreme!

4.4. Legarea tabelelor

27. Īn baza de date EvidentaCursantilor

Tabel principal

Tabel secundar

Cāmp de legatura

Cursuri

Serii

SimbCurs

Compartimente

Experti

CodSectieCompart

Functii

Cursanti

CodFunc

Unitati

Cursanti

CodUnit

Unitati

Conventii

CodUnit

Localitati

Serii

LocDesf

Serii

Cursanti

CodCurs

Serii

Conventii

CodCurs

Experti

Serii

MarcaPers

28. Īn baza de date PrimaBaza

Tabel principal

Tabel secundar

Cāmp de legatura

Functii

Salariati

CodFunctie

Compartimente

Salariati

CodCompartiment

4.5. Indecsi pe mai multe cāmpuri (compusi)

29. Īn tabelul Salariati (īn PrimaBaza

Index Name

Field Name

Sort Order

NumePrenume

Nume

Ascending

Initiala

Ascending

Prenume

Ascending

4.6. Modificarea structurii tabelelor

4.6.1. Modificarea tipului de data al cāmpurilor

30. Se modifica tipul de data pentru cāmpuri din tabelul Structura din baza de date EvidentaCursantilor

Text ---------->

C_Text_Number  ---> Number Field Size: Integer)

C_Text_Date  ---> Date/Time

C_Text_Yes  ---> Yes/No

Memo - asemanator cu Text

Number ------->

C_Number_Date  ---> Date/Time

C_Number_Yes  ---> Yes/No

AutoNumber ------>

C_AutoNumber_Date  ---> Date/Time

Yes/No ----------->

C_Yes_Text  ---> Text

C_Yes_Date  ---> Date/Time

C_Yes_Currency  ---> Currency

4.6.2. Modificarea lungimii cāmpurilor

Se modifica lungimea cāmpurilor īn tabelul Lungime din baza de date EvidentaCursantilor

Text (micsorare):

C_Text  Field Size: de la 20 la 10 ("Some data may be lost")

Īnainte de reducere

Dupa reducere

Microsoft Access

Microsoft

Microsoft Excel

Microsoft

Long Integer ---> Integer

C_LongInteger_Integer  Field Size: Integer ("Microsoft Access encountered error while converting the data")

Īnainte de modificare

Dupa modificare

Integer ---> Byte

C_Integer_Byte  Field Size: Byte ("Microsoft Access encountered error while converting the data")

Īnainte de modificare

Dupa modificare

Single ---> Integer

C_Single_Integer  Field Size: Integer ("Some data may be lost" si "Microsoft Access encountered error while converting the data")

Īnainte de modificare

Dupa modificare

Double ---> Long Integer

C_Double_Integer  Field Size: Long Integer ("Some data may be lost" si "Microsoft Access encountered error while converting the data")

Īnainte de modificare

Dupa modificare

4.7.3. stergerea īnregistrarilor

32. Se introduc īnregistrari suficiente īn tabelul Salariati din PrimaBaza

a)      Se sterge o īnregistrare din tabelul Salariati

b)      Se īncearca stergerea unei īnregistrari din tabelul Functii (daca sunt īnregistrari asociate īn tabelul Salariati, se afiseaza mesajul "The record cannot be deleted or changed because table 'Salariati' includes related records."

c)      Īn fereastra Relationships Tools Relationships) se face right-click pe linia de legatura dintre tabelele Functii si Salariati si se selecteaza Edit Relationship (se afiseaza caseta de dialog Edit Relationships

se selecteaza caseta de control "Cascade Delete Related Records.";

se sterge o īnregistrare.

5.3. Interogari de selectie

5.3.1. Crearea unei interogari cu Simple Query Wizard

33. Se creeaza interogarea Unitati Query

34. Exemple de interogari cu criterii de selectie:

Tabel

Cāmpuri īn rezultatul interogarii

Cāmp si criteriu

Cāmp si criteriu

Nume interogare

Cursanti

Nume, Prenume, LocNastere

LocNastere

"Bucuresti"

Q_Buc

Cursanti

Nume, Prenume, LocNastere

LocNastere

"Bucuresti" Or "Craiova"

Q_BucCv

Cursanti

Nume, Prenume, DataNasterii

DataNasterii

Q_DataN

Cursanti

Nume, Prenume, DataNasterii

DataNasterii

Between #01.01.1950# And #31.12.1960#

Q_DateN

Cursanti

Nume, Prenume, LocNastere

LocNastere

Not "Bucuresti"

Q_NotBuc

Cursanti

CodCurs, Nume, Prenume

CodCurs

Like "It41*"

Q_It41

Cursanti

CodCurs, Nume, Prenume, NotaAbs

NotaAbs

Q_Nota10

Cursanti

CodCurs, Nume, Prenume, NotaAbs

NotaAbs

Is Null

Q_FaraNota

Cursanti

CodCurs, Nume, Prenume, NotaAbs

NotaAbs

Not Is Null

Q_Absolventi

Cursanti

Nume, Prenume, Sex, Studii

Sex

"F"

Studii

"S"

Q_FemSup

Cursanti

CodCurs, CodUnit, Nume, Prenume

CodCurs

Like "It36*"

CodUnit

Like "C3*"

Q_EL_It36

Cursanti

CodCurs, CodUnit, Nume, Prenume

CodCurs

Like "It36*"

Or Like "It36*"

CodUnit

Like "C1*"

Like "C2*"

Q_TeHi_It36

Observatie

Codurile unitatilor

Societati comerciale

Coduri pentru soc. com si sucursale

Termoelectrica

C100.C199 (Termoelectrica=C100)

Hidroelectrica

C200.C299 (Hidoelectrica=C200)

Electrica

C300.C399 (Electrica=C300)

STD

C401.C499

Unitati din exterior

E100.E199

5.3.9. Cāmpuri calculate

5.3.9.1. Calcule asupra unui cāmp dintr-o interogare

35. Se creeaza interogarea Q_NotaMedie

36. Se creeaza interogarea Q_NrCursanti

5.3.9.2. Crearea unui cāmp care sa efectueze un calcul particularizat

37. Se creeaza interogarea Q_CimpCriterii

Īn interogare se adauga cāmpurile Nume si Prenume si cāmpurile calculate:

Expr1:Year([DataNasterii])

Expr2:DatePart("q",[DataNasterii])

Expr3:DatePart("d",[DataNasterii])

Se introduc, pe rānd, criteriile de mai jos si se afiseaza, de fiecare data, rezultatul interogarii.

Nr. criteriu

Expr1

Expr2

Expr3

Between 1955 And 1965

<1960

38. Se creeaza interogarea Q_TaxaTVA

5.4. Interogari de totalizare

5.4.1. Crearea unei interogari de totalizare

39. Se creeaza interogarea Q_CursantiUnitati (numarul de cursanti pe unitati).

40. Se creeaza interogarea Q_CursantiCursuri (numarul de cursanti pe cursuri si serii).

41. Se creeaza interogarea Q_CursantiDomiciliu (numarul de cursanti īnscrisi

42. Se creeaza interogarea Q_TaxaCurs

5.5. Interogari cu parametri

5.5.1. Introducerea parametrilor

43. Se creeaza interogarea Q_CursuriTrim

5.6.3. Calcule numerice cu valori Null

44. Se creeaza interogarea Q_NullSirZero

se face click pe instrumentul View

se seteaza proprietatea Allow Zero Length a cāmpului Telefon pe Yes

īn cāteva īnregistrari se introduce sirul de lungime zero ("") īn cāmpul Telefon

se face click pe instrumentul View

Q_TextNull

Q_UnitatiCursuri

Append Query

Se creeaza tabelul CursuriAminate (identic ca structura cu Serii Edit Copy, Edit Paste, se selecteaza butonul de optiune Structure Only) care va contine cursurile neprogramate.

Q_ActCursuri

Īn structura tabelului Cursuri se introduce cāmpul TaxaZiTVA Number Double Format 0). Interogarea Q_ActCursuri va actualiza cāmpul TaxaZiTVA cu TaxaZi*1.19

Q_ActCursuriAminate

Īn structura tabelului CursuriAminate se introduce cāmpul DenCurs Text, lungime 100 caractere). Interogarea Q_ActCursuri va actualiza cāmpul DenCurs cu valorile din cāmpul DenCurs din tabelul Cursuri

Q_StergCursanti

Se face o copie a tabelului Cursanti Cursanti_Copie) iar interogarea va sterge cursantii fara nota.

Q_CursantiTrim1

Se creeaza un tabel (CursantiTrim1) cu cursantii care au participat la cursuri pe trim. 1.

Proprietati pentru Command Button

Proprietatea Default (tab-ul Other) setata pe Yes desemneaza butonul de comanda respectiv drept buton implicit (butonul se executa automat cānd se apasa tasta Enter, indiferent pe ce control se afla focus-ul.

Unui control Command Button care īnchide forma nu i se seteaza proprietatea Default pe Yes īntrucāt daca forma are controale Text Box īn care se introduc date, cānd focus-ul se afla pe un control Text Box si se apasa tasta Enter pentru a introduce date īn alt control Text Box, se va īnchide forma !.

Īntr-o forma, poate fi declarat doar un singur buton de comanda implicit.

Proprietatea Cancel (tab-ul Other) setata pe Yes declara butonul de comanda respectiv drept buton Cancel. Butonul va fi executat cānd se apasa tasta Esc

Īntr-o forma, poate fi declarat doar un singur buton de comanda Cancel

Crearea unei forme multifunctionale

Setari initiale īn forma:

Se modifica proprietatea Name (tab-ul Other) a butoanelor de comanda:

Buton

Proprietatea Name

Adauga

B_Ada

Modifica

B_Mod

Sterge

B_Ste

Salveaza

B_Sal

Renunta

B_Ren

Prima

B_Pri

Urmatoarea

B_Urm

Precedenta

B_Ant

Ultima

B_Ult

Terminare

B_Ter

Butoanele de comanda, cu exceptia butonului Modifica, se adauga cu Control Wizards

Butoanelor de comanda Salveaza si Renunta li se seteaza proprietatea Enabled (tab-ul Data) pe No

Cāmpurilor SimbCurs DenCurs si TaxaZi li se seteaza proprietatea Loked pe Yes

Se seteaza proprietatile formei:

Proprietate

Valoare

Īn tab-ul Format

Scroll Bars

Neither

Record Selectors

No

Navigation Buttons

No

Dividing Lines

No

Auto Center

Yes

Control Box

No

Min Max Buttons

None

Close Button

No

Īn tab-ul Other

Cycle

Current Record

Private Sub B_Pri_Click()

On Error GoTo Err_B_Pri_Click

DoCmd.GoToRecord , , acFirst

Exit_B_Pri_Click:

Exit Sub

Err_B_Pri_Click:

MsgBox Err.Description

Resume Exit_B_Pri_Click

End Sub

Private Sub B_Urm_Click()

On Error GoTo Err_B_Urm_Click

DoCmd.GoToRecord , , acNext

If IsNull(Me!SimbCurs) Then

MsgBox "Ultima inregistrare din tabel !", vbExclamation

DoCmd.GoToRecord , , acPrevious

End If

Exit_B_Urm_Click:

Exit Sub

Err_B_Urm_Click:

MsgBox "Tabelul nu are nici o inregistrare !", vbExclamation

Resume Exit_B_Urm_Click

End Sub

Private Sub B_Ant_Click()

On Error GoTo Err_B_Ant_Click

DoCmd.GoToRecord , , acPrevious

Exit_B_Ant_Click:

Exit Sub

Err_B_Ant_Click:

MsgBox "Prima inregistrare din tabel !", vbExclamation

Resume Exit_B_Ant_Click

End Sub

Private Sub B_Ult_Click()

On Error GoTo Err_B_Ult_Click

DoCmd.GoToRecord , , acLast

Exit_B_Ult_Click:

Exit Sub

Err_B_Ult_Click:

MsgBox Err.Description

Resume Exit_B_Ult_Click

End Sub

Private Sub B_Ada_Click()

On Error GoTo Err_B_Ada_Click

DoCmd.GoToRecord , , acNewRec

Me!SimbCurs.Locked = False

Me!DenCurs.Locked = False

Me!TaxaZi.Locked = False

Me!SimbCurs.SetFocus

Me!B_Ada.Enabled = False

Me!B_Mod.Enabled = False

Me!B_Ste.Enabled = False

Me!B_Sal.Enabled = True

Me!B_Ren.Enabled = True

Me!B_Pri.Enabled = False

Me!B_Urm.Enabled = False

Me!B_Ant.Enabled = False

Me!B_Ult.Enabled = False

Me!B_Ter.Enabled = False

Exit_B_Ada_Click:

Exit Sub

Err_B_Ada_Click:

MsgBox Err.Description

Resume Exit_B_Ada_Click

End Sub

Private Sub B_Mod_Click()

Me!SimbCurs.Locked = False

Me!DenCurs.Locked = False

Me!TaxaZi.Locked = False

Me!SimbCurs.SetFocus

Me!B_Ada.Enabled = False

Me!B_Mod.Enabled = False

Me!B_Ste.Enabled = False

Me!B_Sal.Enabled = True

Me!B_Ren.Enabled = True

Me!B_Pri.Enabled = False

Me!B_Urm.Enabled = False

Me!B_Ant.Enabled = False

Me!B_Ult.Enabled = False

Me!B_Ter.Enabled = False

End Sub

Private Sub B_Ste_Click()

Dim RspSte

On Error GoTo Err_B_Ste_Click

RspSte = MsgBox("Sterge inregistrarea curenta ? ", vbYesNo + vbQuestion)

If RspSte = vbYes Then

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70

DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70

DoCmd.GoToRecord , , acPrevious

End If

Exit_B_Ste_Click:

Exit Sub

Err_B_Ste_Click:

MsgBox "Inregistrarea curenta are inregistrari corespondente in alta tabel !", vbCritical

Resume Exit_B_Ste_Click

End Sub

Private Sub B_Sal_Click()

On Error GoTo Err_B_Sal_Click

If IsNull(Me!SimbCurs) Then

MsgBox "Inregistrare incompleta, nu poate fi salvata !", vbCritical

Me!SimbCurs.SetFocus

Else

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

Me!SimbCurs.Locked = True

Me!DenCurs.Locked = True

Me!TaxaZi.Locked = True

Me!B_Ada.Enabled = True

Me!B_Ada.SetFocus

Me!B_Mod.Enabled = True

Me!B_Ste.Enabled = True

Me!B_Sal.Enabled = False

Me!B_Ren.Enabled = False

Me!B_Pri.Enabled = True

Me!B_Urm.Enabled = True

Me!B_Ant.Enabled = True

Me!B_Ult.Enabled = True

Me!B_Ter.Enabled = True

End If

Exit_B_Sal_Click:

Exit Sub

Err_B_Sal_Click:

MsgBox "Simbol curs nu accepta valori duplicat/nu poate fi modificat !", vbCritical

Resume Exit_B_Sal_Click

End Sub

Private Sub B_Ren_Click()

On Error GoTo Err_B_Ren_Click

DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70

Exit_B_Ren_Click:

If IsNull(Me!SimbCurs) Then

DoCmd.GoToRecord , , acFirst

End If

Me!B_Ada.Enabled = True

Me!B_Ada.SetFocus

Me!B_Mod.Enabled = True

Me!B_Ste.Enabled = True

Me!B_Sal.Enabled = False

Me!B_Ren.Enabled = False

Me!B_Pri.Enabled = True

Me!B_Urm.Enabled = True

Me!B_Ant.Enabled = True

Me!B_Ult.Enabled = True

Me!B_Ter.Enabled = True

Me!SimbCurs.Locked = True

Me!DenCurs.Locked = True

Me!TaxaZi.Locked = True

Exit Sub

Err_B_Ren_Click:

MsgBox "Nu s-a efectuat nici o modificare !", vbExclamation

Resume Exit_B_Ren_Click

End Sub

Private Sub B_Ter_Click()

On Error GoTo Err_B_Ter_Click

DoCmd.Close

Exit_B_Ter_Click:

Exit Sub

Err_B_Ter_Click:

MsgBox Err.Description

Resume Exit_B_Ter_Click

End Sub

Private Sub Form_Open(Cancel As Integer)

DoCmd.SetWarnings False

End Sub

Private Sub Form_Close()

DoCmd.SetWarnings True

End Sub

Private Sub TaxaZi_Exit(Cancel As Integer)

If Me!B_Sal.Enabled = True Then

Me!B_Sal.SetFocus

End If

End Sub

Raportul Cursuri

Subraport īncorporat īn raportul principal cu Subreport Wizard

Se creeaza subraportul srpCursanti pe baza tabelului Cursanti

Se creeaza raportul principal rptFunctii pe baza tabelului Functii (subraportul srpCursanti se īncorporeaza īn raportul principal srpFunctii

Exemplu tiparit:

Subraport īncorporat īn raportul principal fara Subreport Wizard

Se creeaza interogarea Q_CursantiInscrisi (pentru subraport)

Se creeaza interogarea Q_CursantiPrezenti (pentru raportul principal)

Se creeaza subraportul srpCursantiInscrisi

Se creeaza raportul principal rptCursantiPrezenti

Controlul Text Box din sectiunea CodCurs Header are proprietatea Control Source

=[SimbCurs] & " seria " & [NrSerie]

Subraportul se insereaza fara Subreport Wizard (se va insera un subraport nelegat).

Se afiseaza foaia de proprietati a raportului si se seteaza proprietatea Source Object cu Report.srpCursantiInscrisi

Se afiseaza caseta de dialog Subreport Field Linker si se seteaza Master Fields CodCurs Child Fields CodCurs (cele doua cāmpuri sunt automat selectate!).

Se redimensioneaza subraportul: Width: 5" si Height

Pentru controlul Text Box care afiseaza numarul curent, se seteaza proprietatea Running Sum (tab-ul Data) pe Over Group

Exemplu de raport principal cu subraport:

Eticheta cu Label Wizard

Se creeaza interogarea Q_Etichete

Crearea etichetei cu Label Wizard

Daca se afiseaza mesajul:

Se deschide raportul īn fereastra Report Design apoi se alege File Page Setup

Īn caseta de dialog Page Setup se selecteaza tab-ul Margins si se micsoreaza valoarea pentru Left (de exemplu, 0.5").

Eticheta fara Label Wizard

Se creeaza o eticheta care sa īnstiinteze unitatile cu perioada de desfasurare a seriei a doua a cursului It36.

Se creeaza interogarea Q_EticheteRD

Pentru a dimensiona mai usor eticheta, se va trece la sistemul de unitati de masura Metric (īn Regional Settings, tab-ul Numbers, se selecteaza Metric din Measurement system

Se creeaza un raport gol si se elimina sectiunile Page Header si Page Footer

Dimensiunile unui format A4 sunt 21cm x 29.7cm.

Se creeaza 2 etichete pe latime

Latimea unei etichete: 8 cm

Īnaltimea unei etichete: 5 cm

Distanta īntre doua etichete: 2 cm

Īn caseta de dialog Page Setup se fac urmatoarele setari:

Tab-ul Margins:

Top: 20 mm

Bottom: 15 mm

Left: 15 mm

Right: 15 mm

Tab-ul Page

Size: A4

Tab-ul Columns

Number of Columns

Column Spacing: 2cm (este bine chiar 1.8cm!)

Width: 8cm

Height: 5cm

Se redimensioneaza sectiunea Detail a raportului: latime 8 cm si īnaltime 5 cm.

Se creeaza continutul etichetei:

Tiparire/previzualizare raport dintr-o forma

Raportul va contine cursurile care īncep īntr-o anumita luna (luna va fi selectata dintr-un control Combo Box plasat īntr-o forma).

Numele celor trei obiecte:

Forma: frmSelectareLuni

Interogarea: Q_IncepereCursuri

Raport: SituatieIncepereCursuri

Īn forma se adauga un control Combo Box (cu Control Wizards

Se modifica proprietatea Name (tab-ul Other) a controlului Combo Box īn Luna

Se creeaza interogarea Q_IncepereCursuri

Se creeaza raportul SituatieIncepereCursuri pe baza interogarii Q_IncepereCursuri

Īn forma frmSelectareCursuri se adauga trei butoane de comanda (cu Control Wizards Previzualizare Tiparire si Terminare

Crearea unui panou de comanda

Panoul principal:

Actualizare tabele

Situatii de iesire

Inchidere aplicatie

Panourile secundare:

Panoul Actualizare tabele

Tabelul Cursuri

Tabelul Conventii

Tabelul Experti

Reintoarcere in panoul principal

Panoul Rapoarte

Taxe pe cursuri

Situatia cursantilor pe functii de clasificare

Situatia cursantilor inscrisi - prezenti

Situatia cursurilor care incep in luna.

Reintoarcere in panoul principal

Īn caseta de dialog Create New se introduc numele panourilor secundare: Actualizare tabele si Rapoarte (īn caseta de text Switchboard Page Name

Īn caseta de dialog Edit Switchboard Item se introduc functiunile panoului principal:

Functiune

Command

Switchboard

Actualizare tabele

Go to Switchboard

Actualizare tabele

Situatii de iesire

Go to Switchboard

Rapoarte

Inchidere aplicatie

Exit Application

Īn caseta de dialog Edit Switchboard Item se introduc functiunile panoului Actualizare tabele

Functiune

Command

Form/ Switchboard

Tabelul Cursuri

Open Form in Edit Mode

frmActVizCursuri

Tabelul Conventii

Open Form in Edit Mode

Conventii

Tabelul Experti

Open Form in Edit Mode

Experti

Reintoarecre in panoul principal

Go to Switchboard

Main Switchboard

Īn caseta de dialog Edit Switchboard Item se introduc functiunile panoului Rapoarte

Functiune

Command

Report/Form/ Switchboard

Taxe pe cursuri

Open Report

Cursuri

Situatia cursantilor pe functii de clasificare

Open Report

Conventii

Situatia cursantilor inscrisi - prezenti

Open Report

rptCursantiPrezenti

Situatia cursurilor care incep in luna.

Open Form in Edit Mode

frmSelectareLuna

Reintoarecre in panoul principal

Go to Switchboard

Main Switchboard


Document Info


Accesari: 3166
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )