Informatica Manageriala - Curs

117
Ioan Mocian INFORMATICĂ MANAGERIALĂ (curs) 2010

Transcript of Informatica Manageriala - Curs

Page 1: Informatica Manageriala - Curs

Ioan Mocian

INFORMATICĂ MANAGERIALĂ (curs)

2010

Page 2: Informatica Manageriala - Curs

3

Cuprins

Cuvânt înainte

Capitolul 1. Elemente introductive ......................................................... 7

Informaţia şi rolul ei în procesul managerial ....... ............................... 7

Noţiuni de bază legate de management ................................................ 8

Sistem informaţional şi sistem informatic ............................................ 10

Sistem informaţional ....................................................................... 11

Sistem informatic ............................................................................. 14

Componentele unui sistem informatic ............................................ 15

Structura unui SIM .......................................................................... 15

Consideraţii privind aplicaţiile informatice manageriale ................... 19

Capitolul 2. Noţiuni despre crearea aplicaţiilor informatice

manageriale .............................................................................................. 23

Punerea problemei ................................................................................ 23

Aplicaţii informatice pentru departamente ........................................... 24

Etapele care trebuie parcurse pentru crearea aplicaţiilor ………….. 25

Concluzii ........................................................................................... 27

Sisteme informatice integrate ............................................................... 29

Caietul de sarcini .............................................................................. 30

Implementarea sistemelor informatice integrate .............................. 31

Concluzii .......................................................................................... 33

Capitolul 3. Dezvoltarea aplicaţiilor manageriale în mediul Excel ... 35

Elemente de bază ................................................................................ 35

Funcţii Excel ....................................................................................... 36

Aplicaţie cu funcţii Excel ............................................................... 44

Funcţii utilizator .............................................................................. 47

Dezvoltarea aplicaţiilor Excel cu limbajul VBA ................................ 49

Consideraţii teoretice ...................................................................... 49

Mediul de dezvoltare VBA-Excel ................................................. 49

Crearea obiectelor pe o foaie Excel ................................................ 50

Evenimente, proprietăţi, metode ................................................... 53

Exemple de aplicaţii VBA-Excel ................................................... 55

Circulaţia printre foile unui Workbook ................................ 55

Urmărire cheltuieli ................................................................ 60

Observaţii privind aplicaţiile VBA Excel ...................................... 72

Concluzii .......................................................................................... 80

Page 3: Informatica Manageriala - Curs

4

Capitolul 4. Dezvoltarea aplicaţiilor manageriale cu Google Docs .... 81

Elemente de bază .................................................................................. 81

Crearea aplicaţiilor de calcul tabelar .................................................... 88

Generalităţi ...................................................................................... 88

Studiu de caz. Aplicaţia ”Note studenţi” ........................................ 90

Perspective de folosire a produsului Google Docs într-o firmă .......... 97

Capitolul 5. Aplicaţii informatice manageriale în WEB .................... 99

Elemente de bază ................................................................................ 99

Ce este o reţea? ............................................................................... 100

Avantajele folosirii reţelelor ........................................................... 101

Tipuri de reţele .............................................................................. 104

Noţiuni despre limbajul Visual Basic.NET ........................................ 107

Studiu de caz. Aplicaţia SIM pentru gestionarea unei catedre .......... 112

Caietul de sarcini ........................................................................... 112

Baza de date ................................................................................. 113

Securitatea aplicaţiei ..................................................................... 114

Funcţionarea aplicaţiei .................................................................. 115

Concluzii .......................................................................................... 117

Page 4: Informatica Manageriala - Curs

5

Cuvânt înainte

Domeniul informaticii manageriale este unul deosebit de vast şi greu de

definit. Dacă ne luăm după etimologia denumirii, ar însemna „informatică

pentru manageri”, dar şi această denumire este prea generală. Se ştie că

managerii sunt persoane de conducere de pe diferite trepte ierarhice,

începând cu top managerii şi terminând cu managerii de diferitelor

departamente. De asemenea, firmele în care lucrează aceşti manageri, diferă

între ele, de la firme mici până la companii multinaţionale.

Întrebarea pe care şi-a pus-o autorul acestei lucrări este cărui tip de manager

să facă referinţă, având în vedere că studenţii cărora se adresează, celor de la

inginerie economică, sunt potenţiali viitori manageri de toate categoriile.

Ideea a fost să se abordeze probleme de informatică managerială, cât mai

utile şi cât mai accesibile. Astfel, s-a plecat de la faptul că managerii iau

decizii pe baza unor informaţii actualizate, care nu pot fi obţinute în timp

real decât de la aplicaţiile informatice de tip managerial. Prin urmare, ei sunt

aceea care dau specificaţiile sau concep astfel de aplicaţii, fiind în final

principalii beneficiari.

Plecând de la aceste premise, lucrarea a fost structurată pe 5 capitole, după

cum urmează:

Capitolul 1 – îşi propune să definească noţiunile folosite în lucrare, cum ar

fi manager, sistem informaţional, sistem informatic, aplicaţie informatică

managerială. De asemenea, sunt prezentate câteva medii de dezvoltare a

unor astfel de aplicaţii, în principal cele folosite în lucrare.

Capitolul 2 - se ocupă de aspecte privind crearea aplicaţiilor informatice

manageriale, atât cele de tip departamental cât şi cele de tip sistem

informatic. Sunt scoase în evidenţă principalele problemele întâlnite în

crearea acestora – din punctul de vedere al managerului şi a echipei sale, cei

care dau specificaţiile şi vor fi utilizatorii finali.

Capitolul 3 - acest capitol îşi propune să prezinte aplicaţii informatice

manageriale care se pot face în mediul Excel, plecând de la premisa că

acesta conţine multe facilităţi uşor de abordat chiar de către persoane mai

puţin experimentate în programare, dar cu viziuni manageriale clare. Sunt

prezentate funcţii Excel native şi create de utilizator, noţiuni despre limbajul

VBA-Excel şi câteva aplicaţii concrete care pot fi luate ca modele.

Page 5: Informatica Manageriala - Curs

6

Capitolul 4 - este dedicat iniţierii şi creării aplicaţiilor în GOOGLE DOCS,

un pachet de programe care lucrează în Internet, oferit gratuit de către

compania Google şi care este folosit de către multe firme din lume, mai

puţin în România pentru că nu este prea cunoscut. Studenţii creează în

cadrul orelor de laborator propriile aplicaţii de tip managerial, ceea ce îi va

ajuta la viitorul loc de muncă.

Capitolul 5 - este dedicat aplicaţiilor informatice manageriale în WEB. Sunt

prezentate noţiuni de bază despre reţelele de calculatoare şi despre

conceptele folosite în astfel de aplicaţii. Aceste aplicaţii sunt tot mai

răspândite, de aceea a fost creată o aplicaţie în VB.NET cu baze de date

SQL Server pentru uzul studenţilor. Ea are toate ingredientele unei aplicaţii

reale, cu grupuri de utilizatori, drepturi etc.

Exemplele prezentate în lucrare sunt rodul experienţei practice a autorului,

majoritatea fiind adaptări ale unor aplicaţii reale. Acestea pot fi folosite ca

modele de aplicaţii în cadrul proiectelor de diplomă, sau în aplicaţii concrete

la locul de muncă al viitorilor absolvenţi.

Lucrarea se adresează studenţilor facultăţilor de inginerie economică, dar

este utilă şi managerilor din unităţile economice, mai ales celor mici şi

mijlocii. Majoritatea sistemelor informatice integrate ale marilor companii,

cum ar fi, de exemplu sistemul SAP, au ieşiri în format Excel ceea ce dă

posibilitate utilizatorilor din departamente să-şi creeze propriile aplicaţii

dedicate din care să rezulte situaţii şi rapoarte specifice, cu forţe proprii.

Dacă această lucrare a reuşit să vă îmbogăţească bagajul de cunoştinţe

generale, dacă aţi reuşit să înţelegeţi cum se poate crea o aplicaţie

informatică managerială, dacă aţi reuşit să creaţi o aplicaţie cât de simplă,

dacă aţi reuşit să publicaţi pe Internet cel puţin un document cu Google

Docs , înseamnă că efortul depus pentru scrierea ei nu a fost zadarnic.

Tg. Mureş, 9 martie 2010 Autorul

Page 6: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

7

Capitolul 1. Elemente introductive

Acest capitol îşi propune să definească conceptele de bază folosite de

această disciplină. Se va discuta despre informaţie, management, manageri,

sistem informaţional şi sistem informatic.

Informaţia şi rolul ei în procesul managerial

Disciplina Sisteme informatice în management este una din disciplinele

importante care completează pregătirea unui inginer economic. Această

specializare pregăteşte viitori manageri pentru sectoarele industriale. Un

manager modern trebuie să conducă activităţile economice şi să i-a decizii

pe baza unor informaţii prompte şi reale. Obţinerea acestor informaţii nu

este uşoară, ţinând cont de volumul şi complexitatea lor.

Disciplina SIM pune la îndemâna viitorului manager, metode moderne de

achiziţionare a informaţiilor necesare luării deciziilor în activitatea de

organizare, conducere şi control. Managerul trebuie să identifice

informaţiile de care are nevoie şi să organizeze sistemul informatic cu

ajutorul căruia le poate obţine atunci când are nevoie de ele. Pe lângă

metodele folosite, vor fi prezentate şi echipamentele şi softurile necesare

unui sistem informatic necesar managerului.

Se va prezenta în detaliu structura unui sistem informatic pentru

management, cum se proiectează, iar în cadrul aplicaţiilor se vor face studii

de caz pe unele probleme concrete din activitatea practică. La terminarea

cursului studenţii vor trebui să aibă capacitatea de a concepe un sistem

informatic pentru managementul unei organizaţii economice de mărime cel

puţin medie.

Page 7: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

8

Noţiuni de bază legate de management

Managementul este un termen de origine engleză care desemnează ştiinţa

conducerii organizaţiilor socio-economice. Desigur, există mai multe

definiţii ale acestui termen dar toate se pot rezuma la aceasta definiţie.

Fiecare unitate productivă sau organizaţie socială are o structură bine

definită, precum şi obiective foarte clare.

Managerii sunt experţii care organizează şi coordonează unităţile

economice si organizaţiile sociale pentru a-şi atinge scopul pentru care au

fost create.

Managerii se clasifică după nivel în :

manager de primă linie - managerul de nivelul cel mai scăzut , care

are în subordine numai personalul operativ de a cărui activitate

răspunde direct (şefii de echipă, şefii de atelier, şef de raion, de

vânzări, etc).

manager mediu - managerul direct răspunzător de activitatea altor

manageri, el fiind la rândul său subordonat managerilor de vârf (ex.

şefii de magazine, şefii de servicii, compartimente, etc ).

manager de vârf sau top manager - răspunde de întreaga activitate a

organizaţiei şi mai ales de strategia ei. În această categorie, funcţie

de profilul organizaţiei, intră directorii generali sau executivi şi

administratorii organizaţiilor, miniştrii, primarii, etc.

Orice manager, în activitatea sa, ia tot timpul decizii.

A lua decizii este procesul de dezvoltare a unui set de alternative posibile şi

alegerea unei alternative din set. Luarea deciziilor de către manageri,

presupune 4 etape :

(1) identificarea problemei sau oportunităţii ;

(2) generarea alternativelor ;

(3) selectarea unei alternative ;

(4) implementarea soluţiei ;

Orice organizaţie are nevoie, pentru funcţionare, de resurse. Aceste resurse

se clasifică în resurse vizibile, formate din resurse materiale, financiare şi

umane, precum şi resurse invizibile, care sunt cele informaţionale. În ultima

vreme informaţia a devenit una dintre cele mai importante componente ale

resurselor organizaţiilor socio-economice.

Page 8: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

9

Informaţia este un ansamblu de date special organizate. De multe ori

informaţia este confundată cu datele, deşi între ele există o mare diferenţă.

Este meritul managerului de a organiza datele în aşa fel încât să devină

informaţii valoroase. În multe întreprinderi se manipulează un mare volum

de date dar foarte puţine informaţii.

Informaţia are 3 aspecte esenţiale şi anume :

aspectul sintactic;

aspectul semantic;

aspectul pragmatic;

Aspectul sintactic se referă la sistemul de semne şi regulile de reuniune a

acestora în construcţii utilizate pentru reprezentarea informaţiei în procesul

culegerii, transmiterii şi prelucrării acesteia.

Sub aspect semantic informaţia poate fi caracterizată ca semnificaţie intimă

a datelor. Sensul informaţiei la acest nivel este corespondenţa dintre o dată

şi obiectul real sau situaţia pe care o reprezintă aceasta dată.

Apectul pragmatic este cel mai concret, singurul care raportează informaţia

la scopurile observatorului .

Obiectul pragmaticii include într-o anumită măsură problemele de

conducere. Procesul de conducere este fenomenul prin care informaţiile se

transpun în acţiune prin intermediul deciziilor. Prin urmare, conţinutul

conducerii este determinat în mare măsură de sistemul de informare , care

constituie baza pentru luarea deciziilor.

Trebuie subliniat faptul că astăzi, aspectul pragmatic este neformalizabil,

ceea ce se reflectă în bună parte în faptul că actul managerial de utilizare a

informaţiilor este considerat o “artă“. De aceea, se pot vedea mulţi manageri

care au informaţii, se spune despre ei că sunt “tobă de carte“, dar nu le pot

traduce în decizii legate de situaţii practice, concrete. Competenţa

managerului joacă aici un rol important.

Managerul trebuie să fie înzestrat cu cunoştinţe temeinice care să-l ajute să

obţină informaţii derivate din alte informaţii pe bază de raţionamente. Prin

urmare putem defini noţiunea de cunoştinţă.

Cunoştinţa (sau cunoştinţele) este capacitatea de a evalua informaţia într-un

anumit sens sau scop. A avea cunoştinţe sau abilitatea de a efectua sarcini

Page 9: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

10

complexe, presupune mai mult decât a avea o lista de instrucţiuni necesare,

se cere abilitatea manipulării informaţiilor sau sarcinilor.

Trebuie remarcat faptul că nu orice dată sau informaţie creează cunoştinţe.

Astfel, unele informaţii sunt deja între cunoştinţele receptorului şi deci nu

generează informaţii noi. De exemplu, dacă o persoană este expert în

domeniul reprezentării informaţiilor şi datelor, s-ar putea ca acest paragraf

nu-i va crea prea multe cunoştinţe noi.

Sistem informaţional şi sistem informatic

Prin sistem se înţelege o mulţime de părţi legate între ele care operează ca

un întreg pentru realizarea unui scop comun.

O organizaţie economică poate fi privită ca un sistem. După natura lor,

legăturile pot fi materiale sau informaţionale. Nici un sistem nu se poate

găsi izolat, el funcţionând într-un anumit mediu. Un sistem se poate

descompune în subsisteme având diferite grade de detaliere. Deci, în

particular putem considera orice firmă (agent economic), drept un sistem ce

are ca intrări materiile prime, ca ieşiri produsele finite, iar funcţionarea va fi

definită de regulile şi procedeele tehnologice din firmă, conform figurii 1.1.

Page 10: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

11

Fig. 1.1. Sistemul unei organizaţii economice

Peste sistemul organizatoric se suprapune un sistem de circulaţie a

informaţiilor pe care îl vom numi sistem informaţional.

Sistem informaţional

Sistemul informaţional este un ansamblu de fluxuri şi circuite de informaţii

care asigură conexiunea informaţională dintre sistemul decizional (de

conducere) şi cel operaţional (condus).

Fluxul informaţional este compus din informaţii strategice, tactice şi

operative.

Ca orice sistem, şi sistemul informaţional are intrări şi ieşiri. Intrările în

sistemul informaţional sunt formate din date interne şi externe. Ieşirile sunt

formate din date asemănătoare cu cele externe, ele fiind formate din rapoarte

şi fişiere necesare conducerii (fig. 1.2).

Feedback (buclă inversă)

Resurse: - umane;

- materiale; - echipamente; - financiare;

- informaţionale;

Atribute manageriale

şi tehnologice: - planificare;

- organizare;

- conducere;

- control;

- tehnologie;

Ieşiri: -produse şi servicii;

-profit sau pierderi;

Procese de transformare Intrări Ieşiri

Page 11: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

12

Feedback (control)

Fig. 1.2. Sistemul informaţional

Datele de intrare se găsesc în fişiere care provin de la diferite

compartimente ale unei firme. Prelucrarea datelor constă în sortări, calcule,

filtrări şi aranjări de date pentru a putea fi uşor interpretate rezultatele pe

care le reprezintă. Sunt foarte dese cazurile când în informatica economică

se insistă foarte mult pe prelucrare, fără a se insista suficient pe calitatea

datelor de intrare, ceea ce duce la nişte rezultate total eronate, cu grave

implicaţii în activitatea firmei.

O altă eroare în informatica de afaceri este “procesarea hârtiilor”. Astfel

apar cazuri când managerul general care este nevoit într-o lună să citească

zeci şi zeci de rapoarte, nemaiavând timp pentru problemele reale de

management. În felul acesta managerii ajung foarte repede la una sau mai

multe din situaţiile:

primesc din ce în ce mai multe informaţii pe care nu le mai

stăpânesc;

informaţia nu-i croită pentru necesităţile lor;

informaţia nu este prezentată într-o formă care să le fie accesibilă;

informaţia nu este livrată la timp;

În multe din întreprinderile de la noi există un adevărat război între

manageri şi oficiile de calcul sau departamentele de prelucrare a datelor.

Motivele acestui război sunt multiple, principalul fiind însă faptul că oficiile

de calcul nu acceptă să-şi piardă poziţiile şi monopolul asupra informaţiei.

Managerii, în urma extinderii PC -urilor, au impresia că-şi pot rezolva

singuri problemele de prelucrare a datelor. Acest lucru a determinat mulţi

manageri, mai ales cei de nivel mediu, să-şi construiască mici baze de date

Procese

Prelucrări

Ieşiri

Memorie

de date

Intrări

date

Page 12: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

13

legate de activitatea lor, baze care sunt de obicei paralele bazelor de date

generale ale întreprinderilor, ceea ce, după cum se poate vedea din

numeroase studii de caz, nu este întotdeauna indicat, deoarece reapar

problemele din cazul fişierelor clasice cum ar fi: securitatea, validarea

datelor, coerenţa, redundanţa, blocaj de date, etc., aspecte binecunoscute din

teoria bazelor de date. Înaintea unei astfel de decizii, este foarte important să

se studieze şi să se ia în considerare sistemul de gestiune a datelor deja

existente în societate, pentru a nu perturba activitatea societăţii.

Un exemplu cât se poate de elocvent citat în multe studii de caz este cel al

unei societăţi comerciale din Marea Britanie, unde managerul serviciului de

vânzări, tânăr foarte ambiţios, a schimbat sistemul de codificare în aşa fel ca

să fie potrivit activităţii sale. Preşedintele firmei care avea sub

responsabilitate activitatea de calcul nu a sesizat pericolul. Rezultatul final a

fost că nu s-a putut efectua contabilitatea deoarece s-au pierdut datele

necesare. Rezultă că aceste probleme sunt deosebit de periculoase şi trebuie

să li se acorde o atenţie mărită.

Concluzionând, se poate spune că sistemul informaţional este un set de

proceduri de colectare, regăsire, manipulare şi clasificare a informaţiilor ca

suport a deciziilor, planificării, coordonării şi controlului.

Prin urmare, sistemul informaţional este constituit din mijloace, metode şi

resurse umane prin care se asigură desfăşurarea activităţilor specifice

procesului informaţional: înregistrarea, transmiterea, prelucrarea,

selecţionarea şi păstrarea informaţiilor de orice natură.

O altă definiţie a sistemului informaţional ar fi aceea că este un mecanism

prin care conducerea unei firme îşi culege informaţiile de care are nevoie

pentru luarea deciziilor.

Sistemul informaţional al unei firme se descompune în subsisteme

corespunzătoare activităţilor acesteia, subsisteme din care se pot aminti:

subsistemul financiar-contabil;

subsistemul aprovizionare;

subsistemul desfacere;

subsistemul producţie;

subsistemul resurse umane;

Sistemele şi subsistemele informaţionale prezintă particularităţi specifice

chiar şi pentru firme cu activităţi asemănătoare.

Page 13: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

14

Dezvoltarea sistemelor informaţionale este o operaţie costisitoare care este

executată de specialiştii firmei în colaborare cu firme specializate. Din cele

prezentate până acum rezultă că sistemul informaţional nu prevede neapărat

existenţa unui calculator. Dacă volumul informaţiilor este mare iar operaţiile

executate sunt repetabile, în cadrul sistemelor informaţionale se utilizează

tehnica de calcul. Acest lucru a dat naştere unui nou concept, sistemul

informatic, care este inclus în sistemul informaţional.

Sistem informatic

Sistemul informatic este un ansamblu structurat de elemente corelate

funcţional pentru culegerea, prelucrarea, transmiterea şi stocarea

informaţiilor cu ajutorul mijloacelor automate de prelucrare a datelor, în

speţă calculatoarele şi reţelele de calculatoare. Scopul sistemului informatic

este de a automatiza procesul informaţional şi de a fundamenta deciziile

luate de conducere.

Sistemul informatic este inclus în cel informaţional şi îi dă acestuia noi

valenţe sub aspect calitativ şi cantitativ. Acest lucru se realizează prin

implementarea de către sistemul informatic a unor modele matematice şi

prin utilizarea tehnicii de calcul.

Sistemul informatic tinde să egaleze sfera de cuprindere a sistemului

informaţional, însă acest lucru nu este posibil datorită limitelor sistemului

informatic. Tot timpul în cadrul sistemului informaţional vor exista o serie

de activităţi ce nu vor putea fi automatizate în totalitate.

Componentele unui sistem informatic

Elementele unui sistem informatic sunt:

resursele umane, formate din:

informaticieni (analişti, programatori, operatori);

utilizatori oarecare (toate persoanele care folosesc un

sistem informatic);

resurse materiale: calculatoare în reţea, imprimante, alte periferice;

resurse software: procesoare de texte, procesoare de tabele, pachete

de programe;

baze de date - adică descrierea produselor, clienţilor, angajaţilor,

stocurilor, contractelor, etc;

Page 14: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

15

Sistemele informatice sunt de o mare varietate, în funcţie de domeniul în

care se aplică, au anumite caracteristici.

Astfel, sistemele informatice pentru conducerea activităţilor economice au

ca specific faptul că datele de intrare, de regulă, sunt furnizate de

documentele întocmite de om (facturi, bonuri de consum, chitanţe fiscale,

etc.), iar datele de ieşire sunt furnizate de către sistem, tot sub formă de

documente (liste, rapoarte, etc.), care sunt interpretate tot de către om.

Sistemele informatice pentru conducerea proceselor tehnologice se

caracterizează prin faptul că datele de intrare sunt asigurate cu ajutorul unor

dispozitive automate care trimit informaţii despre parametri tehnologici

(temperatură, presiune, etc.), iar datele de ieşire sunt tot sub formă de

semnale care se transmit unor elemente de execuţie în scopul modificării

parametrilor procesului tehnologic.

Dintre tipurile de sisteme informatice existente, unul aparte este sistemul

informatic pentru management (SIM). Acesta este folosit de managerii

diferitelor nivele ierarhice, precum şi de managerul general. El poate furniza

date de sinteză necesare procesului decizional de la nivelele ierarhice.

Structura unui Sistem Informatic pentru Management(SIM)

Structura sistemelor informatice destinate fundamentării deciziilor şi

îndeosebi a rapoartelor finale stă la baza definitivării conceptului general al

sistemului informatic şi implicit a structurii bazei de date prin care se

asigură funcţionarea sa.

În general structura bazei de date care asigură funcţionarea subsistemelor

informatice pentru managementul unei societăţi este formată din trei

module:

Modulul care defineşte structura intrărilor în baza de date, dat de

ansamblul procedurilor informaţionale prin care se asigură încărcarea bazei

de date pentru crearea fişierelor permanente, sau introducerea unor valori la

diverse intervale de timp destinate asigurării funcţionării sistemului. În

general procedurile informaţionale sunt concepute în mod ecran, acest lucru

presupunând afişarea structurii documentelor de intrare şi completarea

acestora aleator în funcţie de semnificaţia datelor.

Page 15: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

16

În cazul sistemelor informaţionale complexe cu componente informatice

distribuite teritorial, procedurile informaţionale sunt de regulă înlocuite prin

echipamente de înregistrare magnetică, optică sau video a datelor în regim

de teletransmisie. Acest mod de lucru caracteristic subsistemelor

informatice cu baze de date relaţionale locale, interconectate la o bază de

date centrală. Prelucrarea datelor se face în cadrul unor reţele locale şi de la

un anumit nivel de complexitate în cadrul unei reţele centrale. Modalităţile

de teletransmisie frecvent folosite sunt următoarele:

circuite analogice, folosind liniile telefonice directe sau cele

închiriate temporar. Acest mod de lucru prezintă dezavantajul unei

fiabilităţi scăzute în funcţionare datorate calităţii liniilor telefonice

precum şi cel al unui cost ridicat;

circuite digitale, închiriindu-se o bandă de frecvenţă în cadrul căreia

se face teletransmisia. Avantajul acestei modalităţi de teletransmisie

este dat de calitatea deosebită în recepţionarea datelor, dar prezintă

dezavantajul unui cost ridicat. De asemenea acest mod de

teletransmisie se justifică doar în cazul în care frecvenţa transmiterii

datelor este mare într-un interval relativ scurt de timp. Ambele

modalităţi se impun în cazul în care aceasta se face la distanţă mai

mare de 150 metri, existând posibilitatea folosirii unor echipamente

numite modemuri care asigură modelarea şi demodularea

informaţiilor trimise şi primite;

prin satelit, metodă care prezintă toate avantajele impuse de o

recepţionare şi prelucrare rapidă dar având dezavantajul unui cost

ridicat.

Modulul care defineşte structura conceptuală a bazei de date, permiţând

evidenţierea în cadrul structurii acesteia a tuturor categoriilor de fişiere de

date folosite. În general acestea se împart în: fişiere permanente şi fişiere

temporare.

Fişierele permanente pot fi de arhivare, de tip nomenclator sau fişiere care

definesc structura articolelor dintr-o bază de date în care acestea sunt

descrise într-o manieră arborescentă (fişiere de structură).

Prima categorie de fişiere asigură exercitarea funcţiei de documentare a unui

sistem informatic, următoarele reprezentând ansamblul datelor care conţin

informaţii cu caracter permanent în timp. Cea de-a treia categorie se

foloseşte îndeosebi atunci când se proiectează subsisteme informatice pentru

activităţi de producţie şi când se doreşte o corelare a acestora cu celelalte

subsisteme din societatea comercială.

Page 16: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

17

Utilizate îndeosebi în condiţiile unor producţii de serie mică şi unicate,

fişierele din această categorie conţin o serie de date corelate care permit

reprezentarea structurii produselor şi efectuare automată a unor operaţii de

tip explozie sau implozie asupra acestor structuri.

Deosebirea faţă de primele două tipuri de fişiere permanente constă în faptul

că înregistrările fişierelor sunt corelate între ele printr-un sistem de adrese

impus de un anumit soft de bază sau de un soft aplicativ proiectat la un

moment dat.

Fişierele temporare (de manevră) definesc acele fişiere care se creează în

procesul de prelucrare a datelor din fişierele permanente sau acele fişiere

care reţin pe o durată de timp bine determinată o serie de date care ulterior

se distrug sau se arhivează în fişiere istorice.

Din prima categorie de fişiere temporare se pot exemplifica cele de tip bază

de date care rezultă din operaţii de sortare sau copiere parţială, precum şi

cele de tip index care rezultă din operaţii de indexare în cadrul procedurilor

automate.

Întrucât ele se creează la fiecare rulare a programului sau a unei opţiuni de

lucru se recomandă ştergerea lor la fiecare început de secvenţă de program.

Din a doua categorie de fişiere temporare fac parte colecţiile de date care

reflectă o anumită stare a sistemului economic într-o perioadă de timp.

Aceste fişiere pot fi: fişiere de mişcări dacă conţin intrările şi ieşirile de

materii prime sau de produse în/din depozite, fişiere de producţie care conţin

programe de producţie pe un interval de timp, fişiere de costuri care conţin

costurile de producţie planificate sau realizate pentru un anumit program de

producţie într-un anumit interval de timp, etc.

Datorită caracterului conţinutului lor aceste fişier pot fi şterse, dar nu ca

structură, ci doar din punct de vedere al conţinutului, la sfârşitul perioadei

de timp, sau la începutul următoarei perioade de timp. De exemplu mişcările

de materiale sau de mijloace fixe din cursul unei luni vor fi şterse la sfârşitul

lunii pentru a se putea evidenţia mişcările din luna următoare.

Modulul care reprezintă structura ieşirilor bazei de date, şi care conţine

ieşirile rezultate din prelucrarea bazelor de date şi care reflectă structura

sistemului informaţional prezentat anterior prin cerinţele utilizatorului.

Page 17: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

18

Se recomandă ca în activitatea de proiectare a ieşirilor bazei de date să se ia

în considerare două categorii de informaţii:

situaţii informaţionale propriu-zise caracterizate printr-un volum

mare de date şi destinate fundamentării unor decizi tactice şi

strategice;

situaţii informaţionale propriu-zise sintetice sau selective obţinute de

regulă în mod ecran care dau posibilitatea vizualizării selective a

conţinutului rapoartelor de ieşire. Aceste situaţii se obţin îndeosebi

atunci când se doreşte luarea unor decizii curente sau atunci când se

doreşte cunoaşterea activităţii de ansamblu a societăţii comerciale.

Definirea conceptului general al celor trei module care alcătuiesc structura

bazelor de date presupune executarea următoarelor două operaţii care

trebuiesc detaliate în etapa de proiectare logică:

1. Prezentarea modului de codificarea a informaţiilor, a structurii codurilor

folosite şi eventual a modului de calcul a cifrei de control. De regulă, în

cazul existenţei mai multor subsisteme informatice nu este obligatorie

implementarea aceleiaşi modalităţi de codificare a informaţiilor. Informaţiile

dintr-o activitate pot fi localizate prin intermediul unor coduri secvenţiale

numerice sau alfanumerice, în timp ce alte informaţii sunt localizate prin

intermediul unor coduri morfologice sau structurate.

Restricţia de bază care trebuie avută în vedere constă în prevenirea

manifestării fenomenului de redundanţă, care presupune din punct de

vedere informatic existenţa aceloraşi informaţii în fişiere diferite.

2. Precizarea algoritmilor de calcul folosiţi pentru obţinerea rezultatelor

finale. În general, algoritmii de calcul se împart în două mari categorii:

algoritmi definiţi de metodologiile de calcul a unor indicatori

economici;

algoritmi proiectaţi şi impuşi de unele particularităţile funcţionării

subsistemelor informatice.

Aceşti algoritmi se întâlnesc atât în aplicaţii de gestiune economică cât şi în

aplicaţiile de optimizare a activităţilor economice.

Proiectarea tehnică sau generală a unui sistem informatic trebuie să se

finalizeze prin elaborarea organigramei sistemului.

Page 18: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

19

Consideraţii privind aplicaţiile informatice manageriale

Scopul principal al acestei discipline este de a iniţia studenţii specializării de

Inginerie economică industrială, în aplicaţii informatice de tip managerial,

pe baza cunoştinţelor dobândite în anii de studiu precedenţi. De asemenea,

ei trebuie să înţeleagă ce este un sistem informatic, care sunt resursele

pentru construirea unei astfel de aplicaţii şi care este rolul lor într-o echipă

de implementare a unui sistem informatic.

Aplicaţiile informatice de tip managerial sunt de mare diversitate, amploarea

acestora fiind dictată, în special, de mărimea firmei în care se aplică,

pornind de la aplicaţii simple de gestiune pentru diferite compartimente,

până la sisteme informatice integrate care includ toate compartimentele

firmei. Realizarea acestor aplicaţii se face în diferite medii de dezvoltare,

după cum necesităţile o cer. În continuare vor fi prezentate câteva

consideraţii pe această temă.

Aplicaţii informatice manageriale în mediul VBA-Excel. Acest tip de

aplicaţii se pretează la firmele mici şi mijlocii, pentru că au preţuri de cost

reduse şi pot fi create chiar de persoane din interiorul firmei, eventual prin

colaborări cu firme specializate acolo unde este cazul.

Multe din informaţiile necesare managerilor din firme mici pot fi obţinute

cu aplicaţii de calcul tabelar. De exemplu, gestiunea unei magazii, gestiunea

cheltuielilor firmei, decontările cu clienţii şi furnizorii firmei, etc., pot fi

rezolvate elegant cu astfel de aplicaţii. Ultimele versiuni ale pachetului

Microsoft Office (2003, 2007), conţin suficiente posibilităţi pentru

abordarea acestor probleme. Iată câteva din aceste posibilităţi:

Un limbaj de dezvoltare (Visual Basic for Applications) uşor de

folosit;

Posibilitatea de partajare a drepturilor de acces la informaţii, pe baza

unor parole;

Protejarea datelor pentru împiedicarea ştergerilor accidentale a unor

celule care conţin formule;

Verificarea corectitudinii introducerii datelor şi validarea lor;

Folosirea comenzilor limbajului Excel – copiere, ştergere, mutare,

import de date, etc;

Folosirea celor câteva sute de funcţii ale Excel-ului;

Folosirea formatării condiţionate;

Page 19: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

20

Folosirea macrourilor, meniurilor, butoanelor de comandă,

butoanelor de opţiune, combobox-urilor şi a altor obiecte specifice

limbajului VBA;

Posibilitatea de a publica în pagini Web a unor documente de interes

comun;

Pregătirea uşoară a documentelor care se vor tipări;

Altele.

Autorul acestui curs a realizat zeci de aplicaţii pentru firme mici şi instituţii,

folosind acest mediu de dezvoltare. De altfel, toate lucrările de laborator şi

studii de caz realizate în cadrul acestui curs au ca sursă de inspiraţie tocmai

aceste realizări.

Acest tip de aplicaţii pot fi realizate, fără probleme, de către absolvenţii care

parcurg acest curs de informatică managerială. Sunt multe oportunităţi de a

folosi aceste aplicaţii în firme mici şi instituţii, dar nu sunt folosite din cauză

că posibilităţile de dezvoltare în mediul Excel nu sunt cunoscute de multă

lume. Poate noii absolvenţi de inginerie economică să rezolve acest neajuns.

Aplicaţii informatice manageriale în mediul VBA-Access. Acest tip de

aplicaţii sunt specifice firmelor mijlocii şi mari, datorită volumului mai

mare de date. Folosind bazele de date relaţionale Access, se pot construi

sisteme informatice complexe, a căror programe de aplicaţie fiind scrise în

limbajul VBA.

Fiind aplicaţii complexe, realizarea lor se face de către echipe

multidisciplinare, formate din analişti, programatori şi factori de decizie ai

firmei. Rolul unui inginer economist este acela de a participa la etapa de

analiză, pentru identificarea şi definirea specificaţiilor necesare

programatorilor. Cei care au experienţă în programare pot face parte şi din

echipa de programatorilor. Fiind aplicaţii pentru echipe de dezvoltatori, nu

vor fi abordate aspecte de implementare, ci numai aspecte de analiză.

Aplicaţii informatice manageriale în mediul Google-Docs. Acest mediu

de dezvoltare este de dată relativ recentă şi îşi câştigă tot mai mulţi adepţi,

datorită avantajelor pe care le oferă şi a costurilor foarte mici, practic nule.

Google Docs este un pachet de programe gratuit oferit de compania Google,

ca alternativă a pachetului Microsoft Office, dar care lucrează în Internet.

Toate informaţiile sunt stocate pe serverele companiei Google, care sunt

sigure, rapide şi de mare capacitate. Nu este nevoie de un administrator de

Page 20: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

21

sistem pentru a interveni atunci când serverul se blochează sau apar

probleme neprevăzute.

Pachetul de programe are trei module: editor de texte, calcul tabelar şi

prezentări de tip PowerPoint. Cel mai folosit modul va fi cel de calcul

tabelar care are avantajul că poate fi folosit la diverse calcule, cerute de

aspecte manageriale. Aplicaţiile care vor fi prezentate sunt un bun exemplu

pentru abordarea propriilor proiecte.

Principalele avantaje ale acestui mediu de dezvoltare a aplicaţiilor

informatice manageriale sunt:

Un document (aplicaţie de calcul tabelar) poate fi accesat de oriunde

cu condiţia să existe acces la Internet.

Mai mulţi utilizatori pot accesa acelaşi document în acelaşi timp.

Unii utilizatori au drept de editare, alţii numai de vizualizare.

Se pot public ape Internet ca pagini Web dinamice, unele rezultate

care sunt necesare clienţilor, furnizorilor sau propriilor angajaţi.

Orice document are un proprietar care poate să dea sau să anuleze

drepturile de acces ale celorlalţi utilizatori.

Deşi este relativ nou, acest produs are un real viitor pentru rezolvarea multor

probleme manageriale ale firmelor de orice mărime. Este important ca

absolvenţii specializării de inginerie economică să cunoască metodologii de

ultimă oră care aduc beneficii firmelor în care lucrează.

Aplicaţii informatice manageriale în Web. Aceste aplicaţii sunt sisteme

informatice integrate, specifice firmelor mari, dezvoltate de firme de

specialitate. Pentru aceste sisteme informatice e nevoie de resurse mari cum

ar fi bazele de date Oracle sau SQL Server şi servere puternice care sunt, de

regulă, ale firmei beneficiare.

Nu se poate pune problema abordării acestor tipuri de aplicaţii la nivelul

acestui curs. Pentru ca studenţii să cunoască şi aceste tipuri de aplicaţii

informatice manageriale, a fost proiectat un astfel de sistem informatic pe

platforma .NET, cu o bază de date SQL Server, care a fost adaptat pentru

uzul studenţilor. Ei vor putea lua contact cu un astfel de sistem informatic

care conţine toate ingredientele unui sistem informatic pe care îl vor întâlni

în condiţii reale, după absolvire.

Page 21: Informatica Manageriala - Curs

Informatică managerială Capitolul 1

22

În capitolul 5 este prezentată această aplicaţie, pe care studenţii o vor folosi

în cadrul orelor de laborator.

Page 22: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

23

Capitolul 2. Crearea aplicaţiilor informatice manageriale

Acest capitol îşi propune să prezinte principalele probleme care apar la

crearea aplicaţiilor informatice manageriale, din punctul de vedere al

beneficiarului şi utilizatorului final. Se va pune accent pe aspectele practice

ale colaborării beneficiarului cu echipa de dezvoltare a aplicaţiilor, ştiut

fiind că această colaborare este, de multe ori, în mare suferinţă.

Punerea problemei

Primul pas care trebuie făcut pentru crearea unei aplicaţii informatice este

apariţia ideii, a necesităţii unui astfel de aplicaţii. Ideea apare atunci când

managerul unei firme, vede un sistem funcţional la o altă firmă sau din

discuţiile pe care le are cu diverşi parteneri sau colaboratori.

Cel mai dificil aspect este punerea problemei, având în vedere că managerii,

nu toţi o pregătire suficientă în domeniul utilizării calculatoarelor. Pe de altă

parte, o aplicaţie informatică nu poate fi creată fără consultarea celui căruia i

se adresează. Se pare că există o lipsă de comunicare între furnizor şi

beneficiar, care poate să ducă, în final, la compromiterea întregului proiect.

Nu sunt rare cazurile când finalul proiectului este altceva decât şi-a imaginat

viitorul utilizator.

Spuneam, în capitolul precedent, că aplicaţiile informatice manageriale sunt

de o mare diversitate, de la aplicaţii departamentale relativ simple, dar

foarte utile, până la sisteme informatice integrate, care cuprind toate

departamentele întreprinderii. Din această cauză, şi punerea problemei e

condiţionată de acest aspect. Prin urmare, vom discuta separat despre aceste

două tipuri de aplicaţii.

Page 23: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

24

Aplicaţii informatice pentru departamente

Aceste aplicaţii sunt concepute, de regulă, de către managerii diferitelor

departamente şi sunt create cu personal propriu sau în colaborare cu

specialişti dinafara departamentului. Nevoile manageriale specifice unor

compartimente, conduc la imaginarea unor aplicaţii surprinzătoare, care

îmbunătăţesc activitatea acestora. Este greu de imaginat că o firmă

neinformatizată nu are mici aplicaţii pe calculator, la nivel de

compartimente. De altfel, aceste mici aplicaţii, sunt baza de plecare pentru

crearea unor sisteme informatice la nivel de firmă.

În practică se întâmplă următorul fenomen: în anumite compartimente se

întâlnesc generaţii de specialişti diferite, cei vechi, cu multă experienţă în

firma respectivă, dar mai puţin iniţiaţi în utilizarea calculatoarelor şi noii

veniţi, tineri cu experienţă în utilizarea calculatorului, dar încă fără prea

multă experienţă în problemele firmei. O bună conlucrare între ei poate duce

la crearea unor aplicaţii extrem de utile pentru respectivele compartimente.

Cel mai important lucru este faptul că aplicaţiile se dezvoltă local şi pot fi

mereu îmbunătăţite, pe măsură ce apar noi necesităţi, fără costuri

suplimentare.

Inginerii economişti, absolvenţi ai specializării IEI, au suficiente cunoştinţe

de programare pentru a crea astfel de aplicaţii. În ultimul timp au apărut

medii de dezvoltare extrem de accesibile, pentru rezolvarea unor probleme

manageriale, mai bine spus, pentru prelucrarea unor informaţii necesare

actului de conducere.

Iată câteva din aceste medii de dezvoltare:

Access + VBA

Excel + VBA

Google Docs

Cele mai accesibile şi care duc rapid la rezultate sunt ultimele două, care vor

fi, de altfel, tratate pe larg în capitolele următoare. După cum se ştie

limbajul VBA (Visual Basic for Applications) este un limbaj bazat pe

Visual Basic, dar completat cu obiecte specifice mediilor respective

(Access, Excel, AutoCAD etc.). În anul I s-a studiat acest limbaj, prin

urmare trecerea la VBA nu va fi o problemă.

Se pune, firesc întrebarea, care ar fi tipurile aplicaţii pe care le-ar putea

aborda un manager local al zilelor noastre şi de unde ar trebui să plece.

Page 24: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

25

Tocmai răspunsul la această întrebare vom încerca să-l aflăm în cele ce

urmează.

În principiu, un manager, indiferent pe ce treaptă ierarhică se află, are

nevoie de informaţii rapide pentru deciziile pe care le ia. Observă că aceste

informaţii le obţine greu şi devine preocupat de această idee şi începe să

caute soluţii. De exemplu, un şef de atelier de producţie primeşte o comandă

de noi produse la care el trebuie să dea un răspuns, să ia o decizie. Pe ce se

bazează? În primul rând îşi convoacă toţi colaboratorii pentru a afla de la ei

ce comenzi există în lucru, ce încărcare au utilajele. Aceste informaţii nu le

poate avea în timp scurt şi nici nu e sigur că ele vor fi exacte din moment ce

se centralizează din tot felul de registre şi dosare. Este evidentă necesitatea

unei aplicaţii informatice care să centralizeze toate comenzile atelierului şi

care să fie actualizată zilnic. O astfel de aplicaţie o poate face în Excel chiar

un student care face practică în acel atelier.

O astfel de aplicaţie poate fi concepută plecând de la rezultat în sens invers,

spre sursele de informaţie. Nu trebuie să fii informatician pentru a gândi o

astfel de aplicaţie pentru că totul este logic. Managerul nu trebuie să facă

altceva, decât să-şi schiţeze dorinţa, în aşanumita etapă, punerea problemei.

Urmează discuţia cu dezvoltatorul, punerea la punct a unor detalii şi în

câteva zile aplicaţia ar putea fi gata, în prima variantă. Plecând de la acest

exemplu simplu, vom încerca să identificăm paşii care trebuie parcurşi

pentru crearea unor aplicaţii informatice manageriale la nivel de

departament, compartiment sau birou.

Etapele care trebuie parcurse pentru crearea aplicaţiilor

1. Declaraţia de intenţie. Această etapă se finalizează printr-un document

care exprimă pe scurt ceea ce se doreşte de la aplicaţie. Se formulează în

termeni simpli în aşa fel încât să se înţeleagă despre ce e vorba. Nu există

formulare sau şabloane pentru aşa ceva, mai ales că pot fi formulate de

persoane care nu au cunoştinţe temeinice de informatică. Este formulată de

către beneficiarul aplicaţiei.

Iată un exemplu de declaraţie de intenţie: Dorim o aplicaţie care să

furnizeze încărcarea cu comenzi în orice moment a atelierului pe care îl

conduc, stadiul realizării comenzilor şi unele situaţii legate de beneficiari.

Page 25: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

26

Situaţiile vor putea fi văzute numai de către anumite persoane pe care le voi

numi eu.

După cum se vede, declaraţia de intenţie este scurtă şi se poate formula chiar

într-o singură frază. Nu face nici un fel de referire la modul de realizare.

2. Stabilirea obiectivelor aplicaţiei. Această etapă este finalizată cu un

document care detaliază principalele probleme pe care le va rezolva

aplicaţia. Acest document este creat de o echipă formată din managerul care

cere aplicaţia, colaboratorii săi şi dezvoltatorul aplicaţiei. Aici, propunerile

şi cererile echipei manageriale sunt validate de către dezvoltatorul aplicaţiei,

este un fel de negociere între cereri şi posibilităţile de rezolvare. În această

fază nu se vorbeşte despre detaliile tehnice ale aplicaţiei cum ar fi limbajul

în care se va scrie codul, mediul de dezvoltare etc.

Acest document este elementul de bază al finalizări proiectului.

3. Dezvoltarea aplicaţiei. Pe baza obiectivelor stabilite în pasul anterior se

trece la scrierea aplicaţiei propriu-zise. La această etapă lucrează echipa de

dezvoltare (sau persoana care scrie aplicaţia), iar echipa managerială îi stă la

dispoziţie, pentru a lămuri unele aspecte de detaliu care nu au fost cuprinse

în obiectivele aplicaţiei. Dezvoltatorul va stabili platforma în care se va

dezvolta aplicaţia. Majoritatea aplicaţiilor vor fi în Excel cu VBA, respectiv

în Google Docs.

4. Testarea şi finalizarea aplicaţiei. Această etapă este foarte importantă şi

nu trebuie tratată cu superficialitate. De succesul ei depinde viitorul

aplicaţiei. Testarea aplicaţiei se face la început de către dezvoltator, apoi şi

de către alte persoane care vor lucra cu aplicaţia. Tot în această etapă se

finalizează şi documentaţia aplicaţiei şi instrucţiunile de folosire.

Documentaţia aplicaţiei constă în diagrame, scheme logice, explicaţii, cod

sursă, adică de tot ce este necesar pentru a interveni în rezolvarea unor vicii

ascunse. Documentaţia este necesară chiar dacă modificările sau

dezvoltările ulterioare sunt făcute de aceeaşi persoană, deoarece după un

anumit timp se uită ce s-a făcut în aplicaţie şi trebuie mult timp pentru

”reamintire”, care nu este altceva decât timp pierdut. Acest lucru îl spun din

practica personală.

Page 26: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

27

Concluzii

Aplicaţiile informatice manageriale la nivel de compartiment sunt imaginate

şi coordonate de managerul acelui compartiment. Ideal ar fi ca managerul să

poată chiar el să scrie aceste aplicaţii, având în vedere că Excel + VBA

oferă posibilităţi mari pentru rezolvarea problemelor din departamente.

Chiar dacă la început, aceste aplicaţii sunt timide, mai puţin performante, ele

au rolul de a obişnui angajaţii cu utilizarea calculatorului pentru a-şi rezolva

problemele. Aplicaţiile la nivel de compartiment sau birou sunt

precursoarele sistemelor informatice integrate pe care le vom discuta în

capitolul următor. De altfel, şi în cazul existenţei unui sistem informatic

integrat, se pot folosi mici aplicaţii locale pentru uzul biroului respectiv.

Orice firmă, oricât de mică ar fi, trebuie să aibă aplicaţii pe calculator pentru

gestionarea unor probleme curente. E greu de crezut că există azi o firmă

fără calculatoare şi fără un soft cum ar fi Microsoft Office. Absolvenţii

secţiei IEI pot concepe şi perfecţiona aplicaţii pentru firmele la care vor

lucra. În acest curs vor găsi suficiente exemple şi surse de inspiraţie pentru

crearea unor astfel de aplicaţii.

Niciodată să nu consideraţi că o aplicaţie ar fi prea simplă şi nu merită

atenţie, pentru că din fiecare veţi învăţa ceva, veţi acumula experienţă şi veţi

căpăta încredere şi dorinţă de a face lucruri din ce în ce mai performante.

Niciun programator experimentat nu a început cu aplicaţii complexe, ci a

acumulat experienţă în timp.

În continuare voi prezenta câteva posibile aplicaţii pe care aţi putea să le

abordaţi la viitorul loc de muncă.

1. Aplicaţie de personal. Este o aplicaţie în care puteţi ţine în Excel

evidenţa tuturor angajaţilor firmei din care să puteţi extrage următoarele

situaţii:

Listarea în ordine alfabetică, după meserii, specializări, vechime etc;

Afişarea informaţiilor despre o anumită persoană;

Planificarea concediilor;

Alte situaţii.

Page 27: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

28

2. Gestinarea unei magazii. O aplicaţie care se poate face în Excel pentru a

urmări evidenţa materialelor dintr-o magazie. Vor putea fi extrase

următoarele situaţii:

Căutarea unui anumit material;

Afişarea intrărilor în magazine pentru un interval de timp;

Afişarea ieşirilor din magazine pentru un interval de timp;

Anunţarea când stocul unui material scade sub stocul tampon;

Alte situaţii.

3. Evidenţa decontărilor cu clienţii şi furnizorii. Este o aplicaţie extrem

de utilă şi uşor de conceput în Excel. Se pot scoate uşor situaţii pe baza

recepţiilor, facturărilor şi extraselor de la bancă. În aplicaţie au acces mai

multe grupuri de utilizatori, fiecare cu drepturile sale, unii introduce

recepţiile, alţii facturile emise iar alţii extrasele de la bancă. Managerul e

singurul care are dreptul să vadă situaţiile la zi. Vor putea fi extrase

următoarele situaţii:

Situaţia decontărilor cu un anumit client sau furnizor;

Totalul sumelor de primit sau de încasat;

Afişarea recepţiilor dintr-o anumită perioadă;

Afişarea facturilor emise într-o anumită perioadă;

Alte situaţii.

4. Evidenţa cheltuielilor unei firme. Este o aplicaţie utilă fiecărei firme

care ajută la urmărirea cheltuielilor pe care le face firma. Cheltuielile se

împart pe capitole, iar orice cheltuială se introduce într-o foaie de calcul. O

astfel de aplicaţie va fi dezvoltată în capitolul 3.

5. Urmărirea execuţiei bugetare. Este o aplicaţie specifică instituţiilor

bugetare, pentru urmărirea cheltuielilor pe capitole de buget, fără a depăşi

suma alocată fiecărui capitol. Aplicaţia este deosebit de utilă, datorită

stricteţii cu care se urmăreşte cheltuirea banului public. Încălcarea legii se

poate face din necunoaşterea cheltuielilor pe un anumit capitol, la un

moment dat (înainte de a angaja o nouă cheltuială). O aplicaţie în Excel cu

puţin cod VBA, rezolvă elegant această problemă, economisind timp şi dând

siguranţă activităţii. Înainte de a angaja o cheltuială, programul afişează

soldul capitolului respectiv. Se înţelege de la sine că toate cheltuielile unui

an sunt stocate şi pot fi oricând revăzute şi analizate.

Page 28: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

29

6. Pontajul echipelor de muncitori. Este o aplicaţie specifică atelierelor de

producţie în care lucrează echipe de muncitori de diferite calificări, care

execută activităţi dintre cele mai diverse din punctul de vedere al

performanţei şi al costurilor. Să ne gândim, de exemplu, că un reglor dintr-

un atelier de maşini unelte cu comandă numerică poate să deservească mai

multe echipe, fiecare cu bugetul său.

Pe baza acestor propuneri de aplicaţii, puteţi să găsiţi şi altele, specifice

firmei în care veţi lucra.

Sisteme informatice integrate

Aceste aplicaţii informatice manageriale sunt specifice marilor companii

care au mii de angajaţi şi mai multe filiale răspândite pe tot globul. Aceste

aplicaţii folosesc baze de date cum ar fi SQL Server, Oracle, precum şi

platforme de dezvotare ca .NET, Delphi etc.

Datorită performanţelor manageriale pe care le generează, aceste sisteme

informatice câştigă tot mai mult teren, chiar şi în cazul firmelor mijlocii.

Principalele impedimente ale acestor sisteme sunt costul ridicat şi timpul de

implementare, având în vedere că tot personalul firmei trebuie reciclat. Cel

mai greu se lucrează cu personalul în vârstă care are mai puţină dexteritate

în utilizarea calculatorului.

Scopul acestui curs nu este de a scoate specialişti în proiectarea acestui tip

de aplicaţii informatice. Ele sunt proiectate de firme specializate cu multă

experienţă, care au echipe multidisciplinare, de analiză şi programare. Rolul

absolvenţilor de IEI este acela de a putea participa la implementarea unor

astfel de sisteme informatice, din partea beneficiarului. Ei vor lucra mai ales

la identificarea şi definirea specificaţilor, adică să spună ce trebuie să facă

aplicaţiile sistemului informatic. Nu este exclus ca pe viitor să fiţi cooptaţi

de aceste firme după ce au participat cu succes la implementarea unui sistem

informatic în propria firmă.

În practică se întâlnesc următoarele scenarii:

A. Sistemul informatic este impus într-o firmă sau instituţie fără să fie

făcută o analiză temeinică. Sistemul nu este agreat nici de conducere

nici de angajaţii firmei.

Page 29: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

30

B. Sistemul informatic este agreat de conducerea firmei, se ia ca model

de analiză o experienţă anterioară de la altă firmă asemănătoare şi se

porneşte la implementare.

C. Sistemul informatic este analizat de conducerea firmei împreună cu

angajaţii, toţi cei care vor folosi sistemul vor da propriile specificaţii

care vor fi analizate de către dezvoltatorul aplicaţiei, iar în final se va

scoate un document cu specificaţii, numit caiet de sarcini.

Să analizăm pe rând aceste scenarii. Scenariul A este, de departe, cel mai

dăunător cu putinţă. Acesta se poate întâmpla la o firmă sau instituţie cu o

conducere incompetentă care nu poate spune NU, unor fenomene pe care nu

le înţelege şi pe care trebuie să le adopte. Este specifică unor firme de stat

sau privatizate, dar cu mentalităţi de firmă de stat, unde răspunderea nu este

aşa strictă. Un astfel de sistem este destinat eşecului, fără nici un dubiu. Mai

grav este când firma furnizoare solicită daune materiale pentru lucrările care

au fost deja făcute.

Scenariul B, este un scenariu generator de conflicte viitoare între

conducerea firmei şi angajaţi, care vor trebui să-şi schimbe modul de lucru,

fără să înţeleagă de ce. Dacă conducerea firmei este suficient de fermă şi

competentă, poate să ajusteze din mers neajunsurile, dar cu costuri destul de

mari. Acest scenariu trebuie evitat, deoarece o analiză făcută la o firmă nu

se potriveşte în totalitate pentru o altă firmă, chiar dacă este asemănătoare

din punct de vedere al producţiei şi al organizării.

Scenariul C este cel mai realist, cel mai puţin vizat de eşec, pentru că este

rezultatul mai multor minţi care analizează lucrurile de pe poziţii diferite.

Un amănunt care nu a fost observat de echipa de analiză, poate fi evidenţiat

de un simplu magazioner sau casieriţă. Acest scenariu va fi avut în vedere

de către acest curs.

Trebuie menţionat faptul că pentru a defini corect problema legată de

introducerea unui SI într-o firmă sau instituţie, presupune un şir de

consultări şi negocieri la care participă atât persoane din firmă sau instituţie

cât şi consultanţi externi, specialişti ai domeniului. După ce s-a formulat

problema se poate trece la pasul următor, elaborarea Caietului de sarcini.

Caietul de sarcini

Caietul de sarcini este un document extrem de important pentru buna

finalizare a sistemului informatic. Nu există un model standard al acestui

document, singurul lucru care se poate spune despre el este că descrie clar

ceea ce vrea beneficiarul de la sistemul informatic. Este de la sine înţeles că

Page 30: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

31

acest caiet de sarcini poate avea unele neajunsuri, în sensul că beneficiarului

îi mai vin idei şi pe urmă. Totul este ca relaţiile dintre beneficiar şi

dezvoltator să se bazeze pe buna intenţie, iar eventualele omisiuni ale

caietului de sarcini să nu fi folosite ca un factor de presiune între parteneri,

deoarece interesul comun este finalizarea cu succes a proiectului.

Un caiet de sarcini corect alcătuit este acela care este conceput de o echipă

mixtă, formată din reprezentaţi ai beneficiarului şi dezvoltatorului

sistemului informatic. Beneficiarul formulează cerinţele, dezvoltatorul le

analizează, le adaptează dacă este cazul şi apoi sunt trecute în caietul de

sarcini.

Nu trebuie să se treacă rapid peste întocmirea caietului de sarcini, cerinţele

formulate de acesta trebuind să fie rezultatul consultării întregului personal

al firmei beneficiare a viitorului sistem informatic.

Implementarea sistemelor informatice integrate

După ce s-a pus la punct caietul de sarcini, de către echipa mixtă, formată

din specialiştii beneficiarului şi a firmei dezvoltatoare, urmează partea de

implementare a sistemului informatic, care cuprinde următoarele etape:

Elaborarea proiectului tehnic. Această etapă este în grija firmei

dezvoltatoare. Pe baza caietului de sarcini, este pusă la punct toată

documentaţia necesară implementării sistemului informatic. În ce constă

această ”toată documentaţia”? Fiecare firmă de soft îşi are propriile reguli,

care au rezultat din experienţele anterioare şi care au ca rezultat eficienţa

maximă a activităţii. Nimic nu este de prisos, orice informaţie din proiect îşi

are rolul său, înţeles de toţi cei implicaţi.

Nu voi intra în amănuntele problematicii elaborării proiectului tehnic, dar

voi face referire la câteva aspecte mai importante şi anume:

Proiectarea bazei de date cu tot ce cuprinde acesta (structura

tabelelor, constrângerile acestora, tipuri de date, reguli de

desfăşurare a activităţii, stabilirea vederilor etc.);

Proiectarea interfeţelor aplicaţiei – ecranele cu care vor lucra

utilizatorii finali;

Organizarea modului de achiziţie a datelor – care vor fi introduce în

baza de date;

Page 31: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

32

Modelarea întregii aplicaţii, folosind tehnici de software

engineering;

Reguli de testare a diferitelor module şi sistemul de colectare a

erorilor;

Stabilirea grupurilor de utilizatori şi a drepturilor acestora;

Elaborarea documentaţiei de întreţinere a aplicaţiei.

Implementarea propriu-zisă. Această etapă poate începe încă din timpul

elaborării proiectului tehnic, pe măsură ce au fost definitivate module ale

acestuia, pentru a câştiga timp. Astfel, pentru completarea bazei de date pot

fi scrise programe pentru transferarea şi verificarea datelor provenite din

diverse surse. Să ne gândim numai la faptul că, în zilele noastre, orice firmă

are un calculator, oameni care ştiu să folosească un calculator dar sunt

simpli operatori. Ei ţin pe aceste calculatoare tot felul de informaţii, extrem

de utile, care nu pot fi abandonate de noul sistem, ci introduse în acesta.

Informaţiile respective pot fi pe foi Excel, fişiere Word sau chiar fişiere de

tip text provenite din tot felul aplicaţii mai mult sau mai puţin profesionale.

Activitatea de identificare, clasificare şi evaluare a informaţiilor existente în

organizaţie nu este una simplă. Ea se face de către o echipă mixtă beneficiar

– dezvoltator, iar soluţia finală va aleasă de către echipa de programatori.

O activitate importantă a acestei etape, este definitivarea interfeţelor

utilizator, care ar putea avea unele erori de concepţie. Ele pot fi testate prin

simulări, folosind date provizorii, în aşa fel ca la testarea finală, acestea să

fie eliminate. De multe ori, definirea unor interfeţe accesibile este cheia

succesului aplicaţiei informatice. Aici trebuie ţinut cont şi de nivelul de

inteligenţă şi experienţă al viitorilor operatori, care va acoperi o gamă largă

de angajaţi, de la portar până specialişti IT.

La această etapă, lucrează programatorii şi specialiştii din partea

beneficiarului, cei care, în final, vor fi formatorii pentru ceilalţi utilizatori

din firmă beneficiară.

Instruirea personalului. Deşi la prima vedere, ar fi o etapă simplă, în

realitate este una extrem de dificilă. Asta din cauză că se lucrează cu

persoane cu grad de aprofundare a noului şi experienţă foarte diferite. Mai

mult, fiecare angajat trebuie instruit pe specificul muncii sale, adică

instruirea trebuie individualizată pentru un număr relativ mic de persoane.

Să nu uităm că vor fi şi persoane, mai în vârstă care n-au lucrat niciodată cu

calculatorul sau au cunoştinţe vagi despre un calculator, care vor trebui să

Page 32: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

33

lucreze în sistemul informatic. Mă refer aici la magazioneri, gestionari,

maiştrii, normatori, şefi de echipă etc. Grupul de formatori va avea mult de

lucru!

Testarea finală şi preluarea aplicaţiei. Această etapă este una deosebit de

importantă pentru beneficiar, pentru că e ultima care se parcurge cu ajutor

din partea firmei dezvoltatoare. Administratorii sistemului informatic vor

trebui să testeze toate modulele, să verifice toate funcţionalităţile şi să înveţe

cum se remediază anumită conflicte de exploatare.

Rezultatul parcurgerii cu succes a acestei etape este reflectată în documentul

final de recepţie şi preluare a aplicaţiei de către beneficiar. Pe baza acestui

document, decontează ultimele obligaţii financiare către firma

dezvoltatoare.

Pentru siguranţa şi liniştea beneficiarului, acesta poate solicita un contract

de asistenţă pe o durată limitată din partea firmei care a dezvoltat şi

implementat proiectul.

Concluzii

Sistemele informatice integrate se implementeză, de regulă, în firme mijlocii

şi mari, deoarece necesită investiţii mari. Nu este exclus, ca pe viitor,

datorită progresului tehnologiei IT, aceste sisteme să fie accesibile şi

firmelor mai mici. Deja sunt motive să credem că se va întâmpla aşa, dacă

ne gândim că marea companie Google, a pus la dispoziţia utilizatorilor o

aplicaţie free pe care o poate folosi orice firmă. Această aplicaţie acoperă o

mare parte din cerinţele firmelor, având incluse un modul de calcul tabelar,

unul de editare texte şi un altul de prezentări. Despre această aplicaţie o să

învăţăm pe larg în capitolul 4 al acestei lucrări.

Absolvenţii de Inginerie Economică Industrială vor avea un rol important în

dezvoltarea şi implementarea sistemelor informatice, atât ca beneficiari cât

şi ca participanţi în echipe de dezvoltare, pentru cei care au făcut o pasiune

din programare.

Şansa de a folosi un sistem informatic la viitorul loc de muncă este foarte

mare, prin urmare aveţi o motivaţie în plus pentru a şti cât mai multe despre

acestea.

Page 33: Informatica Manageriala - Curs

Informatică managerială Capitolul 2

34

În capitolul 5 veţi întâlni un studiu de caz cu un sistem informatic funcţional

din care veţi avea multe de învăţat. El va fi utilizat „pe viu” în cadrul orelor

de aplicaţii practice.

Page 34: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

35

Capitolul 3. Implementarea sistemelor informatice în Excel

Acest capitol îşi propune să prezinte posibilităţile oferite de aplicaţia Excel

pentru dezvoltarea unor sisteme informatice specifice unor firme mici, care

pot fi dezvoltate cu resurse proprii. Vor fi prezentate elemente ale limbajului

VBA Excel, cu exemple practice bine alese şi un studiu de caz pentru un

sistem informatic al unei firme mici.

Elemente de bază

Aplicaţia Excel, componentă a pachetului Microsoft Office, a fost

concepută, la început, ca o foaie de calcul tabelar necesară, în special,

contabililor, pentru calcule specifice: operaţii aritmetice cu valori din celule,

sumarizări pe linii şi coloane ale unui tabel, calcule statistice etc. Cu timpul,

această aplicaţie s-a dezvoltat, adăugându-se noi facilităţi, fiindu-i adăugat

chiar un limbaj de programare cu care se pot dezvolta aplicaţii proprii.

Ultimelor versiuni, i-au fost adăugate funcţii performante care permit

manevrarea manuală a unor date şi automatizarea unor proceduri repetitive.

De asemenea, există posibilitatea de a crea funcţii proprii, care să aibă

acelaşi rol ca şi funcţiile native.

Se presupun cunoscute comenzile de bază ale programului Excel cum ar fi:

Copierea, mutarea şi ştergerea valorilor din celule;

Formatarea datelor din celule – alinieri, fonturi, culori, formatul

numerelor;

Formatarea ansamblurilor de celule – bordurare, culoarea de fond a

celulelor, modificarea lăţimilor liniilor şi coloanelor;

Inserarea / Ştergerea de linii, coloane şi foi;

Ascunderea şi vizualizarea foilor;

Adrese absolute şi adrese relative de celule;

Page 35: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

36

Folosirea formulelor;

Folosirea funcţiilor, formule complexe cu adrese din alte foi şi cu

funcţii;

Tehnica protejării foilor de calcul;

Crearea listelor Excel;

Sortarea şi filtrarea listelor (cu AutoFilter şi Filtrare complexă);

Comenzile Paste special, Find, Replace – din meniul Edit;

Comenzile Splite şi Freeze Panes din meniul Window;

Tipărirea din Excel.

În continuare se vor studia funcţiile Excel, cu ajutorul cărora se pot

Funcţii EXCEL

După cum se ştie, în Excel funcţiile sunt împărţite în categorii, pentru a

putea fi mai uşor identificate. Aceste categorii sunt:

Financial

Data&Time

Math&Trig

Statistical

Lookup&Reference

Database

Text

Logical

Information

Aceste categorii de funcţii conţin împreună câteva sute de funcţii, unele

dintre ele chiar n-o să le folosim niciodată. Din mulţimea aceasta de funcţii,

unele ne vor fi extrem de utile, de aceea le vom studia în cele ce urmează, în

amănunt. Unele vor fi amintite pe scurt, fiind uşor de înţeles, iar altele vor fi

explicate în detaliu, cu exemple sugestive, fiind mai puţin folosite, tocmai

din cauză că nu sunt cunoscute.

Iată funcţiile care vor fi explicate în continuare: NOW, ROUND,

ROUNDDOWN, ROUNDUP, SUM, SUMIF, AVERAGE, AVERAGEA,

COUNT, COUNTA, COUNTBLANK, COUNTIF, MAX, MIN,

VLOOKUP, HLOOKUP, funcţiile de baze de date, funcţiile de text şi

funcţiile logice.

Page 36: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

37

NOW – este una din puţinele funcţii care nu au niciun argument. Această

funcţie, scrisă într-o celulă, va afişa în acea locaţie data şi ora curentă a

sistemului. Este extrem de utilă în documentele care cer data la care au fost

emise. Formatul se poate stabili cu comanda Format / Cells.

Exemple: =NOW() 9-jan-2008 (afişează numai data).

=NOW() 1-9-08 7:12 PM (afişează data şi ora)

ROUND, ROUNDDOWN, ROUNDUP – aceste funcţii sunt folosite pentru

rotunjirea valorilor numerice cu zecimale din celule. După cum le spune şi

numele, rotunjirea se face în jos sau în sus.

Exemple: celula A1 conţine valoarea 56.2156549, iar celula A2 conţine

valoarea 56.2154549. rotunjirile pe care le fac funcţiile amintite sunt:

=ROUND(A1) 56.216 (a treia zecimală a fost rotunjită în sus, pentru

că a 4-a zecimală este mai mare decât 5).

=ROUNDDOWN(A1) 56.215

=ROUNDUP(A2) 56.216

Urmăriţi cu atenţie comportamentul acestor funcţii, care vă pot fi de un real

folos în editarea unor rapoarte profesionale.

SUM – este funcţia cea mai folosită, adună valorile din celule izolate, zone

de celule şi chiar numere izolate.

Exemple: =SUM(A1,B1,C1).

=SUM(A1:A15,B1,64.305).

SUMIF – este o funcţie care însumează valorile indicate, ţinând cont de o

condiţie.

Exemplul 1:

=SUMIF(D1:D6,">14")

Page 37: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

38

Un caz întâlnit în practică este cel prezentat în exemplul 2, adică să se

calculeze suma pe o coloană, cu condiţia ca pe o altă coloană să nu fie celule

goale. Cu alte cuvinte, să se însumeze numai poziţiile unde e scris ceva, de

exemplu, o dată calendaristică.

Exemplul 2:

AVERAGE, AVERAGEA – aceste funcţii calculează media aritmetică a

valorilor existente într-un interval de celule. AVERAGE – ignoră valorile

care nu sunt numerice, AVERAGEA – face media incluzând şi valorile

nenumerice(texte, chiar şi spaţii) dar le pune valoarea 0(zero).

Exemplu:

COUNT, COUNTA, COUNTBLANK, COUNTIF – aceste funcţii sunt deosebit de

utile în numărarea (inventarierea anumitor valori). Aceste situaţii apar în

aplicaţiile de sisteme informatice pentru numărarea comenzilor unui anumit

beneficiar, a valorilor nule, a valorilor care indeplinesc o anumită condiţie.

COUNT – numără celulele cu valori numerice dintr-o zonă indicată ca

argument.

COUNTA - numără celulele care nu sunt goale dintr-o zonă indicată ca

argument.

COUNTBLANK – numără celulele goale dintr-o zonă indicată ca argument.

Este deosebit de utilă când se verifică unele situaţii care au celule

necompletate.

=AVERAGE(D1:D5)

=AVERAGEA(D1:D5)

=SUMIF(A1:A8,"<>"&"",B1:B8)

Page 38: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

39

COUNTIF – numără celulele dintr-o anumită zonă care îndeplinesc o

anumită condiţie.

Exemple:

MAX, MIN – aceste funcţii returnează valorile extreme dintr-o zonă de valori

numerice.

Exemplu:

VLOOKUP, HLOOKUP – acestea sunt funcţii de căutare şi sunt foarte utile în

dezvoltarea aplicaţiilor Excel, dar sunt destul de puţin folosite pentru că nu

sunt cunoscute şi înţelese. În principiu, se caută o valoare din coloana/rândul

1 a unei zone şi returnează valoarea corespunzătoare din coloana/rândul

indicat. Iată un exemplu corespunzător funcţiei VLOOKUP:

=COUNT(E1:E7)

=COUNTBLANK(E1:E7)

=COUNTA(F1:F7)

=COUNTIF(G1:G7,”>20”)

=MAX(G1:G7)

=MIN(G1:G7)

Page 39: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

40

Sintaxa funcţiei din exemplul prezentat este următoarea:

=VLOOKUP(Valoare,Zona, Nr.coloana, Tip cautare)

Funcţia are 4 argumente, din care primele 3 sunt clare dacă ne uităm şi la

exemplu, mai puţin ultimul care necesită unele explicaţii. Acest argument

poate avea 2 valori, TRUE – când valoarea căutată nu trebuie neapărat să fie

egală cu cea găsită (în cazul numerelor se ia valoarea cea mai apropiată),

respectiv FALSE – când valoarea căutată trebuie să fie exactă.

Dacă această funcţie se scrie într-o celulă, acolo va fi scrisă valoarea 132.31.

De remarcat faptul că totdeauna valoarea se caută în coloana 1.

Aceeaşi explicaţie este valabilă şi pentru funcţia HLOOKUP cu observaţia

că în loc de coloane punem linii.

Funcţii de baze de date – sunt funcţii care se aplică numai tabelelor tip baze

de date. Ne reamintim că o bază de date în sens Excel (numită şi listă) este

un tabel în care primul rând conţine numele coloanelor, iar tabelul are cel

puţin 2 rânduri.

Funcţiile de baze de date pe care le vom studia sunt: DAVERAGE, DCOUNT,

DCOUNTA, DMAX, DMIN, DPRODUCT şi DSUM. Aceste funcţii sunt

caracterizate prin faptul că, fiecare dintre ele, are 3 argumente:

Functie(Database, Field, Criteria)

unde,

Database – este o zonă de celule care cuprinde baza de date, ex.

A1:E10.

Field – este coloana în care se fac calculele. Acest argument se dă,

fie cu denumirea câmpului (“Pret”, “Cantitate”), fie cu numărul de ordine al

coloanei, începând din stânga bazei de date (1, 2, ...).

Page 40: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

41

Criteria - este o zonă de celule care conţine criteriul după care se

se face căutarea. Trebuie să aibă cel puţin 2 celule, denumirea coloanei şi o

valoare din acea coloană. Exemplu B1:B2.

Funcţiile care vor fi explicate în continuare, vor fi aplicate bazei de date din

figura 3.1.

Toate funcţiile din categoria „de baze de date”, au fost descrise puţin mai

înainte, aşa că nu veţi avea nicio problemă de înţelegere. De altfel au aceeaşi

denumire dar cu un ”D” în faţă, care vine de la Database. Ele se comportă ca

şi funcţiile din care provin, cu observaţia că respectă anumite criterii.

Din exemplele care urmează o să înţelegeţi cum acţionează aceste funcţii.

=DAVERAGE(H5:L14,3,I1:I2) - rezultat: 10.16666667 (media aritmetică a

preţurilor din Romania).

=DCOUNT(H5:L14,4,I1:I2) - rezultat: 3 (de câte ori apare Romania la

Cantitate).

=DCOUNTA(H5:L14,1,J1:J2) - rezultat: 5 (câte preţuri sunt mai mari decât

10).

=DMAX(H5:L14,3,I1:I2) - rezultat: 14.00 (preţul cel mare din Romania).

=DMIN(H5:L14,”Pret”,I1:I2) - rezultat: 4.50 (preţul cel mic din Romania).

Baza de date(lista)

Criteriile

Fig. 3.1. Baza de date şi criteriile pentru

studiul funcţiilor de baze de date.

Page 41: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

42

=DPRODUCT(H5:L14,5,H1:H2) - rezultat: 24.375 (produsul bonusurilor mai

mari decât 1).

=DSUM(H5:L14,4,K1:L2) - rezultat: 215.00 (suma cantităţilor cuprinse între

90 şi 120).

Modificaţi datele din baza de date, apoi încercaţi şi alte combinaţii de

argumente pentru funcţiile descrise, până v-aţi convins că le-aţi înţeles

corect.

Funcţii de text – sunt funcţii care se aplică celulelor care conţin valori de tip

text. Aceste funcţii sunt deosebit de utile în practică, mai ales atunci când

când doriţi să aranjaţi un document Excel care conţine date provenite din

alte aplicaţii.

Iată funcţiile din această categorie, care prezintă interes pentru noi:

Pe lângă funcţiile prezentate, Excel-ul mai are şi alte funcţii de text, mai

puţin folosite, pe care le puteţi studia şi folosi singuri, dacă practica o cere.

Funcţia Explicaţii

CONCATENATE(text1, text2, . . .) Leagă(alătură) două sau mai multe texte.

EXACT(text1, text2) Verifică dacă cele 2 texte sunt perfect identice. Dacă

sunt identice returnează TRUE, altfel returnează

FALSE. LEN(text) Returnează numărul de caractere ale unui text.

LEFT(text, n) Returnează n caractere de la începutul textului(din

stânga sa). RIGHT(text, n) Returnează n caractere de la sfârşitul textului(din

dreapta sa). LOWER(text) Converteşte toate caracterele unui text în caractere

mici. UPPER(text) Converteşte toate caracterele unui text în caractere

mari. MID(text, n0, n) Returnează n caractere ale textului, începând de la

caracterul n0. TEXT(numar, format) Converteşte un număr în text, cu formatul indicat. Ex.:

TEXT(12.”0.00”) 12.00 TRIM(text) Elimină toate spaţiile unui text, exceptând spaţiile

dintre cuvinte. VALUE(text) Converteşte un text format din cifre, în valoare

numerică. Dacă textul nu conţine numai cifre, va fi

afişată eroarea #Value!

Page 42: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

43

În figura de mai jos este un tabel cu modul de aplicare a câtorva funcţii de

text.

Funcţiile logice – sunt funcţii de decizie, în funcţie de argumentele lor. Ele

returnează o valoare logică TRUE sau FALSE. În această categorie vom

studia funcţiile IF, AND şi OR.

Funcţia IF, testează o condiţie şi returnează o valoare pentru TRUE şi altă

valoare pentru FALSE. Este o funcţie deosebit de utilă şi frecvent folosită.

Dacă într-un tabel stocurile şi doriţi să fiţi atenţionaţi când stocul scade sub

o anumită valoare, funcţia IF vă e de un real folos.

Sintaxa: IF(condiţie, valoare_pentru_TRUE, valoare_pentru_FALSE)

Exemplu: IF(A5>10, “OK”, “Atenţie, stocul este prea mic!!”)

Funcţia AND, testează mai multe condiţii şi returnează TRUE dacă toate

sunt adevărate, altfel returnează FALSE.

Sintaxa: AND(condiţie1, condiţie2, . . .)

Exemplu: AND(A5>10, B11>0, M20=”IEI”)

Funcţia OR, testează mai multe condiţii şi returnează TRUE dacă cel puţin

una este adevărată, altfel returnează FALSE.

Sintaxa: OR(condiţie1, condiţie2, . . .)

Exemplu: OR(A5>10, B11>0, C10>1)

În practică apar cazuri când este nevoie să fie folosite şi combinaţii de

funcţii, în sensul că o funcţie poate deveni argumentul alteia, care, la rândul

ei, poate fi şi ea argument pentru altă funcţie. Iată un exemplu dintr-o

aplicaţie practică, unde sunt folosite mai multe funcţii:

=CONCATENATE(A5," ",B5)

=LOWER(C5)

=UPPER(C5)

=LEFT(A5,3)

=RIGHT(A5,2)

=MID(A5,3,3)

Page 43: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

44

=IF(COUNTIF(C9:P9,"=a")+COUNTIF(C9:P9,"<5")=0,AVERAGE(C9:P9),"")

Puteţi observa că funcţiile COUNTIF fac parte dintr-o expresie care este

primul argument (condiţia) al funcţiei IF. De asemenea, funcţia AVERAGE

este valoarea pentru TRUE a funcţiei IF.

Dacă această expresie v-a mai tăiat din elan, nu trebuie să vă descurajaţi

deoarece performanţa vine odată cu experienţa. Printr-o combinaţie

inteligentă de funcţii, puteţi rezolva probleme complicate care apar în

practică.

În continuare va fi prezentată o aplicaţie care foloseşte câteva funcţii Excel.

Aplicaţie cu funcţii Excel

Această aplicaţie foloseşte o serie de tehnici şi facilităţi oferite de programul

Excel, care pot fi preluate în aplicaţii proprii. Ea rezolvă elegant problema

evidenţei rezultatelor la examene a unei grupe de studenţi.

Printre tehnicile folosite, se pot aminti:

Validarea datelor (Data – Validation . . .), cu ajutorul căreia se

împiedică introducerea unor date incorecte (alte note decât între 1 şi

10, A – absent, Ad – admis).

Formatarea condiţionată (Format – Conditional Formating), cu

ajutorul căreia, notele care nu intră în calculul mediei (1-4 şi A), sunt

formatate diferit (bold) pentru a fi mai uşor vizibile.

Protejarea zonelor, înafară de cele în care se introduc date, pentru a

nu şterge din greşeală formulele de calcul sau alte date utile.

Scrierea datelor în celulă după o direcţie verticală (Format – Cells . . .

– Align – Orientation – 90).

Foaia cu aplicaţia arată ca în figura 3.1a.

Page 44: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

45

Fig. 3.1a. Documentul aplicaţiei

Observaţi că notele sub 4 şi absenţele sunt scrise cu format Bold, iar capul

de tabel este scris pe verticală pentru a avea coloane înguste care încap în

document.

Partea cea mai spectaculoasă a aplicaţiei este validarea datelor şi calculul

mediei aritmetice, care trebuie calculată numai dacă au fost promovate toate

examenele. Asupra acestor două aspecte o să insistăm.

Validarea datelor. Este manevră deosebit de utilă care se face în scopul

împiedicării introducerii unor dare eronate într-un program. Se face

comanda Data – Validation . . .), în urma căreia se deschide caseta de dialog

din figura 3.1b.

Page 45: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

46

Fig. 3.1b. Caseta Data Validation

Se procedează astfel: se selectează zona în care se vor introduce date, în

caseta de text ”Allow” se alege List, iar în caseta ”Source:” se trece zona cu

datele valide.

Formulele pentru calculul mediei. Aceste formule au 2 variante pentru

semestrul I şi pentru media anuală.

Semestrul I - coloana L (dacă numărul notelor mici este 0, se calculează

media):

=IF(COUNTIF(C8:K8,"=a")+COUNTIF(C8:K8,"<5")=0,AVERAGE(C8:K

8),"")

Media anuală - coloana X:

=IF(L8<>"",IF(COUNTIF(N8:W8,"=a")+COUNTIF(N8:W8,"<5")=0,(AVE

RAGE(N8:W8)+L8)/2,""),"")

Dacă nu există medie pe semestrul I (L8), nu se calculează nimic. Dacă

există medie pe semestrul I, se calculează media pe semestrul II (al doilea

IF) şi se face o nouă medie cu cea din semestrul I (L8), fiind numai 2

termeni, se împarte la 2.

Ca exerciţiu, vi se cere să folosiţi funcţia AVERAGE în locul formulei

clasice:

Zona în care se

găsesc datele valide.

=IF(L8<>"",AVERAGE(IF(COUNTIF(N8:W8,"=a")+COUNTIF(N8:W8,"<5")=0,AVERAGE(N8:W8),""),L8),"")

Page 46: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

47

Funcţii utilizator

Dacă avem de efectuat în Excel calcule complexe, care se repetă frecvent,

există posibilitatea de a crea propriile noastre funcţii, care au acelaşi

comportament ca şi funcţiile native pe care le-am studiat puţin mai înainte.

Aceste funcţii pot fi folosite în formule împreună cu funcţiile native ale

Excel-ului.

Pentru a crea propriile noastre funcţii, trebuie să utilizăm limbajul Microsoft

Visual Basic for Applications (VBA), limbaj care va fi studiat mai în detaliu

în subcaptitolul următor. Având în vedere că noi am studiat limbajul Visual

Basic în anul I, folosirea unei variante a sa nu va fi o problemă.

Presupunem că suntem agent de vânzări şi că primim un comision care este

un anumit procent din vânzarea făcută. Acest comision este variabil, în

funcţie de mărimea vânzării, după cum urmează:

Vânzare < 100, comisionul este de 1%.

Vânzare < 1000, comisionul este de 3%.

Vânzare >= 1000, comisionul este de 5%.

Ne propunem să creăm o funcţie numită Comision, care va calcula

comisionul cuvenit pentru fiecare vânzare. Cel mai comod mod de a arăta

cum se face acest lucru este parcurgerea unor paşi expliciţi:

Din meniul principal alegeţi opţiunile Tools–Macro–Visual Basic Editor.

Din fereastra apărută alegeţi opţiunile Insert – Module.

În fereastra modului (Module1), scrieţi codul pentru funcţia utilizator

numită Comision, aşa cum se vede în figura 3.1c.

Se impun câteva comentarii legate de codul prezentat. Numele funcţiei

custom(aşa se mai numeşte funcţia utilizator) este dat în prima linie, după

Fig. 3.1c. Codul funcţiei Comision

Page 47: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

48

cuvântul cheie Function. În paranteză, după numele funcţiei, se pune

argumentul (unul sau mai multe). În linia 2 şi următoarele este corpul

funcţiei. În ultima linie este cuvântul cheie End Function.

Remarcaţi faptul că numele variabilei în care se pune rezultatul care trebuie

returnat de funcţie coincide cu numele funcţiei (în cazul nostru, Comision).

Ne întoarcem în foaia Excel cu comanda File - Close and Return to Microsoft

Excel.

În foaia Excel se introduce funcţia nou creată, aşa cum se vede în figura

3.1d.

Observaţi cum funcţia Comision a ţinut seama de faptul că avem 3 tranşe de

calcul a comisionului, fiecare fiind calculat cu procentul aferent.

După acest model puteţi încerca să creaţi propriile funcţii pentru a vă

convinge că aţi înţeles mecanismul.

În subcapitolul următor, vom studia mai în detaliu limbajul VBA şi vom

vedea câteva aplicaţii concrete, care pot servi de modele pentru viitoarele

aplicaţii pe care le veţi face în calitate de ingineri economişti.

Fig. 3.1.d. Folosirea funcţiei

Comision

Page 48: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

49

Dezvoltarea aplicaţiilor Excel cu limbajul VBA

Consideraţii teoretice

Limbajul Visual Basic pe care l-aţi studiat are şi o variantă numită VBA

(Visual Basic for Applications). Această variantă se găseşte inclusă, ca

limbaj de dezvoltare, în toate aplicaţiile pachetului Microsoft Office,

AutoCAD, Inventor, CATIA şi altele.

Limbajul VBA are aceeaşi filozofie şi sintaxă ca şi Visual Basic, cu

observaţia că are adăugate obiecte specifice aplicaţiei în care este inclus.

Astfel, în Excel, va avea obiecte noi, cum ar fi Worksheet (foaie), Range

(zonă de celule), Cells, care vor avea evenimente, proprietăţi şi metode

specifice.

Având în vedere că în acest moment noi ştim deja să scriem programe în

Visual Basic, cel mai indicat lucru este să învăţăm programarea VBA prin

exemple, cu explicaţiile de rigoare atunci când este necesar.

Ca şi în Visual Basic, avem şi aici proceduri şi funcţii, care se activează la

un eveniment sau pot fi apelate din alte proceduri sau funcţii. Ştim de la

studiul Excel-ului că putem crea macro-uri pe care să le punem în spatele

unui buton de comandă sau a unei opţiuni de meniu. Aceste macro-uri nu

sunt altceva, decât proceduri VBA generate automat.

Ca metodologie de lucru, vom crea câteva butoane pe o foaie Excel care vor

lansa proceduri VBA, cu evenimentul Click.

Mediul de dezvoltare VBA-Excel

Programele VBA-Excel se scriu cu ajutorul editorului cu numele Visual

Basic Editor. Există două posibilităţi de a ajunge în acest editor:

Tools / Macro / Visual Basic Editor

Dublu-Click pe un buton de comandă sau alt obiect creat în prealabil pe o

foaie de calcul.

Page 49: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

50

În figura 3.2 este prezentat editorul VBA-Excel. Observaţi în stânga numele

tuturor foilor pe care le conţine acest Workbook (aici în număr de 4). La

momentul iniţial, nu avem cod scris, aşa că zona de cod va fi goală.

Dacă vă lipsesc unele toolbar-uri, le puteţi activa cu comanda View /

Toolbars / (Debug, Edit şi Standard). Activaţi cele 3 toolbar-uri din

paranteză. Ele conţin comenzi pe care o să le utilizăm mai târziu.

Crearea obiectelor pe o foaie Excel

Pe o foaie Excel se pot crea obiecte la fel ca pe un formular Visual Basic

obişnuit, cu observaţia că aici putem pune obiectele, oriunde pe foaie.

Mai întâi trebuie să activăm toolbar-ul Visual Basic cu comanda View –

Toolbars – Visual Basic, care este arătată în figura 3.3.

Fig. 3.2. Editorul Visual Basic

Zona în care se scrie codul

Toolbar-ul Debug

Toolbar-ul Edit

Foile Workbook-ului

Page 50: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

51

Fig. 3.4. Obiecte într-o foaie Excel

După cum se observă, din toolbar-ul Visual Basic se activează Toolbox-ul,

iar din Toolbox se activează caseta Properties.

Iată o foaie Excel cu câteva obiecte create pe ea (figura 3.4).

Fig. 3.3. ”Uneltele” necesare creării obiectelor VBA-Excel

Toolbar-ul Visual Basic

Toolbox

Caseta Properties

Page 51: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

52

Recunoaşteţi, desigur, obiectele create: buton de comandă, etichetă,

combobox, textbox şi checkbox.

Pe lângă obiectele din Tolbox, vom folosi obiecte pe care le găsim în Excel,

cum ar fi foile de calcul, celulele şi zonele. Iată o scurtă descriere a acestora:

Foile de calcul.

Există mai multe moduri de a referi foile de calcul. Fiecare din foile unui

Workbook are un index, începând de la 1 până la câte foi există. De

asemenea, fiecare foaie are un nume (implicit – Sheet1, Sheet2, ...) sau

numele pe care îl dăm noi – Date, Panou, Informatii, etc. Prin urmare foile

pot referite, fie după index, fie după nume. Iată aceste referiri:

După index: Sheets(1).Activate - activează foaia 1(prima din

stinga).

După nume: Sheets(“Informatii”).Activate - activează foaia

cu numele Informatii.

Atunci când se face referire la obiecte de pe o foaie anume, foaia este

apelată cu Sheet1, Sheet2, . . ., aşa cum sunt ele prezentate în Visual Basic

Editor, în partea stângă.

Celulele.

Şi celulele unei foi pot fi referite în mai multe moduri, dar metoda indicată

de noi este ca celulele să fie identificate cu notaţia Cells(rând, coloană),

care poate fi uşor folosită şi în cicluri Do While sau For ... Next.

Iată câteva exemple de apelare a unor celule din foaia Sheet1:

A1: Sheet1.Cells(1,1)

A2: Sheet1.Cells(2,1)

B5: Sheet1.Cells(5,2)

D3: Sheet1.Cells(3,4)

Page 52: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

53

Zonele.

După cum se ştie, zona(range) este formată din una sau mai multe celule

adiacente. Iată cum se face referire la o zonă:

Public Sub Verificare()

Dim calcule As Range, i As Integer, j As Integer

i = 2: j = 6

Set calcule = Range(Sheet9.Cells(i, j), Sheet9.Cells(i +

10, j))

. . . . . . .

. . . . . . .

End Sub

Evenimente, proprietăţi şi metode

Deoarece evenimentele, proprietăţile şi metodele obiectelor clasice din

Toolbox ne sunt cunoscute, ne vom referi numai la obiectele specifice

Excel-ului.

Evenimente.

Evenimentele se referă la obiectul Worksheet. Iată evenimentele cele mai

folosite:

Activate - când se activează foaia. Ex. Sheet1.Activate.

Select - selectarea foii.

Change - când se produce o modificare într-o celulă a foii.

Proprietăţi şi metode.

Proprietăţile şi metodele unui obiect sunt afişate în cadrul meniurilor

contextuale, după ce punem punct, în urma unui obiect, ca în exemplul de

mai jos:

Page 53: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

54

Metodele şi proprietăţile se deosebesc după icon-ul din faţa denumirii. Cel

cu paralelipiped se referă la metode.

Iată câteva proprietăţi mai des folosite ale obiectelor Excel de bază:

Worksheet - Range, Cells, Visible.

Range - Cells, Font.

Cells - Font, Bold, Value.

Metode ale obiectelor de bază:

Worksheet - Activate, Copy, Delete, ClearContents, Select, Protect,

Unprotect.

Range - Clear, ClearContents, ClearFormats, Copy, Cut, Delete,

Select, Show.

Fig. 3.5. Meniu contextual

Page 54: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

55

Exemple de aplicaţii în VBA-Excel

Circulaţia printre foile unui Workbook

Această aplicaţie are scopul de a învăţa cum să trecem de la o foaie la alta în

cadrul unei aplicaţii cu mai multe foi. Primul pas este crearea unor foi de

calcul dintre care una este principală, numită Panou, din care se vor activa

pe rând celelalte.

Această navigare printre foile unui Workbook se foloseşte cam în toate

aplicaţiile Excel, de aceea vom încerca să înţelegem acest aspect.

Crearea foilor. Ne propunem să creăm 7 foi de calcul, una de bază şi 6 care

vor fi apelate din foaia de bază. Aceste foi vor avea următoarele nume:

Panou – foaia principală.

Cheltuieli

Situatii

Cataloage

Ianuarie

Februarie

Martie

Foaia Panou, arată ca în figura 3.6, are desenate 6 butoane de comandă cu

care se activează cele 6 foi corespunzătoare.

Observaţi că s-au făcut unele formatări, o bordurare a zonei butoanelor şi o

colorare a fondului celulelor din acea zonă.

Fig. 3.6. Foaia Panou

Page 55: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

56

Foaia Cheltuieli, arată ca în figura 3.7.

Observaţi că pe această foaie se află şi un buton, care va servi la întoarcerea

în foaia de bază, Panou.

Foaia Situatii, va fi o foaie goală care are numai butonul Panou, care va

servi la întoarcerea în foaia de bază, Panou.

Foaia Cataloage, este prezentată în figura 3.8. Observaţi butonul Panou.

Foile Ianuarie, Februarie şi Martie: vor avea configuraţia din figura 3.9.

Fig. 3.7. Foaia Cheltuieli

Fig. 3.8. Foaia Cataloage

Fig. 3.9. Foaia Ianuarie

Page 56: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

57

Scrierea codului.

Pentru fiecare foaie va fi scris codul său. Avem 7 foi, deci vom scrie ceva

cod pentru fiecare. Codul se va referi, deocamdată, la a face vizibile sau

invizibile foile, după cum o cere situaţia.

Pentru a scrie cod ataşat evenimentului Click al unui buton, faceţi dublu-

click pe acel buton. Aveţi grijă să fiţi în modul Design prin apăsarea

butonului . Prin apăsarea alternativă a acestui buton putem seta modul

Design (când putem crea obiecte în foaie) sau modul Run (când aceste

butoane funcţionează, sunt active).

Pentru foaia Panou vom avea codul din figura 3.10.

Page 57: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

58

Ce ne arată acest cod? Nişte proceduri care se lansează la evenimentul Click

al unor butoane de comandă. Observaţi în partea stângă, care sunt cele 7 foi

pe care le-aţi creat.

Pentru fiecare foaie se foloseşte, pentru a o face vizibilă, proprietatea

Visible. Valorile acesteia sunt date de 2 constante xlSheetVisible

(vizibil) şi xlSheetHidden (ascuns).

Observaţi combinaţiile cunoscute:

Fig. 3.10. Codul ataşat foii Panou

Page 58: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

59

Obiect . Proprietate = Valoare ;(Sheet3.Visible = xlSheetVisible)

Obiect . Metoda arg1, arg2, … ;(Sheet3.Select - aici nu avem argumente)

Pentru celelalte foi, codul este identic, pentru toate, se vizualizează foaia

Panou şi se face invizibilă foaia curentă. Astfel, pentru foaia Ianuarie,

codul ataşat este prezentat în figura 3.11.

Când aţi terminat de scris codul pentru fiecare foaie şi aţi ieşit din modul

Design, aplicaţia funcţionează, adică prin apăsarea butoanelor putem trece

de la o foaie la alta. În acest moment primul pas spre programarea VBA-

Excel a fost făcut.

Fig. 3.11. Codul pentru foaia Ianuarie

Page 59: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

60

Urmărire cheltuieli

Această aplicaţie are un profund caracter practic, veţi învăţa tehnici de

manevrare a datelor prin foile Excel. Iată câteva din aceste tehnici:

Crearea şi folosirea unei funcţii (funcţia UltimRind – care determină

ultimul rând ocupat dintr-o coloană).

Folosirea în foile Excel a obiectelor: buton de comandă,

etichetă(label), OptionButton, Combo Box.

Filtrarea datelor într-o foaie Excel, prin program.

Completarea celulelor cu valori din alte foi.

Ascunderea unor obiecte de care nu e nevoie într-un anumit context.

Anularea funcţionalităţii unor obiecte în anumite împrejurări pentru a

evita unele erori făcute de utilizatori.

Împiedicarea posibilităţii de a introduce date în alte coloane decât în

cea care trebuie.

Completarea unor celule cu date provenite din combobox-uri.

Încărcarea unui combobox cu date dintr-o zonă de celule.

Cum se extrage luna dintr-o dată calendaristică.

Un program, o aplicaţie informatică, nu pot fi concepute până nu înţelegem

scopul pentru care trebuie făcute. Calculatorul nu ne poate ajuta cu nimic

dacă nu înţelegem pe deplin ceea ce el trebuie pus să facă.

În cazul nostru, al acestei aplicaţii trebuie să ţinem evidenţa unor cheltuieli

(ale unei firme, de exemplu). Toate cheltuielile se introduc într-un tabel din

foaia numită Cheltuieli. Aceste cheltuieli au fost împărţite în 6 categorii:

1 - Materii prime

2 – Salarii

3 – Birotică

4 – Deplasări

5 – Utilităţi

6 – Alte cheltuieli

Page 60: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

61

Categoriile de cheltuieli şi lunile anului vor fi stocate pe foaia numită

Cataloage.

Ceea ce trebuie să facă aplicaţia noastră este să poată afişa comod diferite

situaţii cum ar fi:

Situaţia tuturor cheltuielilor unei luni.

Situaţia cheltuielilor unei luni pe o anumită categorie de cheltuieli –

de exemplu utilităţile pe luna ianuarie, salariile pe luna martie etc.

Vom avea 4 foi, după cum urmează:

Panou – foaia cu interfaţa;

Cheltuieli – foaia în care se introduc toate cheltuielile, de-a

valma, în ordinea în care se primesc facturile, nu neapărat

ordinea calendaristică;

Situatii – foaia în care vom filtra datele;

Cataloage – foaia în care vom pune categoriile de cheltuieli

şi lunile anului.

Crearea foilor.

Foaia Panou va conţine interfaţa, aşa cum se vede în figura 3.12.

Fig. 3.12. Foaia Panou

Page 61: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

62

Cele 3 butoane sunt numite astfel:

cmdCheltuieli, cmdSituatii, cmdCataloage

Zona în care se pun butoanele va fi colorată în galben deschis sau altă

culoare pentru a da zonei un aer de interfaţă profesionistă, nu-i aşa?

Codul care va fi scris va trebui ca atunci când facem ”click” pe un buton să

ne ducă în foaia corespunzătoare şi să ascundă foaia Panou.

Foaia Cheltuieli, arată ca în figura 3.13.

=Month(A6)

Zonă formatată

Fig. 3.13. Foaia Cheltuieli

Proprietăţile Combobox-ului:

Name: cboCategorii

ColumnCount: 2

ColumnWidth: 0 pt; 1 pt

ListFillRange: Cataloage!A6:B11

Butonul cmdPanou este folosit pentru

vizualizarea foii Panou şi ascunderea foii

Cheltuieli.

cmdPanou

Page 62: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

63

Categoriile se introduc prin codurile lor (1...6). Combobox-ul

cboCategorii este folosit pentru a introduce corect categoriile şi în coloana

care trebuie. Observaţi că acesta are 2 coloane (ColumnCount = 2) şi se

încarcă din zona A6:B11 din foaia Cataloage, adică din 2 coloane Excel.

Codul care va fi scris la evenimentul Click al combobox-ului din foaia

Cheltuieli ne va lămuri cum de nu putem introduce valori decât în coloana

Categorii.

Foaia Situatii – este folosită pentru afişarea situaţilor dorite despre starea

cheltuielilor. Aici au fost create câteva obiecte care vor ajuta la introducerea

datelor necesare interogării, adică:

cboLuna – combobox pentru alegerea lunii din care se afişează cheltuielile.

OptToate – buton de opţiune pentru afişarea tuturor categoriilor din luna

respectivă.

optCategorie – buton de opţiune pentru alegerea unei singure categorii.

cboCategorii – pentru a alege categoria dorită la afişare.

cmdFiltru – buton care lansează procedura de executare a filtrării.

Foaia Situaţii este afişată în figura 3.14.

Cum se procedează?

- se alege luna;

- se alege o opţiune referitoare la categorii;

Butonul de

filtrare

cboCategorii

optToate

optCategorie

cmdPanou

Fig. 3.14. Foaia Situatii

Page 63: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

64

- butonul cmdFiltru nu va fi activ decât atunci când s-au ales

opţiunile;

- se apasă butonul Filtreaza, care lansează procedura de

filtrare.

Foaia Cataloage este folosită pentru a pastra informaţiile legate de categorii

şi lunile anului de unde sunt încărcate în combobox-uri. În figura 3.15 este

prezentată această foaie.

Butonul Panou este folosit pentru întoarcerea în foaia principală Panou.

Scrierea codului.

Urmează partea cea mai frumoasă, a aplicaţiei, să dăm viaţă obiectelor pe

care le-am creat.

Se pune, firesc, întrebarea, unde se va plasa codul pe care îl vom scrie?

Codul poate fi plasat atât în cadrul foilor cât şi în cadrul modulelor. De

regulă, procedurile care aparţin unei foi se scriu în acea foaie, iar funcţiile şi

procedurile publice se scriu în module.

Iată cum arată editorul înainte de a introduce codul, figura 3.16.

Fig. 3.15. Foaia

Cataloage

Fig. 3.16. Visual Basic Editor – forma iniţială

Page 64: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

65

Nu există o ordine a scrierii codului, în practică se procedează după

experienţa fiecăruia. În cazul nostru vom urma un parcurs indicat de

lucrarea de laborator.

Vom crea pentru început funcţia UltimRind, având în vedere faptul că de

multe ori avem nevoie să aflăm care este ultimul rând în care se găseşte ceva

pe o coloană. Această funcţie este plasată într-un modul. Pentru inserarea

unui modul, daţi comanda Insert – Module.

În modulul respectiv inseraţi codul, aşa cum se vede în figura 3.17.

Fig. 3.17. Funcţia UltimRind

Codul complet este:

Function UltimRind(foaia As Worksheet, ByVal rstart As

Integer, ByVal coloana As Integer) As Integer

Dim m As Integer

Do Until foaia.Cells(rstart, coloana) = ""

m = rstart

rstart = rstart + 1

Loop

UltimRind = m

End Function

Funcţia este tip Integer şi are ca parametri, foaia pe care se face căutarea

(foaia), rândul de unde începe căutarea (rstart) şi coloana pe care se face

căutarea (coloana). Observaţi tipurile de dată pentru fiecare variabilă.

Page 65: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

66

Codul ataşat foii Panou.

Acest cod trebuie să fie legat de cele 3 butoane ale foii, care deschid foile

corespunzătoare. În figura 3.18 este prezentat acest cod.

Fig. 3.18. Codul ataşat foii Panou

Dacă nu se vede bine pe în figură, mai jos este dat codul complet:

Private Sub cmdCataloage_Click()

Sheet3.Visible = xlSheetVisible

Sheet3.Select

Sheet1.Visible = xlSheetHidden

End Sub

Private Sub cmdCheltuieli_Click()

Sheet5.Visible = xlSheetVisible

Sheet5.Select

Sheet1.Visible = xlSheetHidden

End Sub

Private Sub cmdSituatii_Click()

Page 66: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

67

Sheet2.Visible = xlSheetVisible

Sheet2.Select

Sheet1.Visible = xlSheetHidden

End Sub

Codul ataşat foii Situaţii. Este prezentat în continuare, cu comentariile de

rigoare:

Mai întâi vom introduce 2 proceduri la evenimentul Click ale combobox-

urilor cboCategorii şi cboLuna. Aceste proceduri activează butonul

cmdFiltru, ca să poată fi folosit numai după ce s-a ales luna şi categoria

după care să se facă filtrarea, împiedicând astfel o eroare (adică o filtrare

fără date iniţiale valide).

Private Sub cboLuna_Click()

cmdFiltru.Enabled = True

End Sub

Private Sub cboCategorii_Click()

cmdFiltru.Enabled = True

End Sub

Dacă alegem să filtrăm după toate categoriile, putem să facem invizibile

eticheta lblCategorii şi combobox-ul cboCategorii, pentru că nu

avem nevoie de ele, iar dacă am ales toate categoriile, ar fi un non-sens să

alegem o anume categorie, nu-i aşa?

Private Sub optToate_Click()

lblCategorii.Visible = False

cboCategorii.Visible = False

cmdFiltru.Enabled = True

End Sub

Dacă am ales opţiunea de filtrare după o categorie, va trebui să vizualizăm

eticheta lblCategorii şi combobox-ul cboCategorii, pentru a le putea

folosi. Procedura următoare face exact acest lucru.

Private Sub optCategorie_Click()

lblCategorii.Visible = True

cboCategorii.Visible = True

End Sub

Page 67: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

68

Urmează procedura care porneşte la evenimentul Click al butonului

cmdFiltru, filtrarea efectivă:

Private Sub cmdFiltru_Click()

Dim n As Long, i As Long, j As Long, luna As Long,

categoria As Long, index As Long

'Sterg afisarea veche din foaia Situatii -----------------------------------------------------

n = UltimRind(Sheet2, 5, 1)

Range(Cells(6, 1), Cells(n + 1, 4)).ClearContents

'Transfer inregistrarile filtrate -----------------------------------------------------------

n = UltimRind(Sheet5, 6, 1) ‘Apelez funcţia UltimRind ----------- index = cboCategorii.ListIndex

luna = cboLuna.List(cboLuna.ListIndex, 0)

If optCategorie.Value = True Then 'Acest If se închide la ***Primul

IF*** If index = -1 Then

index = 0

End If

categoria = cboCategorii.List(index, 0)

'Începem transferul înregistrărilor filtrate, celulă cu celulă--------------------- i = 6: j = 6

Do While i <= n

'Cazul când avem categorie ---------------------------------- If Sheet5.Cells(i, 2) = luna And Sheet5.Cells(i,

4) = categoria Then

Cells(j, 1) = Sheet5.Cells(i, 1)

Cells(j, 2) = Sheet5.Cells(i, 3)

Cells(j, 3) = Sheet5.Cells(i, 4)

Cells(j, 4) = Sheet5.Cells(i, 5)

Cells(j, 5) = Sheet5.Cells(i, 6)

j = j + 1

End If

i = i + 1

Loop

Else 'De la ***Primul IF*** --------------------------------- i = 6: j = 6

Do While i <= n

'Cazul când filtrăm numai după lună(toate categoriile) -----------------------

If Sheet5.Cells(i, 2) = luna Then

Cells(j, 1) = Sheet5.Cells(i, 1)

Cells(j, 2) = Sheet5.Cells(i, 3)

Page 68: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

69

Cells(j, 3) = Sheet5.Cells(i, 4)

Cells(j, 4) = Sheet5.Cells(i, 5)

Cells(j, 5) = Sheet5.Cells(i, 6)

j = j + 1

End If

i = i + 1

Loop

End If ‘Aici se închide ***Primul IF*** -------------------------

‘Aici se aici se completează titlul, în celula C3

If optCategorie.Value = True Then

Cells(3, 3) = cboLuna.List(cboLuna.ListIndex, 1) & " -

" & cboCategorii.List(index, 1)

Else

Cells(3, 3) = cboLuna.List(cboLuna.ListIndex, 1)

End If

‘Când am terminat de filtrat, ştergem categoria aleasă şi blocăm butonul

cmdFiltru cboCategorii = ""

cmdFiltru.Enabled = False

End Sub

‘Butonul de întoarcere în foaia Panou, are ataşată procedura următoare

Private Sub cmdPanou_Click()

Sheet1.Visible = xlSheetVisible

Sheet1.Select

Sheet2.Visible = xlSheetHidden

End Sub

Observaţii importante!

i. Observaţi că unele celule au numele foii în faţă, altele nu. Regula

este următoarea: dacă celula este din foaia curentă (în cazul nostru

Situatii), nu mai e nevoie să se scrie şi foaia.

ii. Observaţi la procedura de filtrare, un IF mare, care se închide numai

la sfârşit. El are rolul de a separa filtrarea pentru toate categoriile de

filtrarea după o singură categorie. Elementele acestui IF au fost

marcate cu simbolul ***Primul IF***, pentru a vă uşura înţelegerea.

Codul ataşat foii Cheltuieli. Acest cod este format din 2 proceduri, cea

care deschide foaia Panou (care este comună la toate foile) şi cea care

Page 69: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

70

completează câmpul Categorie dintr-un combobox. Codul este prezentat mai

jos:

Această procedură scrie în celula curentă, valoarea pe care am selectat-o din

combobox-ul cboCategorii. Acest combobox are are 2 coloane, 0 şi 1. În

coloana Categorie vor fi puse codurile categoriei, iar în combobox-ul

cboCategorii sunt afişate denumirile. Încercaţi să întelegeţi această manevră,

deosebit de practică, pe care o veţi folosi şi în alte împrejurări. Dacă nu

pricepeţi întrebaţi profesorul pentru explicaţii suplimentare.

Private Sub cboCategorii_Click()

If ActiveCell.Column = 4 Then

ActiveCell.Value =

cboCategorii.List(cboCategorii.ListIndex, 0)

Else

MsgBox "trebuie sa fiti in coloana Categorie"

End If

cboCategorii.Text = ""

End Sub

Butonul de întoarcere în foaia Panou, are ataşată procedura următoare:

Private Sub cmdPanou_Click()

Sheet1.Visible = xlSheetVisible

Sheet1.Select

Sheet5.Visible = xlSheetHidden

End Sub

Foaia Cataloage, practic nu are cod. Are numai procedura de returnare în foaia

Panou, ataşată butonului cmdPanou, aşa cum se vede mai jos:

Private Sub cmdPanou_Click()

Sheet1.Visible = xlSheetVisible

Sheet1.Select

Sheet3.Visible = xlSheetHidden

End Sub

Aplicaţia prezentată este terminată când funcţionează corect, adică puteţi

introduce cheltuieli, apoi le puteţi afişa pe luni şi categorii de cheltuială. Nu

Page 70: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

71

este obligatoriu să aveţi aceleaşi categorii care au fost propuse aici, puteţi

inventa altele, mai multe sau mai puţine, dar pentru aceasta trebuie să

adaptaţi adresele de la proprietatea ListFillRange ale combobox-ului.

Page 71: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

72

Observaţii privind aplicaţiile VBA Excel

În acest paragraf vor fi prezentate unele aspecte practice, provenite din

propria experienţă şi pe care le consider deosebit de utile pentru cei care

dezvoltă aplicaţii Excel. Exemplele sunt luate chiar din aplicaţiile pe care le-

am creat şi care sunt în stare de funcţionare.

1. Ştergeri din foile de calcul.

a. Ştergerea conţinutului unei zone – foaia curentă (A1:J10):

b. Ştergerea conţinutului întregii foi – foaia curentă (ClearContents):

c. Ştergere totală, cu format cu tot din foaia curentă (Clear):

d. Ştergerea din altă foaie (ne aflăm pe fila Sheet1 şi ştergem din fila

Sheet2):

Page 72: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

73

2. Culoarea fontului. Pentru modificarea culorii într-o celulă sau testarea

culorii celulei.

a. Modificarea culorii unei celule:

b. Testarea culorii fontului dintr-o celulă:

3. Copierea completă a unei foi cu formule şi obiecte (butoane de

comanda, butoane de opţiune etc.) în altă foaie.

- foaia care se copiază trebuie să fie în modul Design şi neprotejată.

- se selectează toată foaia.

- se copiază în noua foaie.

- obiectele de pe foaie vor avea nume generice (ComboBox1,

TextBox1 etc).

- se redenumesc toate obiectele.

- se copiază codul.

ColorIndex

1 Negru

2 Alb

3 Roşu

4 Verde

5 Albastru

6 Galben

7 Violet

Page 73: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

74

4. Inserarea controlului Data Time and Picker.

Acest control, dacă nu se găseşte printre controalele existente ( din

toolbox), trebuie înregistrat. Procedura este următoarea:

- se afişează bara cu instrumente:

- se alege opţiunea Register Custom Control . . .

- se alege fişierul cu controlul respectiv, Mscomct2.ocx., din

directorul ...Windows / system32.

Page 74: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

75

- după această manevră controlul trebuie să apară în toolbox-ul la

More Controls ( ), cu numele: Microsoft Date Time and Picker

Control 6.0 (SP 4), cam pe la mijlocului listei.

Pentru a introduce într-o celulă, data extrasă dintr-un obiect Date Time and

Picker se foloseşte expresia:

ActiveCell.Value = Format(dtpDataChelt.Value, "dd-mmm-yy")

Observaţi că data se poate introduce şi cu format.

5. Despre evenimentul Worksheet_Change

Acest eveniment se declanşează oricând se schimbă a valoare dintr-o foaie

de calcul, exceptând modificările executate de comanda automată Calculate.

Evenimentul returnează obiectul de tip range, numit Target, care este, de

regulă, o celulă (cea în care s-a făcut modificarea). Această celulă are

adresa:

Cells(Target.row, Target.Column).

Această metodologie poate fi folosită pentru crearea de audit-uri,

introducerea asistată a datelor în celule etc.

Iată un exemplu de procedură a acestui eveniment:

Private Sub Worksheet_Change(ByVal Target As Range)

If Sheet1.Cells(Target.row, Target.Column) = "" Then Exit Sub

If IntroducereDirectorOK = False And Target.Column = 3 Then

MsgBox "Eroare! Folositi caseta Alege director!!"

Sheet1.Cells(Target.row, Target.Column).Value = ""

End If

End Sub

Parametrul Target se pune automat, atunci când se alege evenimentul

Change al unei foi. Variabila IntroducereDirectorOK este de tip boolean

şi primeşte valoarea True când se procedează corect şi valoarea False când

nu se respectă regula de introducere (de exemplu, se introduce manual o

Page 75: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

76

valoare care ar trebui selectată dintr-un combobox, cum este cazul din

exemplul prezentat).

6. Despre parametrii de tip ByVal

Atunci când folosim o funcţie cu parametri şi avem în acelaşi modul

variabile cu acelaşi nume, s-ar putea întâmpla ca valorile acestor variabile să

se modifice, chiar dacă sunt în proceduri diferite. Acest lucru se întâmplă

atunci când apelăm o funcţie cu parametri, iar numele parametrului din

procedura apelantă coincide cu numele variabilei din funcţie, pentru că

funcţia nu returnează valoare ci adresa locaţiei unde se află acea valoare.

Pentru a împiedica acest lucru, parametrii funcţiei se declară cu ByVal ca în

exemplul următor:

Function UltimRind(foaia As Worksheet, ByVal rstart As

Integer, coloana As Integer) As Integer

Dim m As Integer

Do Until foaia.Cells(rstart, coloana) = ""

m = rstart

rstart = rstart + 1

Loop

UltimRind = m

End Function

Sub Ordonare(foaia As Worksheet, ByVal rstart As Integer,

col1 As Integer, col2 As Integer, nrcol As Integer,

tip As String)

Dim ur As Integer

ur = UltimRind(foaia, rstart, col1)

If tip = "A" Or tip = "a" Then

Range(foaia.Cells(rstart, col1), foaia.Cells(ur,

col2)).Sort Key1:=foaia.Cells(rstart, nrcol),

Order1:=xlAscending, Header:= _

xlGuess, OrderCustom:=1, MatchCase:=False,

Orientation:=xlTopToBottom

Else

Page 76: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

77

Range(foaia.Cells(rstart, col1), foaia.Cells(ur,

col2)).Sort Key1:=foaia.Cells(rstart, nrcol),

Order1:=xlDescending, Header:= _

xlGuess, OrderCustom:=1, MatchCase:=False,

Orientation:=xlTopToBottom

End If

End Sub

Observăm că variabila rstart a fost declarată cu ByVal, pentru că ea trebuie

să întoarcă de fiecare dată o valoare calculată. Dacă nu am fi procedat aşa se

produceau anomalii, greu de depistat.

7. Funcţia Split

Această funcţie returnează un şir de substriguri care sunt delimitate de un

simbol care va fi indicat.

Sintaxa: Split(expresie, [delimitator])

Exemplu: (cu delimitator virgula)

Dim sir() As String ’Celula Cells(2,2) = ”TCM, 2, 1121”

sir = Split(Sheet9.Cells(2, 2), ",")

sir(0) = ”TCM”

sir(1) = ”2”

sir(2) = ”1121”

x = UBound(sir) - 2, ultimul index

y = LBound(sir) - 0, primul index

Dacă se dimensiona: Dim sir(3 to 10), atunci:

x = UBound(sir) - 3, primul index

y = LBound(sir) - 5, ultimul index

De multe ori se preferă să se impună indicii în acest fel, pentru anumite

corespondenţe.

Iată o secvenţă concretă de cod care conţine funcţia Split:

Page 77: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

78

Delimitatorul este virgula.

8. Protejarea şi deprotejarea foilor din cod VBA

De multe, în aplicaţiile în mediul Excel apare necesitatea protejării foilor

pentru a nu distruge accidental anumite date sau formule. În acelaşi timp,

dacă e nevoie să se scrie, prin cod VBA, anumite date în celule, nu se poate

dacă celulele respective sunt protejate. În această situaţie, trebuie ca înainte

de a scrie ceva într-o celulă, foaia să fie deprotejată, apoi să fie protejată din

nou.

Iată o secvenţă de program cu deprotejare/protejare de foaie:

Private Sub cmdTiparire_Click()

'Decolorez zonele galbene

ActiveSheet.Unprotect

Application.Goto Reference:="Zona2"

Selection.Interior.ColorIndex = xlNone

Range("B13").Select

'Apelez modulul de tiparire

Tiparire

Application.Goto Reference:="Zona2"

With Selection.Interior

.ColorIndex = 6

.Pattern = xlSolid

End With

ActiveSheet.Protect

Range("D13").Select

Sheets("OrdonantarePlata").Visible = True

Sheets("OrdonantarePlata").Select

Sheets("Angajament").Visible = False

End Sub

Page 78: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

79

Observaţi metodele folosite pentru foaia curentă Unprotect şi Protect.

9. Formatarea zonelor

De multe, în aplicaţiile în mediul Excel apare problema schimbării culorii

ori a protecţiei unor celule. De exemplu, atunci când avem de completat

unele date într-o foaie protejată şi cu multe formule, în celule izolate, ar fi

indicat să colorăm celulele în care trebuie să intervenim, iar după intervenţie

să scoatem culoarea şi să le protejăm din nou. Această necesitate apare când

trebuie modificate unele valori, apoi să fie protejate pentru a nu se şterge

accidental, cum ar fi cursul valutar după care se fac unele calcule pentru o

anumită perioadă.

Problema care se pune este cum gestionăm cât mai simplu mulţimea de

celule răspândite în toată foaia şi a împiedica greşelile. Aceste celule se

grupează într-o zonă care va fi atribuită unei variabile, lucrându-se numai cu

această variabilă.

Exemplul care urmează va arăta o secvenţă de cod care protejează /

deprotejează şi colorează / decolorează o zonă de celule disparate.

Observaţi cum se construieşte zona pe care se lucrează – a fost atribuită

variabilei „r”. A fost construită din celule dispersate în coloana C.

Observaţi, de asemenea, proprietatea Interior care grupează proprietăţile

legate de formatarea celulelor.

Sugestie! Pentru a afla codurile pentru culori, înregistraţi un macro pe care

îl puneţi să coloreze celule, fonturi etc. Intraţi în editorul VBA şi de acolo

aflaţi ce coduri a pus macro-ul, eventual numele unor proprietăţi şi merode.

Page 79: Informatica Manageriala - Curs

Informatică managerială Capitolul 3

80

Concluzii

Acest capitol v-a pus la dispoziţie, într-un mod accesibil, informaţii extrem

de utile pentru a vă ajuta să creaţi propriile aplicaţii informatice pentru a

putea fi folosite în actul de conducere. S-au prezentat numai informaţii

teoretice de care aveţi nevoie pentru a înţelege studiile caz, fără a se insista

pe detalii. Studiile de caz şi aplicaţiile au fost astfel alese ca să fie cât mai

sugestive şi mai abordabile. Ele pot fi aplicate direct în practică, sau pot fi

un punct de plecare aplicaţii în firma în care veţi lucra.

Mediul VBA-Excel este excelent pentru dezvoltarea aplicaţiilor informatice

de tip managerial, putând fi create aplicaţii extrem de flexibile şi utile fără a

fi nevoie să se apeleze la specialişti cu mare experienţă, care ar însemna

preţuri de cost ridicate. Puteţi combina funcţiile native Excel(câteva sute) cu

propriile funcţii. Ca manager de firmă vă puteţi pregăti proprii specialişti

care să vă creeze aplicaţii în Excel, folosind limbajul VBA. Aceşti

specialişti pot proveni din rândul absolvenţilor de inginerie economică.

Tipurile de aplicaţii le veţi descoperi singuri, plecând de la simple aplicaţii

de gestiune, până la aplicaţii de analiză economică, tot mai necesare în

economia de piaţă.

V-au fost prezentate aplicaţii în detaliu, parcurgând fiecare pas, de la idee

până la finalizarea ei. Codul sursă a fost comentat şi explicat acolo unde a

fost cazul, pentru a vă face cât mai uşor demersul.

În paragraful anterior v-au fost prezentate şi explicate opt observaţii utile, pe

care le veţi putea folosi în cazul că veţi deveni dezvoltator de aplicaţii în

mediul VBA – Excel. Acestea sunt rodul propriei experienţe a autorului.

În concluzie, se poate spune că mediul VBA-Excel este un excelent mod de

a dezvolta aplicaţii informatice manageriale, cu forţe proprii.

Page 80: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

81

Capitolul 4. Dezvoltarea aplicaţiilor cu Google Docs

Acest capitol îşi propune să prezinte un produs informatic produs de

compania americană Google, ca o alternativă a pachetului Microsoft Office

care este folosit de multe firme româneşti şi străine. Acest pachet de

programe are multe facilităţi care pot fi folosite în managementul firmelor,

cum ar fi lucrul în echipă pe un singur document, vizualizarea prin Internet a

unor documente cu caracter public, conferinţe pe Internet etc.

Elemente de bază

Google Docs este o aplicaţie Web oferită gratuit de compania Google,

concepută pentru publicul larg care are nevoie de un editor de text, de calcul

tabelar şi de o prezentare în stil PowerPoint. Google Docs se aseamănă mult

cu sursa ei de inspiraţie, Microsoft Office, dar adaptată folosirii ca aplicaţie

Web. Prin urmare, folosirea ei nu ridică nici un fel de problemă pentru

cunoscătorii Word-ului şi Excel-ului.

În principiu, un utilizator oarecare trebuie să acceseze o pagină Web, să se

logheze cu un user şi o parolă, după care poate avea acces la documentele

proprii, care sunt stocate pe puternicele servere ale companiei Google. Prin

urmare, nu trebuie să avem grija serverului, a securităţii datelor sau a reţelei.

Pagina Web unde trebuie să vă logaţi este http://docs.google.com/. Pentru a

avea acces la această aplicaţie, trebuie să aveţi un cont de poştă electronică

[email protected].

Page 81: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

82

Crearea unui nou cont gmail

- Deschiderea paginii https://gmail.com ;

- Din pagina deschisă se apasă butonul Sign up for Gmail;

- Se completează datele cerute de formularul deschis.

După ce aveţi cont pe gmail (e-mail gratuit oferit de compania Google),

puteţi acces apliaţia Google Docs.

Aplicaţia Google Docs are 3 componente:

Documents – echivalentul lui Microsoft Word, un editor de

texte simplificat.

Spreadsheets – echivalentul lui Mocrosoft Excel, o

aplicaţie de calcul tabelar.

Presentations – echivalentul lui Microsoft PowerPoint,

pentru diferite prezentări.

Avantajul acestei aplicaţii este că documentele (cele 3 tipuri), pot fi accesate

de oriunde, de către orice utilizator care are acest drept. La un document se

poate avea drept de editare sau numai drept de vizualizare.

Toate cele 3 tipuri de documente Google Docs au suficiente facilităţi ca să

le facă interesante pentru mulţi utilizatori, inclusiv pentru firme. Nu se pot

compara ca posibiltăţi de dezvoltare a aplicaţiilor cu Excel, nu au inclus

limbajul VBA sau alt limbaj, dar nici nu este nevoie.

Pentru necesităţile acestui curs ne vom ocupa, în special, de calculul tabelar,

pentru a vedea cum se concep şi realizează aplicaţiile de tip managerial.

Aplicaţia Google Docs permite organizarea documentelor în structuri de

directoare cu diferite drepturi de acces, aşa cum se va vedea mai departe.

La pornirea aplicaţiei (http://docs.google.com) apare următoarea interfaţă

(fig. 4.1):

Page 82: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

83

Obsevaţi în partea din dreapta-sus, locul unde trebuie introdus contul de e-

mail şi parola. Dacă nu aveţi un cont de e-mail pe Google, se poate face şi

de aici prin apăsarea butonului Get started, care deschide formularul de

creare a unui cont de e-mail.

Dacă aveţi acest cont, introduceţi contul şi parola, care va deschide interfaţa

din figura 4.2. La prima deschidere Google Docs va fi în varianta engleză,

puteţi opta pentru varianta în limba română, cu butonul Settings (partea

dreaptă-sus).

Fig. 4.1. Interfaţa de start Google

Docs

Page 83: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

84

Interfaţa este cea din dreptunghi, iar cu ajutorul săgeţilor au fost extrase

detalii la scară mărită pentru a putea fi citite mai uşor.

Aplicaţia Google Docs este una complexă, formate din mai multe module:

Gmail, Calendar, Docs, Fotografii, Imagini, Web. Noi vom folosi

deocamdată, modulul Docs, celelalte pot fi folosite în mod individual de

Dvs. De altfel, ceea ce vedeţi în figura 4.2 este modulul Docs.

După ce ajungem în aplicaţia Google Docs/Docs, la început nu avem nimic,

adică directoare sau fişiere, înafară de cele implicite. Prin urmare va trebui

să învăţăm unele manevre, cum ar fi crearea de directoare, salvarea

fişierelor, atribuirea unor drepturi pentru propriile fişiere etc.

Ceea ce se va prezenta în continuare va fi pentru varianta în limba română.

Crearea directoarelor. Forma de prezentarea a structurilor de directoare

diferă puţin de cea cu care v-aţi obişnuit de la Windows Explorer. În

fereastra din stânga sunt afişate numai directoarele de bază, iar în dreapta

sunt afişate atât subdirectoarele cât şi fişierele unui director de bază.

Fig. 4.2. Interfaţa Google Docs după logare

Page 84: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

85

Fişierele pe care le creăm în Google Docs pot fi plasate într-un anume

subdirector creat de noi, sau pot fi lăsate fără a specifica un director. Aceste

fişiere se vor plasa implicit în directorul Neorganizate în dosare.

Structura de directoare în Google Docs se găseşte în directorul implicit

Toate dosarele, care la început are un singur subdirector Neorganizate în

dosare.

Pentru a crea un director trebuie parcurşi următorii paşi:

Dublu-click pe directorul în care vrem să creăm un alt director (la

început se creează în Toate dosarele).

Click-dreapta într-un loc gol din fereastra din dreapta În meniul

contextual apărut se dă comanda Nou – Dosar şi se va crea automat

un director cu numele Dosar nou.

Pe iconiţa directorului nou creat se dă click-dreapta apoi din meniul

contextual apărut se dă comanda Redenumire, se dă noul nume al

directorului, apoi se dă comanda Salvează.

Acestea sunt nişte manevre obişnuite, o să vă familiarizaţi repede cu ele.

Iată cum arată o structură de directoare deja creată (figura 4.3).

Page 85: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

86

Se observă că directorul Mocian conţine 5 fişiere (5 items).

Iată în detaliu, partea din stânga cu explicaţiile de rigoare:

Fig. 4.3. Structură de directoare în Google Docs

Page 86: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

87

Ştergerea directoarelor. Având în vedere structura arborescentă a

directoarelor, pentru a şterge un director, se vor şterge mai întâi

subdirectoarele şi fişierele din el, altfel acestea vor trece automat în Toate

dosarele, respectiv Neorganizate în dosare.

Pentru a şterge un director se procedează astfel:

1. Se face click-dreapta pe numele directorului.

2. Din meniul contextual se alege opţiunea Delete.

Cu aceeaşi metodă se şterg şi fişierele (click-dreapta + Delete).

Mutarea directoarelor şi fişierelor se face prin aceeaşi metodă, click-

dreapta + Move to.

Ca o concluzie, se poate spune că mutarea, ştergerea şi crearea unui director

se face prin aceeaşi metodă, click-dreapta şi alegerea comenzii potrivite din

meniul contextual.

- Fişierele la care sunt proprietar.

- Fişierele pe care am dreptul să le deschid.

- Fişierele preferate (folosite mai des).

- Director care conţine fişierele ascunse.

- Director care conţine fişierele şterse .

- Fişierele fără directoare.

- Directoare create de user.

- Conţine fişierele în format PDF.

- Conţine fişierele de tip text.

- Conţine fişierele de tip PowerPoint (prezentări).

- Conţine fişierele de tip calcul tabelar.

Page 87: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

88

Fişierele create cu Google Docs pot fi partajate, adică numai anumiţi useri

au dreptul de a le vedea sau modifica.

Crearea aplicaţiilor de calcul tabelar

Dintre toate modulele aplicaţiei Google Docs, modulul Foaie de calcul este

cel mai folosit în procesul managerial, deoarece permite urmărirea

activităţilor cantitative în timp real şi la costuri relativ reduse.

Generalităţi

Deschiderea unui document de calcul tabelar se face cu comanda Nou –

Foaie de calcul, care deschide pagina din figura 4.4.

Pentru cei care cunosc programul Excel, nu este o problemă să utilizeze

acest modul, mai ales că acesta a avut ca punct inspiraţie tocmai Excel-ul.

Se impun, totuşi, unele precizări pentru a scoate în evidenţă aspectele

specifice ale acestei aplicaţii de calcul tabelar.

Acest tip de foaie de calcul tabelar nu are un număr fix de coloane şi rânduri

(precum Excel-ul). Acestea se pot adăuga cu comanda Inseraţi. Pentru a

insera mai multe linii deodată se foloseşte butonul (+), din colţul stânga-jos

al paginii (vezi figura 4.4).

Fig. 4.4. Forma iniţială a unui document Foaie de calcul

Buton pentru inserarea mai multor linii (+)

Page 88: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

89

Formulele se introduc ca şi în Excel, exemplu: ” =A1 + B1”, cu semnul “=”

în faţă.

Pentru introducerea funcţiilor se foloseşte butonul , care afişează la

început funcţiile cele mai folosite, apoi pe toate celelalte.

Formatările celulelor se pot deduce din toolbarul afişat, nu ridică niciun fel

de probleme.

O observaţie importantă este modul cum se rezolvă în Google Docs

Spreadsheets, problema îngheţării rândurilor şi coloanelor. Ne reamintim că

rândurile şi coloanele îngheţate sunt cele care sunt blocate în stânga şi în

partea de sus a foii, care nu sunt supuse acţiunii scroll-ului, cu alte cuvinte,

rămân pe ecran la vedere chiar dacă ne deplasăm în zone mai îndepărtate a

foii. Zonele îngheţate se separă de celelalte cu ajutorul unor linii mai groase,

care iniţial se găsesc în partea din stânga-sus foii, de unde se pot muta în

orice zonă a foii (vezi figura 4.5).

Poziţia iniţială a liniilor de

separare a zonelor îngheţate

Poziţia liniilor de separare

după ce au fost mutate

Fig. 4.5. Manevra de îngheţare a liniilor şi coloanelor

Page 89: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

90

Mişcarea liniilor de separaţie se face cu mouse-ul, prinzându-le de capete

(zona haşurată). Exersaţi această manevră până vă obişnuiţi cu ea.

Pentru mai multe informaţii se poate consulta Help-ul care este în limba

română prin tastarea butonului ”Ajutor”.

Cea mai bună metodă de a înţelege cum funcţionează acest produs este

utilizarea lui practică. În continuare va fi prezentată o aplicaţie concretă.

Studiu de caz. Aplicaţia “Note studenţi”

Produsul Google Docs se pretează extrem de bine aplicaţiilor de tip

managerial pentru că îndeplineşte multe din cerinţele acestora. Iată câteva

dintre ele:

Se pot proiecta aplicaţii care să fie folosite de mai mulţi utilizatori cu

drepturi diferite.

Intrarea în sistem se poate face din orice zonă geografică a globului,

singura condiţie cerută este un calculator cu conexiune la Internet.

Nu există pericolul pierderii datelor datorită calculatoarelor

utilizatorilor, datele fiind stocate pe serverele companiei Google,

răspândite în toată lumea.

Multe aplicaţii de firmă pot fi concepute fără a fi nevoie de specialişti

consacraţi şi cu experienţă în domeniul IT.

Preţul de cost pentru realizarea aplicaţiilor este extrem de mic.

Aplicaţia care va fi prezentată în continuare, este una accesibilă, uşor de

înţeles şi de executat de orice student de la secţiile de inginerie. În principiu,

este vorba de ţinerea evidenţei activităţilor studenţilor la o disciplină, în

timp real, adică fiecare student îşi poate vedea situaţia, imediat ce aceasta a

fost actualizată de profesor, fără să deranjeze pe cineva.

Tot ce face aplicaţia este prezentat mai jos:

Pentru fiecare grupă există un catalog pentru disciplinele urmărite.

Fiecare disciplină se găseşte pe o foaie de calcul.

Profesorul are acces deplin la foaia disciplinei sale pe care o ţine la zi

(prezenţe, rezultatele unor laboratoare efectuate, verificări parţiale,

notele finale etc.).

Page 90: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

91

Foaia de calcul pentru fiecare disciplină se salvează ca pagină Web

după procedura propusă de aplicaţia Google Docs.

Studenţii primesc adresele paginilor pe care le pot vedea de oriunde şi

oricând.

Crearea foilor. Pentru a crea catalogul, profesorul trebuie să aibă un cont

de Google. În exemplul care va fi prezentat este vorba de grupa IEI care a

început facultatea în anul 2008. S-a ales această metodologie pentru fixa

specializările, având în vedere că disciplinele sunt studiate în ani diferiţi iar

numele grupelor se schimbă în fiecare an.

Pentru aceasta s-a ales grupa IEI-2008, iar disciplinele la care se urmăreşte

situaţia sunt Programarea şi utilizarea calculatoarelor (PUC1 şi PUC2),

Baze de date (BD), Metode numerice (MN) şi Informatică managerială

(IM).

În figura 4.6 este prezentată foaia de calcul creată de profesor, pentru

disciplina PUC1.

Linia de separare pe

orizontală a zonei îngheţate

Linia de separare pe

verticală a zonei îngheţate

Fig. 4.6. Formatul foii de calcul pentru disciplina

PUC1

=Studenti!B

2

Page 91: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

92

Se observă liniile de separare a zonelor îngheţate şi foile corespunzătoare

fiecărei discipline. S-a extras şi un detaliu cu numele foilor pentru a se

vedea mai bine.

Foaia Studenţi(figura 4.7) conţine toţi studenţii secţiei IEI, înmatriculaţi în

anul 2008, care sunt preluaţi cu formulă în foile disciplinelor (ex.

Studenti!B5). În acest fel, orice modificare la numele studentului se reflectă

în toate foile.

În cazul prezentat, există 7 lucrări de laborator, a căror titlu se găseşte în

foaia Codificari. După ce studentul a executat lucrarea de laborator,

profesorul o validează (pune un ”x” în celula corespunzătoare). Câmpul

Eval este câmpul în care se pune rezltatul evaluării, care poate să conţină A-

absent, o notăm sub 5 sau o notă de trecere. Dacă studentul se prezintă de

mai multe ori la examen acest câmp va fi completat astfel: ”4, A, 7”. De aici

rezultă că a participat la 3 sesiuni şi la ultima a luat nota 7 care va fi trecută

în câmpul NotaF – nota finală. Prin aceasta se vede şi istoricul participării

studentului la examene.

Pentru altă disciplină va fi altă structură a activităţilor, absenţe, note la

seminarii, notă la proiect etc. Fiecare responsabil de disciplină îşi va

concepe propria evidenţă legată de activităţile desfăşurate de studenţi în

cadrul acesteia. De reţinut faptul că fiecare student va avea la final o notă de

evaluare a cunoştinţelor trecută în câmpul NotaF.

Fig. 4.7. Foaia Studenti

Page 92: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

93

Foaia Centralizator conţine evaluările şi notele finale pentru toate

disciplinele amintite, care se completează automat pe baza formulelor de

legătură. Foaia Centralizator arată ca în figura 4.8.

Observaţi tipurile de legături între foaia Centralizator şi celelalte foi.

Configurarea drepturilor de acces. Atunci când se crează un document în

Google Docs, userul respectiv devine proprietarul documentului. El poate să

permită altor useri, care au cont Google, să poată deschide şi să editeze

documentul, sau numai să-l vizualizeze.

Există două moduri de acces la documentele Google Docs, prin partajarea

documentelor sau prin publicarea acestora pe Internet.

I. Partajarea unei foi de calcul se face cu comanda Colaborati / Invitaţi

persoane..., care deschide caseta ”Colaboraţi cu alte persoane”, aşa

cum se vede în figura 4.9.

Fig. 4.8. Foaia Centralizator

=Studenti!B2

=PUC1!K5

Page 93: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

94

În caseta ”Invitaţi” puteţi scrie adresele email ale celor care au drept de

editare sau vizualizare a documentului – după cum setaţi una din cele

două opţiuni de sub casetă. De menţionat faptul că persoanele invitate

trebuie să aibă cont de gmail.

Puteţi, de asemenea, să trimiteţi un mesaj către personele invitate

(folosind butonul ”Trimiteţi”), pe care acestea îl vor primi la adresa

indicată.

Tot în această casetă aveţi posibilitatea de a vedea cine sunt persoanele

invitate şi ce drepturi au (alegând opţiunea ”Persoane care au acces”).

Fig. 4.9. Partajarea foii de calcul IEI-2008

Page 94: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

95

Persoanele care au primit acces la documente, atunci când intră în

Google Docs, vor avea la dispoziţie aceste documente. Cei care au

primit drept de editare, pot modifica documentul în timp real, la fel ca şi

proprietarul acestuia.

II. Publicarea pe Internet a documentelor Google Docs este o facilitate

deosebit de importantă, deoarece permite accesul persoanelor fără

cont gmail iar paginile sunt legate dinamic de documentele originale,

astfel încât, orice modificare a acestora se va reflecta şi în pagina

Web.

Se pot publica în pagini Web, toate foile unui document de calcul

tabelar, numai o foaie sau o zonă a unei foi. Pentru a publica pe Internet

un document, trebuie dată comanda Colaborati / Publicaţi ca pagină

Web, care deschide caseta ”Publicaţi ca pagină Web”, aşa cum se vede

în figura 4.10.

Dacă se bifează opţiunea ”Republicare automată la efectuarea de

modificări”, orice modificare a foii va fi reflectată şi în pagina Web.

Fig. 4.10. Publicarea ca pagină Web

Page 95: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

96

Pentru alte opţiuni se apasă pe ”Mai multe opţiuni de publicare”, care va

deschide caseta din figura 4.11.

Observaţi că se pot alege, pentru integrarea într-o pagină Web, numai

anumite celule ale unei foi. Acest lucru este important atunci când se

doreşte ca anumite coloane să nu fie publicate. În cazul de faţă, pagina

Web creată nu va conţine coloana Observatii.

Dacă se apasă butonul ”Generare adresă URL”, va fi generată adresa

URL unde va fi plasată pagina creată. Această adresă trebuie comunicată

celor care o vor vizualiza, în cazul nostru, studenţilor secţiei IEI-2008.

Fig. 4.11. Caseta “Mai multe opţiuni de publicare”

Page 96: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

97

Cum se procedează?

- se face dublu-click pe adresa afişată, având ca efect deschiderea

paginii.

- se copiază adresa paginii cu comanda cunoscută Copy – Paste, sau se

crează un shortcut pe Desktop.

Dacă sunt mai multe adrese de pagini Web, acestea se pot gestiona cu un

mic program în Visual Basic sau pur şi simplu se copiază într-un document

Word de un vor fi lansate cu un simplu click.

Încercaţi să faceţi aplicaţia descrisă mai sus, sau alta asemănătoare, pentru a

vă obişnui cu metodologia de creare a aplicaţiilor cu Google Docs. Să vă

obişnuiţi cu acordarea de drepturi, cu crearea şi publicarea paginilor Web şi

nu uitaţi să testaţi dacă aplicaţia merge, dând unele drepturi unor colegi,

apoi verificându-le.

Perspective de folosire a produsului Google Docs într-o firmă

Produsul Google Docs este lansat de curând (prin anii 2006-2007) şi are

aplicaţii dintre cele mai spectaculoase pentru firme. Faptul că este un produs

gratuit, nu se pune problema licenţei softului, ceea ce nu este un aspect de

neglijat.

Faptul că avem un server sigur, care nu pică niciodată, care nu necesită

inginer de sistem, nu poate decât să fie un mare avantaj pentru orice firmă

sau instituţie. Un manager inteligent poate organiza o sistem de comunicare

în cadrul firmei, care să răspundă întrutotul cerinţelor acesteia. De

asemenea, poate organiza un sistem de publicare şi actualizare a

documentelor firmei, care sunt destinate unei categorii anume de angajaţi.

Un lucru deosebit este posibilitatea de a putea lucra pe acelaşi document mai

multe persoane aflate oriunde pe glob. Această facilitate este chiar mai

rapidă decât dacă toate persoanele ar fi împreună. Gândiţi-vă că trebuie

lucrat la un document urgent, care implică mai multe persoane aflate în

oraşe diferite. În modul clasic, se apucă toţi de treabă, trimit fişierele prin e-

mail (care probabil merge bine), cineva le primeşte, le asamblează. Aici pot

Page 97: Informatica Manageriala - Curs

Informatică managerială Capitolul 4

98

interveni nepotriviri de format, greşeli etc. Pentru definitivarea

documentului se aşteaptă corecţiile prin poşta electronică, care înseamnă

timp pierdut.

Cum se procedează cu Google Docs? Un membru al echipei crează

formularul şi devine proprietarul lui, dă drepturi de editare celorlalţi şi

fiecare poate să lucreze ”la vedere” pe acelaşi document. Când totul este

gata, fiecare membru al echipei are documentul final şi original. Sunt

eliminate astfel variantele aceluiaşi document. Şi exemplele pot continua.

În continuare vor fi prezentate unele cazuri concrete de folosire a aplicaţiilor

Google Docs pentru domeniul managementului.

Agenda firmei. Se poate imagina o aplicaţie în Google Docs Spreadsheet

care să cuprindă tabele cu diferite informaţii cum ar fi telefoanele tuturor

angajaţilor, informaţii despre toţi clienţii firmei – adresă, cod fiscal,

persoană de contact etc.

Documentul care conţine aceste informaţii va putea fi ţinut la zi de câteva

persoane cu atribuţii precise, va fi publicat pe Internet pentru a putea fi

vizualizat de toţi angajaţii sau alte persoane interesate.

Lucrul în echipă. Presupunem că se lucrează la un proiect informatic iar

membrii echipei se află în diferite oraşe din lume. Directorul de proiect

trebuie să comunice în timp real cu membrii, ţinându-se cont de faptul că

aceştia se pot găsi pe diferite meridiane cu mari decalaje de fus orar

(diferenţa dintre România şi şi coasta de vest a SUA este de 10 ore).

Cum procedează directorul de proiect? Crează documente pentru toţi

membrii echipei şi le dă diferite drepturi, unora de editare, altora numai de

vizualizare. Orice observaţie a şefului de proiect se trece într-un document

de observaţii, data când a fost făcută observaţia, termenul de rezolvare, data

când s-a rezolvat etc. Cei care rezolvă problemele semnalate pot să

completeze documentul de observaţii iar directorul de proiect vede imediat

acest lucru.

Evidenţa problemelor neprevăzute. Într-o firmă pot apare probleme

neprevăzute care trebuie semnalate şi gestionate. Cea mai simplă soluţie

pentru comunicare între diferite compartimente este crearea unui document

care să fie consultat de către toţi cei implicaţi în rezolvarea problemelor.

Puteţi imagina şi alte aplicaţii ale acestui spectaculos produs, Google Docs.

Page 98: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

99

Capitolul 5. Aplicaţii informatice manageriale în WEB

Acest capitol îşi propune să prezinte posibilităţile de implementare a

sistemelor informatice în Internet, pentru folosirea lor la scară planetară.

Sunt prezentate aspecte care privesc mai ales pe utilizatorii finali ai acestor

aplicaţii, fără a intra în amănunte tehnice privind programarea. Se prezintă

câteva noţiuni de bază legate de reţelele de calculatoare, Internet şi limbajul

de dezvoltare a aplicaţiilor Web, Visual Basic.NET. Este, de asemenea,

prezentat un studiu de caz cu un astfel de sistem informatic – informatizarea

unei catedre universitare, din care studenţii pot vedea cum este structurat şi

folosit un astfel de sistem.

În cadrul orelor de laborator, studenţii vor învăţa să lucreze cu sistemul

informatic, în condiţii reale, având drepturi de acces diferite.

Elemente de bază

Internetul, acest spaţiu virtual, care ne-a schimbat din temelii existenţa, a

reuşit să-şi pună amprenta şi pe procesul managerial. La începutul folosirii

calculatoarelor pe scară largă (şi asta se întâmpla cu câţiva zeci de ani în

urmă), calculatorul era perceput ca un ”aparat” care se putea programa sa

facă diferite calcule. La el putea lucra numai specialiştii, oameni cu

pregătire de specialitate. Datele se introduceau direct la calculator, iar

rezultatele erau tipărite pe hârtie pentru a putea fi folosite acolo unde era

nevoie de ele. La fiecare calculator se lucra ceva specific, calcule

inginereşti, calcule specifice contabilităţii, diferite evidenţe etc.

Calculatoarele erau concentrate în anumite spaţii, numite ”oficii de calcul”,

iar pentru o informaţie trebuia mers acolo şi aşteptat până se actualizau

datele şi se ”rulau programele”. Informaţia respectivă era întotdeauna

depăşită, datorită procesului prin care era obţinută.

Page 99: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

100

Din acest motiv a apărut necesitatea ca datele să fie mereu actualizate pentru

ca informaţia finală să fie cât mai actuală. Dar cum să se facă acest lucru,

având în vedere că introducerea şi verificarea datelor este o activitate de

durată, practic ocupând tot timpul calculatorului? Aşa au apărut reţelele de

calculatoare, cu ajutorul cărora, calculatoarele comunică între ele, adică pot

accesa date unele de la altele. Nu vom intra în amănunte de ordin tehnic

privind reţelele de calculatoare, ci le vom privi din punctul de vedere a

utilizatorului acestora în scop managerial.

Apariţia reţelelor de calculatoare a revoluţionat folosirea calculatorului în

cele mai diverse domenii de activitate. Azi nu mai găsim un calculator care

să fie folosit de sine-stătător, chiar şi calculatorul personal de acasă, este

legat într-o reţea specială numită Internet.

Ce este o reţea?

Iată o definiţie simplă: o reţea este un ansamblu de două sau mai multe cal-

culatoare, conectate împreună în scopul partajării (folosirii în comun).

Această definiţie e suficient de generală pentru a acoperi cazul conectării a

două calculatoare personale care se află în acelaşi birou, dar şi cazul unui

sistem atât de vast, de complex şi dezorganizat ca Internetul. O reţea asigură

legătura dintre calculatorul dumneavoastră şi alte calculatoare şi resurse.

Odată ce v-aţi conectat, există patru lucruri de bază pe care le puteţi face cu

o reţea:

1. Partajarea resurselor hardware. Partajarea componentelor hardware

cuprinde

toate dispozitivele care se pot conecta la reţea, în trecut, aceasta însemna în

principal partajarea imprimantelor. Dar în prezent, dispozitivele periferice

pot include aproape orice, cum ar fi imprimante, modemuri, unităţi hard,

unităţi CD-ROM, dispozitive amovibile de stocare, scannere şi chiar

aparate de filmat/fotografiat.

2. Partajarea fişierelor. Partajarea fişierelor este o altă aplicaţie

extraordinară a reţelelor de calculatoare. Gândiţi-vă ce se întâmplă de câte

ori vă duceţi să cereţi un anumit fişier din calculatorul altcuiva. Trebuie să

mergeţi până la biroul persoanei în cauză, să-i daţi o dischetă, iar apoi să

aşteptaţi până copiază fişierul şi vă dă discheta înapoi. După aceea vă

întoarceţi la biroul dumneavoastră şi copiaţi fişierul de pe dischetă în

calculatorul propriu. Acest mod de partajare a fişierelor este o mare pierdere

Page 100: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

101

de timp. Iar cum dimensiunile fişierelor din ziua de azi continuă să crească,

se întâmplă adesea să nu încapă pe o singură dischetă - ceea ce face procesul

şi mai dificil. O reţea asigură legătura dintre calculatoare şi permite

utilizatorilor să partajeze fişiere repede şi uşor.

3. Partajarea aplicaţiilor. Reţelele vă permit, de asemenea, să partajaţi

aplicaţii

în reţea. Puteţi cumpăra o licenţă de reţea, pentru punerea unei aplicaţii pe

un server de mare viteză şi pe care s-o rulaţi de pe oricare sau toate

calculatoarele desktop din cadrul reţelei. Această variantă are adesea o

eficienţă a costurilor mai ridicată decât cea în care cumpăraţi aplicaţii

separate pentru toată lumea din firmă.

Este însă ilegal să partajaţi în cadrul reţelei o copie monoutilizator a unei

aplicaţii informatice. Acest lucru nu trebuie făcut decât cu aplicaţiile pentru

care aveţi o licenţă de reţea.

4. Partajarea informaţiilor. De câte ori nu vi s-a întâmplat să intraţi în birou

şi

să vă descoperiţi calculatorul în rol de avizier public, plin de bileţele lipite

de colegii dumneavoastră? Sau să descoperiţi un morman de scrisori şi

adrese, pe care cineva le-a dactilografiat şi vi le-a pus pe masă. De ce n-aţi

folosi, în locul carcasei exterioare, chiar calculatorul dumneavoastră, pentru

a trimite şi a primi mesaje în formă electronică prin intermediul reţelei?

Partajarea informaţiilor în cadrul reţelei poate fi făcută prin utilizarea poştei

electronice (e-mail) sau a softurilor de grup, gen Lotus Notes, ori afişând

informaţii pe care ceilalţi să le citească în propriul calculator. Această ultimă

soluţie este adesea cunoscută sub denumirea de „intranet".

Avantajele folosirii reţelelor

Utilizarea reţelelor de calculatoare poate aduce avantaje aproape oricărui tip

de firmă. Cele mai mari beneficii pentru o întreprindere sunt:

1. Economii de cost. Unul dintre cele mai evidente şi tangibile beneficii ale

utilizării reţelelor constă în economiile de cost realizate prin partajarea

resurselor. Aceste resurse pot cuprinde atât componente hardware (de

exemplu: imprimante), cât şi aplicaţii în reţea. De multe ori, aceste economii

sunt în sine suficient de mari pentru a amortiza costul investiţiei iniţiale într-

o reţea de calculatoare.

Page 101: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

102

Să luăm un exemplu banal: cinci utilizatori, fiecare cu calculatorul lui. Toţi

vor să folosească, în munca lor, o imprimantă cu laser de bună calitate. Dar

imprimantele cu laser de bună calitate costă peste 1.000 de dolari bucata.

Fără îndoială că ar fi nepractic să cumpăraţi câte o imprimantă cu laser

pentru calculatorul fiecărui utilizator. Pe de altă parte, nu este productiv să

conectezi o imprimantă la un singur calculator. Ceilalţi utilizatori ar fi

obligaţi să meargă de fiecare dată la imprimanta legată la calculatorul

respectiv, să-1 scoale de pe scaun pe utilizator, să introducă discheta cu

fişierul propriu şi să-1 tipărească. Imaginaţi-vă cum ar fi să faceţi lucrul

acesta de câteva ori pe zi. Persoana de la calculatorul respectiv n-ar mai

ajunge niciodată să-şi termine treaba. Dar, pentru numai o parte din costul

unei a doua imprimante, toate cele cinci calculatoare pot să partajeze

simultan singura imprimantă disponibilă, fără a întrerupe munca nimănui.

Economiile de cost în materie de software pot fi tot atât de spectaculoase. Să

zicem că aveţi o anumită aplicaţie pe care o foloseşte toată lumea din firmă,

în loc să cumpăraţi câte o copie monoutilizator a programului pentru fiecare

persoană, puteţi cumpăra o versiune multiutilizator pentru reţea (de obicei la

un cost mai scăzut pe utilizator) şi s-o rulaţi în reţea.

2. Angajaţi bine informaţi şi obişnuiţi să colaboreze. Reţelele le pun la

dispoziţie utilizatorilor un mijloc de îmbunătăţire a comunicării şi

colaborării. Aveţi nevoie să trimiteţi tuturor celor din firmă informaţii cu

privire la o politică nouă sau o ofertă importantă de vânzare? Vreţi să-i

anunţaţi pe angajaţi ora stabilită pentru o şedinţă? Trimiteţi informaţia prin

e-mail către toată compania şi veţi avea siguranţa că ajunge la toată lumea

mai repede decât dacă aţi pune pe cineva să anunţe fiecare om în parte.

De asemenea, veţi constata că o reţea de calculatoare va îmbunătăţi şi

colaborarea. De exemplu, să zicem că aveţi o problemă sau o chestiune în

legătură cu care vreţi să aflaţi opinia tuturor, dar nu simţiţi nevoia să ţineţi o

şedinţă lungă. Chestionaţi-i pe toţi prin poşta electronică şi aşteptaţi să

primiţi răspunsurile lor. Sau poate că aveţi o ofertă pe care intenţionaţi s-o

trimiteţi unui client şi vreţi ca aceasta să fie verificată mai întâi de câţiva

oameni cu rol important în firmă. Trimiteţi-le-o prin reţea, iar ei vor putea s-

o analizeze şi să v-o trimită înapoi, cu modificări pe documentul efectiv.

Cu o reţea de calculatoare, oamenilor li se asigură posibilitatea de a fi mai

bine informaţi si, la rândul lor, pot să lucreze mai bine împreună. De câte ori

n-aţi auzit, în firma dumneavoastră, pe câte cineva spunând: „Nu mi-a dat

nimeni informaţia asta!" sau „N-am ştiut de unde s-o iau". Cu o reţea de

calculatoare, puteţi remedia această situaţie prin diverse modalităţi de

Page 102: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

103

partajare şi publicare a informaţiilor, astfel încât să fie disponibile oricui sau

tuturor. Le puteţi oferi şi altora accesul la documente, foi de calcul tabelar,

materiale scrise privind vânzările, prezentări, politici ale firmei, fotografii,

practic la orice.

Dacă le puteţi pune în format electronic, le puteţi partaja în cadrul reţelei.

Reţelele de calculatoare, şi în special Internetul, vă dau totodată posibilitatea

să accedeţi la informaţii din resurse exterioare. Angajaţii pot accede la

informaţii pe o sumedenie de teme, cum ar fi cercetare de piaţă, informaţii

despre concurenţă, legislaţie fiscală şi a drepturilor de autor, şi sute de mii

de alte subiecte de pe World Wide Web. Aceste informaţii le oferă

angajaţilor posibilitatea să ia decizii mai judicioase şi fiind mai bine

informaţi. 3. Productivitate sporită.

Dacă a trebuit vreodată să partajaţi un fişier cu altcine-va, ştiţi că nu e cine

ştie ce dificultate. Nu trebuie decât să luaţi fişierul, să-1 copiaţi pe o

dischetă (dacă încape pe una singură) şi să vă duceţi cu discheta la biroul

colegului în cauză, care o ia, o introduce în calculatorul său şi o foloseşte, în

lumea reţelelor de calculatoare, această procedură este cunoscută sub

numele de alint sneakernet - „piciornet": îţi pui picioarele la treabă, ca să

facă oficiul de reţea. Merge destul de bine, când e de partajat un singur

fişier. Dar imaginaţi-vă ce se întâmplă când cei cărora le-aţi dat discheta

termină de modificat fişierul: trebuie să parcurgă acelaşi proces, pentru a vi-

1 returna. Apoi, vă daţi seama că aţi uitat să adăugaţi ceva în fişier, deci

reluaţi procesul de la capăt - încă o dată, şi încă o dată, şi încă o dată! Să

luăm acum timpul pe care 1-aţi consumat aşteptând să se copieze fişierul,

ducând discheta la colegul dumneavoastră şi aşteptându-1 pe acesta să

copieze fişierul în calculatorul lui şi să-1 înmulţim cu numărul de oameni

care parcurg acelaşi proces în cadrul firmei dumneavoastră.

Să adăugăm apoi şi numărul celor care fac aproximativ acelaşi lucru ca să

tipărească un material pe imprimanta altcuiva. Să mai adăugăm şi timpul

consumat de cei care trebuie să se plimbe de la un birou la altul ca să

lipească bileţele de reamintire pe calculatorul câte unui coleg. Aţi început să

întrevedeţi „algoritmul"? Se consumă o groază de timp cu plimbatul unor

informaţii care ar putea fi trimise electronic în doar o câtime din acest timp,

economisindu-se astfel timp pentru activităţi mai productive, în plus, puteţi

scuti de ceva uzură fizică şi mocheta din birou...

O dată ce aţi înţeles impactul acestor avantaje, puteţi să vă analizaţi nevoile

proprii şi să vedeţi cum se justifică investiţia companiei dumneavoastră într-

o reţea de calculatoare.

Page 103: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

104

Tipuri de reţele

Să presupunem că v-aţi făcut o oarecare idee despre cât de utilă poate fi o

reţea. Bun, dar ce variante de lucru în reţea vă stau la dispoziţie? Când se

rosteşte cuvântul reţea, nu toată lumea se gândeşte la acelaşi lucru. Unii îşi

imaginează o uriaşă reţea corporativă de calculatoare, care se întinde pe mai

multe etaje ale unei clădiri. Alţii se gândesc la o serie de reţele din incinta

unui campus universitar, legate între ele sub forma unei vaste infrastructuri

de comunicaţii, sau la Internet, cu uriaşele sale resurse şi capacitatea de a

căuta informaţii importante sau chiar lucrurile cele mai absurde şi mai

neproductive. Iar alţii se gândesc la doua-trei calculatoare legate împreună,

astfel încât să-si poată juca jocul preferat cu un partener care stă în faţa altui

calculator, (în fond, fiecare cu nevoile lui!)

Chiar dacă liniile de demarcaţie între reţele au început să se estompeze, se

poate spune că există în esenţă trei tipuri de reţele: reţele locale de

calculatoare, reţele de mare suprafaţă şi Internetul.

Reţeaua locală de calculatoare este exact ceea ce spune şi denumirea: o reţea

care este locală, adică amplasată în limitele unui spaţiu restrâns. O reţea

locală de calculatoare, sau o reţea de tip LAN (Local Area Network), leagă mai

multe calculatoare şi alte resurse. De obicei, funcţionează într-un spaţiu

destul de mic -spre exemplu, în interiorul unei singure încăperi sau al unei

singure clădiri. Există şi unele cazuri în care reţeaua de tip LAN merge între

clădiri aflate foarte aproape una de alta.

O reţea de tip LAN utilizează cabluri speciale, care se trag doar pe distanţe

mici, de regulă până în câteva sute de metri. Pe de altă parte, reţelele LAN

sunt de obicei destul de rapide, permiţându-vă să partajaţi cu uşurinţă fişiere

şi alte resurse.

Reţeaua de mare suprafaţă sau de tip WAN (Wide Area Network) are o sferă

de acoperire mult mai largă decât o reţea LAN, fiind proiectată să conecteze

mai multe reţele LAN amplasate în diverse puncte geografice. De exemplu,

dacă aveţi un sediu dotat cu o reţea LAN în oraşul Bucureşti şi un alt sediu,

dotat tot cu o reţea LAN, în oraşul Timişoara, puteţi folosi o reţea de tip WAN

pentru a lega cele două reţele. Reţelele WAN utilizează conexiuni speciale prin

intermediul companiei de telefoane şi sunt, de obicei, mult mai lente decât

reţelele LAN.

Internetul este o reţea de tip WAN, constituie ceva mult diferit de ceea ce

se înţelege în mod normal prin noţiunile de LAN şi WAN. Internetul este un

Page 104: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

105

conglomerat de calculatoare şi reţele interconectate, răspândite pe toată

suprafaţa globului. Internetul cuprinde calculatoare, servere (calculatoare de

mare viteză), calculatoare de tip mainframe şi alte dispozitive. Spre

deosebire de o reţea de tip LAN sau WAN, nu este un lucru pe care să-l

puteţi implementa; este ceva la care vă conectaţi. Nu sunteţi decât unul din

nenumăratele dispozitive conectate la o reţea mondială extrem de vastă.

Internetul este alcătuit din multe organizaţii diferite, care îl utilizează în

multe scopuri diferite. La Internet se conectează scoli, agenţii

guvernamentale, firme mici şi mari, organizaţii nonprofit şi chiar persoane

particulare. Există tot atâtea motive de utilizare a Internetului câte persoane

conectate la Internet.

Internetul este, în prezent, cel mai ”fierbinte” subiect din domeniul reţelelor

de calculatoare. Internetul s-ar putea să fie cel mai important instrument de

afaceri pe care l-aţi putea găsi, ajutându-vă să vă extindeţi activitatea, să

ajungeţi la mai mulţi clienţi, să comunicaţi cu furnizorii şi chiar să vă

reduceţi cheltuielile firmei.

Poate că aveţi impresia că ştiţi totul despre Internet, lucru de care mă

îndoiesc. Multă lume, când se vorbeşte despre Internet, se gândeşte la World

Wide Web, (celebra combinaţie „www”), care este extensia grafică a

acestuia. Da, numai că în Internet există mult mai multe lucruri decât

navigarea spre site-urile preferate. Din punctul de vedere al managerului,

Internetul are multe caracteristici şi componente care se pot dovedi a fi

extrem de utile.

Iată câteva din aceste componente:

World Wide Web (www). Este componenta cea mai populară a

Internetului, este poţiunea grafică a cestuia, care permite utilizatorilor să

„navigheze” de la un loc la altul cu foarte mare uşurinţă, doar indicând cu

mouse-ul şi făcând un clic pe locul indicat. Este utilizat de firme, persoane

particulare, organizaţii non-profit, universităţi şi guverne pentru a-şi crea

propriile site-uri web şi a publica informaţii.

Existenţa spaţiului World Wide Web este posibilă cu ajutorul unui limbaj de

programare denumit limbaj de marcare ca hipertext (HiperText Markup

Language – HTML), care permite afişarea documentelor web, practic pe

orice calculator dotat cu un software denumit browser de web. Având

posibilitatea de a conţine imagini active şi chiar mini-aplicaţii (denumite

„applets”), prin intermediul tehnologiei Java de la Sun Microsystems şi al

Page 105: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

106

tehnologiei AcriveX de la Microsoft, site-urile web au devenit încă şi mai

utile şi interesante.

E-mailul prin Internet. Poşta electronică, sau e-mailul, este o componentă

extrem de populară a Internetului. De fapt, este de departe cel popular mod

de utilizare a Internetului. Cred că fiecare dintre noi a luat cunoştinţă cu

Internetul fiind fascinaţi de posibilitatea de a scrie şi primi scrisori într-un

timp extrem de scurt şi fără nici o cheltuială.

E-mailul oferă utilizatorilor o metodă simplă şi ieftină de comunicare şi un

mijloc rapid de trimitere a mesajelor şi a altor documente către clienţi şi

furnizori. Popularitatea sa e în continuă creştere; e-mailul este una din cele

mai bune modalităţi de a trimite şi primi corespondenţă comercială.

Sistemul e-mail oferă şi posibilitatea de a „anexa” fişiere, deci puteţi trimite

fişiere cu text, secvenţe video, fotografii sau alte fişiere de date, care se

transmit prin Internet aproape instantaneu.

Protocolul FTP. Protocolul FTP (File Transfer Protocol – protocol de

transfer al fişierelor) este un standard utilizat pentru a trimite şi a primi

fişiere prin intermediul Internetului. Poate că nu sună cine ştie ce interesant,

dar este extrem de util pentru transferarea fişierelor mari. Chiar dacă, la

prima vedere, s-ar zice că transmisiile de fişiere pot fi rezolvate prin

trimiterea de fişiere ataşate la e-mail, protocolul FTP permite transferarea

unor fişiere mari şi o face rapid şi mai sigur decât e-mailul. Se ştie, de altfel,

că unele programe de e-mail limitează mărimea fişierelor ce pot fi ataşate.

Aplicaţiile Web. Aceste aplicaţii reprezintă, esenţa acestui capitol. Sigur,

nu vom intra în amănunte care depăşesc cadrul acestei lucrări, ci vom

discuta mai mult despre posibilităţile oferite de aceste aplicaţii, din punctul

de vedere al managerului. De altfel, în acest capitol este prezentat un studiu

de caz cu o aplicaţie web funcţională care va fi folosită în cadrul lucrărilor

de laborator.

Aplicaţiile web nu sunt simplu de făcut! Ele sunt create, de regulă, de firme

specializate care colaborează strâns cu beneficiarul. Aceste aplicaţii sunt, de

altfel, sisteme informatice care lucrează în Internet. Sunt, dacă vreţi, sisteme

informatice extinse care depăşesc cadrul reţelelor locale, folosind reţeaua

globală Internet.

Din punctul de vedere al utilizatorului final, al managerilor şi subordonaţilor

săi, ei nu ştiu dacă lucrează cu o aplicaţie web sau una de reţea locală.

Singurul indiciu, este faptul că pot lucra, la fel de bine şi de acasă precum

Page 106: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

107

lucrează la birou. De aici, avantaje imense, de exemplu, dacă ne gândim că

un manager poate să primească informaţii la zi la orice oră şi oriunde s-ar

afla pe glob, fără să apeleze la altcineva decât la primul calculator pe care în

găseşte. Astfel de calculatoare, legate la Internet, se găsesc pe aeroporturi,

hoteluri sau în alte locuri publice.

Aplicaţiile web sunt, în esenţă, pagini web dinamice, găzduite de servere

web performante. Aceste pagini dinamice conţin diferite obiecte cum ar fi

butoanele de comandă, butoane de opţiune, casete de text şi combinate etc.,

ca orice interfaţă Windows. Cum se obţin aceste pagini? Cine le

actualizează? Ele sunt generate de către server cu ajutorul unor programe

specializate, scrise în diferite limbaje, cum ar fi PHP, Java, Visual

Basic.NET etc. Dintre acestea, noi o să discutăm despre limbajul Visual

Basic.NET (pronunţă „dot net”), în paragraful următor.

Noţiuni despre limbajul Visual Basic.NET

La disciplinele pe care le-aţi făcut în anii mici, aţi studiat şi limbajul de

programare Visual Basic 6, cu ajutorul căruia a-ţi câteva scris câteva

programe mai mult sau mai puţin complicate. Era un limbaj accesibil, uşor

de învăţat, din care derivă variantele VBA, aşa cum s-a văzut în capitolul 3,

al acestei lucrări. Aţi văzut acolo cât e de simplu să se scrie aplicaţii, chiar şi

de un începător care are în clar ce are de făcut.

Un mare neajuns este faptul că o aplicaţie care merge pe calculatorul

personal, nu merge pe alt calculator, al unui beneficiar, să spunem. Ce se

întâmplă, de fapt? Limbajul Visual Basic are o mulţime de obiecte,

controale, activeX-uri etc., care trebuie încărcate în Windows. Sunt, dacă

vreţi, nişte accesorii care sunt folosite de program, cum ar fi de exemplu un

calendar din care se poate alege elegant o dată calendaristică, mult mai uşor

decât să o introducem într-un anumit format. De regulă, aceste accesorii

trebuie încărcate în Windows, ele nu sunt native, pentru că nu e nevoie de

ele dacă nu sunt solicitate de vreo aplicaţie. Aceste componente sunt

cunoscute de programatorii avansaţi, cu experienţă şi nu sunt probleme

pentru că ele sunt înregistrate în sistem odată cu kitul de instalare al

aplicaţiei. Chiar şi la programatorii cu experienţă se mai întâmplă să scape

câte un ActiveX neînregistrat, dar asta nu este o tragedie ci un disconfort şi

timp pierdut, pentru că trebuie refăcut kit-ul de instalare şi retrimis apoi

beneficiarului, cu consecinţele de rigoare.

Page 107: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

108

Problema nu a trecut neobservată de către specialiştii de la Microsoft, care

au căutat soluţii care să elimine neajunsurile prezentate mai sus. Ei au găsit

soluţia introducerii unui cadru de programare numit „ .NET Framework”,

care este o platformă de dezvoltare oferită gratuit (mai nou, introdus în

sistemul de operare). Această platformă de dezvoltarea a aplicaţiilor conţine

tot ce este necesar acestui scop, clase, obiecte, servicii, compilatoare,

biblioteci etc. Ne-o putem imagina ca o sală de operaţii în care se găsesc

toate dotările pentru a interveni în ajutorul tuturor bolnavilor.

Platforma .NET Framework oferă posibilitatea scrierii aplicaţiilor sau a unor

părţi de aplicaţie în mai multe limbaje cum ar fi Visual Basic, C++, C#,

Java, care se găsesc în pachetul Visual Studio.NET. Aceste limbaje folosesc

aceleaşi clase şi au un compilator comun. Prin urmare, aplicaţiile pot fi

scrise în orice limbaj din cele menţionate iar compilatorul traduce codul

într-un executabil care funcţionează pe orice calculator care are „trusa de

scule completă”, adică platforma .NET Framework.

Concluzionând, se poate spune că puteţi utiliza mediul de dezvoltare

integrat Visual Studio.NET pentru a realiza programe cu Visual Basic, cu

destinaţia platforma .NET. Deoarece noul mediu de dezvoltare integrat este

asemănător lui Visual Basic 6, programatorii în Visual Basic se vor simţi

imediat familiarizaţi cu acesta. Aşadar, dacă sunteţi programator în Visual

Basic 6 trebuie să migraţi spre Visual Basic.NET dacă vreţi să nu fiţi

depăşiţi de evenimente!

Limbajul Visual Basic.NET este important şi de viitor, nu numai pentru că

rezolvă problema portabilităţii programelor, ci mai ales pentru faptul că este

orientat (aşa cum îi spune şi numele) spre Internet. De altfel, chiar despre

asta ne-am propus să discutăm în acest capitol. În Visual Basic.NET se pot

scrie şi programe de sine stătătoare ca în Visual Basic 6, adică nu pierdeţi

nimic dacă treceţi la noul limbaj.

Clasele şi obiectele existente în limbajul Visual Basic 6 erau folosite de

puţini programatori (statisticile spun că sub 50%), deoarece erau ignorate

din vreme ce problemele puteau fi rezolvate şi altfel. În Visual Basic.NET

acest lucru nu mai e posibil, deoarece a fost schimbată toată filozofia de

programare. Aici totul este un obiect, chiar şi forma de interfaţă pe care se

pun alte obiecte. De asemenea, a fost revăzută structura şi tipurile de date,

nu mai există tipul de dată Variant, orice variabilă trebuie declarată şi se

poate iniţializa la declarare.

Page 108: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

109

Desigur, scopul acestui capitol nu este învăţarea limbajului Visual

Basic.NET (există multe cărţi despre acest subiect), ci de a vedea rolul său

în dezvoltarea aplicaţiilor informatice manageriale. În Visual Basic-ul

clasic, cu câteva butoane, casete de text şi etichete puteam face uşor

programe dar eram limitaţi la performanţe şi productivitate, pe când în

Visual Basic.NET prin folosirea capacităţilor orientate spre obiecte, cum ar

fi moştenirea deschide perspective nelimitate privind performanţele

programelor şi productivitatea cu care sunt scrise.

Pe lângă avantajele prezentate, limbajul Visual Basic.NET este o excelentă

unealtă pentru dezvoltarea aplicaţiilor Web. Spuneam la începutul

capitolului că esenţa aplicaţiilor Web constă în generarea de pagini Web

prin cod. Acest cod este scris, în cazul nostru, în Visual Basic.NET.

Form-urile de Web (controalele şi clasele .NET oferite pentru construirea

paginilor de Web) şi serviciile de Web (logica de programare a aplicaţiilor,

accesibilă prin intermediul protocoalelor standard pentru Internet) constituie

o parte a cadrului de funcţionalitate pentru Internet inclus în Visual

Basic.NET şi cunoscut sub termenul generic de ASP.NET.

ASP.NET conţine un model de programare complet nou. El înlocuieşte

WebClasses din Visual Basic 6 şi paginile DHTML. Şi nu numai atât,

modelul de programare ASP.NET este, de asemenea, mai consistent şi mai

uşor de utilizat. ASP a devenit instrumentul cel mai utilizat din caseta cu

instrumente a programatorului de aplicaţii pentru Web bazat pe Windows.

Natura irezistibilă a ASP.NRT va atrage programatorii pe orbita sa, din

următoarele motive:

Independenţa de limbaj - ASP.NET vă permite să utilizaţi limbaje

compilate oferind performanţe mai bune şi compatibilitate cu alte

limbaje de programare.

Dezvoltare simplificată - ASP.NET face ca şi cele mai bogate

pagini să fie simple şi uşor de scris.

Separarea codului de conţinut – fiecare form de Web dispune de

un modul de cod cu acelaşi nume, însă extensia .vb. Acest aşa numit

cod de bază al paginii conţine logica de programare în timp ce form-

ul de Web conţine componentele vizuale.

Scalabilitate îmbunătăţită – noile facilităţi de stare a sesiunii

uşurează crearea de form-uri de Web care să lucreze pe

conglomerate de servere de Web (servere multiple).

Page 109: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

110

Suport pentru clienţi – controalele ASP.NET pot detecta automat

clientul şi se pot optimiza pentru a oferi un acelaşi aspect. Nu mai

trebuie să scrieţi cod separat pentru diferite browsere.

Noi controale pentru form-uri de Web – noile controale pot

genera cod HTML 3.2 pentru browsere de nivel scăzut, profitând în

acelaşi timp de bibliotecile de execuţie pentru o interactivitate mai

avansată cu clienţii mai noi. Programele noastre pot acum genera

ieşiri pentru o întreagă gamă de platforme noi, cum ar fi telefoanele

mobile, PDA sau alte dispozitive portabile.

Procesare pe server - ASP.NET transformă fiecare pagină Web

într-un obiect executat pe server. Pentru a crea conţinut dinamic,

puteţi utiliza în codul dumneavoastră proprietăţi, metode şi

evenimente. Atributul runat=”server” converteşte elementul HTML

într-un control executat pe server, care este vizibil şi deci,

programabil pe server în cadrul ASP.NET. Sunt detectate

evenimentele generate de controalele form-urilor de Web şi, ca

răspuns la acestea, se execută pe server codul adecvat.

Programarea în ASP.NET este foarte asemănătoare cu crearea de programe

în .NET cu form-uri în Windows. Veţi trage cu mouse-ul controale şi veţi

seta proprietăţi în acelaşi mod în care o faceţi cu form-urile de Windows.

S-a dovedit că avem nevoie de facilităţi grafice pentru a ne putea concentra

asupra design-ului unei aplicaţii şi a îmbina piesele componente. Un

program Visual Basic.NET are multe piese în mişcare – în special

programele care rulează în Internet. Din fericire, Visual Basic.NET oferă

instrumente grafice foarte puternice care vă ajută să puneţi rapid în

funcţiune site-uri de Web.

Controalele de server ASP.NET sunt incredibil de puternice. Ele dispun de

un model de obiect mai consistent şi mai flexibil decât modelul de obiect

ASP care este familiar programatorilor în Visual Basic clasic. Atunci când

un control este servit clientului, el este transformat automat în HTML.

Controalele de server conţin o logică automată de detecţie a tipului de

browser şi îşi pot particulariza şi optimiza ieşirea. Noile controale pot

realiza, de asemenea, legături către bazele de date.

În concluzie, se poate spune că ne-am făcut o imagine despre problematica

dezvoltării aplicaţiilor informatice manageriale în Internet. Am văzut că

limbajul Visual Basic.NET cu extensia sa ASP.NET, este o excelentă unealtă

de dezvoltare a unor astfel de aplicaţii. Desigur, cunoştinţele prezentate nu

Page 110: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

111

sunt decât scânteia care ar trebui să declanşeze apetitul dumneavoastră

pentru abordarea unor astfel de aplicaţii. Pe de altă parte, rolul unui

absolvent de IEI este acela de a da specificaţii, adică de a spune ce se

doreşte de la o aplicaţie pentru management. Scrierea efectivă a programelor

trebuie lăsată programatorilor cu experienţă din firmele specializate.

În cele urmează va fi prezentat un studiu de caz cu o aplicaţie Web scrisă în

ASP.NET. Aceasta va fi testată în cadrul orelor de laborator.

Page 111: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

112

Studiu de caz. Aplicaţia SIM pentru gestionarea unei catedre universitare

Aplicaţia acestui studiu de caz a fost implementată în Internet. Această

aplicaţie a fost concepută cu un dublu scop: de a fi un exemplu palpabil de

sistem informatic care să lucreze în Internet şi de a fi folosită efectiv în

cadrul catedrei ITM. Accesul la date al studenţilor va fi restricţionat, ei

având drepturi de consultare a informaţiilor. Conducătorul orelor de

laborator se va loga cu un user cu drepturi depline pentru a arăta studenţilor

cum se actualizează datele.

Caietul de sarcini

După cum am văzut în capitolul 2, documentul de pornire în proiectarea şi

implementarea unui sistem informatic este caietul de sarcini. Formatul

acestui document este la alegerea celor care îl întocmesc, aşa că în cazul

nostru, vom folosi o enumerare a sarcinilor:

1. Dorim să avem informaţii complete despre studenţi, atât date personale

cât şi date profesionale.

2. Dorim să avem o situaţie clară a grupelor de studenţi.

3. Dorim să avem evidenţa secţiilor arondate catedrei ITM.

4. Dorim să avem planurile de învăţământ ale fiecărei secţii.

5. Dorim să avem informaţii despre membrii catedrei, date personale şi

profesionale. Aceste date vor avea un acces restricţionat.

6. Dorim să ţinem evidenţa activităţii didactice şi ştiinţifice a cadrelor

didactice.

7. Dorim să avem o evidenţă a disciplinelor care se predau în catedră.

8. Dorim să avem situaţia şcolară a fiecărui student.

9. Dorim să avem statele de funcţii ale catedrei.

10. Dorim să avem orarele profesorilor, grupelor şi sălilor.

11. Dorim să avem o situaţie clară a veniturilor şi cheltuielilor catedrei.

Page 112: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

113

12. Dorim să avem situaţia încasărilor pentru studenţii cu taxă.

Plecând de la aceste cerinţe cuprinse în caietul de sarcini, se trece la

proiectarea bazei de date. Această acţiune este executată de către

proiectantul sistemului informatic.

Baza de date

Pentru ca structura bazei de date să fie mai uşor de urmărit, a fost împărţită

în 2 părţi. În figurile 5.3 şi 5.4 este prezentată stuctura bazei de date folosită.

tblTaxeStudenti

CategTaxaID ChE

StudentID ChE

Data

NrDocument

Suma

Observatii

tblOrar

SectiaID ChE

GrupaID ChE

Ziua

Ora

DiscipID ChE

TipOra

ProfID ChE

SalaID

Saptamina

tblSali

SalaID ChP

Denumirea

Observatii

tblStudenti

StudentID ChP

CNP

Nume

Initiala

Prenume

An

GrupaID ChE

Stare

DataN

..........

tblPlanInvat

AnUniv

SectiaID ChE

An

Sem

DisciplinaID ChE

OreC

..........

tblStatFunctiuni

StatFunID ChP

Norma

NrPost

FunctiaDidactica

ProfID ChE

DisciplinaID ChE

SectiaID ChE

..........

tblProfesori

ProfID ChP

Nume

Prenume

Catedra

SpecialitID ChE

TitluDidactic

Functie

Salar

JudetID ChE

tblNote

AnUniv

StudentID ChE

GrupaID ChE

DiscipID ChE

An

Nota1

.........

tblGrupe

GrupaID ChP

Grupa

An

............

tblDiscipline

DisciplinaID ChP

CodDisciplina

Denumirea

Evaluare

FisaDisciplinei

tblSpecialitati

SpecialitateID ChP

Denumirea

tblJudete

JudetID ChP

Abreviere

Denumirea

tblDiscipline_1

DisciplinaID ChP

CodDisciplina

Denumirea

Evaluare

FisaDisciplinei

tblCategTaxa

CategTaxaID ChP

Denumirea

Observatii

tblSectii

SectiaID ChP

Denumirea

tblProfesori_1

ProfID ChP

Numele

...........

tblGrupe_1

GrupaID ChP

Grupa

An

SectiaID ChE

tblStudenti_1

StudentID ChP

CNP

Nume

Initiala

DataN

JudetID ChE

..........

tblSectii_1

SectiaID ChP

Denumirea

Fig. 5.3. Structura bazei de

date, partea I-a

Page 113: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

114

Se observă relaţiile dintre tabele, încercaţi să analizaţi aceste relaţii pentru a

întelege funcţionarea acestei baze de date. Tabelele care apar de două ori,

cum sunt tblProfesori şi tblProfesori_1, sunt de fapt acelaşi tabel, dar aşezat

în locuri diferite pentru a nu complica figura prin desenarea unui traseu prea

lung şi întortocheat al relaţiei.

Securitatea aplicaţiei

Fiind o aplicaţie în Internet, politica de securitate este foarte importantă

pentru a împiedica complicaţiile survenite prin accesări neautorizate de către

persoane rău intenţionate. Utilizatorii aplicaţiei au fost împărţiţi în grupuri

de utilizator. Fiecare grup are drepturi bine precizate, care se găsesc în

documentaţia care însoţeşte aplicaţia. Un utilizator poate face parte din mai

multe grupuri, drepturile sale însumând drepturile fiecărui grup. În tabelul

5.1 sunt prezentate grupele aplicaţiei şi drepturile lor.

tblContracte

ContractID ChP

NrContract

Data

Denumirea

Perioada

Beneficiar

Valoare

Observatii

tblAutoriArt

ProfID ChE

ArticolID ChE

AutorNr

tblAutoriContr

ProfID ChE

ContractID ChE

Pozitie

Observatii

tblArticole

ArticolID ChP

LocPublicare

Denumirea

AnPublicare

Pagini

Observatii

tblAutoriAct

ProfID ChE

ActivitateID ChE

Pozitie

ObservatiitblActivitati

ActivitateID ChP

CategActivID ChE

Denumirea

AnUniv

Perioada

NrOre

Observatii

tblCarti

CarteID ChP

ISBN

Denumirea

Editura

AnAparitie

Pagini

Observatii

tblProfesori

ProfID ChP

Nume

Prenume

Catedra

SpecialitID ChE

TitluDidactic

Functie

Salar

JudetID ChE

tblCategActiv

CategActivID ChP

Categoria

Observatii

tblCheltuieli

CheltuialaID ChP

Denumirea

ProfID ChE

Explicatii

Data

Valoare

Observatii

tblAutoriCarti

CarteID ChE

ProfID ChE

AutorNr

tblSpecialitati

SpecialitateID ChP

Denumirea

tblJudete

JudetID ChP

Abreviere

Denumirea

Fig. 5.4. Structura bazei de date, partea II-a

Page 114: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

115

Grup Componenţă Drepturi

Admin Administratori

Sef catedră

Toate drepturile

Cadre didactice Membrii catedrei Editarea datelor proprii

Vizualizarea rapoartelor

Studenţi Studenţii

specializărilor

arondate catedrei

Numai consultare de rapoarte

dedicate lor

Întreţinere Utilizatori care

introduc date

Acces la formularele repartizate

Observaţi că există 4 grupuri de utilizatori, fiecare utilizator trebuie să facă

parte din cel puţin un grup. Dacă un utilizator va face parte din mai multe

grupuri drepturile se vor însuma. Se pot adăuga şi alte grupuri dacă

necesităţile o cer.

Funcţionarea aplicaţiei

În principiu, fiecare utilizator primeşte un ID şi o parolă. În funcţie de

grupul din care face parte, are acces la diferite module. Pornirea aplicaţiei

constă în deschiderea unei pagini Web în care se poate face logarea la

aplicaţie pe baza ID-ului şi a parolei (figura 5.5).

Tab. 5.1. Drepturile grupurilor

Fig. 5.5. Pagina de start a aplicaţiei

Page 115: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

116

Până nu s-a logat, un utilizator nu are acces la nimic, deşi vede meniul din

stânga, nu poate accesa opţiunile. După logare, de exemplu, un profesor, are

acces la rapoarte, cum ar fi cărţile şi articolele publicate de un anumit

profesor, ce activităţi a desfăşurat, rapoarte care se pot alege dintr-o listă

după cum se vede în figura 5.6. Numărul rapoartelor se poate schimba

periodic, deoarece apar noi cerinţe, unele pot dispărea sau modifica. Dacă

baza de date este corect proiectată, practic se poate scoate orice raport din

interogarea ei.

Observaţi că au apărut şi opţiunile de actualizări, aceasta însemnând că user-

ul logat are şi drepturi de actualizare a datelor din baza de date.

Utilizarea aplicaţiei nu se deosebeşte cu nimic de navigarea obişnuită a

oricărui site Web, singura deosebire este că se poate interveni la baza de

date, intervenţie care poate fi sesizată imediat de către toţi utilizatorii.

Baza de date conţine peste 30 de tabele, care sunt legate între conform

logicii de concepere a acesteia. Iată câteva din cele mai importante tabele

(carte conţin mai multe câmpuri):

tblProfesori – conţine datele despre cadrele didactice ale catedrei

ITM.

tblStudenti – conţine datele despre studenţii arondaţi catedrei ITM.

tblStatFunctiuni – conţine posturile didactice arondate catedrei ITM.

tblDiscipline – conţine disciplinele care se predau la specializările

arondate catedrei.

tblPlanInvatamint – conţine date despre planurile de învăţământ ale

fiecărei secţii.

Fig. 5.6. Secvenţă de meniu

Page 116: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

117

Schema de funcţionare a aplicaţiei este prezentată în figura 5.7.

Se observă că putem accesa aplicaţia de oriunde de pe glob, chiar de pe

PDA şi laptop, înafară de obişnuitele calculatoare personale. Rapoartele pot

fi tipărite pe o imprimantă legată la oricare din calculatoare.

Concluzii

Acest studiu de caz şi-a propus să arate posibilităţile de aplicare a sistemelor

informatice într-un domeniu unde sunt mai puţin folosite. Avantajele

folosirii unui sistem informatic în gestionarea unei catedre sunt evidente. În

primul rând, accesul la informaţie, de oriunde şi oricând, poate îmbunătăţi

mult activitatea din cadrul unei catedre, ştiut fiind cât de greu se obţin

situaţii centralizate, care sunt necesare pentru diferite raportări statistice.

Există posibilitatea ca fiecare cadru didactic să-şi raporteze activitatea în

timp real – imediat ce s-a terminat, poate oricând să-şi vadă propriile

realizări şi ale colegilor.

Fig. 5.7. Schema de funcţionare a aplicaţiei

Page 117: Informatica Manageriala - Curs

Informatică managerială Capitolul 5

118

O aplicaţie de acest gen este utilă, în primul rând şefului de catedră, care

poate face economie de mult timp în activitatea de gestionare a catedrei.

Oricum, viitorul este al sistemelor informatice, singurele care ne pot face

munca mai eficientă aşa cum o cere prezentul.

Bibliografie

[JAM90] James A. O’ Brien, Management Informatic System, Boston,

1990.

[MAR94] Marian, L., Management general şi industrial, Univ. Tehnică

Tg. Mureş, 1994

[MIC03] Michael J. Hernandez, Proiectarea bazelor de date, Editura

Teora, 2003, Traducere din limba engleză.

[MIL04] Militaru, Gh., Sisteme informatice pentru management, Editura

BIC ALL, 2004

[MIR97] Mîrşanu, R., Velicanu, M., Informatica aplicată, Editura

Petrion Bucureşti, 1997.

[NIT96] Niţchi, Şt., ş.a., Bazele prelucrării informaţiilor şi tehnologie

informaţională, Editura Intelcredo Deva, 1996.

[RAD96] Radu, I., Informatică managerială, Editura economică

Bucureşti, 1996.

[RUS93] Russu, C., Management, Editura Expert, 1993.

[WIL02] William Kilmer, Reţele de calculatoare şi Internet – pentru

oameni de afaceri, Editura Teora, 2002.

[ZAH93] Zaharia, M., ş.a., Management, teorie şi aplicaţii C++, Editura

Tehnică, 1993.