QReferate - referate pentru educatia ta.
Referatele noastre - sursa ta de inspiratie! Referate oferite gratuit, lucrari si proiecte cu imagini si grafice. Fiecare referat, proiect sau comentariu il poti downloada rapid si il poti folosi pentru temele tale de acasa.



AdministratieAlimentatieArta culturaAsistenta socialaAstronomie
BiologieChimieComunicareConstructiiCosmetica
DesenDiverseDreptEconomieEngleza
FilozofieFizicaFrancezaGeografieGermana
InformaticaIstorieLatinaManagementMarketing
MatematicaMecanicaMedicinaPedagogiePsihologie
RomanaStiinte politiceTransporturiTurism
Esti aici: Qreferat » Referate informatica

Obiecte de tip raport si macrocomenzi



OBIECTE DE TIP RAPORT SI MACROCOMENZI


1. Obiectivele unitatii de invatare 14

2. Obiecte de tip raport (Report)

2.1. Prezentare generala

2.2. Crearea unui raport

3. Obiecte de tip macrocomenzi (Macros)

3.1. Prezentare generala

3.2. Componentele macrocomenzilor



3.3. Crearea unei macrocomenzi


Studiu de caz nr.5



1. Obiectivele unitatii de invatare 14


Obiecte de tip raport (REPORT)

Obiecte de tip macrocomenzi



2. Obiecte de tip raport (Report)


2.1. Prezentare generala


Raportul este obiectul considerat cel mai important al unei baze de date Access, folosit pentru prezentarea datelor dintr-unul sau mai multe tabele sau interogari, precum si a rezultatelor prelucrarilor efectuate asupra lor. Suplimentar, prin rapoarte se pot prezenta informatii care nu sunt memorate in tabele. In functie de necesitati, putem sa obtinem si sa prezentam informatii de sinteza, centralizatoare, prin ordonarea, gruparea si totalizarea datelor. Putem obtine astfel totaluri pe grupe, subgrupe si totaluri generale. Totalurile pe grupe si subgrupe se mai numesc si subtotaluri.

De asemenea se pot obtine etichete postale tiparite, precum si subrapoarte incluse intr-un raport principal.

Rapoartele, indiferent de tipul lor, pot fi:


vizualizate pe ecran;

tiparite pe hartie sau

pastrate sub forma de fisiere pe o memorie externa.


Continutul raportului poate fi afisat cu caractere formatate, utilizand stiluri diferite si prezentari grafice. Reprezentarea grafica a datelor primare si a rezultatelor prelucrarii se numeste diagrama.


Orice lista finala este formata din doua parti componente:


structura si

datele propriu-zise


Pentru a realiza o prezentare placuta a unui continut, in rapoarte se pot utiliza elemente grafice si o serie de controleri specifici. Toate tehnicile si procedeele utilizate pentru crearea si personalizarea machetelor, se pastreaza si la definirea rapoartelor. Intre machete si rapoarte exista multe asemanari, atat din punct de vedere al structurii, cat si al tehnicilor utilizate la crearea si utilizarea lor. Ambele clase de obiecte:

sunt destinate prezentarii datelor

folosesc sectiuni si controlere pentru gestionarea spatiului si a datelor

pot include subformulare, respectiv subrapoarte

Exista insa si o serie de caracteristici care diferentiaza rapoartele de formulare, dintre care mai reprezentative sunt urmatoarele:


rapoartele sunt unidirectionale (permit numai extragerea, nu si introducerea datelor);

rapoartele permit gruparea si totalizarea datelor, cu obtinerea totalului general si a subtotalurilor pe grupa sau subgrupa;

rapoartele ofera o imagine de ansamblu asupra datelor continute in una sau mai multe tabele, pe cand formularele vizualizeaza pe ecran la un moment dat continutul unei inregistrari dintr-un tabel.


2.2. Crearea unui raport


Pentru realizarea unui obiect de tip REPORT, exista mai multe posibilitati:


Design View: descrierea structurii listei finale se realizeaza in totalitate de utilizator, care va decide ce sectiuni foloseste, ce controale ii sunt necesare si in care sectiuni vor fi plasate;

Report Wizard: creare listelor finale se realizeaza cu ajutorul asistentilor;

AutoReport:

Columnar: rapoartele sunt generate automat, datele dintr-o coloana fiind prezentate pe o singura coloana;

Tabular: rapoartele sunt generate automat, cu plasarea datelor sub forma tabelara,

Chart Wizard: realizeaza crearea rapoartelor cu grafice;

Label Wizard: cu ajutorul asistentului Wizard se creaza rapoarte care vor avea o dimensiune ceruta pentru imprimarea lor pe o eticheta (se folosesc de regula in etichetarea produselor comerciale sau in corespondenta)


Dupa selectarea modalitatii de realizare, se alege tabelul sau interogarea ce reprezinta sursa de date din raport si se continua cu finalizarea listei, functie de modalitatea de realizare aleasa.

2.2.1. Crearea unui raport in modul Design View

Pentru realizarea unui raport in acest mod se parcurg obligatoriu urmatorii pasi:


deschiderea bazei de date;

selectarea obiectului REPORT si activarea butonului New sau alegerea optiunii Create report by design View din ferastra bazei de date;

alegerea, din lista derulanta Choose the table or query where the object's data comes from, a  tabelului sau interogarii in care se afla datele;


se activeaza, daca sunt inactive, butoanele Field List (care afiseaza numele campurilor din tabela sau interogarea selectata ca sursa de date) si Toolbox (ce va afisa controlorii necesari descrierii structurii)


se aleg si activeaza sectiunile necesare (in momentul deschiderii, fereastra de definire a raportului contine doar trei sectiuni: Page Header/Footer si Detail);


se plaseaza controlorii necesari in fiecare sectiune in parte;


se alege un controlor de tip eticheta, se tasteaza titlul raportului si se stabilesc culorile pentru fond, font si linia de incadrare, precum si tipul acesteia, cu ajutorul butoanelor aflate pe bara de unelte standar;


Un raport este impartit in urmatoarele sectiuni:


antet/subsol de raport (Report Header/Footer)

antet/subsol de pagina (Page Header/Footer)

antet/subsol de grup (Group Header/Footer)

detalii de grup Detail


Orice combinatie a lor este permisa si admisa. Fiecare sectiune apare o singura data in modul Design View. Cand raportul este lansat in executie si tiparit, sectiunile sunt repetate pana cand toate datele din lista sunt afisate.


In sectiuni pot fi plasate controlere, utilizate pentru precizarea datelor tiparite in cadrul listei, cat si a pozitiei si formei lor.


COMPONENTELE SECTIUNILOR


Sectiunea Report Header contine acele informatii care se afiseaza o singura data, la inceputul raportului, ca de exemplu: antetul firmei, numele listei. Pentru introducerea acestor informatii de la tastatura, se foloeste optiunea Labels, respectiv butonul "Aa" din bara de unelte Toolbox


Sectiunea Report Footer contine informatiile care se afiseaza o singura data, la sfarsitul raportului. In principal aceste informatii se refera la valorile finale ale unor indicatori (ex. totalurile generale, media generala etc)


Pntru calcularea si afisarea unei valori finale se procedeaza astfel:


se selecteaza din bara de unelte Toolbox caseta de text "ab" si se deseneaza in zona acestei sectiuni un dreptunghi care va avea doua casete: una pentru eticheta si a doua pentru valoare;


in caseta din stanga (eticheta) se va tasta denumirea campului calculat la nivel general (ex. "Total general valoric"),


in caseta de valoare se va tasta, incepand cu semnul "=", formula de calcul ce va folosi in general functii totalizatoare (ex. SUM, AVG, MIN, MAX etc). Pentru campurile care intra in formula, numele lor va fi tastat intre paranteze drepte.

Exemplu:

=sum([Cantitate]*[Pret])


Numele campurilor din functia apelata trebuie sa fie aceleasi cu cele atribuite in structura tabelului sursa. Argumentele functiei se inscriu intre paranteze rotunde ().


Sectiunea Page Header va contine imformatiile care se cer sa apara la inceputul fiecarei pagini din lista finala.

Zona destinata acestei sectiuni este formata din doua parti:


A. In partea superioara a antetului de pagina se vor inscrie informatii utile oricarui raport, referitoare la data curenta, ora editarii, numarul de pagina etc.

Aceste date se completeaza in structura raportului prin utilizarea functiilor corepunzatoare Access astfel:


a. Pentru functia referitoare la Data si Ora executiei listei:


folosind caseta de text "ab" se deseneaza un dreptunghi;

se sterge casuta din stanga (eticheta "Text . ");

in casuta de valoare se va tasta =Now()


Observatie:

Semnul "=" este obligatoriu pentru functii si expresii, iar parantezele () pentru functii.


b. Pentru functia Numar de Pagina:


se deseneaza in zona sectiunii (de regula in partea de sus dreapta) un dreptunghi cu ajutorul casetei de text "ab";

se sterge casuta din stanga (eticheta "Text");

clic dreapta mouse pe casuta de valoare ramasa si se selecteaza optiunea Properties;

se selecteaza optiunea Control Source si se bifeaza cele trei puncte din dreapta (" . ");

se alege optiunea Common Expresion, iar in cadrul ei optiunea "PAGE N OF M";

pentru transpunerea in limba romana a textului se modifica cuvintele rezervate Page cu Pagina si OF cu din, in final functia avand forma:


="Pagina" & Page & "din" Pages


O alta modalitate de solicitare a numarului de pagina consta in selectarea functiei INSERT din meniul principal, de aici operatia Page Numbers si apoi optiunea "PAGE N OF M"   


B. In partea inferioara a zonei Page Header se va realiza capul de tabel al listei


Sectiunea Page Footer contine informatii ce vor fi afisate la sfarsitul fiecarei pagini (de exemplu numele proiectantului). Aceste informatii vor fi atasate in macheta listei cu ajutorul butonului "Aa" din Toolbox.


Sectiunile Group Header si/sau Group Footer vor apare in structura raportului atunci cand este necesara gruparea inregistrarilor dupa continutul unui camp. In sectiunea Group Header se va "draga" numele campului dupa continutul caruia se formeaza grupurile de inregistrari, din fereastra Field List.

Sectiunea Group Footer va apare in structura numai daca la sfarsitul fiecarui grup este necesara afisarea unor valori sintetice. Continutul ei se completeaza asemanator cu zona sectiunii Report Footer.


In sectiunea Detail se vor plasa prin remorcare din lista Field List campurile ale caror continuturi se preiau ca atare din tabele sau interogari. Deoarece exista un cap de tabel creat in sectiunea Page Header, care contine numele campurilor, in sectiunea Detail vor ramane dupa dragare doar casetele cu valorile campurilor. Casetele de text cu numele campurilor vor fi sterse din aceasta zona.

Este recomandata ajustarea marimii campurilor prin sagetile aparute la selectarea lor, astfel incat toate valorile sa incapa pe suprafata de proiectare a listei finale.


Gruparea si ordonarea datelor in Access


Intr-un obiect de tip raport, datele pot apare grupate functie de continutul unuia sau a mai multor campuri, iar in cadrul fiecarei grupe, inregistrarile pot apare ordonate (sortate).

Gruparea si ordonarea datelor se realizeaza prin alegerea uneia din urmatoarele posibilitati:


se selecteaza meniul View, optiunea Sorting and Grouping

se activeaza din bara de unelte standard butonul corespunzator Sorting and Grouping

prin utilizarea aceleiasi optiuni din meniul contextual


La selectarea optiunii de grupare si sortare apare o fereastra corespunzatoare, ce contine in partea superioara numele campurilor si modalitatile de sortare, iar in partea inferioara proprietati referitoare la grupul format (Group Properties)


Pentru realizarea efectiva a grupurilor se procedeaza astfel:


se selecteaza din fereastra anterioara campul de grupare;


se selecteaza Yes in rubricile corespunzatoare antetului (Group Header) si/sau subsolului de grup (Group Footer): acesta din urma se solicita in situatia in care, la sfarsitul unui grup este necesara calcularea si afisarea unor indicatori totalizatori la nivelul fiecarui grup (subtotaluri);


in rubrica Sort Order se precizeaza daca sortarea se va face crescator (Ascending) sau descrescator (Descending).


Proprietatile unui criteriu de ordonare sau sortare sunt accesibile numai dupa pozitionarea cursorului pe numele unui camp.

Daca s-a optat pentru realizarea unui grup, in fereastra Report apar sectiunile corespunzatoare ca zone distincte.

In sectiunea Group Header va apare afisat numele campului dupa care s-a solicitat formarea grupurilor.

Daca nu se doreste gruparea datelor, ci numai sortarea lor, in rubricile de grup (Group Header/Footer) se lasa valorile implicite No.

Daca s-a optat pentru grupare, dar l-a sfarsitul oricarui grup nu se doreste calcularea si afisarea unor indicatori la nivelul grupului (ex. suma unor campuri la nivelul grupului, determinarea valorii minime sau maxime dintr-un camp pentru inregistrarile care fac parte din grup etc.), pentru sectiunea Group Footer se va lasa optiunea implicita No.



Fig. 1. Realizarea structurii pentru un raport cu grupare inregistrari


Observatie:

Meniul contextual al Report-ului este afisat automat in momentul in care se executa clic buton dreapta mouse pe suprafata alba de lucru si contine o serie de operatii principale ce se utilizeaza la redactarea structurii unei liste finale.

2.2.2. Realizarea unui raport in modul REPORT WIZARD

Pentru realizarea unui raport cu ajutorul asistentilor, se parcurg urmatorii pasi:


a)    Se selecteaza din fereastra bazei de date curente obiectul Report, se activeaza butonul New si se alege Report Wizard

b)   Se selecteaza sursa de date pentru proiectarea si executia raportului (un tabel sau o interogare);

c)    Se stabilesc campurile din sursa de date care vor fi incluse in coloanele modalitatea de realizare Report Wizard;

d)   Se alege eventual un mod de grupare si/sau de ordonare al datelor, functie de informatiile ce vor fi afisate in capul de tabel;

e)    Se alege modul de afisare al raportului;

f)    Se salveaza si se previzualizeaza raportul.














Fig. 2. Executia raportului prin Design View




3. Obiecte de tip macrocomenzi (Macros)


3.1. Prezentare generala

Aplicatiile utilizatorilor sunt formate din obiecte vizuale (formulare si rapoarte) si din componente ajutatoare pentru date care controleaza modul lor de functionare  Interfata grafica a aplicatiilor utilizator si cea a sistemului Access sunt dirijate de operator cu ajutorul unor comenzi. Aceste comenzi pot fi introduse prin trei metode:


prin macrocomenzi;

prin meniuri;

prin combinatii de taste


Macrocomenzile reprezinta  obiecte procedurale ale unei baze de date Access, care contin o secventa de comenzi pe care Access le va executa automat pentru utilizator. Ele pot fi atasate unor formulare, unor rapoarte, unor controale sau unor combinatii de taste.

Practic macrocomenzile reprezinta un mecanism Access destinat automatizarii prelucrarilor de rutina in cadrul unei aplicatii, cum ar fi: deschiderea formularelor de actualizare a datelor, afisarea unor raporte, filtrarea unor inregistrari prin mecanismul interogarilor, etc. fara a apela la tehnici de programare.

Astfel, comenzile macro realizeaza o interfata simpla, placuta, aflata la dispozitia utilizatorilor Access care nu sunt totusi specialisti in programare.


O macrocomanda este compusa din actiuni. O actiune indeplineste o sarcina bine definita: deschide/inchide o macheta, tipareste un raport, aplica un filtru, avanseaza la o anumita inregistrare intr-un tabel de date, executa o procedura, atentioneaza sonor un incident.

Sunt actiuni care, pentru a fi executate au nevoie de informatii suplimentare numite argumente. De exemplu, pentru a fi deschisa o interogare este necesara precizarea numelui ei in argumentul QueryName.


Macromenzile pot  permite:


automatizarea activitatilor de rutina;

validarea complexa a datelor din formulare;

constructia meniurilor pentru aplicatiile utilizatorilor;

crearea unui mediu specific de lucru pentru utilizatori.

La randul lor, macrocomenzile pot apela alte macromenzi si se pot grupa.


Grupul de macrocomenzi este o multime de comenzi care apar in aceeasi caseta MACROS si sub acelasi nume (de grup) in fereastra Database, fiecare componenta a grupului fiind apelabila din afara, printr-o denumire de forma:


NumeGrup.NumeMacro.


Access detine si afiseaza un set de actiuni pentru a fi vizualizate sau selectate la crearea unei macrocomenzi sau intr-o procedura.


3.2. Componentele macrocomenzilor


Principalele componente ale unei macrocomenzi sunt:


actiuni

expresii

evenimente

3.2.1. Actiunile Access

Functie de tipul operatiilor pe care le executa, actiunile pot fi pentru:


lucrul cu datele din machete si rapoarte

executie

import/export

manevrarea obiectelor

diverse alte operatii.


a)   Actiuni pentru lucrul cu datele din machete si rapoarte


Aceste actiuni permit deplasarea printre inregistrarile selectate, controalele folosite sau paginile afisate, aplicarea de filtre:


ApplyFilter- foloseste ca argument  numelefiltrului aplicat (FilterName)

FindRecord - foloseste o expresie pentru cautarea unei anumite inregistrari(argumentul FindWhat)

FindNext - reia cautarea in vederea gasirii unei alte inregistrari cu aceleasi valor

GoToControl- realizeaza  pozitionarea pe controlul al carui nume a fost specificat (argumentul ControlName)

GoToPage- realizeaza pozitionarea pe pagina specificata (argumentul PageNumber)

GoToRecord- realizeaza pozitionarea pe o anumita inregistrare (argumentul Record)a unui anumit obiect (argumentele ObjectType si ObjectName). Prin aceasta actiune ne putem pozitiona pe inregistrarea urmatoare (Next), anterioara (Previous), pe prima (First), pe ultima (Last), cu numarul(GoTo) indicat in argumentul Offset.


b)   Actiuni pentru executie


DoMenuItem - executa o comanda dintr-un meniu

RunMacro- executa o comanda dintr-o macrocomanda

RunCode - executa o procedura Visual Basic

OpenQuery - afiseaza rezultatul uneiinterogari

RunSQL - executa o interogare

RunApp - lanseaza in executie o alta aplicatie(Word, Excel etc)

CancelEvent - anuleaza un evenimet

Quit - terminarea sesiunii de lucru si iesirea din aplicatie

StopAllMacros - oprirea executiei tuturor macrourilor

StopMacro - opreste executia macrocomenzii curente


c)    Actiuni pentru export/import


Transfera obiecte si date intre aplicatia Access si alte aplicatii sau surse de date


OutputTo si SendObject trimit date din diferite obiecte si respectiv obiecte Access. Datele pot fi transferate din diferite obiecte Access (argumentele ObjectType si ObjectName)in diferite formate (argumentul OutputFormat) si cu destinatii diverse (argumentul OutputFile)

TransferDataBase, TransferSreadsheet si TransferText - transfera date intre Access si alte surse de date in formate diferite.


d) Actiuni de manevrare a obiectelor din baza de date


SetValue - stabileste valoarea unui camp, control sau proprietate

RepaintObject - actualizeaza datele afisate pe ecran

Requer - actualizeaza datele afisate pe ecran

ShowAllRecords - afiseaza toate inregistrarile

SelectObject - selecteaza un obiect

CopyObjec - copiaza un obiect

Rename redenumeste un obiect

DeleteObject - sterge un obiect

Close - inchide un obiect al bazei de date

OpenForm - deschide un obiect de tip formular

OpenModule - deschide un modul Access

OpenQuery - deschide o interogare

OpenReport - deschide un raport

OpenTable - deschide un table de date

Print - listeaza la imprimanta obiectul selectat


e) Actiuni de manevrare a elementelor ecranului


Maximize - maximizeaza o fereastra

Minimize - minimizeaza fereastra Access

MoveSize - muta fereastra

Restore - restaureaza fereastra

ShowToolbar - afiseaza sau ascunde barele de lucru Access


f)   Actiuni cu efecte diverse


AddMenu - creeaza o bara pentru meniuri definita de utilizator

Echo, Hourglass, MsgBox, SetWarnings - permit afisarea informatiilor pe ecran

SendKey - genereaza coduri corespunzatoare apasarii pe anumite taste

Beep - actioneaza avertizorul sonor


3.3. Crearea unei macrocomenzi


Pentru a crea o macrocomanda, se parcurg urmatoarele etape de lucru:


In fereastra Database se activeaza butonul MACROS si apoi butonul NEW sau se alege optiunea MACROS din meniul VIEW.


Apare caseta de dialog, formata din fereastra superioara (cu numele coloanelor Action si Comments) si una inferioara (cu argumentele sau proprietatile actiunii curente din fereastra superioara si explicarea lor). In coloana Action se va selecta actiunea necesara, iar in coloana Comments se pot descrie actiunile si se pot pastra note sau observatii ale proiectantului

Se cere afisarea coloanei Macro Name fie prin apelarea meniului INSERT si apoi operatia Macro Name, fie prin activarea butonului cu acelasi nume din bara de unelte standard. In aceasta coloana se vor scrie numele atribuite de utilizator actiunilor componente solicitate.


Se precizeaza pe fiecare linie a ferestrei superioare o anumita actiune, aleasa :


prin selectarea ei din lista derulanta sau

prin scrierea directa


Se selecteaza din fereastra inferioara numele obiectului pentru care este aplicata actiunea selectata;


In coloana MacroName se va tasta numele actiunii (comenzii) alese pentru obiectul precizat. Fiecare nume este format din identificatorul actiunii si cel al obiectului (pentru componentele bazei de date) sau al barelor de unelte utilizate, etc.


Se recomanda ca la stabilirea numelul actiunii functie de obiectul unde ea va fi executata sa se tina cont de urmatoarele reguli:


prima litera din nume sa fie initiala actiunii selectate;

in continuare se tasteaza initiala tipului de obiect selectat (Table, Form,

Query, Report);

se continua imediat cu numele obiectului ales.

Pentru a putea fi vizualizate si intelese usor din numele atribuite, este bine ca initialele actiunii si a tipului de obiect sa fie litere mari. De exemplu vor fi folosite urmatoarele majuscule: "O" pentru actiunile care au semnificatia "OPEN", "T" pentru obiectele "TABLE", "Q" pentru obiectele "QUERY", "F" pentru obiectele "FORM" sau "R" pentru "REPORT". In aceste conditii, comanda de deschidere a unei tabele poate fi simbolizata prin: "OT"+numele tabelei (ex: OT Proprietari). Deschiderea unui interogari va fi "OQ"+numele interogarii, a unui formular "OF"+numele formularului, iar a unui raport "OR"+numele raportului.


Ex: OTProprietari, OQProprietari,_OFProprietari, ORProprietari


Pentru actiunea introdusa se vor preciza valorile argumentelor in partea inferioara a ferestrei de proiectare Pentru precizarea argumentelor:

clic in celula argumentului caruia dorim sa ii precizam valoarea;

se actioneaza butonul pentru extindere si din lista afisata se alege valoarea dorita. In cazul in care Access nu ofera o lista cu optiuni posibile, valoarea se introduce de la tastatura


Se scriu la rand comenzile de deschidere a obiectelor (grupate dupa actiuni, iar in interiorul acestor grupuri dupa ordinea obiectelor).


Se salveaza grupul de comenzi (actiuni) prin apasarea butonului Save din bara de unelte Macro si tastand numele macrocomenzii.



Dupa creare, orice macrocomanda trebuie testata din punct de vedere a functionalitatii ei. In acest sens va fi lansata in executie.

Lansarea in executie a unei macrocomenzi se poate face cu una din urmatoarele doua posibilitati:


folosind butonul Run din bara de unelte standard;

din meniul Tools, operatia Macro, optiunea Run Macro


Cu prima posibilitate se va executa doar prima comanda (actiune) din macrou.

Cu a doua posibilitate apar afisate toate comenzile din macrou si utilizatorul poate selecta actiunea necesara.


Pentru studiul de caz utilizat in manual se va crea o macrocomanda cu numele MacroService



Studiu de caz  nr. 5


Pentru aplicatia "Evidenta cartilor din Universitatea Romano-Americana" sa se realizeze pe calculator urmatoarele actiuni:

Realizarea unei machete FORM pentru fiecare tabel

Pentru campurile ale caror valori se preiau din tabelele aplicatiei, se vor realiza casete Look.up

Pentru campurile ale caror valori nu se afla in alte tabele si aceste valori se vor introduce de la tastatura, se vor realiza casete normale

Se vor realiza trei liste finale (REPORT):

Situatia cartilor imprumutate si nerestituite pe fiecare cititor, cu numararea si afisarea zilelor de intarziere

Situatia cartilor pe domenii, cu subtotaluri ale valorilor cartilor pe fiecare domeniu si la sfarsit total general

Situatia cartilor din biblioteca pe edituri, cu obtinere de subtotaluri si total general


Nu se poate descarca referatul
Acest referat nu se poate descarca

E posibil sa te intereseze alte referate despre:


Copyright © 2024 - Toate drepturile rezervate QReferat.com Folositi referatele, proiectele sau lucrarile afisate ca sursa de inspiratie. Va recomandam sa nu copiati textul, ci sa compuneti propriul referat pe baza referatelor de pe site.
{ Home } { Contact } { Termeni si conditii }