Studiem conexiunile cu Excel și cu accesul

Studierea componentei TBatchMove

- Valoarea lui batAppend indică faptul că noi rânduri sunt adăugate pur și simplu în tabelul rezultat.

- Valoarea batUpdate determină ca metoda să înlocuiască rândurile tabelului succesor cu rândurile corespunzătoare din tabela sursă. Corespondența rândurilor este determinată de câmpul index.







- Utilizând valoarea lui batAppendUpdate, metoda înlocuiește liniile succesoare cu rândurile corespunzătoare din tabela sursă. Corespondența rândurilor este determinată de câmpul index. Dacă rândurile corespunzătoare nu sunt găsite, atunci ele sunt adăugate în tabel,

- Valoarea batDelete determină ca metoda să elimine șiruri succesorale corespunzătoare rândurilor tabelului sursă. Corespondența rândurilor este determinată de câmpul index.

Proprietatea Mapări specifică maparea câmpurilor de tabelă de conducere la câmpurile tabelului de primire. Pentru tabelele de format Paradox, puteți utiliza proprietatea KeyViolTableName.

Această proprietate deține numele tabelului în care înregistrările care nu au putut fi copiate din cauza constrângerilor de integritate referențială sau încălcări cheie, și în ProblemTableName magazine de proprietate un tabel un paradox, în care să plaseze intrarea nu este copiată din cauza inconsistenței tipuri de câmpuri, sau pentru orice alt motiv .

Pentru a începe copierea datelor, apelați metoda Execute. Proprietățile AbortQnKeyViol și AbortOnProblem, dacă sunt setate la True, vor întrerupe operația de copiere atunci când apare o eroare.

Fișa 3.4 prezintă un exemplu de utilizare a unei componente.

Listarea 3.4.
Exemple ale componentei Bitmove

În această secțiune vom examina un exemplu interesant - un link către un tabel Excel, obținerea de date și schimbarea acestuia.

În primul rând, trebuie să pregătiți un fișier Excel și să configurați accesul la acesta prin driverul ODBC. În tabel. 3.4. se afișează conținutul foii de calcul în format Excel, care va fi utilizat în acest exemplu.

Tabelul 3.4.
Tabelul "Condițiile meteorologice"

Apoi, trebuie să selectați o gamă de celule (Figura 3.15) și să-i dați un nume, de exemplu TestTable.

Studiem conexiunile cu Excel și cu accesul

Fig. 3.15. Gama denumită de celule

Fișierul creat trebuie salvat cu numele Test.xls. Apoi, trebuie să permiteți accesul mai multor utilizatori la fișier.
Pentru a face acest lucru, este suficient să executați comanda de meniu Instrumente -> Acces la carte. În caseta de dialog care se deschide, trebuie să bifați caseta "Permiteți partajarea" și apoi să salvați din nou fișierul.

În acest moment, puteți crea deja o conexiune ODBC la registrul de lucru. Pentru aceasta, rulați utilitarul Administrator ODBC.
În Windows XP, se numește Surse de date și se află în secțiunea Instrumente administrative.

În fereastra principală a utilitarului, trebuie să faceți clic pe butonul Adăugați și să selectați Driver a Microsoft Excel în caseta de dialog care apare. Apoi faceți clic pe butonul Finalizare. În fereastra care apare, vi se va da numele TestExcelDS la sursa de date din câmpul Date sursă de date.
Faceți clic pe butonul SeLect WorkBook și selectați fișierul creat anterior în caseta de dialog. Apoi trebuie să deschideți caseta de dialog Opțiuni cu ajutorul butonului Opțiuni și să debifați caseta Read Only. Conexiunea creată va apărea în lista surselor de date ODBC și va apărea automat în lista de aliasuri disponibile din bazele de date BDE.

Acum puteți continua dezvoltarea aplicației corespunzătoare. Pe formular, ar trebui să plasați componentele TTable, TDataSpurce, TDBGrid și două butoane. În proprietatea DatabaseName a componentei TTable, selectați aliasul TestExcelDS din listă. În proprietatea TableName, specificați valoarea TestTable, care definește intervalul de celule definit anterior.







Este necesar să asociați componentele TTable și TDataSource, apoi TDataSource și TDBGrid. În butoanele aflate pe formular, trebuie să descrieți apelurile la metodele Post și ApplyUpdates din exemplul anterior.

După aceasta, puteți să compilați aplicația, să închideți Delphi și să rulați modulul compilat offline.

În Fig. 3.16 arată fereastra programului. Vă permite să schimbați datele și să introduceți altele noi. Când introduceți date noi, limitele zonei numite de celule vor crește.

Studiem conexiunile cu Excel și cu accesul

Fig. 3.16. Exemplu de lucru cu Excel prin BDE

Exemplu de conexiune cu Acces prin BDE

În același mod, puteți accesa tabelele din formatul Access utilizând BDE. Lucrul cu accesul prin BDE se poate face numai prin utilizarea driverelor ODBC. Prin urmare, trebuie să asociați din nou driverul ODBC cu sursa de date.

Ca și înainte, trebuie să executați utilitarul Administrator ODBC. Driverul trebuie să fie adăugat în listă. Conexiunea creată cu sursa de date ar trebui să fie numită TestAccessDS. Apoi trebuie să faceți clic pe butonul Selecție și în caseta de dialog a selecției bazei de date specificați numele fișierului dbdemos.mdb. Această bază de date de testare este livrată împreună cu BDE și este de obicei localizată în directorul X: \ Prog-ram Files \ Common Files \ Borland Shared \ Data.
După ce faceți clic pe butonul OK din BDE, va apărea automat aliasul TestAccessDS configurat automat pentru a vă conecta la baza de date.

Acum, trebuie să creați o nouă aplicație și să adăugați un modul de date pentru aceasta. Modulul de date trebuie să fie salvat cu numele AccessDM. În formular, va trebui să plasați componentele TDataSource, TDatabase și TTable. Componenta TDatabase trebuie să fie conectată la baza de date utilizând aliasul TestAccessDS. Proprietatea LoginPrompt trebuie setată la False, iar proprietatea Connected este setată la True.

Acum trebuie să setați proprietatea bază de date la AccessDB. Pentru componenta TTable, setați numele la EmploweTem. Puteți folosi tabelul angajatului ca sursă de date pentru acesta. Proprietatea CachedUpdates trebuie setată la True.

În această etapă, puteți să activați setul de date. Componenta TDataSource trebuie să fie numită EmployeeDS. și apoi trebuie să o conectați la masa Emplowe. Modulul de date trebuie să fie conectat la formularul principal cu comanda Access AccessH. Pe formular, trebuie să plasați și componenta TDBGrid și trei butoane. Componenta TDBGrid va trebui să fie asociată cu TDataSource. Iar în butoanele pentru apăsarea butoanelor trebuie să specificați codul din lista 3.5.

procedura TForml.PostBtnClick (expeditor: TObject);
începe
cu AccessDataModule.EmployeeTbl să înceapă
dacă stăm în [dslnsert, dsEdit] atunci
Mesaj;
se încheie;
se încheie;
procedura TForml.DeleteBtnClick (expeditor: TObject);
începe
cu AccessDataModule.EmployeeTbl să înceapă
dacă state = dsbrowse atunci
ştergeţi;
se încheie;
se încheie;
procedura TForml.SaveBtnClick (expeditor: TObject);
începe
AccessDataModule, EmploeeeTbl.ApplyUpdates;
se încheie;

Forma aplicației este prezentată în Fig. 3.17.

Studiem conexiunile cu Excel și cu accesul

Fig. 3.17. Lucrul cu accesul prin BDE

Deoarece tabela este asociată cu o tabelă pentru copii, datele din tabel nu pot fi șterse din cauza constrângerilor legate de integritatea referențială. Puteți introduce și șterge datele. Aplicația poate fi extinsă prin adăugarea celorlalte tabele de baze de date către modulul de date și prin definirea relațiilor de integritate referențială pentru acestea.

Exemplu de comunicare cu InterBase prin BDE

După cum am menționat mai devreme, Borland livrează un set de drivere SQL Links cu un BDE configurat cu alias IBLocaL pentru a accesa baza de date EMPLOYEE.GDB.

Componenta trebuie să fie conectată la baza de date atribuind valoarea True la proprietatea Connected. De asemenea, este necesar să se stabilească o legătură între componentele TQuery și TDatabase. În proprietatea SQL a componentei TQuery, trebuie să specificați textul interogării SQL care primește toate rândurile din tabel:
SELECT * FROM Țară

Acum trebuie să configurați componenta TUpdateSQL și să o asociați cu componenta TQuery. Apoi asociați TQuery cu tabela TDBGrid. Componentele TDBEdit trebuie să fie conectate la sursa de date prin proprietatea DataSource. Și în proprietățile DataField pentru fiecare câmp de introducere, trebuie să specificați câmpurile corespunzătoare din tabel. Apoi, codul pentru metodele Insert, Delete și ApplyUpdates va rămâne în manualele de butoane. Fereastra principală a aplicației este prezentată în Fig. 3.18.

Studiem conexiunile cu Excel și cu accesul

Fig. 3.18. Lucrul cu Interbase prin BDE

Un tabel destul de mic a fost luat pentru demonstrație. Exemplul poate fi extins dacă adăugați restul tabelelor bazei de date și configurați integritatea referențială între ele.







Trimiteți-le prietenilor: