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




Macroprogramarea Aplicatiilor Microsoft (Macros)

Informatica


Macroprogramarea Aplicatiilor Microsoft (Macros)

Termenul "macro" este o abreviere pentru "macro-instructiune" sau "macro-program", construit pe baza unei macro-instructiuni sau a mai multora. O instructiune sau comanda nu este altceva decit un ordin dat unui calculator pentru a executa o actiune. Pentru cei care cunosc cite ceva despre limbajul masina al unui calculator (Assembler) pot sa realizeze mai bine modul cum lucreaza aceste instructiuni, stiind faptul ca un program de nivel "jos" (limbaj masina) este o succesiune de instructiuni executate secvential, adeseori cu intrari in subrutine pentru executarea actiunilor repetitive, cu salturi sau reveniri la programul principal. In cazul unui limbaj de nivel "inalt", precum Visual Basic, C, Pascal, Fortran, o instructiune declanseaza in general executia mai multor instructiuni elementare. Prin urmare, o macro-instructiune nu poate fii altceva decit un "imperiu" al instructiunilor elementare, construit pe baza uneia sau a mai multor instructiuni compuse. Pentru a fi mult mai precis, o macro-instructiune declanseaza executia unui mare numar de sarcini elementare, realizind automatizarea de sarcini repetitive ale unei operatii particulare, precum in Microsoft Access deschiderea sau inchiderea unei tabele, interogatii, formular, raport, editarea sau tiparirea acestora, click-ul unui mouse, afisarea unui mesaj, avertizarea printr-un semnal sonor (Beep), etc. Folosirea expresiilor de macro-program sau macroprogramare in Microsoft Access este improprie, deoarece macro-urile nu sint utilizate pentru a face programare in adevaratul sens al cuvintului, precum limbajul evoluat Visual Basic pentru Aplicatii (VBA), devenit cel mai popular limbaj de programare a aplicatiilor din Microsoft Access, din ultimii ani! Spunem acest lucru bazindu-ne pe urmatoarele argumente:



un macro (macroprogram) nu opereaza cu variabile ce pot fii modificate pe parcursul executiei macroprogramului, precum opereaza un adevarat limbaj de programare. De exemplu, daca un macro deschide un fisier, care apoi isi schimba numele, drept consecinta va trebui sa corectam complet macro-ul respectiv.

Saltul conditional intr-o subrutina este fie absent sau foarte sumar. Actiunile unui macro se executa secvential si destul de rar intilnim executii conditionale.

Nu exista bucle neconditionale sau conditionale de tipul For..Next, If...Then.Else If, Do.While, Do Until, Select Case, etc., ce sint nelipsite dintr-un limbaj de programare pentru asigurarea unei mari flexibilitati in interpretarea si luarea deciziilor.

Tratarea erorilor nu exista. Daca un macro provoaca o eroare de executie, in consecinta afiseaza un mesaj de eroare si apoi se opreste din executie.

In ultimul timp, dupa aparitia si cresterea exploziva a evantaiului de aplicatii ale limbajului Visual Basic pentru Aplicatii (VBA) in cadrul Microsoft Access, macro-urile pierd din ce in ce mai mult teren, fiind preferate in special de utilizatori care nu au notiuni de programare sau nu sint confortabili cu utilizarea unui limbaj de programare. Punctul forte al macro-urilor ramine in continuare automatizarea sarcinilor repetitive, ce le intilnim cu o intensitate din ce in ce mai mare in aplicatiile Access, Excel, Word, Outlook, sau in cazul oricarui alt logiciel. O astfel de automatizare prezinta doua avantaje esentiale:

Economie de timp

Eliminarea riscului de erori

Se subintelege de fapt faptul ca un macro nu poate automatiza decit operatiile manuale bine puse la punct. Macro-urile sint foarte bine legate de specificul unui anume logiciel. De exemplu, macro-urile din Access sint complet diferite de cele din Excel, Word sau Outlook. Intilnim macro-uri intr-un mare numar de logiciele de pe piata produselor informatice, ca de altfel si in cadrul anumitor sisteme de exploatare, precum sistemele Windows 9x, 2000, sau XP. Conceptia acestor macro-uri, usurinta cu care pot fi aplicate in rezolvarea unei aplicatii, precum si serviciile pe care le pot aduce utilizatorului, variaza de la un logiciel la altul.

In aceasta era "informational exploziva" Bazele de date au o evolutie dinamica, crescind intr-o maniera regulata capacitatea lor de stocare a datelor. Impactul noilor date cu Baza de date face obiectul unor operatii recursive precum:

Import

Reformatare (modificari, eliminari)

Analiza (interogari multiple)

Inregistrare (in afara Bazei de date, intr-un format particular)

Introducerea si afisarea datelor intr-un anume format (tabele, interogari, formulare, rapoarte)

Expediere prin posta electronica

Export (catre o alta Baza de date sau alt calculator), etc.

Macro-urile pot regrupa toate actiunile repetitive asociate acestor operatii, si de fapt aceasta reprezinta obiectivul lor principal. O aplicatie secundara a macro-urilor consista in asocierea butoanelor de comanda, verificare (check) sau de control. Toti utilizatorii Bazelor de date carora le place mediul de reprezentare grafica a informatiilor isi acopera formularele, rapoartele precum si meniurile acestora cu fel si fel de butonase! Inca o data dorim sa precizam faptul ca profesionistii care se ocupa de dezvoltarea aplicatiilor Access se folosesc din ce in ce mai putin de macro-uri. Ei prefera sa utilizeze din ce in ce mai mult Visual Basic pentru Aplicatii (VBA), o extensie a limbajului de programare Visual Basic care permite manipularea obiectelor Access ( tabele, interogatii, formulare, rapoarte, macro-uri, module), fara a se limita la macro-uri. Utilizatorii care nu sint profesionisti prefera mai degraba utilizarea macro-urilor decit VBA-ul, deoarece procesul de invatare si de deprindere a lucrului cu acestea este mult mai rapid si mai usor. In cele ce urmeaza, in cadrul acestui capitol, ne vom limita doar la utilizarea celor mai reprezentative actiuni utilizabile pentru crearea unui macro in scopul dezvoltarii unei aplicatii Access, tinind cont de faptul ca lista Access contine aproape 50 de astfel de actiuni.

4.1 Crearea unui macro

Pentru crearea unui macro se parcurg urmatoarele etape:

In fereastra bazei de date se executa un click pe obiectul Macros din lista de obiecte Access, urmat apoi de un nou click pe butonul New din bara de instrumente ale aceleiasi ferestre. In urma acestei operatii se va deschide fereastra Macro editor.

In Microsoft Access obiectele care apar in lista de obiecte din ferestra bazei de date sint: tabels, forms, queries, reports, macros si modules.

In Microsoft Access project conectat la un server baze de date SQL , obiectele bazei de date sint tabelele (incluzind indexes, triggers, keys, constraints, defaults, rules, user-defined data types), views, stored procedures si data base diagrams.

Obiectele lui Access project sint: forms, reports, macros si modules.

In coloana Action se executa click in prima celula urmat de un al doilea click pe sageata pentru a afisa lista cu toate actiunile posibile recunoscute de Access.

Selectarea printr-un simplu click a actiunii pe care dorim s-o realizeze programul.

In ultima coloana din dreapta se pot inscrie optional citeva comentarii pentru a usura identificarea si verificarea cu usurinta a macroului.

In partea de jos a ferestrei Macro editorului trebuiesc specificate ori de cite ori este nevoie argumentele fiecarei actiuni.

Argumentul unei actiuni nu este altceva decit o constanta, o variabila, sau o expresie ce furnizeaza informatii unei actiuni, eveniment (event), metode. Proprieteti, sau proceduri.

Obiecte de tip modul

Daca tabelele, interogarile, formularele si rapoartele reprezinta componentele principale ale unei baze de date Access, modulele constituie liantul care le uneste.

Modulele sunt fuctii si subrutine scrise în limbajul standard Visual Basic for Applications (VBA). Ele asigura toate functionalitatile unei baze de date; în majoritatea aplicatiilor de baze de date, au loc foarte multe actiuni pe care nu le vedeti pe ecran. Calculele, validarea datelor, efectele grafice si comunicatia între obiectele bazei de date sunt tratate, de obicei, de secvente de cod scrise special pentru aceste operatii si memorate în module.

Practic, prin includerea modulelor de cod într-o baza de date, aceasta se transforma dintr-un depozit de stocare a informatiilor într-o aplicatie, într-un mediu în care utilizatorul efectueaza operatii cu date.

Începând cu MicroSoft Office 95, toate aplicatiile Office (Word, Excel, Access, etc) folosesc un limbaj comun, denumit VBA, care este adaptat corespunzator caracteristicilor fiecarei aplicatii. De exemplu, în VBA sub Word, se pot scrie de obicei secvente de cod care au efect asupra unui bloc de text selectat; conceptul de text selectat nu are nici o relevanta în Access, fiind specific aplicatiei Word.

Desi, modul general de lucru cu limbajul VBA este acelasi în toate aplicatiile Office, mediul de programare nu este chiar standard. Cu exceptia programului Access, toate aplicatiile bazate pe limbajul VBA utulizeaza pentru scrierea modulelor de cod un mediu de programare standard, numit Visual Basic Editor. Mediul de programare din Access este putin diferit, si este numit Code Builder.

Desi în fereastra Database din Access avem doar o singura eticheta numita Modules, exista doua tipuri de module Access:

Module standard - sunt programe de sine statatoare, carora li se atribuie nume si pot exista independent de orice alt obiect din baza de date; acestea pot fi gestionate si editate din fereastra Database, toate aparând în pagina Modules;

Module de clasa - sunt module asociate cu alte obiecte din baza de date (formulare sau rapoarte) sau cu controale din aceste abiecte. Un modul care efectueaza o actiune dupa ce utilizatorul executa Click pe un buton de comanda dintr-un formular, este implementat, de obicei, ca modul de clasa asociat cu butonul de pe formular. Modulele de clasa nu sunt afisate în fereastra Database.

Pentru a vizualiza un modul de clasa asociat cu un formular, raport, tabel sau interogare:

se deschide obiectul respectiv în modul Design;

se selecteaza optiunea Code din meniul View.

Daca modulul este asociat unui control al unui formular sau raport:

se deschide formularul sau raportul respectiv în modul Design si se selecteaza controlul respectiv;

se deschide fereastra Properties a controlului respectiv (View / Properties) si se selecteaza eticheta Event; daca lânga un nume de eveniment apare expresia [Event Procedure] înseamna ca exista module de clasa asociate cu evenimentul corespunzator acelui control; pentru a vizualiza codul asociat cu o procedura se executa Click pe butonul Builder care apare alaturi (.).

Un modul este o colectie de declaratii si proceduri (de tip Function sau Sub) VBA, descrise împreuna ca un întreg.

Pentru a crea un modul, în fereatra Database, eticheta Modules, se actioneaza butonul New. Spre deosebire de celelalte obiecte ale unei baze de date, în cazul modulelor nu avem la dispozitie un program expert, si rezultatul va fi deschiderea unei ferestre Code Builder (Generator de cod) libera. Aceasta contine doua sectiuni:

de declaratii (Declarations);

caseta Object

 
procedurilor (Procedures).



Sectiunea Declarations (de declaratii) contine instructiuni care configureaza optiunile globale pentru acel modul si comunica programului Access tipul datelor fiecarei variabile folosite în cod. Instructiunile de dimensionare a varabilelor (Dim, care declara tipul oricarei variabile pe care o folositi) plasate în aceasta sectiune sunt disponibile pentru orice procedura din acest modul; daca instructiunile Dim sunt plasate în interiorul unei proceduri, variabila nu poate fi folosita decât în cadrul procedurii respective. Instructiunile Options (de optiuni) sunt declarate tot în aceasta sectiune deoarece sunt necesare pentru a determina cum va fi rulat modulul.

Pentru a adauga optiuni (instructiuni) noi, plasati cursorul în aceasta sectiune (care este delimitata în partea de jos de o bara orizontala) si începeti sa tastati. Programul Access nu va permite sa introduceti aici cod de procedura (instructiuni care executa o actiune) ci doar instructiuni care configureaza dimensiunea unor variabile sau anumite optiuni.

Sectiunea Procedures (proceduri) este cea în care introduceti codul propriu-zis prin tastarea instructiunilor dorite.

Caseta Object este o caseta combinata cu lista derulanta, continând numele obiectelor sau controalelor din obiecte care pot avea cod asociat. Aveti posibilitatea sa vizualizati modulele de clasa asociate cu diferite obiecte sau controale. În lista derulanta vor aparea toate controalele din formulare sau rapoarte, permitîndu-va sa introduceti o secventa de cod noua sau sa editati codul existent pentru orice control din formular sau raport. În modulele standard, aceasta caseta nu contine decât o intrare denumita General.

Caseta Procedure contine lista ordonata alfabetic a tuturor subrutinelor sau functiilor definite pâna în momentul respectiv în modulul curent (indiferent daca este standard sau de clasa). Aici apare si sectiunea Declarations. Daca selectati o procedura în aceasta caseta, ajungeti rapid la instrunctiunea de început a procedurii respective, pe care puteti sa o vizualizati sau sa o editati. Aceasta lista contine doar procedurile din modulul curent (fie el de clasa sau standard).

Butoanele Procedure View si Module View schimba modul de afisare a codului în fereastra Code Builder. Prima, optiune implicita, afiseaza într-o singura lista toate procedurile (declaratii, functii, subrutine) din modulul curent. Executia unui Click pe al doilea buton, are ca efect comutarea în modul de afisare Module View, ce determina listarea fiecarei proceduri într-o sectiune separata, la care se poate ajunge prin selectarea procedurii individuale în caseta Procedure.

Programul Access coloreaza automat codul VBA pe baza urmatoarelor reguli:

text albastru - reprezinta cuvinte rezervate în Access, cum ar fi: Function, True, If, etc; majoritatea liniilor dintr-o procedura încep cu un cuvânt rezervat sau cu un nume de functie recunoscut de Access;

text negru - caracterizeaza corpul codului (instructiuni obisnuite);

text verde - evidentieaza comentariile introduse de programator pentru a prezenta scopul unei anumite secvente de cod; în limbajul VBA puteti sa creati comentarii inserând un apostrof (') înaintea unui fragment oarecare de text, text ce va fi ignorat de compilatorul Access;

text rosu - contine erorile care nu pot fi interpretate de compilatorul Access, cum ar fi comenzile scrise gresit sau instructiunile incomplete; în mod implicit, programul Access cauta aceste tipuri de erori în timp ce introduceti textul de la tastatura si va avertizeaza când faceti o asemenea eroare de sintaxa; textul respectiv ramâne colorat în rosu pâna la corectarea erorii; aceasta verificare se seteaza sau deseteaza din meniul Tools / Options / Module optiunea AutoSintaxCheck.

Întregul cod VBA este scris în proceduri - blocuri (secvente) de cod, cu început si sfârsit bine determinat. În cadrul modulelor, procedurile sunt de sine statatoare; nu se pot imbrica. Totusi, un cod bine scris, consta, în general, din mai multe proceduri scurte, usor de înteles, care se apeleaza între ele. Acest tip de programare poarta numele de programare modulara, iar codul este usor de înteles si de întretinut.

Notiuni privind componentele sistem

a)       Interfata Microsoft Open Database Connectivity (ODBC - capacitatea de conectare a bazelor de date deschise) este un standard industrial si o componenta a Microsoft WOSA (Windows Open Service Arhitecture - Arhitectura Windows pentru noi servicii). Interfata ODBC permite aplicatiilor sa acceseze datele dintr-o varietate de DBMS-uri (Database Management System). ODBC-ul permite o maxima interoperabilitate - o aplicatie poate accesa datele din diverse SGBD-uri, prin intermediul unei singure interfete. Mai mult, respectiva aplicatie va fi independenta de oricare dintre DBMS-urile din care acceseaza datele.

Arhitecura ODBC consta din 4 componente:

Interfata de Programare a Aplicatiilor (API): prin intermediul ei aplicatiile apeleaza functiile ODBC pentru a se conecta la sursa de date, a transmite si a primi date, precum si pentru a se deconecta de la aceste surse;

Gestionarul de drivere: furnizeaza informatii unei aplicatii cu privire la sursele de date disponibile, încarca dinamic driverele necesare pentru a realiza functiile utilizabile în Access si furnizeaza iformatii cu privire la starea tranzactiei;

Driverul: proceseaza apelurile functiilor ODBC si gestioneaza schimbul de date dintre o aplicatie si o baza de date relationala; în caz ca este necesar, driverul face conversia din sintaxa SQL standard în sintaxa SQL specifica sursei de date;

Sursa de date: este compusa din date si motorul de baza de date asociat; o aplicatie foloseste API-ul ODBC pentru a se conecta la o sursa de date, a executa interogari SQL asupra acesteia, a transfera/prelucra date si pentru a se deconecta; un gestionar de drivere este situat între aplicatie si drivere ODBC, având rolul de a decide care driver trebuie încarcat, si de a coordona comunicatia conform cu functiile apelate; în final, driverele implementeaza functii ODBC API particulare unei baze de date;

Aceasta arhitectura da posibilitatea aplicatiei sa acceseze surse de date ODBC diferite, localizate diferit, dar folosind aceleasi apeluri de functii disponibile în API-ul ODBC. Odata scrisa o astfel de aplicatie care acceseaza o sursa de date relationala, codul poate fi usor adaptat si extind pentru a accesa alte surse de date.

b)  OLE DB (Open Linking and Embedding Database) este interfata strategica a firmei Microsoft pentru programarea la nivel sistem a datelor dintr-o organizatie; OLE DB este o arhitectura descisa, conceputa prin prisma succesului pe care l-a cunoscut ODBC-ul prin furnizarea unui standard deschis de accesare a tuturor tipurilor de date. Daca ODBC a fost creat pentru a accesa baze de date relationale, OLE DB a fost conceput pentru a accesa surse de informatie relationale si nonrelationale, incluzând aici mainframe-uri ISAM (Indexed Sequential Access Method) / VSAM (Virtual Sequential Access Method) si baze de date ierarhice, e-mail-uri si fisiere sistem, text, grafica si date geografice etc. OLE DB defineste o colectie de interfete COM (Componente Object Model) care încapsuleaza diferite servicii DBMS. Aceste interfete permit construirea unor componente software, care sa implementeze asemenea servicii.

În limbajul Visual Basic sunt disponibile trei interfete de acces la date:

Data Access Object (DAO);

Remote Data Objects (RDO);

ActiveX Data Objects (ADO).

Obiecte si colectii tip Access

De cele mai multe, ori veti scrie secvente de cod pentru a modifica proprietatile unui obiect. Deoarece fiecare obiect are proprietati diferite, ar fi practic imposibil sa prezentam aici toate proprietatile pentru toate obiectele din Access; dar, în Help, la subiectul Properties References gasiti o astfel de lista, organizata dupa tipurile de obiecte sau an ordine alfabetica.

Limbajul VBA include zeci de proceduri proiectate special pentru lucrul cu anumite tipuri de obiecte. Aceste proceduri sunt accesibile programatorului sub forma de metode, iar cunoasterea metodelor dispomibile pentru personalizarea diverselor tipuri de obiecte va poate fi de mare ajutor în procesul de dezvoltare a aplicatiei.

Toate obiectele de un anumit tip folosesc aceleasi meode. De exemplu, metoda Close a obiectului Form poate fi folosita în orice formular, indiferent de modul în care acesta este personalizat sau modificat. Nu trebuie sa definiti sau sa specificati vreo metoda integrata; acestea exista deja si puteti sa le folositi oricând.

Majoritatea metodelor pot fi folosite si pentru colectii; de exemplu, aplicarea metodei Close asupra colectiei de obiecte Forms va avea ca efect închiderea tuturor formularelor deschise din baza de date.

Sintaxa de aplicare a unei metode asupra unui obiect este urmatoarea:

nume_obiect.metoda [argument1] [,argument2] [,.]

unde nume_obiect este numele obiectului sau al colectiei asupra caruia (careia) doriti sa actionati metoda.

Daca metoda are si argumente, acestea urmeaza dupa un spatiu si sunt separate între ele de virgula. Spre deosebire de sintaxa unei functii aici nu avem paranteze.

Spre deosebire de proprietatile obiectelor, metodele reprezinta proceduri care actioneaza asupra unui obiect denumit, nu identifica atributul unui obiect. Proprietatile unui obiect pot fi modificate si interogate, în timp ce specificarea unei metode pentru un obiect înseamna, practic, actionarea asupra acestuia.

Uneori, metodele sunt confundate cu actiunile, care sunt tot proceduri integrate. Spre deosebire de metode, actiunile nu se aplica neaparat asupra unui singur tip de obiecte la un moment dat; de fapt, exista cazuri în care actiunea nu se aplica asupra nici unui obiect. Toate comenzile disponibile în fereastra Macro Builder pentru scrierea macroinstructiunilor sunt actiuni. Actiunile sunt folosite, în general, pentru executarea unor activitati care sunt în afara domeniului de utilizare a obiectelor; exemplu de actiuni sunt Beep, TransferDatabase, MsgBox. Atunci când doriti sa folositi actiuni în secvente de cod VBA, aveti la dispozitie obiectul special DoCmd. Metodele lui corespund actiunilor valabile pentru macroinstructiuni.


Toate aplicatiile conforme cu OLE îsi organizeaza obiectele programambile într-o structura ierarhica de clase de obiecte care arata ca în figura de mai jos:

Grupurile de obiecte ale unei clase se numesc colectii. Numele unei colectii este format din pluralul în limba engleza al numelui clasei de obiecte care sunt continute de aceasta colectie.

Colectiile tip Access sunt:

Forms : contine toate formularele deschise într-o baza de date Access;

Reports : contine toate rapoartele deschise într-o baza de date Access;

Modules : contine toate modulele standard sau de clasa deschise într-o baza de date Access;

Controls : contine toate controalele din formulare si rapoarte.

Toate colectiile tip Acces prezinta urmatoarele proprietati:

Application: permite accesarea obiectului Application si proprietatile aferente lui; fiecare obiect are o proprietate Application care întoarce obiectul Application curent; aceasta proprietate se poate folosi pentru a accesa orice proprietate a oricarui obiect; spre exemplu, puteti referi bara de meniuri a obiectului Application din formularul curent, folosind urmatoare sintaxa:

Me. Application.MenuBar

Count: determina numarul de formulare sau rapoarte deschise, sau numarul de controale din formularul sau raportul deschis; rezultatul aplicarii acestei metode este o valoare întreaga, care poate fi doar citita; daca nu este deschis nici un formular sau nici un raport va fi întoarsa valoare 0;

ex: MsgBox Forms.Count - va afisa numarul de formulare deschise.

Item(Collection): returneaza un membru al colectiei specificat prin index sau pozitia în cadrul colectiei (se poate aplica la toate colectiile, exceptând Controls); sintaxa: Obiect.Item(index).

Item(ObjectFrame Control): permite afisarea datelor legate afisate în controale chart sau controale frame nelegate.

Parent: refera parintele contrulului respectiv; mai determina si care formular sau raport este parintele unui subformular sau subraport.

Obiectele tip Acces

Acestea sunt: Application, Form, Control, Report, Module, Screen, DoCmd. Toate obiectele au proprietati si metode.

Obiectul Application contine toate obiectele si colectiile Microsoft Access, incluzând colectia Forms, colectia Reports, colectia Modules, colectia References, obiectul Screen, obiectul DoCmd; proprietatile lui sunt:

Application;

CodeContextObject;

CurrentObjectType;

CurrentObjectName;

MenuBar;

Parent;

UserControl;

Visible;

Metodele lui sunt:

AccessError;

AddToFavorites;

BuildCriteria;

CloseCurrentDatabase;

DefaultWorkspaceClone;

Echo;

NewCurrentDatabase;

OpenCurrentDatabase;

Quit;

RefreshDatabaseWindow;

Run;

RunCommand;

Obiectul Form este un membru al colectiei Forms; în cadrul colectiei Forms, fiecare formular este indexat începând de la 0; referirea la un formular se poate realiza astfel:

Forms!Numeformular sau

Forms![Numeformular] sau

Forms("Numeformular") sau

Forms(index);

referirea la formularul curent se poate face si folosind proprietatea Me; referirea la un control din cadrul formularului se relizeaza astfel:

implicit: Forms!Clienti!CodClient sau Me.CodClient sau Me!CodClient;

explicit: Forms!Clienti.Controls!CodClient sau Me.Controls!CodClient.

Proprietatile formularelor au fost descrise la obiectul de tip formular. Cele mai importante metodele pentru acest obiect sunt:

DefaultControl;

Refresh;

Repaint;

Requery;

SetFocus;

Undo;

Obiectul Reports este membru al colectiei Reports. În cadrul acestei colectii, fiecare raport este indexat începând de la 0. Referirea la un raport se poate realiza astfel:

Reports!NumeRaport sau

Reports![NumeRaport] sau

Reports("NumeRaport") sau

Reports(index).

referirea la raportul curent se poate face si folosind proprietatea Me; referirea la un control din cadrul formularului se relizeaza astfel:

implicit: Reports!Clienti!CodClient sau Me.CodClient sau Me!CodClient;

explicit: Reports!Clienti.Controls!CodClient sau Me.Controls!CodClient.

Proprietatile rapoartelor au fost descrise la obiectul de tip raport. Cele mai importante metodele pentru acest obiect sunt:

Circle;

Line;

DefaultControl.

Obiectul Screen se foloseste pentru a face referire la formularele, rapoartele, controalele active, care sunt afisate pe ecran. Proprietati:

ActiveControl;

ActiveDatasheet;

ActiveForm;

ActiveReport;

Application;

PreviousControl.

Obiectul DoCmd permite executarea unor actiuni în proceduri/functii. Sintaxa: [Application.]DoCmd.metoda [arg1, arg.2,...]

unde: Application -este obiectul Application (este optional);

Metoda -este o metoda suportata de acest obiect;

arg.1, arg.2,... -sunt parametri metodei selectate.

Metode:

ApplyFilter;

CancelEvents;

Close;

CopyObject;

DeleteObject;

OpenForm;

OpenTable;

RunSQL;


Document Info


Accesari: 3138
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 )