201
16.Baze de date şi AutoCAD 16.1.Utilitatea conexiunii AutoCAD - baze de date Aplicaţiile vaste de proiectare necesită stocarea unor informaţii în baze de date. O parte din aceste informaţii sunt utile şi în partea grafică a unui proiect, în desene. AutoCAD este capabil să conlucreze bine cu aplicaţii soft de tip baze de date, pentru utilizarea în comun a unor informaţii. AutoCAD acceptă asocieri sau legături ale datelor stocate într-o bază de date cu obiectele grafice proprii. Toate tipurile cunoscute de baze de date sunt recunoscute de AutoCAD, care poate beneficia de majoritatea facilităţilor oferite de acestea: sortări, filtrări, căutări, etc. Structura tabelară a bazelor de date cu care poate conlucra AutoCAD permite definirea unor legături (“links”) clare şi simple. Pe lângă definirea unor legături, AutoCAD acceptă crearea în desen a unor etichete, “labels”, al căror conţinut se regăseşte într-un tabel al unei baze de date. Aceste etichete sunt obiecte de tip text multilinie.
16.2.Cerinţe ale conectivităţii AutoCAD – bază de date Conectivitatea AutoCAD - bază de date implică existenţa următoarelor elemente: • o aplicaţie utilitară externă de configurare, care abilitează AutoCAD să acceseze date dintr-o anumită bază de date; • un manager de tip “dbconnect”, prin care se pot asocia legături, etichete şi interogări cu desenele AutoCAD;
16.Baze de date şi AutoCAD
202 •
o fereastră pentru vizualizarea datelor (“Data View Window”) care afişează în cadrul sesiunii AutoCAD înregistrările dintr-un tabel al unei baze de date; • un editor de interogări, prin care se pot construi, executa şi stoca interogări de tip SQL; • un instrument de migrare, care converteşte legăturile şi atributele afişabile create în versiuni anterioare AutoCAD, la versiunea 2000; • o operaţie de selectare a legăturii care să creeze iterativ seturi de selecţie, atât pe baza interogărilor cât şi pe baza obiectelor grafice selectate. Accesarea unei baze de date din interiorul AutoCAD necesită în prealabil configurarea bazei, folosind Microsoft ODBC sau programe OLE DB. Utilizând ODBC sau OLE DB, AutoCAD poate manipula date din baze de date externe, indiferent de formatul în care sunt stocate în bază sau de modul în care a fost creată baza. Procesul de configurare a conectivităţii implică crearea unei noi surse formale de date care trebuie să indice spre un tip de colecţie de date şi să prevadă informaţii despre driver-ele necesare accesării tipului vizat de bază de date. O sursă de date poate fi un tabel individual, o colecţie de tabele, un catalog, o schemă. Cataloagele, schemele, tabelele sunt elemente ierarhice utilizate în organizarea datelor de către majoritatea sistememlor pentru managementul bazelor de date. Ele se aseamnănă cu o structură de directoare din Windows. Procesul de configurare variază uşor pentru diferite sisteme de baze de date. De aceea, sunt prevăzute proceduri individuale pentru fiecare tip de bază de date acceptat de AutoCAD. Caracteristica de conectivitate acceptă următoarele aplicaţii externe: Microsoft Access 97 şi 2000, dBASE V şi III, Microsoft Excel 97 şi 2000, Oracle 8.0 şi 7.3, Paradox 7.0 , Microsoft Visual FoxPro® 6.0, SQL Server 7.0 and 6.5. AutoCAD 2000 include mai multe mostre de tabele de bază de date de tip Access (“jet_dbsamples”) şi un driver preconfigurat care poate fi utilizat pentru lucrul cu aceste tabele, fără a fi obligatorie prezenţa aplicaţiei Microsoft Access pe sistemul de calcul (vezi folder-ul “Sample”). Lia DOLGA
AutoCAD 2000 în douăzeci de paşi
203
16.3.Elemente esenţiale în conectivitatea AutoCAD - baze de date. Comenzile DBCONNECT şi DBCLOSE “DbConnect Manager” este o fereastră care conţine un set de butoane şi un arbore de vizualizare (fig. 16.1).
Figura 16.1 Utilitarul DbConnect Manager pentru conectarea AutoCAD – baze de date
16.Baze de date şi AutoCAD
204 Pentru a deschide DbConnect Manager-ul, se utilizează comanda DBCONNECT sau se selectează linia dbConnect din meniul “Tools”. Bara de instrumente “Standard” conţine de asemenea un buton pentru lansarea rapidă a comenzii DBCONNECT: . Din DbConnect Manager, se poate deschide fereastra “Data View” pentru a vedea şi/sau a edita tabelul bazei de date asociat desenului. Diferite obiecte specifice bazelor de date, cum ar fi şabloane de legături - “link templates”, “şabloane de etichete” -“label templates”, “interogări” - “queries” pot fi asociate în DbConnect Manager cu desenul curent AutoCAD. DbConnect Manager prezintă un arbore de vizualizare, cu două tipuri de noduri: • noduri Drawing, care afişează fiecare desen deschis; fiecare nod al desenului evidenţiază toate obiectele de tip bază de date asociate cu desenul; • noduri Data Sources, care afişează toate sursele de date configurate, recunoscute de AutoCAD. În DbConnect Manager pot fi executate interogări SQL. La lansarea comenzii DBCONNECT, AutoCAD deschide DbConnect Manager şi adaugă meniul “dbConnect” pe bara de meniuri. Comanda DBCLOSE închide DbConnect Manager. O manevră similară se realizează prin butonul , care execută două operaţii opuse. După configurarea unei surse de date, tabelele acesteia pot fi accesate din interiorul AutoCAD, prin fereastra “Data View” (fig. 16.2). Tabelele pot fi deschise în mod “read-only” (numai la citire) sau în mod “edit” (pot fi adăugate, şterse sau modificate înregistrări din bază; nu pot fi adăugate sau şterse câmpuri ale tabelelor, nu poate fi modificată natura câmpurilor).
Lia DOLGA
AutoCAD 2000 în douăzeci de paşi
205
Figura 16.2 Fereastra “Data View” utilă în vizualizarea şi editarea tabelelor dintr-o bază de date conectată cu AutoCAD În fereastra “Data View” se crează legături între înregistrările din baza de date şi obiectele grafice din desenele AutoCAD.
16.4.Legături şi şabloane pentru legături Funcţia primară a caracteristicii de conectivitate este asocierea unei baze de date externe cu obiecte grafice din AutoCAD. Nu se pot crea legături cu obiecte negrafice (layer-e, tipuri de linie, stiluri de scriere). Când se crează o legătură, se stabileşte o relaţie dinamică între înregistrarea din baza de date şi obiectul grafic asociat. Dacă se mută sau se copiază un obiect având o legătură asociată, legătura este mutată sau copiată şi ea. Dacă se şterge obiectul, legătura se şterge şi ea. Crearea unei legături este obligatoriu precedată de definirea unui şablon pentru legături, numit “link template”. Unui obiect grafic i se pot ataşa mai multe legături, utilizând diferite şabloane; în acest fel, se pot asocia date din baze de date diferite la un acelaşi obiect grafic. Un şablon pentru legături necesită declararea unuia sau mai multor câmpuri din baza de date ca fiind câmpuri-cheie (“Key Fields”) pentru acel şablon; astfel se poate identifica în mod unic înregistrarea din baza de date care corespunde acelei legături a obiectului prin şablonul considerat. Algoritmul de creare efectivă a unei legături (“link”) este următorul: • În DbConnect Manager, se selectează şi se deschide un tabel pentru care există cel puţin un şablon de legături definit. 16.Baze de date şi AutoCAD
206 • • •
În fereastra “Data View”, se selectează din lista şabloanelor de legături, şablonul necesar legăturii preconizate. Se selectează apoi rândurile corespunzătoare uneia sau mai multor înregistrări din tabel pentru care urmează să se definească legături. Din meniul ferestrei, se deschide prin săgeata ▼rubrica Link and Label Settings şi se optează pentru Create Links.
• •
Din meniul ferestrei “Data View”, se apasă butonul Link: . Fereastra “Data View” se închide temporar, pentru a permite selectarea unuia sau mai multor obiecte din desenul AutoCAD, care devin obiecte asociate în legătura respectivă. Din AutoCAD se pot exporta legături conţinute într-un desen, facilitate remarcabilă atunci când mai multe obiecte grafice sunt legate la un singur rând de bază de date. Legăturile prevăd un mecanism puternic pentru a asocia date externe cu obiecte grafice din AutoCAD. Selectând o înregistrare a bazei, se pot uşor vedea la dorinţă obiectele din desen asociate ei, prin apăsarea butonului al ferestrei “Data View”. Reciproc, selectând un obiect din desen asociat bazei de date, se pot evidenţia înregistrările (rândurile) din baza de date asociate lui, prin utilizarea butonului
.
16.5.Etichete şi şabloane pentru etichete La plotarea unui desen, legăturile sale cu o bază de date nu pot fi tipărite. Trebuie definite etichete, denumite “labels”. Etichetele sunt texte multilinie care afişează în desenul AutoCAD date preluate dintr-un tabel al bazei de date externe. Etichetele pot fi independente - “Freestanding labels” sau pot fi ataşate - “Atached labels” în raport cu obiectele grafice. Etichetele independente nu sunt asociate unor obiecte grafice. Etichetele ataşate la un obiect grafic sunt strâns conectate cu acesta. Dacă se mută/ copiază/ şterge obiectul grafic, eticheta suferă aceeaşi operaţie. Dacă se copiază în Clipboard obiectul grafic, eticheta sa este Lia DOLGA
AutoCAD 2000 în douăzeci de paşi
207 de asemenea copiată. Etichetele asociate cu un obiect grafic sunt afişte prin intermediul unui leader. Pentru a lucra cu etichete, trebuie creat mai întâi un şablon pentru etichete – “label template”, care definieşte ce câmpuri din tabelul din baza de date sunt afişate în etichetă şi cum este formatat textul în etichetă. În şablonul pentru etichete se poate adăuga un text static care să preceadă sau să urmeze textul implicit (vezi exemplul din fig. 16.3 b pentru sufixele mp. şi cam.). Pentru a crea o etichetă independentă, se deschide un tabel care are definite cel puţin un şablon pentru legături (“link template”) şi un şablon pentru etichete (“label template”). Se aleg cele două şabloane şi apoi se selectează în fereastra “Data Window” înregistrarea care va genera eticheta. În meniul Link and Label Settings, apăsând butonul ▼, se optează pentru Create Freestanding Labels. Se apasă butonul al meniului ferestrei “Data View” şi alege o zonă în desen unde să fie inserată eticheta. Pentru a crea o etichetă ataşată, se procedează la fel, dar se optează pentru Create Attached Labels. Apoi se apasă butonul al meniului din “Data View Window” şi se selectează în desen obiectul la care se asociază eticheta. Utilizatorul poate opta în orice moment pentru afişarea sau ascunderea etichetelor din desen. În fig. 16.3 a se prezintă un exemplu de utilizare a etichetelor ataşate într-un desen. Exemplul redă parţial un cartier de locuinţe cu case individuale tipizate. Tipurile de case şi caracteristicile lor sunt stocate într-o bază de date. Prin procedurile adecvate, sunt definite în desen etichete ataşate fiecărei case, cuprinzând caracteristicile ei, aşa cum sunt nominalizate în baza de date asociată. În fig. 16.3 b se prezintă un detaliu pentru tipul A de casă. Sunt evidenţiate înregistrarea din baza de date care corespunde legăturii şi eticheta ataşată. Aceasta reproduce, conform şablonului ales, conţinutul câmpurilor din înregistrarea asociată. O parte din ele au sufixe adecvate (“mp”, “cam.”). Imaginea 16.3 c redă acelaşi desen, după ascunderea etichetelor ataşate şi ascunderea muchiilor nevizibile, într-o afişare spaţială. 16.Baze de date şi AutoCAD
208
Figura 16.3 a Desen AutoCAD, cu bază de date asociată şi etichete ataşate obiectelor din desen; pe bara de meniuri sunt prezente titlurile “dbConnect” şi “Data View”
Lia DOLGA
AutoCAD 2000 în douăzeci de paşi
209 Fiura 16.3 b Detaliu pentru tipul A de casă
Figura 16.3 b Vizualizarea spaţială hidden-line a desenului din cazul a), cu ascunderea etichetelor ataşate
16.6.Lucrul cu editorul de interogări O caracteristică fundamentală a sistemelor de baze de date este abilitatea lor de a prezenta un subset de înregistrări bazat pe un criteriu de căutare sau interogare aplicat setului total. Editorul de interogare a bazelor de date asociat mediului AutoCAD, “Query Editor”, constă dintr-o serie de 4 panouri care pot fi folosite pentru a dezvolta iterativ interogări (fig. 16.4). Editorul se poate lansa din oricare din ofertele “New Query…” ale meniului pull-down “dbConnect”, ale ferestrei “Data View” sau din “DbConnect Manager”. “Link Select” este o implementare avansată a editorului de interogare, care construieşte iterativ seturi de selecţie cuprinzând 16.Baze de date şi AutoCAD
210 obiecte din desenele AutoCAD. Nu prezintă al patrulea panou din editorul e interogare, şi anume panoul “SQL Query”. “Link Select” se activează din meniul pull-down “dbConnect”, linia Links. “Link Select” crează din mers un set de selecţie, care poate fi rafinat cu informaţii adiţionale printr-un proces iterativ. Se începe fie prin construirea unei interogări sau prin selectarea unor obiecte grafice din AutoCAD. Acest set iniţial este referit ca setul A. Apoi se pot selecta obiecte grafice adiţionale sau se poate defini o interogare care va fi setul B. În pasul următor se stabileşte relaţia dintre setul A şi setul B pentru a rafina setul de selecţie. Următoarele relaţii sau seturi de opraţii sunt disponibile în acest scop: • Select: stabileşte o interogare iniţială sau un set de selecţie iniţial. Acesta poate fi rafinat prin operaţii succesive; • Union: adaugă rezultatele unei noi interogări sau un nou set de selecţie la setul existent; • Intersect: returnează intersecţia booleană dintre setul A şi setul B; • Subtract A – B: returnează diferenţa booleană A-B; • Subtract B – A: returnează diferenţa booleană B-A. Rezultatul operaţiilor anterioare devine noul set A. Se poate continua iterativ. Se defineşte un nou set B şi se reiau paşii corespunzători.
Lia DOLGA
AutoCAD 2000 în douăzeci de paşi
211
Figura 16.4 Editorul de interogări “Qeury Editor” din mediul AutoCAD, cu panoul al III-lea, “Query Builder” activ
16.Baze de date şi AutoCAD