Sunteți pe pagina 1din 140

Universitatea TRANSILVANIA din Braov

Facultatea de tiine Economice i Administrarea Afacerilor

Analiza i proiectarea sistemelor informatice


SUPORT DE CURS I SUPORT DE LABORATOR PENTRU NVMNT LA DISTAN

Lector dr. Radu Lixndroiu Braov 2011

CUPRINS SUPORT DE CURS PENTRU NVMNT LA DISTAN ................. 2


Unitatea de nvare 1. Analiza sistemelor informatice ................................................ 4 Unitatea de nvare 2. Ciclul de via a dezvoltrii sistemelor informatice ................. 23 Unitatea de nvare 3. Utilizarea instrumentelor CASE ........................................... 32 Unitatea de nvare 4. Metode i tehnici de realizare a sistemelor informatice ........... 36 Unitatea de nvare 5. Aplicaie informatic pentru gestiunea i contabilitatea materiilor prime i materialelor la o societate comercial .......................................... 52

SUPORT DE LABORATOR PENTRU NVMNT LA DISTAN ........................................................................................................ 60


Unitatea de nvare 1. SISTEMUL DE GESTIUNE A BAZELOR DE DATE ........... 61 Unitatea de nvare 2. STOCAREA DATELOR N BAZE DE DATE ....................... 64 Unitatea de nvare 3. CREAREA INTEROGRILOR ........................................... 77 Unitatea de nvare 4. SELECIA I PROIECIA ................................................. 85 Unitatea de nvare 5. Coloane, expresii ................................................................. 92 Unitatea de nvare 6. Funciile agregat: COUNT, SUM, AVG, MIN, MAX .............. 95 Unitatea de nvare 7. OPIUNEA ORDER BY...................................................... 99 Unitatea de nvare 8. OPERATORII BETWEEN, LIKE I IN ............................. 102 Unitatea de nvare 9. REUNIUNE, PRODUS CARTEZIAN ................................. 106 Unitatea de nvare 10. THETA I ECHI-JONCIUNEA ..................................... 110 Unitatea de nvare 11. GRUPAREA TUPLURILOR: GROUP BY I HAVING .... 114 Unitatea de nvare 12. REALIZAREA FORMULARELOR ................................. 117 Unitatea de nvare 13. REALIZAREA RAPOARTELOR .................................... 125 Unitatea de nvare 14. CONSTRUCIA PAGINILOR WEB PENTRU LUCRUL CU BAZE DE DATE ............................................................. 132 Anexa 1 ............................................................................................................... 138

Introducere

Analiza i proiectarea sistemelor informatice SUPORT DE CURS PENTRU NVMNT LA DISTAN


Obiectivele cursului Cursul urmrete familiarizarea studenilor cu termenii specifici proceselor de analiz i proiectare a sistemelor informatice, precum i nsuirea noiunilor de baz necesare n analiza i proiectarea aplicaiilor economice. Competene conferite Dup parcurgerea materialului studentul va fi capabil s: fac o analiz complet a sistemului economic ce urmeaz a fi informatizat, precum i s proiecteze structura tabelelor i a bazelor de date, presupuse de sistemul informatic ce va fi creat. Resurse i mijloace de lucru mijloace informatice necesare parcurgerii cursului i rezolvrii problemelor propuse: Microsoft Access;

Structura cursului - 5 uniti de nvare - 5 teme de control la sfaritul fiecrui modul - transmiterea temelor de control ctre cadrul didactic i, respectiv, a rezultatelor ctre studeni se face prin ncrcarea pe platforma eLearning i prin material tiprit

Cerine preliminare Discipline necesare a fi parcurse i eventual promovate naintea disciplinei curente: Bazele Informaticii Economice Baze de date

Durata medie de studiu individual - 15-20 ore

Evaluarea Componena notei finale: ponderea evalurii finale (examen) 60%; verificrile de laborator 40%;

Unitatea de nvare 1. Analiza sistemelor informatice


Introducere In acest modul se prezint Informaia - parte din resursele organizaiei Gestionarea informaiei ca resurs Tipuri de sisteme Integrarea tehnologiilor n realizarea sistemelor informatice

Competenele unitii de nvare Dup parcurgerea acestui modul student este capabil s defineasc tipuri de sisteme informatice precum i s fac diferna intre ele, s identifice tehnologiile ce se pot utiliza n realizarea sisemelor informatice.

Durata medie de parcurgere a primei uniti de nvare este de 3 ore.

1.1. Informaia - parte din resursele organizaiei Noiunile de dat i informaie se consider n vorbirea curent ca fiind sinonime, ele ns difer esenial. Se remarc dou moduri de abordare: A) se consider noiunea de baz cea de informaie, iar cea de dat deriv din aceasta; B) noiunea de baz este cea de dat, iar informaia se consider ca derivat din aceasta.

A)

Noiunea de informaie este complex, de mare generalitate. n general, se

identific trei nivele la care poate fi analizat informaia: sintactic, semantic i pragmatic. 1. Nivelul sintactic se refer la sistemul de semne i reguli de reunire a acestora n construcii sintactice utilizate pentru reprezentarea informaiei n procesul culegerii, transmiterii i prelucrrii acesteia. n informatic modelul de reprezentare a informaiei este data. Conceptul de dat, corespunznd nivelului sintactic, poate fi definit n notaia BNF (Backus-Naur-Form), astfel: <dat> = <identificator> <atribut> <valoare> 2. Nivelul semantic presupune trecerea de la structur la sens. Sub aspect semantic, informaia poate fi caracterizat, de fapt, ca semnificaia datelor. Sensul informaiei la nivel semantic este corespondena dintre o dat i obiectul real sau situaia pe care o reprezint aceast dat. 3. Nivelul pragmatic este cel mai concret nivel de considerare a informaiei. E singurul care raporteaz informaia la scopurile receptorului. n raport cu necesitile receptorului se definesc caracteristici, ca importana sau utilitatea informaiei. B) Datele reprezint materia prim din care se obin informaiile Informaiile la rndul lor constituie baza raionamentelor, experimentrilor, imaginate n scopul obinerii de noi cunotine. n figura 1.1 se prezint acest proces care ncepe cu achiziionarea datelor i se ncheie cu nregistrarea de noi cunotine Cunotina include capacitatea de a evalua informaia ntr-un sens sau scop. A avea
Utilizare Date Prelucrare Informaii Raionamente / Experimentri

Cunotine

Figura 1 Prelucrarea datelor n cunotine

cunotine sau abilitatea de a efectua sarcini complexe, presupune mai mult dect a avea o list de instruciuni sau informaii necesare; n informatica economic, se consider sinonime conceptele de informaie i dat. Nivelul pragmatic reflect cel mai fidel mecanismul procesului de cunoatere. La un moment dat, cunotinele reprezint totalitatea informaiilor dobndite anterior tezaurul la care trebuie raportat rezultatul oricrui proces de informare. La limit sunt posibile urmtoarele situaii: Procesul de informare este nul, dac informaia respectiv face parte din tezaurul receptorului, adic a devenit o cunotin; Procesul de informare este maxim, dac intersecia ntre coninutul tezaurului i cel al informaiei este vid. Informaiile se pot clasifica dup mai multe criterii: natur: cantitative, calitative; situarea n timp: active, pasive, previzionale; modul de apariie: la intervale precizate, la cerere, ocazionale; coninut: elementare, complexe, sintetice; frecven: continue (n timp real), anuale, trimestriale, lunare, zilnice etc.; nivel: strategic, tactic, operaional; origine: interne, externe. O aceeai informaie poate avea utiliti diferite pentru receptori diferii, depinznd de gradul cunoaterii anterioare, ca i de poziia receptorului n raport cu obiectul. Gradul de utilitate a informaiei i eficacitatea utilizrii acesteia n procesul decizional sunt determinate de indici de calitate specifici: a) oportunitatea sau actualitatea exprim faptul c o informaie este util ntr-un anumit moment, legat de desfurarea n timp a unor fenomene i care impun luarea unor decizii; b) precizia sau acurateea este msurat prin cantitatea de informaie corect n raport cu ntregul volum de informaii produs ntr-o perioad de timp; c) completitudinea exprim necesitatea de a dispune de ct mai multe informaii care s acopere aria dorit de factorul decizional;

d) relevana exprim necesitatea ca informaiile achiziionate s poat furniza cunotinele care lipsesc n procesul decizional; n multe situaii este dificil s se spun la un moment dat dac o informaie este sau nu relevant; e) conciziunea exprim necesitatea ca informaiile s aib o exprimare succint, concentrat Gestionarea informaiei ca resurs Pentru a maximiza utilizarea informaiei, managementul trebuie s o utilizeze corect. Altfel spus, informaia este peste tot n jurul nostru, nu este gratuit iar utilizarea ei pentru o poziionare mai bun a afacerii fa de competitori nu este garantat. Societatea industrial - producia industrial - resursa capitalul Societatea informaional - producia intelectual - resursa informaia

Societatea cunoaterii - informaiile acumulate conduc la obinerea de noi cunotine

Avantajul competitiv real se obine din surse invizibile, adic din informaii sau circuite informaionale, resursele vizibile pot fi cumprate sau copiate rapid, cele invizibile se acumuleaz ns n ani Hiroyouki Itami

Figura 2 Sistemele din organizaie

Elementele sistemului informatic: Resursa fizic (hardware) Resursa logic (software) Baza de date Resursa uman i cadrul organizatoric Gestionarea informaiei computerizate Dezvoltarea reelelor de calculatoare i a Internetului n special a condus la explozie de informaii din toate domeniile i cu precdere din mediul de business. Gestionarea informaiei computerizate difer mult de gestionarea informaiilor standard, deoarece aceste informaii pot avea un volum deosebit de mare ce presupun pe de alt parte i costuri de organizare i mentenabilitate foarte mari.

1.2. Tipuri de sisteme Exist1 mai multe tipuri de sisteme informatice n funcie de scop. Astfel se identific urmtoarele tipuri principale de sisteme informatice: Sisteme de Procesare a Tranzaciilor (Transaction Processing Systems - TPS) la nivelul operaional din organizaie Sisteme Automatizate de Birotic (Office Automation Systems - OAS) Sisteme de Munc pe Baz de Cunotine (Knowledge Work Systems - KWS) Sisteme pentru Managementul Informaiei (Management Information Systems MIS) Sisteme Suport de Decizie (Decision Support Systems - DSS) Sisteme Suport a Executivului (Executive Support Systems - ESS) Sisteme Suport pentru Decizie de Grup (Group Decision Support Systems GDSS) Sisteme Colaborative Suport Bazate pe Calculator (Computer Supported Collaborative Work Systems - CSCWS)

Kendal & Kendal Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002

Sisteme Suport pentru Executiv Sisteme Suport pentru Decizie de Grup Sisteme Colaborative Suport Bazate pe Calculator

Sisteme Suport de Decizie Sisteme pentru Managementul Informaiei

Sisteme de Munc pe Baz de Cunotine Sisteme Automatizate de Birotic

Sisteme de Procesare a Tranzaciilor

Figura 3 - Tipuri de sisteme informatice

Sistemele de Procesare a Sistemelor Sistemele de Procesare a Sistemelor sunt sisteme de informaii computerizate dezvoltate pentru tranzacii de business cum ar fi de exemplu aplicaiile de salarii sau de inventar din organizaii. Aceste sisteme reduc timpul de prelucrare a datelor. Totodat permit organizaiei s interacioneze cu mediul extern. Datorit faptului c managerii iau informaii pe baza datelor generate de aceste sisteme, datele trebuie actualizate n permanen, pentru a reflecta operaiunile organizaiei n orice moment.

10

Sisteme Automatizate de Birotic Sistemele Automatizate de Birotic sunt destinate angajailor ce nu creeaz noi cunotine dar care analizeaz informaiile, transform datele i le manipuleaz, diseminndu-le n organizaie. Sisteme Automatizate de Birotic cuprind procesoare word, foi de calcul, desktop publishing, organizare electronic i elemente de comunicare cum ar fi voice mail, email sau video conferin. Sisteme de Munc pe Baz de Cunotine Sistemele de Munc pe Baz de Cunotine reprezint un suport profesional personalului cu nalt calificare i specializare prin facilizarea crerii de noi cunotine precum i diseminrii contribuiei acestor persoane organizaiei sau societii. Sisteme pentru Managementul Informaiei Sistemele pentru Managementul Informaiei nu nlocuiesc Sistemele de Procesare a Tranzaciilor ci din potriv, toate sistemele de acest fel includ tranzacionarea proceselor. Pentru accesarea informaiei, utilizatorii sistemelor pentru managementul informaiei mpart o baz de date comun. Aceast baz de date conine att date ct i modele ce ajut utilizatorul s interpreteze i s foloseasc aceste date. Sistemele pentru Managementul Informaiei au ca ieire date ce sunt utilizate n procesul de decizie.

Sisteme Suport de Decizie Sistemele Suport de Decizie reprezint un nivel nalt al sistemelor informaionale computerizate. Se poate spune ca Sistemele Suport de Decizie sunt similare sistemelor tradiionale de management a informaiei, deoarece amndou depind de o baz de date ca surs de informaii. Fa de aceste sisteme, Sistemele

11

Suport de Decizie se difereniaz prin faptul c ofer decidentului un suport de decizie n toate fazele. n acest fel, aceste sisteme sunt orientate ndeosebi persoanelor sau grupului de persoane ce le utilizeaz n mod direct. Sisteme Expert i Inteligen Artificial Inteligena artificial poate fi considerat domeniul sistemelor expert. Scopul general al acestor sisteme a fost dezvoltarea unor maini ce s posede inteligen, asemntoare cu cea uman. n general, s-a urmrit nelegerea limbajului natural precum i analizarea abilitii de gndire a unei probleme date pn la obinerea concluziei. Sistemele expert utilizeaz inteligen artificial n rezolvarea problemelor. Aceste sisteme sunt deosebit de complexe, deoarece trebuie s mpleteasc elementele hardware, software cu gndirea unui expert. n cazul acestor sisteme, sunt furnizate soluii optime pentru problemele date. Aceste soluii stau la baza deciziilor luate apoi de factorul uman decizional. Baza unui sistem expert o reprezint cunotinele. Interogrile sunt rezolvate cu ajutorul unor programe sau limbaje specializate (de exemplu SQL).

Sisteme Suport pentru Decizie de Grup Sistemele Suport pentru Decizie de Grup sunt utilizate n momentul cnd exist un grup la nivelul cruia se iau decizii semi-structurate sau nestructurate. Aceste sisteme permit grupului s interacioneze pe baza suportului electronic sub form de software specializat. Astfel, sunt puse la dispoziie o serie de aplicaii cum ar fi: chestionare, forumuri, brainstorming, sau creare de scenarii.

12

Sisteme Suport pentru Executiv Sistemele Suport pentru Executiv reprezint acele sisteme ce furnizeaz managerilor informaiile pe baza crora se vor lua deciziile la nivel strategic. Aceste sisteme ajut executivul s organizeze interaciunea cu mediul extern prin oferirea de grafici, suport de comunicaii sub form de tablouri de bord. Aceste sisteme ajut executivul s adreseze probleme nestructurate prin crearea unui mediu de procesare a problemelor strategice ntr-un mod documentat.

1.3. Integrarea tehnologiilor n realizarea sistemelor informatice Pe msur ce apar noi tehnologii informatice, analitii de sistem lucreaz la adaptarea sistemelor tradiionale cu noile tehnologii aprute. Astfel spre exemplu se face integrarea aplicaiilor de e-comer pe baza sistemului tradiional de business, obinndu-se un nou sistem de e-business. Cele mai noi tehnologii informatice utilizate n sisteme de business sunt: Tehnologii web i e-come Tehnologii ERP (Enterprise Resource Plannig) Tehnologii wireless

1.3.1. Tehnologii web i e-come Multe din sistemele existente ctig funcionalitate dac migreaz spre World Wide Web, implementnd sisteme i tehnologii bazate pe Web. La un chestionar2 realizat n SUA, firmele intervievate au rspuns c strategia de apropiere ctre Internet le-a adus o cretere semnificativ a afacerilor. Din acelai chestionar a reieit faptul c numrul celor care doresc creterea afacerii prin mediul Internet este de cel puin dou ori mai mare dect al celor care doresc creterea afacerii prin aliane strategice. Printre principalele avantaje ale tehnologiilor Web gsim:

Kendal & Kendal Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002

13

Creterea gradului de contientizare al serviciilor, produselor, industriei,

persoanelor sau grupului Posibilitatea de acces a utilizatorilor 24 de ore/ zi Standardizarea design-ului interfeelor Crearea unui sistem care se poate extinde global Comerul electronic3 (Electronic Commerce sau E-Commerce) reprezint sistemul de cumprare sau vnzare prin intermediul transmiterii de date la distan. Relaia dintre client i vnztor este creat cu ajutorul Internet-ului. E-comerul a aprut n anii 1990, fiind creat de compania IBM. A fost utilizat i denumirea de Electronic Business. Un termen nrudit este E-Trade, care se refer la tranzaciile bursiere electronice. Tranzacia electronic reprezint utilizarea tuturor mijloacelor electronice pentru participarea la o activitate de comer electronic. n tranzaciile de e-comer clasice se disting urmtoarele etape: 1. 2. 3. 4. informarea comercial referitoare la tranzacie ncheierea contractului comercial comandarea/vnzarea produsului sau a serviciului plata. n cadrul e-comerului pot fi tranzacionate bunuri i servicii digitale.

Tipuri de e-comer E-comerul permite participarea a persoanelor fizice, juridice precum i a statului sau a instituiilor acestuia. n funcie de relaiile dintre aceti participani au luat natere mai multe categorii de comer electronic dup cum urmeaz: B2B (business-to-business) - toi participanii sunt companii sau alte organizaii B2C (business-to-consumer) - companiile vnd unor persoane fizice C2B (consumer-to-business) - persoane fizice (consumatori) care utilizeaz Internetul pentru a-i vinde produsele sau serviciile firmelor C2C (consumer-to-consumer) - consumatorii care vnd direct la ali consumatori

http://ro.wikipedia.org/wiki/E-commerce

14

E-government - este ntlnit ca: B2G (business to government), G2B (government to business), G2C (government to consumer). Avantajele utilizrii e-comerului4: Extinderea pe pieele internaionale Realizarea unei deschideri totale n privina

Pentru firme

relaiilor cu clienii: acetia pot avea o imagine aproape complet a organizaiei Scderea costului de creare, procesare, distribuire, pstrare i regsire a informaiei. Siteurile web personalizate pot substitui interaciunile de tip fa n fa, de tip tradiional Scderea costurilor de comunicaie Creterea competitivitii i raionalizarea

proceselor de afaceri, prin restructurri interne i prin tehnologii ale informaiei. Construirea unui lan valoric electronic, n care se pune accentul pe un numr limitat de competene-cheie Pentru consumatori Posibilitatea de efectuare a tranzaciilor la orice or din zi din orice locaie unde exist o conexiune la Internet profil. Utilizatorii pot participa la licitaii Consumatorii pot s primeasc informaii

relevante n timp foarte scurt Se pot realiza afilieri cu alte site-uri de

electronice

http://ro.wikipedia.org/wiki/E-commerce

15

ndemnarea consumatorilor la consum se

realizeaz printr-o ampl informare comparativ i prin faciliti bune de cutare Consumatorii pot s interacioneze cu ali Faciliteaz competiia, ceea ce se traduce cumprtori n comuniti electronice prin scderea preurilor Crearea unui unei comunitii comerciale, de Permite ca anumite mrfuri s fie vndute la

Pentru societate

exemplu prin chat-uri, forum-uri preuri mai sczute, datorit scderii cheltuielilor cu transportul, aranjarea pe raft, stocarea etc. Pune la dispoziie o organizare suficient de atent i agil pentru a rspunde rapid la orice schimbri din mediul economic, social i fizic.

1.3.2. Tehnologii ERP Sistemele ERP se bazeaz pe integrarea diferitelor aplicaii din organizaie ce exist pentru diferite nivele de conducere i care se difereniaz prin funciunile permise. Prin utilizarea acestor tehnologii, toate programele din organizaie sunt legate ntre ele, realizndu-se schimburi de date i informaii n mod permanent. Cele mai noi sisteme ERP, conin aplicaii pentru conexiuni wireless sau pentru transferul de date i rapoarte pe Internet, pe PDA-uri sau alte dispozitive.

16

Sistemele ERP5 (Enterprise Resource Planning) sunt instrumente software care faciliteaz integrarea tuturor informaiilor din organizaie ntr-o platform unic. Scopul ERP este de a asigura transparena datelor n cadrul organizaiei i permiterea accesului la orice tip de informaie util n desfurarea activitii. Primele sisteme ERP au aprut n anii 1960 cand acest tip de aplicaie software era folosit cu preponderen pentru asistarea procesului de producie. Primul produs de acest tip a fost MRP (Material Resource Planning). ncepnd cu anii 90 sistemele ERP au nceput s ia forma aplicaiilor moderne. n acest sens, informaiile au putut fi centralizate ntr-o platform comun i funcionalitile sale au fost integrate. Ultimul pas n dezvoltarea sistemelor ERP l reprezint utilizarea Internetului pentru eficientizarea funcionalitilor. Clienii pot accesa de la distant propria comand sau pot vizualiza stocurile companiei furnizoare prin integrarea facilitilor ERP cu aplicaiile WEB. Sistemele ERP, sunt programe modulare, formate din aplicaii specifice fiecrei activiti din ntreprindere. Modulele unui sistem ERP funcioneaz integrat utiliznd o baz de date comun, sau pot funciona independent. Cele mai des ntlnite module ce se utilizeaz n ntreprindere sunt: Producie avnd ca scop planificarea si urmrirea productiei Gestiune avnd ca scop evidena stocurilor, a furnizorilor, a plailor i ncasrilor Salarii avnd ca scop calculul salariilor i managementul informaiilor referitoare la personal Contabilitate avnd ca scop evidena financiar contabil Imobilizri avnd ca scop evidena mijloacelor fixe i calculul amortizrii CRM avnd ca scop managementul relaiilor cu clienii BI avnd ca scop rapoarte, analize, prognoze o Principalele caracteristici ale sistemelor ERP sunt: Organizeaz procesele i activitile de afaceri punnd la dispoziie informaii rapide, concrete si concise.
5

http://ro.wikipedia.org/wiki/ERP

17

Se adapteaz rapid la schimbrile permanente ale mediului de afaceri cu ntreruperi minime ale activitilor companiei. Ofer o interfa de utilizare modern care va creste productivitatea prin scutirea timpului de lucru aferent operrii. Sprijin n luarea deciziilor manageriale pe baza unor informaii inteligente oferite n timp real Prin achiziia unui ERP, se adopt tehnici de afaceri moderne mbuntindu-se randamentul afacerii. Se scutesc resurse i timp reducnd costurile. Informaiile sunt afiate conform necesitilor personalului care utilizeaz aplicaia. Sistemele ERP nglobeaz scenarii de business intelligence, deci aspectele problematice dar si posibilitile de dezvoltare vor fi mai uor de identificat i de intervenit asupra lor. Comunicarea va deveni mai rapid i mai eficient ntre companie i clieni.

1.3.3. Tehnologii wireless Dezvoltatorii de sisteme informatice caut ca noile sisteme s se bazeze pe uniti de tip wireless. Astfel, noile aplicaii pot funciona pe PDA-uri (Personal Digital Assistants) sau pe alte dispozitive care se pot conecta ntre ele fr conexiuni fizice. Sistemele de comer care folosesc tehnologii wireless se numesc sisteme MCommerce (Mobile-Commerce). Multe dintre aceste unitii de comunicaie wireless sunt bazate tot pe Web, adic ofer posibilitatea utilizatorului de a naviga pe Internet i de a deschide aplicaii Web. Tot n cadrul acestor sisteme putem include i sistemele de informare a segmentului de management prin furnizarea de informaii sub forma de SMS-uri sau scurte rapoarte trimise pe telefonul mobil.

18

Tehnologii Wireless

Sisteme Suport pentru Executiv Sisteme Suport pentru Decizie de Grup Sisteme Colaborative Suport Bazate pe Calculator

Sisteme Suport de Decizie Sisteme pentru Managementul Informaiei Tehnologii ERP Sisteme de Munc pe Baz de Cunotine Sisteme Automatizate de Birotic Tehnologii Web i EComer Sisteme de Procesare a Tranzaciilor

Figura 4 Noile tehnologii informatice aplicate asupra tipurilor de sisteme

S ne reamintim... Cunotina include capacitatea de a evalua informaia ntr-un sens sau scop. A avea cunotine sau abilitatea de a efectua sarcini complexe, presupune mai mult dect a avea o list de instruciuni sau informaii necesare; n informatica economic, se consider sinonime conceptele de informaie i dat. Nivelul pragmatic reflect cel mai fidel mecanismul procesului de cunoatere. La un moment dat, cunotinele reprezint totalitatea informaiilor dobndite anterior tezaurul la care trebuie raportat rezultatul oricrui proces de informare.

19

Avantajul competitiv real se obine din surse invizibile, adic sau copiate rapid, cele invizibile se acumuleaz ns n ani Hiroyouki Itami

din

informaii sau circuite informaionale, resursele vizibile pot fi cumprate

Rezumat Noiunile de dat i informaie se consider n vorbirea curent ca fiind sinonime, ele ns difer esenial. Se remarc dou moduri de abordare: A) se consider noiunea de baz cea de informaie, iar cea de dat deriv din aceasta; B) noiunea de baz este cea de dat, iar informaia se consider ca derivat din aceasta. Exist6 mai multe tipuri de sisteme informatice n funcie de scop. Astfel se identific urmtoarele tipuri principale de sisteme informatice: Sisteme de Procesare a Tranzaciilor (Transaction Processing Systems TPS) la nivelul operaional din organizaie Sisteme Automatizate de Birotic (Office Automation Systems - OAS) Sisteme de Munc pe Baz de Cunotine (Knowledge Work Systems KWS) Sisteme pentru Managementul Informaiei (Management Information Systems - MIS) Sisteme Suport de Decizie (Decision Support Systems - DSS) Sisteme Suport a Executivului (Executive Support Systems - ESS) Sisteme Suport pentru Decizie de Grup (Group Decision Support Systems - GDSS) Sisteme Colaborative Suport Bazate pe Calculator (Computer Supported Collaborative Work Systems - CSCWS)

Kendal & Kendal Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002

20

Printre principalele avantaje ale tehnologiilor Web gsim: Creterea gradului de contientizare al serviciilor, produselor,

industriei, persoanelor sau grupului Posibilitatea de acces a utilizatorilor 24 de ore/ zi Standardizarea design-ului interfeelor Crearea unui sistem care se poate extinde global

E-comerul permite participarea a persoanelor fizice, juridice precum i a statului sau a instituiilor acestuia. n funcie de relaiile dintre aceti participani au luat natere mai multe categorii de comer electronic dup cum urmeaz: B2B (business-to-business) - toi participanii sunt companii sau alte organizaii B2C (business-to-consumer) - companiile vnd unor persoane fizice utilizeaz Internetul pentru a-i vinde produsele sau serviciile firmelor C2C (consumer-to-consumer) - consumatorii care vnd direct la ali consumatori E-government - este ntlnit ca: B2G (business to government), G2B (government to business), G2C (government to consumer). Sistemele ERP se bazeaz pe integrarea diferitelor aplicaii din organizaie ce exist pentru diferite nivele de conducere i care se difereniaz prin funciunile permise. Prin utilizarea acestor tehnologii, toate programele din organizaie sunt legate ntre ele, realizndu-se schimburi de date i informaii n mod permanent. Cele mai noi sisteme ERP, conin aplicaii pentru conexiuni wireless sau pentru transferul de date i rapoarte pe Internet, pe PDA-uri sau alte dispozitive. C2B (consumer-to-business) - persoane fizice (consumatori) care

21

Sistemele ERP7 (Enterprise Resource Planning) sunt instrumente software care faciliteaz integrarea tuturor informaiilor din organizaie ntr-o platform unic. Test de evaluare a cunotinelor Ce nelegei prin noiunea de cunotin? Explicai rspunsul. Care sunt principalele tipuri de sisteme informatice? Detaliai rspunsul.

http://ro.wikipedia.org/wiki/ERP

22

Unitatea de nvare 2. Ciclul de via a dezvoltrii sistemelor informatice

Introducere Ciclul de via se mparte n apte faze diferite. Aceste faze sunt privite ca o nlnuire de etape i nu ca pai de sine-stttori.

Competenele unitii de nvare nelegerea etapelor din ciclul de via a sistemelor informatice precum i a elementelor caracteristice fiecrui moment luat separat.

Durata medie de parcurgere a primei uniti de nvare este de 3 ore.

Ciclul de via a dezvoltrii sistemelor informatice cuprinde toate fazele de analiz i proiectare a sistemelor informatice. Analitii nu sunt de acord n legtur cu fazele care compun acest ciclu de dezvoltare. Dup unii specialiti8, ciclul de via se mparte n apte faze diferite (vezi figura 3). Aceste faze sunt privite ca o nlnuire de etape i nu ca pai de sine-stttori. Cei apte pai ai ciclului de via al unui sistem informatic sunt: 1. Identificarea problemelor, oportunitilor i a obiectivelor 2. Determinarea informaiilor necesare 3. Analiza cerinelor de sistem 4. Proiectarea sistemului
8

Kendal & Kendal Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002

23

5. Dezvoltarea i documentarea sistemului 6. Testarea i mentenana sistemului 7. Implementarea i evaluarea sistemului

3. Analiza cerinelor de sistem 2. Determinarea informaiilor necesare 4. Proiectarea sistemului

1. Identificarea problemelor, oportunitilor i a obiectivelor

Ciclul de via a sistemelor informatice

5. Dezvoltarea i documentarea sistemului

7. Implementarea i evaluarea sistemului

6. Testarea i mentenana sistemului

Figura 5 Ciclul de via a sistemelor informatice 2.1. Identificarea problemelor, oportunitilor i a obiectivelor n prima etap a ciclului de via a sistemului informatic, analitii ii concentreaz atenia asupra identificrii problemelor, oportunitilor i obiectivelor.

24

Aceast etap este critic pentru desfurarea ntregului proces de dezvoltare, deoarece poate evita alocarea de timp unei probleme greite sau pus greit. Aceast etap presupune o imagine corect a ceea ce presupune afacerea ce se dorete informatizat. Observarea oportunitilor poate face ca afacerea s ctige un avantaj fa de competiie sau poate stabili un standard pentru industria respectiv. Identificarea obiectivelor este o component deosebit de important a fazei, deoarece analitii caut s vad ce urmrete afacerea respectiv i cum s ndeplineasc obiectivele. Persoanele implicate n prima faz sunt utilizatori obinuii ai viitorului sistem informatic, analiti, manageri de sistem ce vor coordona proiectul. Activitile din aceast faz constau din intervievarea utilizatorilor, obinnduse nivelul de cunotine al acestora, estimarea scopului proiectului precum i a rezultatelor. Rezultatul acestei faze este un raport de fezabilitate n care se gsesc: identificarea problemelor i obiectivele viitorului sistem. 2.2 Determinarea informaiilor necesare A doua faz o reprezint determinarea informaiilor necesare pentru situaia respectiv. Printre instrumentele utilizate n determinarea informaiilor necesare identificm investigarea datelor brute, interviuri, chestionare, observarea comportamentului persoanelor care iau decizii, mediul de afaceri i chiar crearea unor prototipuri. Dezvoltarea rapid a aplicaiilor (Rapid Application Developement - RAD) este o metod orientat pe obiecte utilizat de dezvoltatorii de sisteme ca un instrument software. n aceast faz a ciclului de dezvoltare, analitii ncearc s neleag nevoile utilizatorilor pentru a-i ndeplinii sarcinile. Exist situaii cnd doar primele dou faze ale ciclului de via sunt complete, restul fiind ntr-o continu dinamic.

25

Persoanele implicate n aceast faz sunt analitii i utilizatorii, n spe managerii de operaii i operatorii direci ai sistemului. Analitii de sistem trebuie s cunoasc detaliile i funciile sistemului curent: cine este implicat, n ce activitate, unde are loc respectiva activitate, cnd din punct de vedere temporar i cum, adic ce proceduri sunt utilizate. n situaia n care pentru justificarea a unei anumite operaii se primete rspunsul din partea utilizatorilor "ntotdeauna s-a fcut aa!", analistul va trebui s neleag singur respectivele proceduri i apoi s le optimizeze. Ca rezultat al acestei faze, analistul trebuie s neleag cum funcioneaz afacerea respectiv, precum i s aib o imagine complet a persoanelor, scopurilor, datelor i procedurilor implicate.

2.3. Analiza cerinelor de sistem Urmtoarea faz o reprezint analiza a tuturor nevoilor sistemului. i pentru aceast faz exist numeroase instrumente ce sunt utilizate n determinarea cerinelor. Un astfel de instrument este diagrama datelor de tip flow, ce reliefeaz intrrile, procesele i ieirile din sistem ntr-o form grafic. Pe baza diagramei de date de tip flow este dezvoltat un dicionar de date ce conine toate tipurile de date coninute n sistem, precum i specificaiile acestor (tip alfanumeric, tip text, lungime, etc. ). n timpul acestei faze analistul de sistem analizeaz de asemenea structura deciziilor luate. Structurarea deciziilor este fcut pentru condiii diferite, condiii alternative, aciuni i reguli ce pot fi determinate (arbori de decizie, tabele de decizie). Nu toate deciziile din organizaie sunt structurate, dar este foarte important pentru analitii de sistem s le neleag. Deciziile semistructurate (decizii luate sub risc) sunt acceptate de sistemele suport de decizie. Cnd analizeaz decizii semistructurate, analistul examineaz deciziile luate n funcie de gradul de decizie, de gradul de complexitate a problemei precum i de numrul de criterii pa baza crora este luat decizia.

26

Analiza deciziilor multicriteriale (decizii luate cnd exist mai muli factori ce trebuie luai n considerare) este de asemenea o parte din aceast etap a ciclului de via a sistemului informatic. Exist mai multe tehnici disponibile pentru analiza deciziilor multicriteriale, incluzndu-se aici procesele de negociere sau procesele de msurare. n acest moment al ciclului de via al produsului informatic, analistul de sistem pregtete o imagine sumar a viitorului sistem precum i o analiza a costurilor i beneficilor implicate sau a unor alternative, fcnd recomandri privind cursul urmtoarelor etape. Fiecare problem de sistem este unic, i nu este doar o singur metod de rezolvare. De aceea, maniera n care sunt fcute recomandrile privind soluiile sunt n funcie de calitile individuale precum i de pregtirea fiecrui analist.

2.4. Proiectarea sistemului n faza de proiectare a sistemului din ciclul de via, analistul utilizeaz informaia colectat n fazele anterioare pentru a proiecta logic sistemul informatic. Analistul proiecteaz procedurile de intrare a datelor, astfel ca datele introduse n sistem s fie complete i corecte. Pentru acest lucru, analistul folosete tehnici specifice cum ar fi crearea de formulare sau ecrane de introducere a datelor. Tot n aceast faz este creat i interfaa cu utilizatorul care mijlocete accesul acestuia la sistem. Interfaa este realizat cu ajutorul perifericelor de intrare (tastatur) precum i cu ajutorul unor GUI-uri (Graphical User Interface) ce utilizeaz att mouse-ul ct i ecranul tactil dup caz. Faza de proiectare include de asemenea i fiiere sau baze de date n care se vor stoca datele specifice sistemului. n aceast faz, analistul lucreaz i cu viitorii utilizatori ai sistemului care prezint cum doresc s apar informaiile, att la ecran ct i la imprimant. n cele din urm, analistul trebuie s realizeze proiectarea design-ului precum i a procedurilor de backup pentru a proteja sistemul i datele coninute. n acest moment, sistemul este mprit n mai multe pachete. De fiecare pachet se va o cupa un

27

programator sau grup de programatori. Fiecare pachet trebuie s aib specificat care sunt intrrile, procedurile ce se vor executa i ieirile. De asemenea aceste pachete includ arbori sau tabele de decizie, diagrame de date de tip flow, un sistem de flowchart, precum i numele i funciile tuturor rutinelor deja scrise. 2.5. Dezvoltarea i documentarea sistemului n a cincea faz a ciclului de via a sistemului, analistul lucreaz alturi de programatori pentru a dezvolta sistemul proiectat. De asemenea, analistul colaboreaz i cu utilizatorii sistemului pentru a ntocmi documentaia sistemului format din manuale, proceduri, ajutor online, site-uri web coninnd FAQ (Frequently Asked Questions ntrebri frecvente), fiiere de tip "Read Me". Aceast documentaie trebuie s ajute n viitor utilizatorii cnd vor avea nevoie de informaii privitoare la sistem. Programatorii au n aceast faz un rol foarte important deoarece ei proiecteaz, scriu cod de program i nltur erorile de program. 2.6. Testarea i mentenana sistemului nainte ca sistemul informatic s fie utilizat este necesar ca acesta s fie testat. Este mult mai ieftin dac erorile sunt descoperite nainte ca sistemul s fie livrat utilizatorilor. Unele din teste sunt fcute de ctre programatori, altele sunt fcute de programatori alturi de analiti. De obicei testele se fac cu o serie de date de test care sunt alese reprezentativ, iar n alte cazuri se utilizeaz date reale. Mentenana sistemului reprezint totalitatea operaiilor de ntreinere, update (care n unele cazuri se pot face automat prin conexiunea utilizatorului la Internet i conectarea la serverul firmei productoare a sistemului). Dup ce sistemul este instalat, el trebuie meninut, adic programele trebuie modificate pentru a fi mereu actualizate. Figura urmtoare arat media de timp petrecut n cadrul procesului de mentenan al unui sistem MIS (Management Information System).

28

Figura 69 - Media de timp petrecut n cadrul procesului de mentenan Figura 5 ilustreaz suma resurselor implicate (timp i bani) n dezvoltarea i mentenana sistemului. Zona de sub curb reprezint suma total cheltuit. Dup cum se observ,costul total al mentenanei tinde s creasc cnd sistemul se dezvolt. De la un anumit punct, costul cu mentenana este mai mare dect costul crerii unui nou sistem informatic. n concluzie, mentenana este un proces din ciclul de via al sistemului informatic. Dup instalarea sistemului informatic, mentenana este de obicei sub form de corecturi ale unor erori neobservate n momentul testrii. Dup ce aceste erori sunt rezolvate, sistemul devine funcional la capacitate maxim pentru utilizatori. Pe de alt parte dup trecerea unei lungi perioade de timp, sistemul devine nvechit i iar procesele de mentenan devin foarte costisitoare.

Kendal & Kendal Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002

29

Suma resurselor cheltuite

Erori post instalare

Erori minore

Modificri majore datorate tehnologiei

Dezvoltarea sistemului

Ziua instalrii

Timp

Figura 710 Evoluia resurselor n funcie de timp 2.7. Implementarea i evaluarea sistemului n ultima faz a ciclului de via, analistul ajut la implementarea sistemului informatic. Aceast faz include de asemenea i instruirea viitorilor utilizatori pentru a putea utiliza la toate capacitile sistemul. n cazul implementrii sistemului ntr-o organizaie, nlocuind un sistem existent, este necesar s fie preluate anumite date sau proceduri din vechiul sistem automat, reintroducerea manual n noul sistem durnd foarte mult. De exemplu n cazul nlocuirii unui program de contabilitate cu unul nou se vor prelua bazele de date ce conin produsele, clienii, furnizorii, salariaii etc. Observaie. Realizarea unui sistem informatic este ntr-un ciclu. Cnd analistul finalizeaz o faz a dezvoltrii sistemului i trec la urmtoarea, descoperirea unei probleme poate face ca analistul s se ntoarc la una din fazele anterioare. De exemplu, dac n faza de testare, s-a gsit o eroare, trebuie urmrit dac este o eroare

10

Kendal & Kendal Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002

30

de programare sau o eroare de proiectare. Astfel, dup identificarea tipului de eroare trebuie mers n faza respectiv de unde se reia ciclul.

Rezumat Cei apte pai ai ciclului de via al unui sistem informatic sunt: 1. Identificarea problemelor, oportunitilor i a obiectivelor 2. Determinarea informaiilor necesare 3. Analiza cerinelor de sistem 4. Proiectarea sistemului 5. Dezvoltarea i documentarea sistemului 6. Testarea i mentenana sistemului
7. Implementarea i evaluarea sistemului

Test de evaluare a cunotinelor Enumerai paii caracteristici ciclului de via ai sistemelor informatice i explicai nlnuirea lor.

31

Unitatea de nvare 3. Utilizarea instrumentelor CASE

Introducere Un pachet de instrumente CASE, crete productivitatea grupului prin permiterea analizrii i distribuirii muncii ntre membrii echipei, care pot foarte simplu accesa de pe PC-ul lor datele respective. Instrumentele CASE faciliteaz interaciunea dintre membrii echipei prin procese interactive,dinamice sau procese iterative.

Competenele unitii de nvare nelegerea conceptelor CASE. Locul n care este optim utilizarea acestor instrumente. Importana utilizrii instrumentelor CASE.

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Instrumentele de tip CASE (Computer-Aided Software Engineering) au aprut n anii 90. Acestea au fost create special pentru a mbuntii munca de rutin utiliznd un suport automat. Sistemele organizaionale, procedurile i anumite practici utilizate n management pot conine instrumente CASE. n unele sisteme informatice, analitii permit utilizatorilor s realizeze grafice i s modifice diagrame ntr-o manier foarte facil. Astfel analistul poate deveni mai productiv, reducnd din timpul n care se realizau grafice tradiional sau n care se reprezentau diagrame de date de tip flow.

32

Un pachet de instrumente CASE, crete productivitatea grupului prin permiterea analizrii i distribuirii muncii ntre membrii echipei, care pot foarte simplu accesa de pe PC-ul lor datele respective. Instrumentele CASE faciliteaz interaciunea dintre membrii echipei prin procese interactive,dinamice sau procese iterative. Pentru ca un sistem informatic s fie considerat satisfctor, trebuie s permit o comunicare excelent ntre analiti i utilizatori, pe ntregul ciclu de via al produsului. Un alt avantaj semnificativ al utilizrii instrumentelor CASE l reprezint integrarea activitilor i oferirea unei continuiti ntre sistemele dezvoltate. Instrumentele CASE au un rol important atunci cnd o faz a ciclului de via a sistemului necesit cteva modificri. Integrarea activitilor prin folosirea acestor tehnologii face mai uoar nelegerea cum toate fazele ciclului de via sunt strns legate dar independente. Poate cel mai mare avantaj al utilizrii instrumentelor CASE l reprezint faptul c aceste instrumente permit utilizatorilor s analizeze impactul modificrilor de mentenan. Instrumentul CASE va trece peste fiecare ecran, raport sau fiier ce este folosit, crend un plan de mentenan complet. Instrumentele CASE se mpart n dou categorii: - Instrumente UPPER CASE - Instrumente LOWER CASE Instrumentele UPPER CASE ajut analitii i designerii, n timp ce instrumentele LOWER CASE sunt utilizate numai de programatori i persoanele care trebuie s implementeze sistemele proiectate de instrumente UPPER CASE.

3.1. Instrumente UPPER CASE Un instrument UPPER CASE permite analistului s creeze i s modifice design-ul sistemului. Toate informaiile despre proiect sunt stocate ntr-o enciclopedie numit depozitul CASE. Acesta este o mare colecie de nregistrri, elemente,

33

diagrame, ecrane, rapoarte sau alte informaii. Analitii pot astfel vedea pe schema design-ului sistemului unde pot apare erori. Totodat, un instrument, UPPER CASE ofer un suport n modelarea cerinelor funcionale ale organizaiei, asistnd analitii i utilizatorii n definirea limitelor proiectului. n acelai timp, ajut s se vizualizeze cum se potrivete proiectul pe organizaia respectiv.

3.2. Instrumente LOWER CASE

Instrumentele LOWER CASE sunt utilizate pentru a genera sursa cod a programului, eliminnd nevoia de programare. Instrumentele LOWER CASE fac ca sistemul s fie produs mai rapid, pe baza generatoarelor de cod. Suma de timp petrecut cu mentenana scade datorit faptului c codul este generat deci nu are erori. Singurele erori care pot apare sunt erorile de design. Prin scderea timpului se poate aloca mai mult timp pentru dezvoltarea unor noi sisteme mai performante. Codul generat poate fi fcut n mai multe limbaje, deci se poate face o migrare rapid a sistemelor de pe o platform pe alta

Rezumat n unele sisteme informatice, analitii permit utilizatorilor s realizeze grafice i s modifice diagrame ntr-o manier foarte facil. Astfel analistul poate deveni mai productiv, reducnd din timpul n care se realizau grafice tradiional sau n care se reprezentau diagrame de date de tip flow. Instrumentele CASE au un rol important atunci cnd o faz a ciclului de via a sistemului necesit cteva modificri. Integrarea activitilor prin folosirea acestor tehnologii face mai uoar nelegerea cum toate fazele ciclului de via sunt strns legate dar independente. Poate cel mai mare avantaj al utilizrii instrumentelor CASE l reprezint faptul c aceste instrumente permit utilizatorilor s analizeze

34

impactul modificrilor de mentenan. Instrumentul CASE va trece peste fiecare ecran, raport sau fiier ce este folosit, crend un plan de mentenan complet. Instrumentele CASE se mpart n dou categorii: - Instrumente UPPER CASE - Instrumente LOWER CASE

Test de evaluare a cunotinelor Care sunt avantajele utilizrii instrumentelor CASE? Care sunt principalele tipuri de instrumente CASE?

35

Unitatea de nvare 4. Metode i tehnici de realizare a sistemelor informatice

Introducere Analiza sistemului informaional are ca scop cunoaterea sistemului existent i stabilirea modului n care acesta poate s satisfac cerinele managementului organizaiei respective.

Competenele unitii de nvare nsuirea principalelor metode utilizate n etapele de analiz, proiectare i implementare.

Durata medie de parcurgere a primei uniti de nvare este de 3 ore.

Observaii: 1. Metodologia cuprinde etapele / procesele de realizare a unui sistem informatic; fluxul realizrii acestor etape / procese; modul de derulare a ciclului de via a sistemului informatic, etc. 2. Metoda reprezint modul unitar n care analitii de sistem, programatorii i alte categorii de personal implicate realizeaz procesul de analiz a sistemului existent, proiectarea, realizarea i implementarea noului sistem informatic. 3. Tehnicile de lucru reprezint felul n care se acioneaz eficient i rapid n cadrul unei metode, pentru soluionarea diferitelor probleme ce apar n

36

procesele de realizare a sistemelor informatice. Metoda are un caracter general, n cadrul ei se aplic diferite tehnici.

Analiz 1. Metoda descendent (top-down) 2. Metoda ascendent (bottom-up) 3. Metoda de implementare (paralel, serial, pivot) 4. Tehnici de planificare a execuiei (CPM, PERT) 5. 6. 7. Tehnica interviului Tehnica chestionarului Tehnici de reprezentare (sl, diagrame,..) 8. Tehnica tabelelor de decizie 9. Tehnici de corecie i control automat al datelor X X X X X X X X

Proiectare X

Implementare

37

4.1. Analiza sistemului informaional Analiza sistemului informaional are ca scop cunoaterea sistemului existent i stabilirea modului n care acesta poate s satisfac cerinele managementului organizaiei respective. Pasul 1. MODELUL MEDIULUI stabilirea graniei dintre sistem i nconjurtor, modul lor de interaciune Pasul 2. MODELUL COMPORTAMENTAL studiul sistemului din

mediul

punct

de

vedere conceptual: sistemul privit ca o colecie de procese (transformri), care accept date din afara sistemului (evenimente) i le transform n date de ieire (rspunsuri).

Sistemul este studiat sub 3 aspecte: funcional descrierea datelor de intrare, a prelucrrilor i a datelor de ieire structural identificarea datelor utilizate, tipul, lungimea acestora, precum i a legturilor dintre ele dinamic se refer la evenimentele care determin trecerea sistemului sau a componentelor dintr-o stare n alta.

Din punct de vedere al gradului de detaliere: modelul fizic reflect structura tehnic i operaional a variant de implementare a sistemului, reprezint o descrie cum funcioneaz acesta ntr-o anumit implementare; modelului logic de modelul logic arat ce trebuie s fac sistemul fr a ine cont

caracteristicile de implementare i de restriciile tehnice; modelul logic este mai stabil n timp dect cel fizic Observaii: Analiza ncepe cu investigarea i elaborarea modelului fizic al sistemului existent, din care deriv modelul logic al sistemului existent

38

Modelul logic al sistemului existent mpreun cu cerinele beneficiarului stau la baza elaborrii modelului logic al noului sistem

Activitile etapei de analiz pot fi grupate n: stabilirea ariei de investigare investigarea preliminar a cerinelor structurarea sistemului existent elaborarea modelului fizic elaborarea modelului logic asamblarea rezultatelor investigrii evaluarea sistemului definirea soluiei de evaluare a noului sistem 4.2. Procesul de colaborare ntre echipa de management (MN) i analitii de sistem (AS) Pasul 1. MN prezint cerinele pe care sistemul trebuie s le ndeplineasc. Se prezint deficienele actualului sistem. Pasul 2. MN mpreun cu AS determin aria de cuprindere a noului sistem care va fi implementat, precum i cauzele deficienelor existente n actualul sistem. Pasul 3. AS efectueaz un studiu al unitii, care se finalizeaz cu colectarea informaiilor despre organizaia analizat. Pasul 4. AS pornind de la informaiile obinute i cerinele MN, realizeaz analiza sistemului existent, pe diferite nivele de abstractizare. Pasul 5. AS prezinta la MN modalitile de realizare a obiectivelor i eliminare a deficienelor. Se prezint mai multe alternative de perfecionare a sistemului. Dac analiza este eronat se reia de la Pasul 1. Pasul 6. MN alege varianta convenabil dup mai multe criterii (timp, cost, completitudine, echipamente,...). Dac nici o variant nu este convenabil se poate renuna la realizarea noului sistem.

39

Rezultatele analizei (conform SSADM): descrierea serviciilor existente arat cum sunt organizate datele i procesele n sistemul existent; se prezint modelul logic al datelor i fluxurile logice de date catalogul utilizatorilor descrie sarcinile realizate de utilizatorii ce interacioneaz cu viitorul sistem catalogul cerinelor cuprinde n ordinea prioritilor acceptate de utilizator cerinele funcionale i nefuncionale (tehnologia de prelucrare, securitatea i arhivarea datelor) ale sistemului opiunea selectat a sistemului exprim soluia optim a cerinelor beneficiarului i conine: analiza cost-beneficiu i o descriere a funcionalitii.

4.3. Diagrama de flux a documentelor Simboluri utilizate: < flux > Flux de date este format din datele transmise ntre dou activiti

Entitate - poate fi o persoan, un grup de persoane sau un compartiment din interiorul sau din exteriorul sistemului analizat

40

41

4.4. Diagrama de flux a resurselor fizice Simboluri utilizate: < flux > Flux de date este format din datele transmise ntre dou activiti; este etichetat printr-un substantiv care sugereaz informaii transmise informaia sau pachetul de

Entitate - poate fi o persoan, un grup de persoane sau un compartiment din interiorul sau din exteriorul sistemului analizat

Activitate numele activitilor principale din sistem

Resurs

Resurs reprezentarea prii fizice (resursele transferate ntre activiti)

42

43

4.5. Diagrama de flux a datelor Simboluri utilizate: < flux > Flux de date este format din datele transmise ntre dou procese; este etichetat printr-un substantiv care sugereaz informaii transmise informaia sau pachetul de

Entitate extern (terminator) este sursa / receptorul de date. Poate fi un alt sistem (organizaie, compartiment, persoan) i n acest caz comportamentul nu va fi studiat.

Entitate extern duplicat

Procesul - este etichetat cu text ce sugereaz modul de transformare a datelor i este identificat printr-un numr. Se procesului va preciza i locaia (compartiment/persoan)

44

Proces elementar

Stocul de date este un depozit temporar sau permanent de date. Poate fi manual (registru, dosar, arhiv de documente) sau baze de date. n etichet se precizeaz: manual pe suport magnetic temporar M D T

Stoc de date duplicat

45

46

47

48

49

S ne reamintim... 1. Metodologia cuprinde etapele / procesele de realizare a unui sistem informatic; fluxul realizrii acestor etape / procese; modul de derulare a ciclului de via a sistemului informatic, etc. 2. Metoda reprezint modul unitar n care analitii de sistem, programatorii i alte categorii de personal implicate realizeaz procesul de analiz a sistemului existent, proiectarea, realizarea i

implementarea noului sistem informatic. 3. Tehnicile de lucru reprezint felul n care se acioneaz eficient i rapid n cadrul unei metode, pentru soluionarea diferitelor probleme ce apar n procesele de realizare a sistemelor informatice. Metoda are un caracter general, n cadrul ei se aplic diferite tehnici.

Rezumat Analiza sistemului informaional are ca scop cunoaterea sistemului existent i stabilirea modului n care acesta poate s satisfac cerinele managementului organizaiei respective. Pasul 1. MODELUL MEDIULUI stabilirea graniei dintre sistem i mediul nconjurtor, modul lor de interaciune

Pasul 2. MODELUL COMPORTAMENTAL studiul sistemului din punct de vedere conceptual: sistemul privit ca o colecie de procese (transformri), care accept date din afara sistemului (evenimente) i le transform n date de ieire (rspunsuri). Procesul de colaborare ntre echipa de management (MN) i analitii de sistem (AS)

50

Pasul 1. MN prezint cerinele pe care sistemul trebuie s le ndeplineasc. Se prezint deficienele actualului sistem. Pasul 2. MN mpreun cu AS determin aria de cuprindere a noului sistem care va fi implementat, precum i cauzele deficienelor existente n actualul sistem. Pasul 3. AS efectueaz un studiu al unitii, care se finalizeaz cu colectarea informaiilor despre organizaia analizat. Pasul 4. AS pornind de la informaiile obinute i cerinele MN, realizeaz analiza sistemului existent, pe diferite nivele de abstractizare. Pasul 5. AS prezinta la MN modalitile de realizare a obiectivelor i eliminare a deficienelor. Se prezint mai multe alternative de perfecionare a sistemului. Dac analiza este eronat se reia de la Pasul 1. Pasul 6. MN alege varianta convenabil dup mai multe criterii (timp, cost, completitudine, echipamente,...). Dac nici o variant nu este convenabil se poate renuna la realizarea noului sistem.

Test de evaluare a cunotinelor Ce presupune ci care este scopul analizei sistemului informatic?

51

Unitatea de nvare 5. Aplicaie informatic pentru gestiunea i contabilitatea materiilor prime i materialelor la o societate comercial

Introducere Obiectivul aplicaiei este obinerea de informaii privind existentul n stoc, intrrile i ieirile de materii prime i materiale, cantitativ i valoric n cadrul unei societi comerciale precum i nregistrarea n contabilitate a operaiilor respective. Competenele unitii de nvare Crearea unei aplicaii informatice pentru gestiunea materiilor prime i materialelor.

Durata medie de parcurgere a primei uniti de nvare este de 3 ore.

5.1. Obiectiv Obiectivul aplicaiei este obinerea de informaii privind existentul n stoc, intrrile i ieirile de materii prime i materiale, cantitativ i valoric n cadrul unei societi comerciale precum i nregistrarea n contabilitate a operaiilor respective. 5.2. Ieirile aplicaiei Iierile sunt sub forma de rapoarte. Principalele rapoarte ale aplicaiei sunt:

52

a) Situaia intrrilor de materiale pe lun NR(2) Nr. crt Fel Document Numr Data Cod. Mat. Den. Mat. Cant. Intrat NR(4,2) NR(5,2) Pre Valoare

NR(3) CH(3) NR(5)

Date(8) NR(3) CH(20) NR(7)

Subtotal pe material Total general b) Situaia ieirilor de materiale pe lun NR(2) Nr. crt Fel Document Numr Data Cod. Mat. Den. Mat.

* *

Cant. Ieit

Pre

Valoare

NR(3) CH(3) NR(5)

Date(8) NR(3) CH(20) NR(7)

NR(4,2) NR(5,2)

Subtotal pe material Total general

* *

c) Registru jurnal la data de Date(8) Nr. crt. Data nreg. Fel Document Numr Data DATE(8) CH(20) Explicaii Simbol cont Debit Credit NR(5) NR(5) Sume Debit Credit

NR(3) DATE(8) CH(3) NR(5)

NR(5,2) NR(5,2)

d) Situaia stocurilor de materiale la sfritul lunii Nr. crt. Cod Den. mat. NR(3) NR(3) CH(20) CH(3) UM Pre mediu NR(5,2) NR(7) NR(5,2) * ** Stoc Sold

Total pe magazie Total general

53

e) Balana analitic a materialelor pe luna NR(2) Cod Mat. Den. Mat. Pre Stoc Sold Intrri Val. Cant Ieiri Val. Cant. Stoc final Sold final mediu iniial iniial

NR(3) CH(20) NR(4) NR(7) NR(5) NR(5) NR(7) NR(5) NR(7) NR(7) NR(5) Total general 5.3. Intrrile aplicaiei Tabelele utilizate pentru obinerea rapoartelor sunt: * * * *

Denumire

Simbol n tabel

Tip

cod material denumire material unitate de msur

codmat denmat um

NR(3) CH(20) CH(3) NR(4,2)

pret mediu la nceputul pretmi perioadei luna cod magazie cod partener stoc cantitate perioada valoare intrri cantitate perioad stoc final stocf ieit valintr pe cante la luna codmag codpart nceputul stocin intrat pe cantin

NR(2) NR(2) NR(2) NR(7)

perioadei NR(7)

NR(4,2) NR(7)

NR(7)

54

Denumire

Simbol n tabel

Tip

pre mediu la sfaritul pretmf perioadei fel document numr document data documentului cont debitor cont creditor cantitate ieit pre pret intrat feld nrdoc datad contdb contcr sau cant

NR(5,2)

CH(3) NR(5) DATE(8) NR(5) NR(5) NR(7)

NR(5,2)

MATERIALE codmat denmat um pretmi

STOCURI codmat pretmi luna codmag codpart stocin cantin valintr cante stocf pretmf

TRANZACTII codmat codpart feld nrdoc datad CONTDB CONTCR CANT PRET

55

Schema legturilor dintre tabelele bazei de date:


TRANZACII nrdoc (Cheie Primar) codmat feld datad contdb contcr cant pret codpart codmag MATERIALE codmat (Cheie Primar) denmat um pretm STOCURI codmag (Cheie Primar) codmat luna pretmi stocin cantin valintr cante stocf pretmf

5.4. Schema general a aplicaiei:


Lista inventar stocurii Nomeclator materiale Nota Intrare - Recepie

MATERIALE APLICAIE STOCURI

Stocuri Balana Jurnal Ieiri Intrri

TRANZACII

56

Test de evaluare a cunotinelor Care sunt intrrile i ieirile aplicaiei? Care sunt structurile tabelor implicate?

Tem de control Ce nelegei prin noiunea de cunotin? Explicai rspunsul. Care sunt principalele tipuri de sisteme informatice? Detaliai rspunsul. Enumerai paii caracteristici ciclului de via ai sistemelor informatice i explicai nlnuirea lor. Care sunt avantajele utilizrii instrumentelor CASE? Care sunt principalele tipuri de instrumente CASE?

57

Bibliografie:
1. KENDAL & KENDAL Systems Analysis and Design, Pearson Education Inc., New Jersey, 2002 2. OPREA D., Analiza i proiectarea sistemelor informaionale economice, Ed. Polirom, 1999. 3. LUNGU I., .a., Sisteme informatice. Analiz, proiectare i implementare, Ed. Economic, 2003. 4. STANCIU V., .a., Proiectarea sistemelor informatice, Ed. Dual Tech, 2002. 5. URSCESCU M., Sisteme informatice, Ed. Economic, 2002. 6. OPREA D., Sisteme informaionale pentru afaceri, Ed. Polirom, 2002. 7. OPREA D., Sisteme informaionale pentru manageri, Ed. Polirom, 2002. 8. HERNANDEZ M., Proiectarea bazelor de date, Ed. Teora, 2003. 9. ZAHARIE D., .a., Sisteme informatice pentru asistarea deciziei, Ed. Dual Tech, 2001. 10. VRLAN G., Tehnologii Client / Server n dezvoltarea sistemelor informatice n economie, Ed. Didactic i Pedagogic, 2004. 11. DATE C.J., Baze de date, Ed. Plus, 2005. 12. CONNOLLY Th., .a., Baze de date. Proiectare, Implementare, Gestionare, Ed. Teora, 2001. 13. MUREAN M., Sisteme informatice, Ed. Universul Juridic, 2006. 14. NISTOR R., .a., Metodologii manageriale informatice, Ed. Academica, 2003. 15. AIRINEI D., Depozite de date, Ed. Polirom, 2002. 16. FOTACHE M., Proiectarea bazelor de date, Ed. Polirom, 2005. 17. VELICANU M., .a., Sisteme de baze de date. Teorie i practic, Ed. Petrion, 2003.
58

18. FOTACHE D., .a., Soluii informatice integrate pentru gestiunea afacerilor ERP, Ed. Economic, 2004. 19. http://ro.wikipedia.org/wiki/ERP 20. http://ro.wikipedia.org/wiki/E-commerce

59

Introducere

Analiza i proiectarea sistemelor informatice SUPORT DE LABORATOR PENTRU NVMNT LA DISTAN


Obiectivele laboratorului Laboratorul urmrete aplicarea noiunilor teoretice dobndite la curs, prin crearea de aplicaii economice pe baza software-ului Microsoft Access. Competene conferite Dup parcurgerea materialului studentul va fi capabil s: creeze aplicaii economice, s creeze baze de date relaionale, s interogheze bazele de date create pentru obinerea unor informaii eseniale n procesul de management. Resurse i mijloace de lucru mijloace informatice necesare parcurgerii laboratorului i rezolvrii problemelor propuse: Microsoft Access; Structura cursului - 14 uniti de nvare - 14 teme de control la sfaritul fiecrui modul - transmiterea temelor de control ctre cadrul didactic i, respectiv, a rezultatelor ctre studeni se face prin ncrcarea pe platforma eLearning i prin material tiprit Cerine preliminare Discipline necesare a fi parcurse i eventual promovate naintea disciplinei curente: - Bazele Informaticii Economice - Baze de date Durata medie de studiu individual - 28-40 ore

Evaluarea Componena notei finale: ponderea evalurii finale (examen) 60%; verificrile de laborator 40%;
60

Unitatea de nvare 1. SISTEMUL DE GESTIUNE A BAZELOR DE DATE

Competenele unitii de nvare Concepte principale din teoria relaional Cheia primar Cheia extern Sisteme de gestiune a bazelor de date

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Sistemul de gestiune a bazelor de date (SGBD) este componenta unui sistem de baz de date care are rolul de a permite descrierea i manipularea conform unui model de date. n momentul actual, cea mai mare parte a SGBD-urilor care se utilizeaz sunt bazate pe modelul relaional.

PRINCIPALELE CONCEPTE DIN TEORIA RELAIONAL Domeniul - reprezint un ansamblu de valori, caracterizat printr-un nume. Domeniul se poate defini explicit, prin enumerarea tuturor valorilor care aparin acestuia (exemplu D1:{rou, galben, albastru}), sau implicit prin precizarea proprietilor pe care le au valorile domeniului respectiv (exemplu: D2:{e/e N } Relaia - (tabela) reprezint un subansamblu al produsului cartezian dintre mai multe domenii (D1xD2x) caracterizat printr-un nume. Reprezentarea folosit pentru o relaie (R) este tabloul bidimensional (tabela de date) de forma:

61

Atributul este coloana unei relaii caracterizate printr-un nume. Fiecare atribut i ia valorile dintr-un domeniu. Mai multe atribute pot lua valori din acelai domeniu. Tuplul este linia dintr-o relaie i nu are nume. Valorile dintr-un tuplu aparin produsului cartezian dintre domeniile relaiei (exemplu tuplul v1, v2, ...,vn, unde v1 D1, v2 D2,...,vn Dm, cu n m numere ntregi). Schema relaiei este un ansamblu format din numele relaiei (R) urmat ntre paranteze rotunde de lista atributelor (Ai), pentru fiecare atribut precizndu-se domeniul asociat (Dj): R(A1:D1, A2:D2,...,An:Dm): unde n m numere ntregi. Cheia este un atribut sau un ansamblu de atribute cu ajutorul cruia se poate identifica un tuplu dintr-o relaie. Cheia este primar dac identificarea este unic, adic exist un singur tuplu cu o anumit valoare pentru cheie. Cheia este simpl, dac este format dintr-un singur atribut. Cheia este compus dac este format dintr-un ansamblu de atribute. Cheia este extern ntr-o relaie R1, dac ansamblul de atribute care o definete ia valori din aceleai domenii ca i cheia primar a unei relaii R2 si dac are rolul de a stabili o legtura (asociere) ntre cele dou relaii. Prezentare comparativ a noiunilor privind organizarea datelor n memoria extern n fiiere, baze de date relaionale (BDR) i cele utilizate n VFP.
Mem extern BDR Access FISIER RELAIE TABEL CMP ATRIBUT CMP ASOCIERE ASOCIERE (LEGATURA) CHEIE CHEIE PRIMAR CHEIE PRIMAR CHEIE EXTERN CHEIE DOMENIU -

S ne reamintim...

Cheia este un atribut sau un ansamblu de atribute cu ajutorul cruia se poate identifica un tuplu dintr-o relaie. Cheia este primar dac identificarea este unic, adic exist un singur tuplu cu o anumit valoare pentru cheie.

62

Cheia este simpl, dac este format dintr-un singur atribut. Cheia este compus dac este format dintr-un ansamblu de atribute. Cheia este extern ntr-o relaie R1, dac ansamblul de atribute care o definete ia valori din aceleai domenii ca i cheia primar a unei relaii R2 si dac are rolul de a stabili o legtura (asociere) ntre cele dou relaii.

Test de evaluare a cunotinelor 1. Pentru tabelele FURNIZORI i FACTURI (ANEXA 1) care sunt cheile? 2. Dai exemplu de un atribut i de un tuplu pentru relaia FACTURI (ANEXA 1)

63

Unitatea de nvare 2. STOCAREA DATELOR N BAZE DE DATE

Competenele unitii de nvare Crearea unui nou fiier access Crearea tabelelor Modificarea structurii unei tabele Introducerea i vizualizarea datelor Realizarea relaiilor ntre tabele Modificarea i tergerea datelor

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Un fiier Access este format din obiecte cum ar fi: tabele, formulare, queries, rapoarte pagini, macros i module.

Fereastra de baz - Access CREAREA UNUI NOU FIIER ACCESS Fiierele Access au extensia .mdb .

Pentru crearea unui nou fiier Access se alege n meniul FILE opiunea NEW.

64

FILE-NEW Din meniul din partea din dreapta care apare se alege opiunea Blank Database

Alegerea opiunii Blank Database Urmtorul pas n crearea bazei de date este alegerea unui nume corespunztor fiierului mdb, precum i alegerea locului de salvare al fiierului pe calculator.

65

Alegerea numelui i al locului de salvare Fiierul Access creat este gata de lucru. n acest moment n fiierul nu conine nici o informaie (baze de date, interogri, pagini etc.)

Fiierul student.mdb este creat i gata de lucru

CREAREA TABELELOR n primul rnd, deoarece dorim s lucrm la nivel de tabele, vom selecta din panoul de comand din cadrul meniului de obiecte (OBJECTS) opiunea TABLES (tabele).

66

Selectarea opiunii TABLES din panoul de comand Pentru crearea unei tabele nu vom utiliza generatoare de tip wizard. Crearea unei tabele nu trebuie s aib limitri, de aceea din panoul de comand alegem prima opiune: CREATE TABLE IN DESIGN VIEW.

Selectarea opiunii de creare a unui nou tabel Pentru a exemplifica crearea de tabele vom crea tabela angajai care are forma: Angajai cmp tip cod (CP) numeric nume text prenume text data_nasterii data sal_brut numeric cod_dep text Introducerea datelor se face n fereastra TABLE. La FIELD NAME se introduce numele fiecrui cmp al tabelei dup care se alege de la DATA TYPE tipul corespunztor (text, memo, numeric, dat/timp, sum de bani, numr-automat, da/nu, obiect OLE, hyperlink).

Introducerea cmpurilor i selectarea tipului corespunztor


67

n momentul n care un cmp se dorete a fi setat ca cheie primar, pe linia unde este numele cmpului de d clik dreapta de mouse si se alege opiunea PRIMARY KEY.

Alegerea opiunii PRIMARY KEY La selectarea opiunii de cheie primar, va apare n dreptul numelui cmpului un simbol de cheie.

Cheie primar Pentru informaii suplimentare privind cmpul respectiv, n partea de jos a ecranului avem urmtoarele opiuni:

Opiunile cmpului n final, tabela angajati va avea urmtoarea structur:

68

Tabela Angajati nchiderea configurrii tabelei se face apsnd simbolul X din dreapta ferestrei TABLE (ATENIE NU NCHIDEREA PROGRAMULUI ACCESS!).

nchiderea ferestrei de configurare a tabelei Salvarea tabelei realizate:

Salvarea tabelei

69

Denumirea tabelei realizate n panoul de comand apar toate tabelele realizate, n ordine alfabetic:

Lista tabelelor realizate

MODIFICAREA STRUCTURII UNEI TABELE Dup realizarea unei tabele se poate observa c lipsesc unele cmpuri, trebuiesc modificate denumirile cmpurilor sau tipul lor. Modificarea structurii se realizeaz prin selectarea tabelei ce se dorete modificat i apoi alegerea opiunii DESIGN din panoul de comand.

70

Modificarea structurii unei tabele Prin aceti pai se reintr n fereastra de configurare a tabelei unde pot fi operate toate modificrile necesare. INTRODUCEREA I VIZUALIZAREA DATELOR Pentru a introduce sau vizualiza datele dintr-o tabel se d dublu clik pe numele ei din tabloul de comand.

Introducerea / vizualizarea datelor

Datele introduse n tabela ANGAJATI

71

REALIZAREA RELAIILOR NTRE TABELE ntre tabelele existente se pot crea relaii pe baza cheilor primare i externe existente. In bara de comenzi se alege opiunea RELATIONSHIPS dnd clik pe simbolul

Crearea relaiilor ntre tabele Pentru adugarea tabelelor n fereastra de relaii se selecteaz tabela dorit dup care de apas butonul ADD.

Adugarea tabelelor in fereastra de relaii Pentru realizarea relaiilor se selecteaz cheia extern din tabel i se trage pe cheia primar a tablei cu care se creeaz relaia.

Realizarea unei relaii

72

Programul vede legtura ntre cele dou cmpuri din cele dou tabele i cere confirmarea realizrii legturii:

Realizarea legturii Se procedeaz la fel cu toate relaiile existente ntre toate tabelele. n final se pot vizualiza toate relaiile existente ntre toate tabelele bazei de date.

Vizualizarea legturilor existente n baza de date MODIFICAREA I TERGERA DATELOR Modificarea, inserarea i tergerea sunt operaii care pot fi fcute att manual (vizualiznd datele tabelei) i opernd direct ct i pe baza de comenzi scrise sub form de QUERIES.

73

Pentru modificarea sau tergerea datelor dintr-o tabel se intr n tabela din panoul de comand, cu dublu click.

Vizualizarea datelor din tabel Modificarea datelor este foarte facil, orice modificare fcut n tabel memorndu-se automat.

Modificarea unei valori in tabel Pentru tergerea unei valori din tabel se d buton dreapta de mouse pe suprafaa liniei ce se dorete a fi tears. Va apare un meniu din care se ale opiunea DELETE RECORD.

tergerea unei linii dintr-o tabel

74

Pentru tergerea mai multor linii dintr-o tabel se procedeaz similar cu meniunea c nainte trebuie selectate toate liniile ce vor fi terse.

Selectarea mai multor linii pentru a fi terse


S ne reamintim...

Modificarea, inserarea i tergerea sunt operaii care pot fi fcute att manual (vizualiznd datele tabelei) i opernd direct ct i pe baza de comenzi scrise sub form de QUERIES.

Test de evaluare a cunotinelor Care sunt componentele unei tabele? Ce nseamn actualizarea coninutului unei tabele? Cum se actualizeaz coninutul unei tabele? Prezentai modul de vizualizare a coninutului unei tabele. Prezentai modul de actualizare a structurii unei tabele.

Aplicaia 1: Creare i actualizare tabel.

APLICAIA 1 Creai o tabel urmtoarea structur:

75

Nume Prenume Cod Oras Medie Admis

C C N C N C

30 30 3 20 6;2

i cu urmtorul coninut : Nume Prenume Ionescu Maria Vlad Mirela Georgecu Ana Popescu Denisa Rauta Andreea Stanciu Roxana Radulescu Ruxandra Matei Iuliana a) b)

Cod 1 8 5 4 6 2 3 7

Oras Iasi Deva Cluj Arad Deva Deva Cluj Ploiesti

Medie 9.27 9.50 8.85 9.33 9.50 9.10 9.29 9.60

Admis

S se adauge un nou cmp, denumit Admis. Se presupune c doar candidatele cu medii peste 9.25 au fost admise. S se completeze valorile corespunztoare pentru cmpul Admis. Candidatele din Deva sunt de fapt din Bucureti. S se modifice valorile corespunztoare din cmpul ora. S se adauge nregistrarea: Orastie 8.00 F

c)

d)

Cretulescu Alexandra 9

76

Unitatea de nvare 3. CREAREA INTEROGRILOR

Competenele unitii de nvare Insert - adugarea de linii n tabel Modificarea unei comenzi Delete - tergerea nregistrrilor Update - modificarea datelor dintr-un cmp

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Interogrile sau queries pot fi fcute pentru una sau mai multe tabele existente n baza de date. Pentru nceput trebuie selectat din cadrul meniului OBJECTS opiunea QUERIES.

Selectarea opiunii QUERIES i pentru crearea comenzilor de tip query avem la dispoziie un generator de comenzi de tip wizard. Din motive de limitri ale acestui generator nu l vom utiliza. n consecin pentru crearea unei interogri vom alege prima opiune CREATE QUERY IN DESIGN VIEW.

77

Fereastra care va apare SHOW TABLE este o fereastr n care se pot selecta tabelele care vom lucra. Dup selectare se apas ADD pentru adugarea lor n sintaxa de interogare. Adugarea tabelelor din aceast fereastr nu este obligatorie, deoarece ele pot fi adugate i ulterior (manual prin scriere) cnd scriem sintaxa interogrii.

Adugarea tabelelor n interogare n fereastra QUERY, pe suprafaa gri prin click dreapta de mouse se poate accesa urmtorul meniu:

Meniu QUERY Prima opiune SQL o vom folosi pentru a scrie interogrile. Pentru ca principalele cuvinte cheie ale interogrii s fie scrise putem selecta din cadrul meniului opiunea QUERY TYPE. Astfel n acrul acestui submeniu avem urmtoarele opiuni:

78

Opiunile submeniului QUERY TYPE INSERT - ADUGAREA DE LINII N TABEL Pentru adugarea unor linii noi n tabel se utilizeaz INSERT. INSERT INTO TABELA [(ATRIBUT1, ATRIBUT2,... .)] VALUES (VALOARE_ATRIBUT1, VALOARE_ATRIBUT2,... .) De exemplu dac pentru tabela DEPARTAMENTE avem urmtoarele date:

Datele tabelei DEPARTAMENTE i dac dorim s adugm un nou departament care are datele: cod_dep: fin, den: financiar, localitate: bucuresti, sef: tecar gabriela, telefon: 1234567 vom avea: Din meniul QUERY TYPE se alege opiunea APPEND QUERY

79

Alegerea opiunii APPEND QUERY sau se poate direct ale opiunea SQL VIEW n fereastra de comenzi SQL vom scrie comanda:

Exemplu de comanda INSERT Dup scrierea oricrei comenzi, aceasta trebuie salvat pentru a putea fi executat ulterior.

Salvarea comenzii Odat salvat comanda trebuie s aib un nume pentru a putea fi recunoscut i executat ulterior. Atenie! Numele trebuie s fie ct mai sugestiv, executarea unor comenzi eronate poate produce deteriorarea datelor din baza de date.

80

Numirea comenzii n acest moment comanda este salvat i se poate executa.

Vizualizarea comenzii nou create Pentru executarea comenzii vom da dublu click pe numele ei n panoul de comand. Pentru verificarea execuiei comenzii, programul cere 2 confirmri: 1) pentru execuia comenzii

Acceptul de rularea a comenzii 2) pentru a aduga n tabel o nou nregistrare

Acceptul de adugare in tabel a unei noi nregistrri Dac vizualizm datele tabelei DEPARTAMENTE vom vedea nregistrarea fcut prin comanda INSERT

81

Vizualizarea tabelei DEPARTAMENTE

MODIFICAREA UNEI COMENZI Exist posibilitatea s apar necesitatea modificrii unei comenzi existente. Modificarea se face urmnd urmtorii pai:

Modificarea unei comenzi DELETE - TERGEREA NREGISTRRILOR Comanda SQL pentru tergerea uneia sau mai multor linii dintr-o tabela este DELETE. DELETE FROM TABELA WHERE CONDITIE De exemplu dac dorim s tergem nregistrarea ce cuprinde datele departamentului financiar (pentru care cod_dep este fin) vom avea:

82

tergerea departamentului financiar UPDATE - MODIFICAREA DATELOR DINTR-UN CMP Pentru a modifica valoarea unuia sau mai multor atribute sau mai multe linii dintr-o tabela se foloseste comanda UPDATE cu formatul general: UPDATE TABELA SET ATRIBUT1=EXPRESIE [ATRIBUT2=EXPRESIE2.... .] WHERE PREDICAT De exemplu dac dorim ca pentru angajaii din cadrul departamentului "conta" s cretem salariul brut cu 50 de lei vom avea:

Modificarea valorilor unui cmp

Vizualizarea datelor modificate n tabela ANGAJATI

S ne reamintim...

Fereastra care va apare SHOW TABLE este o fereastr n care se pot selecta tabelele care vom lucra. Dup selectare se apas ADD pentru adugarea lor n sintaxa de interogare. Adugarea tabelelor din aceast fereastr nu este obligatorie, deoarece ele pot fi adugate i ulterior (manual prin scriere) cnd scriem sintaxa interogrii.

83

Test de evaluare a cunotinelor 1. Cum se pot modifica valorile unui cmp? 2. Cum se pot terge nregistrrile unei tabele dup o condiie? Aplicaia 2: Introducere de date, selecii simple i utiliznd condiii simple i compuse.

APLICAIA 2 1. Realizai o tabel FURNIZORI cu structura tabelei FURNIZORI din ANEXA 1. 2. Introducei urmtoarele date:

3. Modificai localitatea pentru angajai din BRASOV n RASNOV. 4. tergei toi furnizorii din BRASOV 5. tergei toi furnizorii din CLUJ 6. nlocuii numele fiecrei localiti cu prima sa liter.

84

Unitatea de nvare 4. SELECIA I PROIECIA

Competenele unitii de nvare Introducere n conceptul de interogare a bazelor de date Sintaxa i utilizarea comenzii SELECT

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Clauza SELECT corespunde operatorului proiecie din algebra relaional, fiind utilizat pentru desemnarea listei de atribute (coloane) din rezultat. Clauza FROM este cea n care sunt enumerate relaiile din care vor fi extrase informaiile aferente consultrii. Clauza WHERE desemneaz predicatul selectiv al algebrei relaionale (condiia), relativ la atribute ale relaiilor care apar n clauza FROM. La modul general, o consultare SQL poate fi prezentat sub forma: select c1,c2,...,cn from r1,r2,...,rm where p unde: cj - reprezint coloanele rezultat; rj - reprezint relaiile ce trebuie parcurse; p - reprezint predicatul, condiia ce trebuie ndeplinit de tupluri (linii) pentru a fi incluse n rezultat. Predicatul poate fi simplu sau compus (din mai multe condiii). Cnd clauza WHERE este omis se consider implicit c predicatul p are valoare logic ''adevrat'', astfel nct n rezultat vor fi incluse toate liniile din tabel sau produsul cartezian al tabelelor, enumerate n clauza FROM. Dac n locul coloanelor c1,c2,...,cn apare simbolul *, rezultatul va fi alctuit din toate coloanele relaiilor specificate n clauza FROM. Atributele rezultatului preiau numele din tabela (tabelele) specificate n clauza FROM. Schimbarea numelui se realizeaz prin clauza AS. exemplu: select c1,c2 as NUME_NOU from r1 unde numele coloanei c2 devine NUME_NOU;

85

SQL nu elimin automat liniile identice din rezultat, deci pentru ca fiecare linie s apar o singur dat este necesara utilizarea opiunii DISTINCT. exemplu: select distinct c1,c2 from r1 n concluzie, o fraz SELECT, corespunde: unei selecii algebrice (clauza WHERE p) unei proiecii (SELECT ci) unui produs cartezian (FROM - r1 r2 ... rm) i conduce la obinerea unui rezultat cu n coloane, fiecare coloan fiind: un atribut din r1,r2,...,rm sau expresie calculat pe baza unor atribute din r1,r2,...,rm. Execuia unei fraze SELECT realizeaz un rezultat sub form tabelar. Rezultatul poate fi: 1. o list (text) 2. o tabel propriu-zis 3. o tabel temporar 4. o tabel derivat (imagine) 5. o variabil masiv (tablou) Exemplu: Utilizm tabela ANGAJATI n care introducem urmtoarele date:

Datele tabelei ANGAJATI 1. Care sunt datele coninute n tabela angajati? select cod, nume, prenume, data_nasterii, sal_brut, cod_dep from angajati sau: select * from angajati

86

Rezultatele exemplului 1 2. Care sunt numele salariailor i salariul brut? select nume, sal_brut from angajati

Rezultatele exemplului 2 3. Care sunt numele salariailor i salariul brut, dar pentru coloana sal_brut denumim coloana salariu_brut? select nume, sal_brut as salariu_brut from angajati

Rezultatele exemplului 3 4. Afiai numele angajailor i salariul brut, pentru salariaii care au salariul brut mai mare de 700 lei
87

select nume from angajati where sal_brut>700

Rezultatele exemplului 4 5. Care sunt datele salariailor care lucreaz n departamentul informatic (cod_dep="info")? select * from angajati WHERE cod_dep="info"

Rezultatele exemplului 5 6. Care sunt datele salariailor care lucreaz n departamentul informatic (cod_dep="info") i care au salariul brut mai mare de 700 de lei? select * from angajati where cod_dep="info" and sal_brut>700

Rezultatele exemplului 6 7. Afiai numele salariailor i codul departamentului pentru angajaii care sunt fie n departamentul informatic (cod_dep="info") fie n departamentul contabilitate (cod_dep="cont") select nume, cod_dep from angajati where cod_dep="info" or cod_dep="cont"

Rezultatele exemplului 7
88

8. Afiai numele angajailor i data naterii pentru angajaii nscui dup 15-03-1980 (formatul pentru data este #mm-dd-yyyy#) select nume, data_nasterii from angajati where data_nasterii > #03-15-1980#

Rezultatele exemplului 8 9. Afiai numele angajailor i data naterii pentru angajaii nscui ntre 15-03-1980 i 20-05-1983 select nume, data_nasterii from angajati where data_nasterii > #03-15-1980# and data_nasterii < #05-20-1980#

Rezultatele exemplului 9 10. Care sunt codurile de departament din tabela angajati? select cod_dep from angajati

Rezultatele exemplului 10 11. Care sunt codurile de departament din tabela angajati, afiate o singur dat? select distinct cod_dep from angajati

89

Rezultatele exemplului 11 S ne reamintim... Clauza SELECT corespunde operatorului proiecie din algebra relaional, fiind utilizat pentru desemnarea listei de atribute (coloane) din rezultat. Clauza FROM este cea n care sunt enumerate relaiile din care vor fi extrase informaiile aferente consultrii. Clauza WHERE desemneaz predicatul selectiv al algebrei relaionale (condiia), relativ la atribute ale relaiilor care apar n clauza FROM.

Test de evaluare a cunotinelor 1. Care sunt clauzele principale ale unei selecii? 2. Care sunt clauzele obligatorii ale unei selecii? 3. Cte tabele putem trece la clauza FROM? Aplicaia 3: Introducere de date, selecii simple i utiliznd condiii simple i compuse.

APLICAIA 3 1. Realizai o tabel FURNIZORI cu structura tabelei FURNIZORI din ANEXA 1. 2. Introducei urmtoarele date:

90

3. Care sunt furnizorii din Braov? 4. Care sunt furnizorii din Braov sau Bucuresti? 5. Care sunt furnizorii care nu stau n Constana? 6. tergei furnizorii care sunt din Bucureti. 7. Introducei trei furnizori noi utiliznd INSERT. 8. Modificai localitatea n Cluj pentru furnizorii din Constanta.

91

Unitatea de nvare 5. Coloane, expresii

Competenele unitii de nvare Definirea unor coloane noi Realizarea de calcule pe baza unor date din baza de date.

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

O facilitate important n multe interogri SQL ine de definirea, pe lng atributele tabelelor, a unor coloane noi, pe baza unor expresii. Clauza AS ermite denumirea coloanelor calculate sau redenumirea unor coloane ale tabelelor. De exemplu dac dorim s aflm care este TVA-ul aferent unei facturi, vom avea: In tabel FACTURI avem introduse urmtoarele date:

Datele tabelei FACTURI Pentru a afia valoarea tva-ului, precum i valoarea cu TVA pentru fiecare factur vom avea selectul: select nr_factura, cod_fur, data_fact, valoare*119/100 as val_totala from facturi i vom obine Query-ul: valoare, valoare*19/100 as TVA,

92

Rezultatele seleciei

S ne reamintim...

O facilitate important n multe interogri SQL ine de definirea, pe lng atributele tabelelor, a unor coloane noi, pe baza unor expresii. Clauza AS ermite denumirea coloanelor calculate sau redenumirea unor coloane ale tabelelor.

Test de evaluare a cunotinelor 1. Cum putem s denumim coloana din rezultat? 2. Cum putem obine o coloan nou utiliznd n selecie o condiie? Aplicaia 4: Calcularea amortizrii lunare prin metoda liniar.

APLICAIA 4 1. Realizai tabela MF dup structura tabelei MF din ANEXA 1. 2. Introducei urmtoarele date:

93

3. Care sunt mijloacele fixe cu valoare mai mare de 30000? 4. Dac PER_AMORT reprezint perioada de amortizare n ani, calculati care este valoarea amortizrii lunare liniare. 5. Denumii coloana cu amortizarea lunar liniar AM_LUN. 6. Care sunt mijloacele fixe care au amortizarea lunar mai mare de 1000? 7. Modificai perioada de amortizare n 5 pentru mijloacele fixe cu codul 10004. 8. Calculai care este amortizarea lunar pentru "masina 2" 9. Calculai amortizarea lunar liniar pentru mijloacele fixe cumprate de la furnizorul c1 sau c2.

94

Unitatea de nvare 6. Funciile agregat: COUNT, SUM, AVG, MIN, MAX

Competenele unitii de nvare Utilizarea funciilor Count, sum, avg. min, max Realizarea unor noi coloane care s conin date obinute prin utilizarea funciilor de mai sus.

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Funcia COUNT contorizeaz valorile neutre ale unei coloane sau numrul de linii dintr-un rezultat al unei interogri, altfel spus, n rezultatul unei consultri, COUNT numr cte valori diferite de NULL are o coloan specificat sau cte linii sunt. De exemplu dac dorim s aflm cte facturi avem n tabela FACTURI (cte linii sunt) avem: select count (*) from facturi

Numrul de facturi din tabela FACTURI Sau de exemplu dac dorim s vedem cte facturi au valoarea peste 3000 vom avea: select count(*) from facturi WHERE valoare>3000

Numrul de facturi din tabela FACTURI cu valoare mai mare de 3000

95

Funcia SUM este una dintre cele mai utilizate funcii n aplicaiile economice, deoarece datele financiar-contabile i cele ale evidenei tehnico-operative sunt preponderent cantitative. De exemplu dac dorim s aflm care este valoarea total a facturilor din tabela FACTURI avem: select sum(valoare) from facturi

Valoarea total a facturilor din tabela FACTURI Sau de exemplu dac dorim s aflm care este valoarea total a facturilor din tabela FACTURI a furnizorului cu cod_furm "c2" avem: select sum(valoare) from facturi where cod_furn="c2"

Valoarea total a facturilor din tabela FACTURI a furnizorului cu cod_furm "c2" Funcia AVG (AVERAGE) calculeaz media aritmetic a unei coloane prin divizarea sumei valorilor coloanei respective la numrul de valori nenule ale acesteia. De exemplu dac dorim s aflm care este valoarea medie a facturilor din tabela FACTURI avem: select avg(valoare) from facturi

Valoarea medie a facturilor din tabela FACTURI Sau de exemplu dac dorim s aflm care este valoarea medie a facturilor din tabela FACTURI a furnizorului cu cod_furm "c1" avem: select avg(valoare) from facturi where cod_furn="c1"

96

Valoarea medie a facturilor din tabela FACTURI a furnizorului cu cod_furm "c1" Deosebit de utile n diverse tipuri de analiz cele dou funcii MIN i MAX determin valoarea minim i maxim pentru o coloan. Se pot folosi i pentru atribute de tip ir de caractere, caz n care elementul de comparaie este codul ASCII al caracterelor. De exemplu dac dorim care este valoare minim din tabela facturi vom avea: select min(valoare) from facturi

Valoarea minim din FACTURI Sau de exemplu dac dorim care este valoare maxim din tabela facturi vom avea: select max(valoare) from facturi

Valoarea maxim din FACTURI Dac dorim s aflm care este din punct de vedere alfabetic cod_furn cu cea mai mare valoare vom avea: select max(cod_furn) from facturi

Valoarea maxim a cod_furn din FACTURI

97

S ne reamintim...

Funcia COUNT contorizeaz valorile neutre ale unei coloane sau numrul de linii dintr-un rezultat al unei interogri, altfel spus, n rezultatul unei consultri, COUNT numr cte valori diferite de NULL are o coloan specificat sau cte linii sunt.

APLICAIA 5: Utilizarea funciilor: AVG; MIN; MAX; SUM; COUNT

APLICAIA 5 1. Realizai tabela FACTURI cu structura tabelei FACTURI din ANEXA 1. 2. Introducei n tabela FACTURI urmtoarele date:

3. Care este media valorii facturilor? 4. Care este valoarea cea mai mare a unei facturi? 5. Care este valoarea cea mai mic a unei facturi? 6. Calculai valoarea medie a valorii facturilor dar nu cu AVG. 7. Cte facturi avem n tabel? 8. Cate facturi avem n tabel cu o valoare mai mare de 5000? 9. Cte facturi avem n tabel cu o valoare ntre 4000 i 30000? (prin dou metode) 10. Care este valoare medie a facturilor cu nr. 3525 i 3522?

98

Unitatea de nvare 7. OPIUNEA ORDER BY

Competenele unitii de nvare Ordonarea datelor unei tabele dup unul sau mai multe atribute

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Una dintre caracteristicile modelului relaional este c nici ordinea atributelor, nici ordinea liniilor n relaii nu reprezint importan din punctul de vedere al coninutului informaional. ns n practic forma de prezentare a rezultatelor interogrii est important. Spre exemplu o list a localitilor dintr-o tabel este mai uor citit n ordine alfabetic. De exemplu dac dorim pentru tabela facturi s afim toate datele ordonate dup cmpul cod_furn vom avea select * from facturi order by cod_furn

Datele obinute n urma ordonrii dup cmpul cod_furn Aranjarea se poate face att cresctor (ASC) ct i descresctor (DESC). n plus se pot specifica mai multe coloane care s serveasc drept criterii suplimentare de ordonare. Astfel, la valori egale ale primului atribut, intr n aciune criteriul de "balotaj", care este al doilea atribut, etc.

99

De exemplu dac dorim s ordonm datele din facturi nti dup cod_furn i apoi dup valoare (dup acest criteriu descresctor) vom avea: select * from facturi order by cod_furn, valoare desc

Obinerea datelor ordonate dup cod_furn i apoi descresctor dup valoare


S ne reamintim...

Aranjarea se poate face att cresctor (ASC) ct i descresctor (DESC). n plus se pot specifica mai multe coloane care s serveasc drept criterii suplimentare de ordonare. Astfel, la valori egale ale primului atribut, intr n aciune criteriul de "balotaj", care este al doilea atribut, etc.

Test de evaluare a cunotinelor 1. Dup cte cmpuri putem ordona i cum?

APLICAIA 6: Ordonarea rezultatelor unei interogri.

APLICAIA 6 1. Realizai tabela MF dup structura tabelei MF din ANEXA 1. 2. Introducei urmtoarele date:

100

3. Care sunt datele din tabela MF, ordonate alfabetic dup denumire? 4. Care sunt datele din tabela MF, ordonate alfabetic dup denumire i apoi dup valoare? 5. Care este amortizarea lunar liniar pentru fiecare mijloc fix, datele fiind ordonate dup denumirea mijlocului fix? 6. Afiai denumirea mijloacelor fixe, ordonat alfabetic pentru mijloacele fixe cu o valoare mai mare de 32000 inclusiv. 7. Afiai alfabetic codurile furnizor - o singur dat. 8. Care este valoarea cea mai mare unui mijloc fix? 9. Care este valoare medie a amortizrii lunare a mijloacelor fixe? 10. Cte mijloace fixe avem?

101

Unitatea de nvare 8. OPERATORII BETWEEN, LIKE I IN

Competenele unitii de nvare Utilizarea operatorilor BETWEEN LIKE IN

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Pentru formularea predicatului de selecie, SQL permite utilizarea, pe lng >,<, >=,<=,= i a altor operatori, dintre care ne vom opri la BETWEEN (cuprins ntre), LIKE (ca i), IN (n), la care se adaug IS NULL. Operatorul BETWEEN este util pentru definirea intervalelor de valori. De exemplu dac dorim s afim doar facturile care au valori ntre 4000 i 8000 vom avea: select * from facturi where valoare between 4000 and 8000

Date afiate utiliznd condiia BETWEEN Acelai rezultat l puteam obine i cu o condiie dubl: select * from facturi where valoare >= 4000 and valoare <=8000

Date afiate utiliznd condiia dubl

102

Operatorul LIKE permite compararea unui atribut (expresii) cu un literal utiliznd o "masc" construit cu ajutorul specificatorilor multiplii * i ? . Simbolurile procent i underscore sunt denumite jokeri. Procentul substituie un ir de lungime variabil, 0-n caractere, n timp ce underscore substituie un singur caracter. Pentru exemplificare mai introducem dou facturi cu urmtoarele date:

Introducerea suplimentar a 2 facturi De exemplu dac dorim s afim care sunt toi furnizorii a cror cod_client ncepe cu litera "c" vom avea: select * from facturi where cod_furn like "c*"

Furnizorii a cror cod_furn ncepe cu litera "c" De exemplu dac dorim s afim care sunt toi furnizorii a cror cod_client ncepe cu litera "m" vom avea: select * from facturi where cod_furn like "m*"

Furnizorii a cror cod_furn ncepe cu litera "m"

103

De exemplu dac dorim s afim care sunt toi furnizorii a cror cod_client are dou caractere i al doilea caracter este 5 vom avea: select * from facturi where cod_furn like "?5"

Furnizorii a cror cod_furn are dou caractere i al doilea caracter este 5 Atunci cnd se testeaz dac valoarea unui atribut este ncadrabil ntr-o list de valori dat, n locul folosirii abundente a operatorului OR este mai elegant s se apeleze la operatorul IN. De exemplu dac dorim s afim facturile furnizorilor care au cod_furn c1, c3 i c4 avem: select * from facturi where cod_furn in ("c1","c3","c4")

Facturile furnizorilor care au cod_furn c1, c3 i c4 Sau de exemplu dac dorim s selectm facturile care au valoare de 500, 600, 5000 vom avea: select * from facturi where valoare in (500, 600, 5000)

Facturile care au valoare de 500, 600, 5000


S ne reamintim...

Pentru formularea predicatului de selecie, SQL permite utilizarea, pe lng >,<, >=,<=,= i a altor operatori, dintre care ne vom opri la BETWEEN (cuprins ntre), LIKE (ca i), IN (n), la care se adaug IS NULL.

104

Test de evaluare a cunotinelor 1. Care este diferena ntre operatorii BETWEEN i IN? 2. Cu ce poate fi substituit operatorul BETWEEN? APLCAIA 7: Utilizarea operatorilor BETWEEN; LIKE i IN n calcularea unor date pe baza tabelei ANGAJATI.

APLICAIA 7 1. Realizai tabela SALARIATI pe baza structurii tabelei ANGAJATI din ANEXA 1. 2. n tabel introducei urmtoarele date:

3. Care sunt salariaii care au salariu cuprins ntre 550 i 1000? 4. Care sunt angajaii care au salariu 600, 1000, 750, sau 300? 5. Ci angajai avem? 6. Care este salariul mediu? 7. Care este numele salariatului cu salariul cel mai mare? 8. Care sunt angajaii a cror nume ncepe cu litera M sau I? 9. Ci angajai au prenumele din trei litere? 10. Care sunt salariaii care nu au prenumele ION sau IOANA?

105

Unitatea de nvare 9. REUNIUNE, PRODUS CARTEZIAN

Competenele unitii de nvare Prezentarea operatorului UNION Realizarea produsului cartezian

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Primii trei operatori asambliti prezint operatori SQL dedicai: UNION, INTERSECT, MINUS (EXTRACT), n timp ce produsul cartezian se calculeaz automat prin simpla enumerare a celor dou tabele din clauza FROM. La reuniunea a dou tabele, SQL elimin automat liniile identice din rezultat. Dac se dorete prelucrarea tuturor liniilor celor dou relaii i implicit apariia de linii duplicate, se folosete clauza ALL (UNION ALL). De exemplu, dup aceeai structur a tabelei FURNIZORI crem tabela FURNIZORI2. Tabela FURNIZORI2 conine urmtoarele date:

Datele tabelei FURNIZORI2

106

Datele tabelei FURNIZORI Dac dorim s afim toate datele (utiliznd reuniunea) din tabelele FURNIZORI i FURNIZORI2 avem: select * from furnizori union select * from furnizori2

Toate datele (utiliznd reuniunea) din tabelele FURNIZORI i FURNIZORI2 SQL nu pune la dispoziie vreun operator special dedicat produsului cartezian. Produsul cartezian se realizeaz prin simpla enumerare a tabelelor n clauza FROM.

107

De exemplu dac dorim s realizm produsul cartezian ntre tabelele FACTURI i FURNIZORI avem: select * from facturi, furnizori

Produsul cartezian al tabelelor FACTURI i FURNIZORI


S ne reamintim...

Primii trei operatori asambliti prezint operatori SQL dedicai: UNION, INTERSECT, MINUS (EXTRACT), n timp ce produsul cartezian se calculeaz automat prin simpla enumerare a celor dou tabele din clauza FROM.

Test de evaluare a cunotinelor 1. Ce reprezint operatorul UNION? 2. Cum se realizeaz produsul cartezian? APLICAIA 8: Evidena mijloacelor fixe ale unei ntreprinderi

APLICAIA 8 1. Realizai tabela MF1 i MF2 dup structura tabelei MF din ANEXA 1.
108

2. Introducei urmtoarele date:

Datele tabelei MF1

Datele tabelei MF2 3. Care sunt datele din tabela MF1, ordonate alfabetic dup denumire? 4. Care sunt datele din tabela MF2, ordonate alfabetic dup denumire i apoi dup valoare? 5. Afiai datele celor dou tabele ntr-un query 6. Care sunt mijloacele fixe ce se gsesc n MF1 i nu se gsesc n MF2? 7. Care sunt mijloacele fixe ce se gsesc i n MF1 i n MF2? 8. Care este valoarea medie a mijloacelor fixe din MF1? 9. Care este valoarea medie a mijloacelor fixe din MF2 a cror nume ncepe cu litera C? 10. Care sunt mijloacele fixe din tabela MF2 furnizate de furnizorii cu codurile: c1, c2, c4, c5,c8?

109

Unitatea de nvare 10. THETA I ECHI-JONCIUNEA

Competenele unitii de nvare Realizarea unei legturi ntre dou sau mai multe tabele Utilizarea condiiilor n echi-jonciune

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

SQL nu prezint clauze sau operatori speciali pentru jonciune, jonciunea fiind o combinaie ntre produs cartezian i selecie. Deci pentru theta-jonciunea dintre dou relaii R1 i R2 avem: select * from R1, R2 where R1.A>=R2.E unde:

R1 A 20 30 40

B C XYZ 30 XXZ 20 YYX 25

R2 C 25 40 30

D E XYZ 30 YYX 25 XXZ 40

iar pentru echi-jonciune avem: select * from R1, R2 where R1.A=R2.E Varianta cu INNER JOIN (jonciune intern) este: select * from R1 inner join R2 on R1.A>=R2.E respectiv select * from R1 inner join R2 on R1.A=R2.E Pentru urmtorul exemplu utilizm urmtoarele tabele: FURNIZORI, FACTURI cu urmtoarele date:

110

Se cere s de afieze pentru fiecare factur numele furnizorului. select facturi.*, furnizori.nume_furn facturi.cod_furn=furnizori.cod_furn from facturi, furnizori where

Numele furnizorului pentru fiecare factur Acelai rezultat se poate obine utiliznd INNER JOIN:
111

select facturi.*, furnizori.nume_furn from facturi inner join furnizori ON facturi.cod_furn=furnizori.cod_furn

Numele furnizorului pentru fiecare factur Dac dorim s afim numele furnizorului pentru fiecare factur numai pentru furnizorul cu cod_furn "c1" vom avea: select facturi.*, furnizori.nume_furn from facturi, facturi.cod_furn=furnizori.cod_furn and facturi.cod_furn="c1" furnizori where

Numele furnizorului pentru fiecare factur numai pentru furnizorul cu cod_furn "c1"
S ne reamintim...

SQL nu prezint clauze sau operatori speciali pentru jonciune, jonciunea fiind o combinaie ntre produs cartezian i selecie. Deci pentru theta-jonciunea dintre dou relaii R1 i R2 avem: select * from R1, R2 where R1.A>=R2.E

Test de evaluare a cunotinelor 1. De ce dou tabele sunt legate logic prin valori? 2. Care este condiia necesar pentru echi-jonciune?

112

APLICAIA 9: Evidena salariailor dintr-o firm

APLICAIA 9 1. S se realizeze tabelele ANGAJATI i DEPARTAMENTE dup structura tabelelor ANGAJATI i DEPARTAMENTE din ANEXA 1 2. Introducei n tabele urmtoarele date:

3. Afiai eful pentru fiecare angajat. 4. Care sunt angajaii care lucreaz n Braov? 5. Ci angajai lucreaz n Bucureti? 6. Care este numele angajatului cu salariul maxim? 7. Care este fondul de salarii pentru fiecare cod_dep? 8. Care sunt angajaii angajai dup 01/01/1980? 9. Care sunt angajaii care lucreaz la departamentul marketing? 10. Ci subalterni are Vlad? 11. Care este salariul mediu pentru departamentul management? 12. Care sunt angajaii a cror ef ncepe cu litera "A"? 13. Care sunt angajaii care lucreaz n Braov sau Bucureti?

113

Unitatea de nvare 11. GRUPAREA TUPLURILOR: GROUP BY I HAVING

Competenele unitii de nvare Utilizarea grupurilor Utilizarea condiiilor pentru grupuri

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

Clauza GROUP BY formeaz grupe (grupuri) de tupluri ale unei relaii, pe baza valorilor comune ale unui atribut. n frazele SELECT formulate pn n acest paragraf, prin intermediul WHERE au fost selectate tupluri ale tabelei. Prin asocierea unei clauze HAVING la GROUP BY este posibil selectare anumitor grupuri de tupluri ce ndeplinesc un criteriu, valabil numai la nivel de grup (nu i la nivel de linie). Clauza unei fraze SELECT ce conine aceast clauz se obine prin regruparea tuturor liniilor din tabelele enumerate n FROM, extrgndu-se cte o apariie pentru fiecare valoare distinct a coloanei/grupului de coloane. Formatul general este: select coloan1, coloan2,...,coloan m from tabel group by coloan_de_regrupare De exemplu dac dorim s vedem care este valoarea total a facturilor pentru fiecare cod_furn vom avea: select cod_furn, sum(valoare) from facturi group by cod_furn

Valoarea total a facturilor pentru fiecare cod_furn

114

Cea mai simpl definiie a clauzei HAVING este: clauza HAVING este WHERE-ul ce opereaz la nivel de grupuri. Dac WHERE acioneaz la nivel de tuplu, selectnd acele linii care ndeplinesc o condiie specificat, HAVING permite specificarea unor condiii de selecie care se aplic tuplurilor de linii create prin GROUP BY. Din rezultat sunt eliminate toate grupurile care nu satisfac condiia specificat. De exemplu dac dorim s vedem care este valoarea total a facturilor pentru cod_furn egal cu "c1" vom avea: select cod_furn, sum(valoare) from facturi group by cod_furn having cod_furn="c1"

Valoarea total a facturilor pentru cod_furn egal cu "c1"

S ne reamintim...

Clauza GROUP BY formeaz grupe (grupuri) de tupluri ale unei relaii, pe baza valorilor comune ale unui atribut. n frazele SELECT formulate pn n acest paragraf, prin intermediul WHERE au fost selectate tupluri ale tabelei. Prin asocierea unei clauze HAVING la GROUP BY este posibil selectare anumitor grupuri de tupluri ce ndeplinesc un criteriu, valabil numai la nivel de grup (nu i la nivel de linie).

Test de evaluare a cunotinelor Cnd se utilizeaz GROUP BY? Care este definiia condiiei HAVING? APLICAIA 10: Situaii de grup la nivelul salariailor

APLICAIA 10 1. S se realizeze tabelele ANGAJATI i DEPARTAMENTE dup structura tabelelor ANGAJATI i DEPARTAMENTE din ANEXA 1 2. Introducei n tabele urmtoarele date:

115

3. Afiai eful pentru fiecare angajat. 4. Care este salariul total pentru fiecare departament? 5. Care este salariul total pentru departamentul MANAGEMENT? 6. Care este suma total a salariilor din departamentele management i contabilitate? 7. Care este numrul de salariai din fiecare departament? 8. Care este departamentul cu angajaii cei mai muli? 9. Care este eful departamentului cu cei mai muli angajai? 10. Ci angajai are Vlad?

116

Unitatea de nvare 12. REALIZAREA FORMULARELOR

Competenele unitii de nvare Utilizarea formularelor Utilizarea generatoarelor wizard pentru crearea formularelor Rularea formularelor

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

UTILIZAREA FORMULARELOR Formularele sunt ecrane cu ajutorul crora se pot introduce date n tabele sau se pot lansa diferite comenzi i aplicaii. De obicei, formularele conin casete n care se poate scrie text, butoane prin care se pot lansa comenzi sau aplicaii, elemente de tip list pentru alegerea unor valori sau opiuni de tip check-box. Pentru facilitarea lucrului cu formulare, programul dispune de un generator de tip wizard prin care se pot crea formulare de introducere a datelor n tabele. Formularele pot fi fcute att pe baza unor tabele existente ct i pe baza unor interogri deja definite (QUERIES). Pentru realizarea formularelor din panoul de comand se alege opiunea FORMS din cadrul meniului OBJECTS.

117

Alegerea opiunii FORMS

UTILIZAREA GENERATOARELOR FORMULARELOR

WIZARD

PENTRU

CREAREA

Pentru utilizarea generatorului de formulare n panoul de comand se alege opiunea CREATE FORM BY USING WIZARD. Dac utilizatorul dorete s creeze formulare manual va alege opiunea CRAETE FORM IN DESIGN VIEW.

Utilizarea generatorului de formulare In fereastra FORM WIZARD primul pas n crearea formularului este alegerea tabelei n care vor fi introduse datele. Tabela dorit se selecteaz prin opiunea TABLES / QUERIES.

118

Selectarea tabelei Cel de-al doilea pas este selectarea cmpurilor n care se vor introduce date. Selectarea cmpurilor poate fcut separat pentru fiecare cmp (oferind posibilitatea ca unul sau mai multe cmpuri s lipseasc) sau pentru toate cmpurile.

119

Selectarea cmpurilor dorite n formular Cmpurile selectate se mut n ecranul din partea dreapt. n exemplul de mai jos au fost selectate toate cmpurile. Se vor selecta elementele dorite dup care se continu prin apsare tastei NEXT.

120

Cmpurile selectate n continuare se alege modul de afiare a cmpurilor n formular (pe coloane, tabular, foaie de lucru, etc.). Se va selecta tipul dorit dup care se continu prin apsare tastei NEXT.

Selectarea modului de afiare Din punct de vedere grafic sunt disponibile mai multe tipuri de formulare. Se va selecta tipul dorit dup care se continu prin apsare tastei NEXT.

121

Alegerea stilului formularului Ultimul pas n realizarea formularelor este denumirea formularului creat. Implicit numele este cel al tabelei n care vor fi scrise datele.

Denumirea formularului

122

RULAREA FORMULARULUI Pentru a rula un formular se da dublu click pe numele sau n fereastra de comand.

Rularea formularului ANGAJATI

Test de evaluare a cunotinelor Pentru ce se utilizeaz formularele? Care sunt pai necesari n conceperea unui formular? APLICAIA 11: Introducerea datelor n tabele cu ajutorul formularelor

123

APLICAIA 11 1. S se realizeze tabelele ANGAJATI i DEPARTAMENTE dup structura tabelelor ANGAJATI i DEPARTAMENTE din ANEXA 1 2. Realizai formulare pentru introducerea datelor n cele dou tabele 3. Introducei n tabele urmtoarele date:

4. Care este salariul total pentru fiecare departament? 5. Care este salariul total pentru departamentul MANAGEMENT? 6. Care este suma total a salariilor din departamentele management i contabilitate? 7. Care este numrul de salariai din fiecare departament? 8. Care este departamentul cu angajaii cei mai muli? 9. Care este eful departamentului cu cei mai muli angajai? 10. Ci angajai are Vlad?

124

Unitatea de nvare 13. REALIZAREA RAPOARTELOR

Competenele unitii de nvare Rolul rapoartelor Modul de realizarea a rapoartelor

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

UTILIZAREA RAPOARTELOR Rapoartele sunt utilizate pentru afiarea estetic a datelor dintr-o tabel sau query. Primul pas n realizarea unui raport l reprezint selectarea opiunii REPORTS din cadrul meniului OBJECTS. i pentru realizarea rapoartelor avem la dispoziie posibilitatea realizrii manual sau n mod asistat de program cu ajutorul generatorului de tip wizard.

Selectarea opiunii REPORTS

125

Pentru facilitarea lucrului vom utiliza generatorul de rapoarte. Acest lucru se face cu ajutorul opiunii CREATE REPORT BY USING WIZARD.

Selectarea generatorului de rapoarte n realizarea raportului primul, n fereastra REPORT WIZARD trebuie selectat tabela pentru care se vor afia datele.

Selectarea tabelei Similar crerii formularelor, trebuiesc precizate cmpurile care vor fi afiate din tabela deja selectat.

126

Selectarea cmpurilor din tabel Pentru cmpurile selectate se poate face o grupare, n momentul afirii datelor dup un cmp.

Gruparea datelor dup un cmp Totodat datele ce vor fi afiate pot fi ordonate dup unul sau mai multe criterii. Aceste criterii sunt alfabetice sau invers-alfabetice, cresctoare sau descresctoare, n funcie de tipul cmpului text sau numeric.

127

Selectarea criteriilor de ordonare a datelor Urmtorul pas este alegerea unei forme de prezentare a datelor, de aliniere a informaiilor i formatul paginii.

Alegerea formatului de prezentare a datelor Tot n legtur cu forma de afiare a datelor este i stilul raportului. Pentru alegerea stilului se selecteaz din meniul din partea din dreapta opiunea dorit. Aceast opiune este doar din punct de vedere estetic.

128

Selectarea stilului raportului Ultimul pas n realizarea raportului este denumirea raportului realizat. i n acest caz, denumirea implicit este cea a tabelei din care sunt luate datele. Dup tastarea noului nume se tasteaz FINISH. n acest moment raportul este gata i poate fi rulat.

Denumirea raportului

129

EXECUIA RAPORTULUI Pentru a rula un raport se da dublu click pe numele sau n fereastra de comand.

Lansare n execuie a raportului Raportul odat lansat este afiat pe ecran. Poate fi utilizat funcia zoom pentru mrire sau micorare. Totodat raportul poate fi i listat.

Raportul obinut Test de evaluare a cunotinelor Ce este un raport? Cum se realizeaz un raport? APLICAIA 13: Utilizarea rapoartelor

130

APLICAIA 13 1. Realizai tabela SALARIATI pe baza structurii tabelei ANGAJATI din ANEXA 1. 2. n tabel introducei urmtoarele date:

3. Realizai un raport pentru afiarea tuturor salariailor 4. Realizai un raport pentru afiarea tuturor salariailor, grupai pe departamente i ordonai alfabetic dup nume. 5. Realizai un raport pentru afiarea numelui salariailor si a departamentului unde lucreaz.

131

Unitatea de nvare 14. CONSTRUCIA PAGINILOR WEB PENTRU LUCRUL CU BAZE DE DATE

Competenele unitii de nvare Rolul formularelor de tip pagina web Realizarea paginilor web cu formulare pentru introducerea datelor

Durata medie de parcurgere a primei uniti de nvare este de 2 ore.

ROLUL PAGINILOR WEB CU FORMULAR PENTRU INTRODUCEREA DATELOR Bazele de date i aplicaiile realizate n ACCESS sunt foarte mult utilizate pentru aplicaii web. n consecin, pentru a putea introduce date n tabelele ACCESS este nevoie de pagini web ce pot fi publicate pe un server de web.

REALIZAREA PAGINILOR WEB La fel ca i n cadrul celorlalte module primul pas n realizare l constituie selectarea opiunii PAGES din cadrul meniului OBJECTS.

Selectarea opiunii PAGES


132

i pentru crearea formularelor n pagini web avem la dispoziie un generator de tip wizard. Pornirea generatorului se face prin selectarea opiunii CREATE DATA ACCESS PAGE BY USING WIZARD. La fel ca i n cazul formularelor i rapoartelor trebuie selectat tabela i cmpurile care vor apare in pagin.

Selectarea tabelei i a cmpurilor Datele pot fi grupate dup unul din cmpurile tabelei care vor apare n pagin. Aceast grupare nu este ns obligatorie.

133

Gruparea datelor dup un cmp n continuare, tot opional se pot alege cmpurile dup care se va face ordonarea datelor. Aceste criterii de ordonare sunt alfabetice sau invers-alfabetice, cresctoare sau descresctoare, n funcie de tipul cmpului text sau numeric.

Ordonarea datelor Ultimul pas n realizarea paginii este denumirea titlului paginii realizate. i n acest caz, denumirea implicit este cea a tabelei din care sunt luate datele. Dup tastarea noului nume se tasteaz FINISH.

134

Titlul paginii Pentru deschiderea paginii se alege opiunea OPEN THE PAGE.

Opiunea OPEN THE PAGE Vizualizarea paginii permite introducerea datelor asemntor unui formular obinuit.

135

Vizualizarea paginii Pentru salvarea paginii este necesar nchiderea acesteia i denumirea sa.

Salvarea paginii Atenie deoarece pagina creat este o pagin web trebuie s aib extensia HTM, HTML sau ASP. Vizualizarea paginii creat ca formular de introducere a datelor n Access poate fi fcut similar cu orice pagina web. Test de evaluare a cunotinelor La ce folosesc paginile web create n Access? Care sunt paii de realizarea a unei astfel de pagini?

136

Tem de control 1. Realizai o aplicaie de calcul a salariilor ntr-o firm, plecnd de la salariul brut i reineri, ajungnd la salariul net pentru fiecare angajat. 2. Realizai o aplicaie de eviden a crilor dintr-o bibliotec. Se pornete de la faptul c exist mai multe cari identice, grupate pe domenii, ce pot fi imprumutate de peroane abonate la bibliotec. 3. Realizai o aplicaie de eviden a stocurilor dintr-un depozit de materiale de construcii. Se va ine seama de intrri i iei pentru calculul stocului final.

137

Anexa 1
Tabele utilizate

Tabela: angajati cmp cod (CP) nume prenume data_nasterii sal_brut cod_dep tip numeric text text data numeric text

Tabela: departamente cmp cod_dep (CP) den localitate sef telefon tip text text text text numeric

Tabela: facturi cmp nr_factura (CP) cod_furn data_fact valoare tip numeric text data numeric

Tabela: furnizori cmp cod_furn (CP) nume_furn adresa localitate tip text text text text

138

Tabela: mf cmp cod_mf (CP) den valoare per_amort cod_furn tip numeric text numeric numeric text

139