Power Pivot (1) – Cum se realizeza legatura intre tabele
Incepand din 11 iulie 2016, vom publica in fiecare zi de luni si de joi cate un articol din seria de zece cursuri gratuite dedicate Power Pivot pentru Excel 2013.
ENJOY THE POWER! 🙂
Se dau doua tabele, denumite contracte, respectiv facturi (vezi aici cum se realizeaza un tabel in Excel si la ce foloseste optiunea Format as Table).
Analizand cele doua baze de date, se observa ca numarul contractului este cheia de legatura intre cele doua tabele, astfel:
- in baza de date de contracte, sunt introduse informatii referitoare la fiecare contract, cronologic, in ordinea semnarii acestora;
- in baza de date facturi, sunt introduse informatiile la facturile emise in baza contractelor semnate aflate in derulare;
- numarul de contract apare o singura data in baza de date contracte (un contract este introdus o singura data) si poate aparea de mai multe ori in baza de date facturi (se pot emite mai multe facturi pentru acelasi contract).
Accesati meniul Data de pe bara de meniu si apasati butonul Relationships.
Nu are importanta care este worksheet-ul activ. Tineti insa cont ca butonul Relationships NU este activ, daca in fisierul de lucru curent nu exista definit cel putin un tabel (Format as Table).
In fereastra de dialog Manage Relationships, apasati butonul Add.
Alegeti tabelul, respectiv campul de legatura pentru fiecare dintre cele doua tabele pentru care vreti sa definiti o relatie.
Related Table este tabelul in care veti avea nevoie sa cautati ulterior dupa cheia de legatura (coloana).
Related Column (Primary) este coloana din tabel pe care veti cauta, in vreme ce Column (Foreign) este coloana de date care sunt cautate in coloana primara.
Nu este nevoie – DAR ESTE INDICAT – ca cele doua coloane sa aiba aceeasi denumire. In exemplul de mai sus este doar o coincidenta, administratorul celor doua baze da date a denumit coloanele la fel pentru a le identifica mai usor.
Este, daca vreti, echivalentul argumentului lookup_vector din functia LOOKUP sau prima coloana din argumentul table_array al functiei VLOOKUP.
In exemplul nostru, Related Table este baza de date contracte.
Puteti defini oricate perechi de relatii intre mai multe baze de date. De exemplu, daca aveam si o baza de date denumita facturi_restante, puteam realiza o legatura intre baza de date facturi si baza de date facturi_restante, dupa numarul facturii fiscale (camp obligatoriu prezent in ambele baze de date!).
Modificarea/stergerea unei legaturi intre tabele
Pentru a redefini sau sterge o legatura intre doua tabele, apasati butonul Relationships din meniul Data, selectati legatura pe care vreti sa o modificati si apasati unul din butoanele: Activate, Deactivate, Delete.
Puteti crea mai multe legaturi intre baze de date, dar sa nu aveti nevoie ca ele sa fie toate active in acelasi timp. Apasati butonul Relationships, selectati legatura pe care vreti sa o dezactivati si apasati butonul Deactivate.
Realizarea legaturii intre tabele aflate in fisiere diferite
In momentul in care ati definit prima legatura intre doua tabele, Excel 2013 defineste si Data Model initial, care contine cele doua tabele.
Puteti vizualiza conexiunile existente in fisierul curent, apasand butonul Connections din meniul Data, sectiunea Connections.
Daca vreti sa adaugati la model un tabel care nu se afla in fisierul curent, deschideti inainte respectivul fisier, verificati ca datele sunt formatate ca baza de date (utilizand Format as Table) si ca ati pus un nume usor de recunoscut tabelului respectiv.
In fereastra de dialog de mai sus, apasati sageata din dreptul butonului Add si alegeti optiunea Add to the Data Model…, apoi accesati submeniul Tables.
Dati click pe worksheet-ul denumit FACT.RESTANTE din fisierul EXCEL 2013_Facturi restante.xlsx si apasati OK.
In acest moment ati adaugat la modelul de date deja existent (format din tabelele contracte si facturi), inca o baza de date (denumita FACT_RESTANTE).
Nu confundati numele foii de lucru (FACT.RESTANTE) cu numele bazei de date (tabelului), FACT_RESTANTE.
Dupa ce ati adaugat la modelul de lucru si noul tabel (aflat in alt fisier decat cel curent), puteti realiza mai departe o noua legatura intre tabele, de data aceasta intre tabelul facturi si tabelul FACT_RESTANTE.
In fereastra de dialog care apare la apasarea butonul Relationships din meniul Data, observati ca din rubrica Table, respectiv Related Table puteti selecta acum si tabelul FACT_RESTANTE.
Related Table este chiar tabelul FACT_RESTANTE, in care Related Column (Primary) – echivalentul coloanei lookup_vector din functia LOOKUP (sau prima coloana din argumentul table_array al functiei VLOOKUP) – va fi coloana care contine numerele unice de facturi fiscale (coloana nr. FF) restante, adica neplatite pana la data ultimei actualizari a tabelului.
De altfel, si numerele de facturi fiscale din coloana Nr. Factura Fiscala din tabelul facturi sunt tot unice, insa nu toate facturile fiscale apar si in tabelul FACT_RESTANTE, ci doar acelea neplatite inca.
Toate datele aferente conexiunilor (legaturilor) definite se vor incarca (actualiza) in modelul de date, la apasarea butonului Refresh All din meniul Data.
In alte articole dedicate Power Pivot, vom descrie mai in detaliu cum se utilizeaza Data Model, cum se realizeaza un Power Pivot si care sunt optiunile de prelucrare utilizand functii de tip DAX.