Pet Shop Store

Embed Size (px)

Citation preview

  • 8/17/2019 Pet Shop Store

    1/25

    Liceul Teoretic „Mihai Eminescu” Bârlad

    Clasa 12 MI2

     LUCRARE DE SPECIALITATE  PENTRU OBTINEREA ATESTATULUI 

     PROFESIONAL

    Profesor îndrumător Candidat

     

    !"#L 2$1%

  • 8/17/2019 Pet Shop Store

    2/25

      &estionarea unui Pet 'ho(

  • 8/17/2019 Pet Shop Store

    3/25

    !)ME"T

    Consideri că ai prea multe animăluţe sau hrană acasă ? Şi nu ştii

    ce să faci cu ele? Te-ai gândit că sunt oamenii cărora le-ar prinde bine

    un animăluţ de companie şi că le pot aduce un zâmbet pe buze, cât de

    mic ? Ştiai că sunt persoane cu probleme de sănatate iar animăluţele îi

     pot auta ? !unt câini speciali pentru ne"ăzători şi multe altele# $oreştisă "inzi animăluţe pentru a aduce fericirea în "iaţa altor oameni ? !au

    să "inzi hrană pentru a face alte animăluţe fericite ? %tunci ai ocazia

    să pui anunţul tău aici &

  • 8/17/2019 Pet Shop Store

    4/25

    *escrierea lim+a,ului -o.Pro

    'isual (o)*ro are o istorie lungă şi glorioasă, fiind cunoscut drept cea mai fle)ibilă şimai puternică aplicaţie de pe piaţă în domeniul bazelor de date# *lecând de la originile sale ca(o)+%!, produs de (o) !ftare, .(o). cum este denumit în comunitatea internaţională a

     programatorilor, a fost cunoscut întotdeauna pentru "iteza, fle)ibilitatea şi eficacitatea s aca produs de programare pentru bazele de date#  /a sfârşitul anilor 012, (o)+%! a apărut pe piaţă ca o copie a produsului d+%!,fiind proiectat să fie mai rapid şi mai bun decât d+%! şi mai ales, compatibil cu d+%! 333#(o)*ro 4#2 a marcat desprinderea de d+%!# % introdus noi concepte în proiectarea interfeţeigrafice cu utilizatorul 56738 şi a unor metode noi de dez"oltare a programelor, care l-au

     propulsat în faţa d+%!-ului#(o)*ro şi-a dobândit ade"ărata identitate odată cu "ersiunea 9#2# :dată cu această

    "ersiune au fost incluse câte"a tehnologii noi, care au re"oluţionat piaţa dez"oltării bazelor dedate pentru calculatoarele personale#  3ntroducerea algoritmului ;ushmore a a"ut un efect neaşteptat# $intr-o dată, tabele de

    milioane de înregistrări puteau fi implementate în sistemele de baze de date pentru *C fără arecurge la alte tehnologii mai costisitoare#  3nstrucţiunile !  Containerul de baze de date 5$atabase Container - $+C8 care aducea suportul pentru

     proceduri memorate, reguli ataşate la tabel şi o mulţime de funcţii suplimentare pentru lucrulcu datele#

    'izualizările 5'ies8 care sunt cursoare !

  • 8/17/2019 Pet Shop Store

    5/25

    : implementare robustă, deplină, a orientării spre obiect a deschis calea utilizării din ce în cemai largi a acestui mod de programare, bazat pe modelul-obiect şi pe posibilitatea construirii

     propriilor clase şi subclase#  'ersiunea @#2 era o actualizare a "ersiunii B#2, cu rezol"area multor nereguli şiconţinând trăsături noi şi interesante# !-a introdus posibilitatea creării şi utilizării ser"erelor C:# !-au adăugat câte"a comenzi şi funcţii noi şi se pot obser"a începuturile legării

    mediului 'isual (o)*ro de facilităţile 3nternetului#

    B#4#B#4# 3nterfaţa 'isual (o)*ro=n ultimii ani, un număr tot mai mare de aplicaţii comple)e au fost construite cu

    sisteme de baze de date pentru microcalculatoare cum este (o)*ro# $ar chiar cu instrumenteleoferite de aceste sisteme - cum sunt generatoatele de rapoarte şi "izualizări, bibliotecile,administratorul de proiecte - timpul total cerut de realizarea multor aplicaţii a crescut# aimult, utilizatorii doresc să aibă acces la date memorate în alte formate şi nu doar la datele de

     pe calculatorul local, ci şi la cele din ser"erele centrale de date# (o)*ro a e"oluat de laD+%! pentru $:! la un mediu de dez"oltarea aplicaţiilor cu interfaţă 673 "izuală, înnumai câţi"a ani# : dată cu apariţia pachetului 'isual !tudio, (o)*ro a de"enit un membru al

    familiei de produse icrosoft şi o componentă "itală a comunităţii instrumentelor de programare a aplicaţiilor# !copul pachetului este de a furniza instrumentele de programare şide lucru cu bazele de date pentru realizarea programelor care să îndeplinească funcţiunilearătate#  /a prima "edere, interfaţa 'isual (o)*ro pare neinteresantă> un meniu, o bară deinstrumente 5toolbar8 şi o fereastră goală numită .Command.#

    (ereastra de comandă  %ceastă fereastră este una dintre cele mai interesante caracteristici ale 'isual (o)*ro#(ereastra foloseşte la introducerea comenzilor care spun 'isual (o)*ro-ului ce să facă# Eutrebuie folosită la oriceF e)istă opţiuni în meniu care corespund multor sarcini comune# $ar seobser"ă un control mai bun asupra comenzilor precum şi o fle)ibilitate mai mare, deoarecemeniurile sunt limitate în scopuri şi în adâncime#  3nterfaţa 'isual (o)*ro este un mediu de dez"oltare complet 5sau 3$ - 3ntegrated$e"elopment n"ironment8# *ermite crearea, depanarea, testarea, compilarea şi na"igarea înîntreaga aplicaţie prin intermediul 3$ - nu sunt necesare unelte adiţionale# !pre deosebire dealte unelte din 'isual !tudio, 'isual (o)*ro 3$ îndeplineşte două funcţii>

      G se poate utiliza 'isual (o)*ro în lucru cu bazele de date localeF se pot deschide tabele,adăuga, edita şi şterge date, sorta şi interoga, se pot realiza rapoarte# $esigur, este copleşitor să se folosească 'isual (o)*ro doar în acest scop, şi pentru cei mai mulţi utilizatori este

     probabil dificilă utilizarea strict interacti"ă# %lte instrumente, ca icrosoft %cces, sunt dedeparte mai potri"ite pentru gestionarea bazelor de date personale#  G permite accesarea datelor prin comenzile din fereastra de comandă, şi în plus, se poatee)ecuta "irtual fiecare comandă şi returna "aloarea fiecărei e)presii din fereastra de comandă5e)cepţie fac comenzile de bază care fac parte dintr-o structură logică, ca 3( sau $: C%!8#B#4#B#4#4# Crearea formularelor   (ormularul este o clasă-container, capabilă să includă oricât de multe alte controalesau containere, cum ar fi casetele de te)t, butoanele de comandă, casetele de "allidare, cadrelede pagini sau grile# $eoarece, formularul esteo clasa container specializată, el admite oricaredin aspectele modelului e)hausti" al programării orientate spre obiect# (ormularele au peste422 de proprietăţi de bază şi H2 de metode de bază şi permit adăugarea a oricât de multe

     proprietăţi şi metode definite de utilizator pentru a le e)tinde funcţionalitatea# (ormularele se pot moşteni din subclase de formulare specializate sau pot ser"i ca superclase pentru alte

  • 8/17/2019 Pet Shop Store

    6/25

    formulare# )istă două diferenţe maore între formulare şi maoritatea celorlalte clase-container>  G (ormularele îşi manifestă prezenţa "irtuală pe ecran  G (ormularele îşi pot e)trage informaţiile dintr-o sesiune pri"ată de date#  (ormularul, în sine, constă din fundal, pe care "a fi aşezată cea mai mare parte aconţinutului funcional al formularului# (ormularul însuşi răspunde la un set de e"enimente

    indos> clicuri de mouse, acti"are, redimensionare şi mutare# $ar,în cele mai multe cazuri,funcţionalitatea principală, care interesează utilizatorul este concentrată în controalele dininteriorul formularului#

    B#4#B#4#9# Crearea meniurilor   3nterfaţa grafică cu utilizatorul este o parte importantă a unei aplicaţiiF este elementul

     pecare îl "or "edea clienţii# =n ultimii câţi"a ani, utilizatorii s-au obişnuit cu interfeţe ingenioase,sensibile la e"enimente, iar 'isual (o)*ro a ţinut pasul cu aceste cerinţe prin diferitele saleinstrumente de proiectare de tip 673#  'isual (o)*ro include un enu $esigner 5proiectant de meniuri8 uşor de folosit, care

    oferă posibilitatea ca aplicaţia să se bazeze pe un sistem standard de meniuri indos#Teminologia meniurilor   +ara de meniu se referă la ni"elul superior de meniu, lista elementelor care rămân"izibile pe parcursul celor mai multe aplicaţii#:pţiunea de meniu 5enu pad 8 este următorul ni"el al ierarhiei# (iecare element din bara demeniu reprezintă o opţiune de meniu# (ăcând clic pe o opţiune, aceasta desfăşoară o listă desub-opţiuni sau poate declanşa o acţiune#

    7n prompt de meniu este o sub-opţiune care apare într-un meniu pop-up# (ăcând clic pe un prompt de meniu, se poate decalnşa o acţiune sau se poate aunge la un submeniu cualte prompturi#

  • 8/17/2019 Pet Shop Store

    7/25

    Pre/entarea a(licatiei

    !(licația este +a/atӑ (e trei ta+ele numite astfel4# clienti#dbf 9# produse#dbf B# "anzari#dbf 

    10 Ta+ela clienti0d+f  3dIclienti> numarul clientilor   Eume> numele clientilor  Cnp> cnp-ul clientilor 

    20 Ta+ela (roduse0d+f   ErIcrt> numarul curent Categorie> aterial !toc *ret  producator 

    0 Ta+ela an/ari0d+f   ErIcrt 3dIclient

     ErIbuc $ataI"  pret

  • 8/17/2019 Pet Shop Store

    8/25

      Introducere%plicaţia permite gestionarea produselor unui magazin de animale într-

    un mod sigur şi eficient#

    %plicaţia conţine baze de date ce reţin informaţii atât despre produsele

    aflate în stoc si "ânzările efectuate cat si despre clientii carora le-au fost

    "andute produse #

    !e simplifică operaţii ca >

    adăugarea unui nou produs în stoc

    "înzarea produselor 

    căutarea unui produs

    %plicaţia poate de asemenea genera rapoarte ale "ânzărilor efectuate la o

    anumită dată#

  • 8/17/2019 Pet Shop Store

    9/25

     

    *escrierea a(licatiei

    +aza de date este realizata printr-o relationare intre tabelele JproduseK siJ'anzariK #%plicatia contine meniu in care se gasesc toate operatiunile posibile#

    :peratiile posibile sunt umatoarele>-%daugarea unui produs in baza de date F

    - odificarea datelor produselor din baza de date F-!tergerea peoduselor F-'anzarea prouselor F-;apoarte despre "anzarile efectuate F

    103(eratii

  • 8/17/2019 Pet Shop Store

    10/25

    1010!dau4are

    %ceasta optiune da posibilitatea de a adauga in baza de date un nou produs#/a apelare "a aparea o noua fereastra 5fig# B8 in care "a trebui sa completaticampurile prezente cu datele referitoare la produsul pe care doriti sa il adaugati #*entru a efectua adaugarea apelati butonul J%daugaK care la randul sau "a"erifica daca datele sunt introduse corect#3n cazul in care nu ati completat toatecampurile aplicatia "a afisa mesaul JCompletati toate campurile &K#5fig# 98#%legerea categoriei se face alegand un camp din lista JascunsaK indicata prineticheta JcategorieK #3n cazul in care adaugarea "a fi "alida aplicatia "a afisa mesaul J%daugare

    reusita J5fig#48#3n baza de date produsele "or fi introduse in baza de date cu litere mari #

      Fig. 1 Fig. 2

  • 8/17/2019 Pet Shop Store

    11/25

     

    Fig. 3

    *entru a inchide fereastra apelati butonul J%nuleazaK #

    10205i/uali/are an/ari

    Cu autorul acestei optiuni a"eti posibilitatea de a "izualiza produsele"andute #/a apelare "a aparea o noua fereastra 5fig#L8 in care am introdus o listain care "eti a"ea posibilitatea de a alege un produs cu un anumit codJid produsK #

      -i406

    *entru a "izualiza doar produsele "andute la o anumita data introducetidata in campul indicat prin sageata in imaginea de mai sus si apelati butonulJ%fiseazaK #3n cazul in care la data introdusa au fost realizate "anzari ,produsele"andute "or fi afisate in lista ,indicate prin Jid produsK ,indicand si clientul carea cumparat fiecare produs in parte indicat prin J3d clientK#*entru a "izualiza

  • 8/17/2019 Pet Shop Store

    12/25

    datele in totalitate faceti clicM asupra unu camp din lista si in acel moment datele"or fi trecute in campurile prezente in fereastra nou deschisa #Tabela "anzari "afi filtrata astfel incat in lista sa apara doar produsele "andute la dataintrodusa#*entru a realiza defiltrarea tabelei 5pentru a a"ea acces la toate

     produsele "andute8 apelati butonul J%nuleaza filtrareK#

    $e e)emplu daca am introdus data > 2LN2LN9221 s-a realizat urmatoarea filtrare >

    Comparand ultimele doua imagini "eti constata urmatoarele >-lista din imaginea a doua contine doar un singur camp singurul

    "andut la acea data F-butonul J%nuleaza filtrareK care initial era dezacti"at in cea de-a douaimg# este acti"at semn ca a a"ut loc o filtrare #

    In cazul in care ati facut o filtrare la inchiderea ferestrei se va

    realiza automat defiltrarea .

    1.3.Modifica :

    a) Produse

    %ceasta optiune da posibilitatea de a modifica in baza de datedatele produselor#/a apelare "a aparea o noua fereastra 5fig #@8 in care dupa cum "eti"edea e)ista o lista in care se gasesc toate produsele din stoc#*entru a realiza modificarea unui produs alegeti un produs,facandclicM asupra sa in lista sau apeland la optiunea de cautare a produsului #3n cazul in care apelati la optiunea de cautare completaticampul indicat prin sageata in figura @ apoi apelati butonul JCautaK

  • 8/17/2019 Pet Shop Store

    13/25

    #3n cazul in care produsul a fost gasit datele sale "or fi trecute informularul prezent in fereastra #

    :data ales produsul a"eti posibilitatea de a efectua modificariasupra datelor sale sau puteti sa il stergeti #

    3n cazul in care "reti doar sa ii modificati datele efectuati modificareadorita si apelati butonul JodificaK#3n cazul in care nu ati completattoate datele aplicatia "a afisa mesaul JEu sunt acceptatre campuri"ide &K #

    $aca modificarea poate fi efectuata ,nu e)ista nici o eroare , a"eti posibilitatea de a renunta la modificarea facuta deoarece aplicatia "a afisaurmatoarea intrebare >

    3n cazul in care alegeti optiunea JOesK modificarea "a fi efectuata,in cazcontrar nu#

  • 8/17/2019 Pet Shop Store

    14/25

      Fig.5

     

    %legand optiunea de cautare in lista "a fi afisat doar produsulcautat,completandu-se automat si campurile din fereastra cu datelereferitoare la produsul 5fig#H8#3n cazul in care produsul nu a fost gasitin baza de date aplicatia "a afisa mesaul >

  • 8/17/2019 Pet Shop Store

    15/25

      Fig.6

    3nchiderea ferestrei se realizeaza cu butonul J;enuntaK #

     b) Client

  • 8/17/2019 Pet Shop Store

    16/25

      Fig. A

    odificare clientilor se face urmand urmatorii pasi >- !electati din lista persoana asupra careia doriti sa realizatimodificarea F

    - ;ealizati modificarea dorita F- %pelati butonul JodificaK Frori ce pot aparea in realizarea modificarii >48 JCE* e)istentK fig#P> apare in cazul in care efectuati o

    modificare asupra cnp-ului introducand un cnp e)istent in

     baza de date 5nu se tine cont de cnp-ul ce a fost modificat 8F98 JCompletati ambele campuriK fig#1 > apare in momentul in

    care nu au fost completate ambele campuri JEumeK si JCnpK #B8 JEu e)ista nici o persoana cu acest nume &Kfig#Q >apare in

    momentul in care apelati la optiunea de cautare a persoaneiasupra careia doriti sa realizati modificarea F

    Fig. 7

    Fig. 8

  • 8/17/2019 Pet Shop Store

    17/25

     

    Fig. 9

    !i la aceasta operatie a"eti posibilitatea de a apela la optiunea decautare#3n acest caz cautarea se realizeaza in scopul gasirii mai rapidea unei anumite persoane asupra careia doriti sa efectuati modificarea #

    *entru aceasta completati campul indicat prin sageata in fig# % apoiapelati butonul JCautaK#3n caul in care cautarea esueaza "a fi afisat mesaul descris in eroareaB8 #3n caz contrar se "or realiza urmatoarele >-se efectueaza o filtrare asupra bazei de date dupa numele introdusastfel incat in lista "or fi afisate doar persoanele cu acel nume F-se completeaza automat campurile JEumeK si JcnpK #

    *entru a a"ea acces la toate persoanele dupa ce ati realizatcautarea apelati butonul J%nuleaza filtrareK #

    Tot in cadrul acestei feresre puteti efectua si stergerea unei persoane apeland butonul J!tergeK insa dupa ce in prealabil ati ales persoana ce dariti sa o stergeti #%"eti posibilitatea de a renunta lastergere deoarece in momentul in care ati apelat butonul J!tergeKaplicatia "a afisa mesaul JConfirmare stergereK 5fig#428 si, alegand

    optiunea JOesK persoana in cauza "a fi stearsa din baza de dateiar,alegand JEoK stergerea "a fi anulata #

     

    Fig.10

  • 8/17/2019 Pet Shop Store

    18/25

    3nchiderea ferestrei se realizeaza prin intermediul butonului J;enuntaK#

    205an/are

    *rin intermediul acestei optiuni se "or realiza "anzarile produselor aflate in baza de date #

    /a apelare "a apare o noua fereastra 5fig#448 #*entru a realiza "anzarea unui produs realizati urmatorii pasi>-alegeti din lista produsul pe care doriti sa il "indeti F-introduceti datele clientului F-introduceti cantitatea ce doriti sa o "indeti F-apelati butonul J'indeK #

    3ntroducerea datelor clientului caruia doriti sa "indeti se face infelul urmator >-in cazul in care clientul e)ista in baza de date se "a introduce numaicnp-ul deoarece campul JEumeK "a fi inacti" F-in cazul in care doriti sa "indeti unui client nou campul JEume "a fiacti" astfel incat "or trebui completate ambele campuri #JTipulK clientului "a trebui selectat prin alegerea unei optiuni dinlocul indicat prin sageata in figura 44 #%cesta poate fi JClient e)istentKsau JClient nouK #

    Erori (osi+ile

    48 JEu puteti "inde mai mult decat detineti &K  eroare cauzata dedorinta de a "inde o cantitate mai mare decat stocul pe care il detineti5fig#498 F98 JClientul nu e)ista in baza de date &K  aceasta eroare apare inmomentul in care doriti sa "indeti un produs unui client ce se afla in baza de date si realizati greseli in introducerea cnp-ului 5fig#4B8 FB8 JEu sunt admise campuri "ide &K eroarea apare in cazul in carenu ati introdus cnp-ul persoanei careia doriti sa "indeti 5fig#4L8 FL8 Jai e)ista un client cu acest CE* &K-aceasta eroare apare in momentulin care doriti sa "indeti unui client ce nu este nou si introduceti un cnp cee)ista dea in baza de date 5fig#4@8 F

  • 8/17/2019 Pet Shop Store

    19/25

    @8 J*rodusul cautat nu se afla in baza de date &K  acest mesa apare inmomentu in care apelati la cautarea unui produs prin intermediul optiuniiKCauta produsK 5fig# 4P8 F

    :data apelat butonul J'inde produsK se "a "erifica daca "anzarea poate safie efectuata #3n caz de eroare aceea "a fi una din cele prezentate mai sus #

    3n cazul in care doriti sa cautati un produs completati campul KCauta produsK si apelati butonul JCauta produsK #3n cazul in care cautarea esueaza "a fi afisata eroarea @8 #3n cazul unei cautari reusite in lista "a fi afisat doar produsul cautat 5acestlucru se poate obser"a in fig#4H comparati" cu fig#448#*entru a a"ea accesla restul produselor apelati butonul J%rata toate produseleK#

    3nchiderea ferestrei se realizeaza prin intermediul butonului J3nchideK # 

    Fig.11

  • 8/17/2019 Pet Shop Store

    20/25

    Fig.12

    Fig.13

    Fig.14 

  • 8/17/2019 Pet Shop Store

    21/25

    Fig.15

    fig.16

     

    3.Generare raport vanzari

    *rin intermediul acestei optiuni "eti realiza rapoarte lunare asupra

    "anzarilor efectuate #/a apelare se "a deschide o noua fereastra 5fig#418#*entru a realiza un

    raport alegeti din lista luna pentru care doriti sa realizati raportul apoi

    apelati butonul J6enereaza raportK #

    3n cazul in care nu s-au inregistrat "anzari in luna respecti"a aplicatia "a

    afisa mesaul JEu e)ista "anzari pentru luna aleasa #*rofitR2 &K#5fig#4Q8#

  • 8/17/2019 Pet Shop Store

    22/25

    3n caz alternati" "or afisa toate produsele "andute grupate in functie de

    ziua in care s-a realizat "anzarea impreuna cu subtotal pe fiecare zi si totalul

    lunar #;aportul astfel obtinut poate fi printat #

    Fig.17

    Fig.18

  • 8/17/2019 Pet Shop Store

    23/25

    Fig.19

    4.*arasirea aplicatiei se face prin intermediul optiunii J3esireK aflatain bara de meniu#

    2. Bibliografie

    4# $ima 6abriel,$ima ihai>+azele 'isual (o)*ro @#2, ditura Teora,

    +ucureşti,4QQQ#

  • 8/17/2019 Pet Shop Store

    24/25

    9# icrosoft 'isual (o)*ro H#2, 6hidul *rogramatorului,ditura Teora ,+ucureşti,9222#

    B# *antiru ariana, *antiru 3onuț>+azӑ de date# ditura /S! 3nfomat,+ucureşti,4QQQ#

    L# *antiru ariana, *antiru 3onuț, *antiru 3rina-3oana> 3nformaticӑ#'arianta'isual (o)*ro, ditura /S! 3nfomat, +ucureşti,922L#

    @# *etrus *aul, icrosoft 'isual (o)*ro @#2 pas cu pas, ditura *romedia-*lus,Clu-Eapoca, 4QQ1#

      Cuprins

  • 8/17/2019 Pet Shop Store

    25/25

    1.Introducere..........................................2

    2.Descrierea aplicatiei.............................3

    2.1.Operatii....................................3

    2.1.1.Adaugare produs................3

    2.1.2.Vizualizare vanzari............4

    2.1.3.Modificare.........................6

    2.1.3.1.Produse..................6

    2.1.3.1.Clienti....................8

    2.2.Vanzare...................................10

    2.3.Raport vanzari........................14

    2.4.Parasirea programului.............14

    3.Bibliografie.........................................15