Upload
dragos-calin
View
58
Download
0
Embed Size (px)
DESCRIPTION
licenta informatica manageriala
Citation preview
UNIVERSITATEA ROMÂNO-AMERICANĂ BUCUREŞTI
FACULTATEA DE INFORMATICĂ MANAGERIALĂ
Intranet realizat cu PHP şi Mysqlpentru gestionarea aprovizionării şi desfacerii
la restaurantul hoteluluiS.C Majestic Turism S.A.
ÎNDRUMĂTOR:Lect. Univ. drd.IACOB IONEL
STUDENT : CIOBANESCU MIRCEA
GRUPA 631
Bucureşti - 2010
- CUPRINS -
Introducere.........................................................................................................4
CAPITOLUL 1 Studiul şi analiza sistemului existent
1.1. Prezentarea unităţii economico-sociale.......................................................5
1.1.1. Istoric................................................................................................5
1.1.2. Obiectul de activitate........................................................................6
1.1.3. Locul in sfera economică.................................................................7
1.1.4. Indicatori economici.......................................................................10
1.2. Structura organizatorică a societăţii..........................................................14
1.2.1. Organigrama...................................................................................15
1.2.2. Studiul sistemului de conducere.....................................................16
1.2.3. Studiul sistemului condus..............................................................19
1.3. Studiul sistemului informaţional...............................................................21
1.3.1. Prezentarea activităţii economice...................................................21
1.3.2. Fluxul documentelor......................................................................22
1.3.3. Prezentarea documentelor..............................................................23
1.3.4. Descrierea procedurilor..................................................................25
1.4. Analiza critică şi direcţii de perfecţionare................................................26
CAPITOLUL 2 Proiectarea de ansamblu a noului sistem informatic
2.1. Definirea obiectivelor................................................................................28
2.2. Tehnologii folosite...................................................................................29
2.3. Diagrama entitate - asociere.....................................................................31
2.4. Proiectarea tabelelor aplicaţiei.................................................................32
2.5. Relaţii de asociere între tabele.................................................................34
2.6. Videoformate pentru situaţii de intrare....................................................35
2.7. Proiectarea situaţiilor de ieşire.................................................................37
2.8. Exemplificarea codului aplicaţiei.............................................................38
2
CAPITOLUL 3: Prezentarea produsului software, implementarea şi exploatarea aplicaţiei
3.1. Consideraţii generale.............................................................................42
3.1.1. Cerinţele platformei hardware şi software ale produsului program............................................................................42
3.1.2. Licenţa programului.......................................................................44
3.2.Descrierea funcţiunilor aplicaţiei........................................................46
3.2.1. . Prezentarea ecranului principal(meniurile aplicaţiei) ............46
3.2.2. . Meniul Incarcare-actualizare date.............................................48
3.2.3. . Meniul rapoarte............................................................................50
3.2.4. . Mesaje de eroare..........................................................................52
CAPITOLUL 4: Eficienţa şi utilitatea sistemului informatic
BIBLIOGRAFIE........................................................................................56
ANEXE..........................................................................................................58
3
Introducere
Lucrarea este compusă din 4 capitole şi prezintă activitatea de gestiune a aprovizionării şi
desfacerii la restaurantul hotelului Majestic. Este realizată pentru o unitate hotelieră de 4* , S.C.
Majestic Turism S.A., înfiinţată în anul 1993.
Se propune proiectarea şi realizarea unui sistem informatic modern pentru îmbunătăţirea
fluxurilor de date existente la nivelul întregii societăţi capabil să automatizeze şi să eficientizeze
procedurile manuale şi dificile de introducere, analiză, prelucrare şi transmitere a datelor
existente în sistem.
Astfel, în capitolul 1 al lucrării se abordează prezentarea generală a hotelului, care
cuprinde: scurt istoric, organizarea şi funcţionarea acestuia, analiza pieţei pe care Hotel Majestic
îşi desfăşoară activitatea, analiza indicatorilor circulaţiei turistice şi analiză principalilor
indicatori economico-financiari. De asemenea, în acest capitol este prezentat şi fluxul
documentelor din cadrul activităţii de aprovizionare şi desfacere, precum o scurtă prezentare a
acestor documente. Capitolul se încheie cu analiza critică a activităţii de aprovizionare şi
desfacere dar şi cu direcţii de perfecţionare pentru eficientizarea acesteia.
În cel de-al doilea capitol este prezentată proiectarea de ansamblu a noului sistem
informatic ce va fi creat. Aceasta cuprinde: definirea obiectivelor principale ale aplicaţiei,
proiectarea tabelelor ce vor constitui bază de date a aplicaţiei, relaţiile de asociere dintre acestea
precum şi situaţiile de intrare şi ieşire ale programului.
Capitolul 3 prezintă cerinţele hardware şi software necesare rulării în parametri optimi a
aplicaţiei, descrierea tuturor funcţionalităţilor programului, a meniurilor aplicaţiei precum şi
reguli de exploatare ale aplicaţiei.
Ultimul capitol precizează condiţiile şi modalităţile de implementare şi exploatare
curentă, se estimează eficienţa economică a aplicaţiei.
4
Capitolul 1
Studiul şi analiza sistemului existent
1.1 Prezentarea societaţii
1.1.1 Istoric
Hotel Majestic este administrat de Societatea Majestic Turism S.A., activitatea şi
funcţionarea sa făcându-se conform Hotărârii Guvernului României N.R.601 din 6 octombrie
1997 privind clasificarea structurilor de primire turişti (făcută în funcţie de carecteristicile
constructive, de calitatea dotărilor şi a serviciilor prestate).
Funcţionarea hotelului are în vedere respectarea “Normelor privind clasificarea unităţilor
cu activitate hotelieră şi alimentaţie din turism” din anul 1991, elaborate de Ministerul
Comerţului şi Turismului.
Clădirea în care se află în prezent Hotel Majestic a fost construită în anul 1920, iar în anul
1960 a devenit un hotel de 2*.
Prima consolidare şi renovare a clădirii, pe atunci anexă a teatrului Odeon a fost facută în
anul 1970.
În anul 1993 s-a înfiinţat Societatea Majestic, iar hotelul era cotat la categoria 2*.
Începând cu anii 1994-1995, hotelul a devenit de 4*.
Societatea Majestic este societate pe acţiuni, 98% aparţinând părţii turcesti, iar 2%
Societăţii Lido S.A.
Structura capitalului social al Societăţii Lido S.A. (care are ca principale obiective de
activitate, administrarea patrimoniului şi turismul) este:
- Fondul Proprietăţii de Stat (F.P.S.) – 42,869%;
- S.I.F. Transilvania – 2,868%;
- persoane fizice – 54,263%;
Partea majoritară a acţionarilor S.C. Majestic a dus o politică de investiţii de 5,6 milioane
U.S.D. în anul 1994-1995, în anul 2000 capitalul social ajungând la 1.450.000 U.S.D.
5
1.1.2 Obiectul de activitate
Hotel Majestic este o unitate hotelieră de 4*, amplasat în centrul comercial, financiar şi
cultural al capitalei, are o activitate permanentă şi este mereu disponibil clienţilor, oferind
servicii de calitate bună şi tarife pe măsură.
Structura serviciilor oferite de hotel este următoarea:
camere dotate cu aer condiţonat;
tv color şi sistem Pay-Tv;
mini-bar;
telefon cu facilităţi Voice Mail;
sistem automat de trezire;
Internet de mare viteză gratuit
uscător de păr
mini-safe;
Restaurantul Majestic oferă preparate culinare cu specific românesc, turcesc şi
internaţional;
Drink Bar şi Snack Bar oferă cele mai variate băuturi;
room-service la dispoziţia clienţilor 24 de ore pe zi;
Business Center;
Meeting Room;
computere, conectare internet, telex, fax, copiatoare, retroproiectoare, ecran
Filip Chart, tv, video;
centru de înfrumuseţare cu saună, masaj, fitnes, coafură, frizerie;
casă de schimb valutar;
servicii medicale;
angajaţii (în special cei care intră în contact cu clienţii) vorbesc franceza,
germana, engleza şi turca;
parcare.
.
6
1.1.3 Locul în sfera economică
Hotel Majestic are numeroşi colaboratori, cu ajutorul cărora îşi oferă serviciile, aceştia
fiind: agenţii de turism (Marshal, Simpa), bănci (Finas Bank), societăţi de asigurări (Astra),
companii de transport aerian (Tarom), societăţi comerciale, furnizori străini.
Tarifele practicate de Hotel Majestic sunt:
În timpul saptămânii (luni-vineri) Weekend (vineri-duminică)
Camera single 195 EUR; Camera single 115 EUR;
Camera dublă 240 EUR; Camera dublă 160 EUR;
Suite 290 EUR; Suite 200 EUR;
Sistemul de tarifare este diferenţiat în funcţie de tipul camerei, perioada de timp pentru
care este ocupată camera, gradul de ocupare al camerelor.
Tarifele de cazare afişate reprezintă preţul închirierii unei camere pentru 24 de ore.
Pentru o cameră dublă tarifele pot diferi în funcţie de câte persoane închiriază camera.
Sunt acordate şi anumite facilităţi pentru anumite segmente de clienţi (grupuri de turişti
care staţionează un anumit număr de zile în hotel) sau se folosesc tarife degresive (tariful pentru
o cameră scade dacă aceasta este închiriată mai multe zile).
Rezervările se pot face prin: fax, e-mail, internet, telefon.
Clienţii hotelului Majestic
Datorită faptului că Hotel Majestic este considerat “hotelul oamenilor de afaceri”
majoritatea clienţilor sunt oameni de afaceri români sau străini, care călătoresc pentru a face
afaceri, motive profesionale, în interes de serviciu, participări la reuniuni sau conferinţe.
7
Nefiind persoane cu probleme financiare, clienţii acestui hotel se dovedesc a fi foarte
sensibili la confortul şi la calitatea serviciilor oferite, astfel se urmăreşte satisfacerea tuturor
cerinţelor acestora.
Prezenţa în hotel a acestor clienţi este foarte avantajoasă, ei utilizând o gamă foarte
variată de servicii pe care le oferă hotelul, servicii pe care un client venit în vacanţă nu le-ar
folosi.
Clientela de afaceri aduce multe avantaje hotelului, şi anume: rezervările se fac înainte iar
riscurile de neplată sunt în general excluse, dacă au fost mulţumiţi clienţii vor reveni, voiajele lor
sun repartizate pe tot parcursul anului, ceea ce contribuie pozitiv la ocuparea hotelului.
Pentru oamenii de afaceri motivaţia şederii într-un hotel bine cotat este foarte importantă
pentru că ei vin să încheie contracte sau să facă anumite vânzări şi nu vor să pună în pericol
imaginea lor sau a firmei pe care o reprezintă.
Concurenţa
Pe piaţa pe care Hotel Majestic îşi desfăşoară activitatea sunt concurenţi puternici cărora
trebuie să le faca faţă pentru a supravieţui şi pentru a avea un grad de ocupare bun.
Datorită faptului că Hotel Majestic este considerat “hotelul oamenilor de afaceri”
principalii concurenţi ai acestuia sunt hotelurile care vizează aceleaşi categorii de clienţi.
În principal, concurenţii sunt hotelurile de 4* şi 5*, unele având atuuri importante de care
anumiţi clienţi ţin cont, şi anume: distanţa mai mică faţă de aeroport, posibilitatea de a face
transferuri spre sau la aeroport la cererea clienţilor, lanţul din care face parte, pentru că unii
clienţi, în general oamenii de afaceri, nu folosesc serviciile unui hotel dacă nu cunosc lanţul din
care face parte sau dacă nu au mai folosit serviciile acelui hotel.
Principalii concurenţi ai Hotelului Majestic sunt:
Hotel Athenee Palace Hilton (5*), inaugurat în 1997, fiind primul hotel de 5*
din Bucuresti, care oferă o gamă variată de servicii, având în plus faţă de
Majestic: posibilitatea de a închiria maşini clienţilor, piscină, jaccuzi, Casino,
un număr mai mare de camere (272), dar şi tarife mai mari. Societatea
proprietară este Athenee Phenix Group SA, forma de proprietate majoritară
find privată. O cameră single (fara mic dejun) ajunge la peste 300 USD.
8
Hotel Mariott (5*), deschis în anul 2000, face parte dintr-un mare lanţ
hotelier, fiind cotat pe piaţă ca un concurent serios, prezenţa sa pe piaţă
simţindu-se şi la Hotel Majestic, de unde a acaparart un anumit număr de
clienţi. Are 402 camere, tarifele fiind între 159-290 USD, iar la apartamente
între 319-829 USD, oferind o gamă foarte largă de servicii.
Crowne Plaza Flora (4*), cu 164 de camere, oferind în plus: posibilitatea de
închiriere a maşinilor, utilizarea piscinei acoperite şi a terenului de tenis,
copiii clienţilor având şi posibilitatea de a se juca pe un teren special
amenajat. Forma de proprietate este privată, fiind deţinută de societatea Ana
Hotels S.R.L.
Hotel Sofitel (4*), care face parte din grupul ACCOR, bine cunoscut pe plan
internaţional. Are 203 camere, cu o amplasare bună, fiind aproape de aeroport,
iar serviciile pe care le oferă în plus, în comparaţie cu Majestic sunt:
posibilitatea clienţilor de a utiliza piscina şi terenul de tenis. Tarifele
practicate sunt cuprinse între 258-283 USD, iar la suite 316 USD. Centrul de
afaceri WORLD TRADE CENTER atrage multi clienţi de afaceri. Forma de
proprietate este privată, fiind deţinută de W.T.C.B.-C.C.I.B. S.R.L.
Hotel Inter-Continental (4*) are 423 camere, 20 de birouri, 3 localuri şi 2
restaurante, funcţionând cu un contract franciza, forma de proprietate
majoritară este privată, fiind deţinut de Compania Hoteliera Inter-Continental
Romania S.A. Face parte din grupul Inter-Continental Corporation and
Resorsts; a fost proiectat în 1968 şi dat în folosinţă în anul 1971. Este
amplasat în centrul oraşului, într-o zonă de maxim interes cultural, comercial
şi financiar. Construcţia hotelului are un aspect modern, cu o intrare principală
foarte spaţioasă. Tariful de cazare al unei camere single (fără mic dejun) este
între 200-300 USD.
Hotel Lido (4*) are 119 camere cu o gamă variată de servicii, fiind amplasat
în centrul capitalei, fiind deţinut de Compania Hoteliera Inter-Continental
Romania S.A. (ca şi în cazul Hotelului Inter-Continental). Tarifele practicate
se încadrează între 200-300 USD (fără micul dejun).
Hotel Bucuresti (4*), cu 446 camere, forma de proprietate majoritară fiind de
stat, aparţinând Societăţii Turism S.A.
Hotel Continental (4*), cu 53 de camere, forma de proprietate majoritară fiind
privată, hotelul aparţinând societatii Continental S.A. Nivelul tarifelor
practicate este între 100-200 USD (ca şi în cazul Hotelului Majestic).
9
1.1.4 Indicatori economici
Analiza circulaţiei turistice
Număr turişti (număr persoane cazate) în Hotel Majestic:
Anii Nr. turisti Români Străini
2005 6636 164 6472
2006 5869 168 7701
2007 5920 166 5736
Fig.nr. 1 Analiza circulaţiei turistice
Analizând variaţia numărului total de turişti în perioada 2005-2007, se constată o scădere
a acestuia, de la 6636 (în anul 2005) la 5869 (în anul 2006), pentru ca în anul 2007 să crească
puţin peste anul 2006, ajungând la 5920.
Din analiza numărului de turişti pe naţionalităţi se poate observa numărul mare de turişti
străini cazaţi în hotel în perioada 2005-2007, în comparaţie cu turiştii români care ating cote
foarte mici. Acest lucru se poate explica şi datorită faptului că Hotelul Majestic este destinat în
principal oamenilor de afaceri.
Se poate lua în considerare şi faptul că oamenii de afaceri români pot deţine reşedinţe
secundare dacă nu locuiesc permanent în Bucuresti şi că turiştii români care vin în vacanţă, de
obicei nu se cazează la un hotel de 4* din cauza situaţiei economice şi a nivelului veniturilor
destul de mic.
10
Analiza principalilor indicatori economici
a) Venituri:
- mii lei -
Anii Venituri totale Venituri cazareVenituri
alimentaţie
Venituri din
prestări servicii
2005 26.908.389 200.933.723 4.293.800 2.222.096
2006 39.590.920 28.927.283 5.845.635 4.717.263
2007 45.564.160 32.087.783 6.642.550 6.833.827
Anii Venituri cazare (%) Venituri Alimentaţie (%)Venituri din prestări
servicii (%)
2005 74,67 15,96 8,26
2006 73,07 14,76 11,91
2007 70,42 14,58 14,99
Fig.nr. 2 Analiza pe tipuri de venituri
Se observă o pondere foarte ridicată a veniturilor din cazare (mult peste normele
internaţionale în domeniu), mult mai mare decât veniturile din alimentaţie şi prestări servicii şi o
11
creştere continuă a tuturor veniturilor în perioada 2005-2007, venitul total aproape dublându-se
din anul 2005 până în anul 2007.
b) Cheltuieli totale:
- mii lei -
Anii Cheltuieli totale Cheltuieli cazare Cheltuieli AlimentaţieCheltuieli din
prestări servicii
2005 18.156.524 1.808.266 7.945.554 5.877.242
2006 30.035.881 2.403.299 14.095.450 8.905.223
2007 40.814.031 2.869.169 17.105.983 14.481.746
Anii Cheltuieli cazare (%)Cheltuieli
Alimentatie (%)
Cheltuieli din
prestări servicii (%)
2005 9,9 43,8 32,3
2006 8 46,9 29,6
2007 7,02 41,9 35,48
Structura cheltuielilor totale în Hotel Majestic
Fig.nr. 3 Structura cheltuielilor totale în Hotel Majestic
12
Se poate observa din analiza structurii cheltuielilor totale că acestea au avut o creştere
continuă de la 18.156.524 în anul 2005 la 30.035.881 în anul 2006 pentru a se ajunge în anul
2007 la 40.851.930. Acelaşi lucru se poate spune şi despre cheltuielile din alimentaţie, cazare şi
prestări servicii, chiar dacă ponderea cheltuielilor din cazare şi prestări servicii este mai mică
decât cea a cheltuielilor din alimentaţie (43,8% în anul 2005 şi 46,9% în anul 2006).
3) Cifra de afaceri:
- mii lei -
Anii Profit brut Cifra de afaceri Profit net Capital propriu
2005 8.858.360 26.903.149 5.219.398 14.098.849
2006 11.636.110 39.490.181 7.377.206 149.680.654
2007 5.024.737 45.360.860 4.038.739 51.969.903
Fig.nr. 4 Analiza cifrei de afaceri în intervalul 2005-2007
Din analiza structurii cifrei de afaceri se poate observa creşterea acesteia continuă în
perioada 2005 crescând la 39.490.181 lei în anul 2006 şi ajungând la 45.360.860 lei în anul 2007.
La creşterea continuă a cifrei de afaceri a contribuit şi creşterea veniturilor, în principal, a celor
din cazare.
Acestă parte de prezentare generală a Hotelului Majestic, evidenţiază istoricul acestuia
caracteristicile de ansamblu, organizarea şi funcţionarea hotelului, analiza pieţei unde acţionează,
13
analiza circulaţiei turistice şi a principalilor indicatori economico-financiari ce caracterizează
activitatea hotelului.
1.2 Structura organizatorică a societăţii
Personalul hotelului, care asigură buna organizare şi funcţionare a acestuia, se ridică la
103 de persoane angajate la care se adaugă cele 11 persoane din departamentul tehnic cu statut
de colaboratori, număr ce depăşeşte normele internaţionale în domeniu, care sunt de 1,64
persoane/camera la categaria “confort”, încadrându-se între categoria “confort” şi categoria “lux”
(unde normele sunt între 2-2,5 persoane/camera).
În ceea ce priveşte categoriile de personal, comparaţia cu aceleaşi norme arată o depăşire
de aproximativ 5% atât în cazul personalului angajat în activitatea de alimentaţie publică, cât şi a
celui de întreţinere.
Personalul hotelului, de la recepţioneri până la contabilul şef şi managerul general
îndeplinesc cerinţele impuse de activitatea în domeniul serviciilor hoteliere: aspect fizic plăcut,
naturaleţe, bun simţ, uşurinţă în exprimare, tact, stabilitate emoţională, maturitate, capacitate de
perfecţionare, experienţă în domeniu.
Fiecare departament al hotelului este condus de un director de departament care respectă
profilul postului, ce cuprinde:
funcţia;
superiorul ierarhic;
sarcinile speciale;
calificarea necesară.
Conducerea superioară reglementează regulamente de ordine interioară, prin care se
stabilesc condiţiile de muncă în cadrul hotelului, aplicarea lor fiind obligatorie pentru orice
problemă care nu este reglementată printr-un text legal sau o convenţie colectivă.
Personalul hotelului cunoaşte în detaliu oferta (serviciile), fiecare fiind în masură să
satisfacă cele mai pretenţioase cereri ale clienţilor.
14
Fig.nr. 5 Organigrama S.C. MAJESTIC TURISM SA
Comitetul director
Comitetul director
Manager general
Manager general
Director economicDirector
economicDirector
aprovizioareDirector
aprovizioare Director cazareDirector cazare Director tehnicDirector tehnic Director resurse umane
Director resurse umane
Departamentul contabil
Departamentul contabil
Departamentul aprovizionare
Departamentul aprovizionare
Departamentul cazare
Departamentul cazare
CasierCasier Şef recepţieŞef recepţie
Departamentul tehnic
Departamentul tehnic
Departamentul resurse umane
Departamentul resurse umane
Personal angajari
Personal angajari
Director alimentaţieDirector
alimentaţie
Şef restaurantŞef restaurantResponsabil
barResponsabil
bar
Şef rezervariŞef rezervari
1.2.2. Studiul sistemului de conducere
Sistemul de conducere din cadrul hotelului este compus din:
Comitetul director
este forul decizional suprem.
adoptă şi amendeaza bugetele de venituri şi de chetuieli.
stabileşte structura organizatorică a unităţii economice.
stabileşte politica financiar-contabilă a societăţii.
aprobă darea de seamă lunară.
numeste/revocă managerul general.
stabileşte fondul de salarizare.
Managerul general
este factorul principal de decizie la nivelul societaţii, punand în
aplicare hotararile luate de comitetul director.
este direct raspunzător de rezultatele economice ale societaţii şi
de punerea corespunzatoare în practică a deciziilor comitetului.
stabileste politica economică şi financiar-monetară a societăţii.
stabileşte sarcinile fiecarui department.
coordoneaza activitatea tuturor nivelelor organizatorice.
Directorul economic
este direct respunzător de punerea în aplicare a deciziilor
managerului general, cu precădere in ceea ce privesc rezultatele
economice anuale ale societaţii.
coordoneaza activitatea economică şi administrativă la nivelul
societăţii.
răspunde direct de activitatea financiar-contabilă în cadrul
unităţii
întocmeşte lunar situaţia indicatorilor economici.
Director tehnic
răspunde de activitatea de planificare, lansare în execuţie şi
urmărire a execuţiei lucrărilor, în corelaţie cu celelalte activităţi
conform cerinţelor contractelor perfectate cu clienţii.
coordonează şi răspunde de desfăşurarea întregului proces de
procurare a produselor, serviciilor şi echipamentelor de la
furnizori/ subcontractanti, necesare executant lucrărilor de
construcţii-montaj şi producţiei secundare realizate de
organizaţie .
asigură cunoaşterea, înţelegerea, respectarea şi actualizarea
politicii şi obiectivelor calităţii, în cadrul organizaţiei, printr-o
adecvată comunicare.
prezintă managerului general informări, rapoarte şi situaţii
privind activităţile desfăşurate de compartimentele subordonate
şi rezultatele obţinute de acestea, pe perioade calendaristice, aşa
cum sunt cerute .
Director aprovizionare
realizează aprovizionarea magazinului/depozitului cu marfa
necesară, dezvoltarea relaţiilor cu furnizorii prin discuţii directe
pe teme diverse şi găsirea de noi posibilităţi în creşterea
vânzărilor.
participarea la târguri pe plan local cât şi extern în vederea
decoperirii de noi furnizori şi produse necesare pentru a acoperi
în peste 90% cerinţele clienţilor şi a pieţei.
participarea la diverse târguri pe plan local cu scopul de a face
cât mai cunoscute ofertele de cazare comercializate de hotelul
nostru cât şi de a descoperi potenţiali clienţi şi colaboratori.
Director alimentaţie
coordoneaza activitatea departamentului de alimentaţie publică
(restaurant, bar, bucătărie).
17
coordoneaza activitatea de alimenatie publică şi corelarea
acesteia cu alte unităţi şi departamente.
dezvoltarea de ţinte şi obiective, proiecte şi priorităţi şi
implementarea acestora în cadrul echipei de alimenatatie
publică.
Directorul departamentului de resurse umane
este subordonat managerului general al societăţii .
negociază şi încheie contractele de muncă cu angajaţii in baza
unor discuţii purtate cu managerul general.
întocmeşte şi eliberează adeverinţe pentru diverse nevoi ale
salariaţilor
colaborează şi raportează periodic Oficiului teritorial de muncă,
evolutia mişcarilor de personal din societate.
întocmeste raporturi lunare pentru Oficiul de şomaj, Casa de
pensii, Casa de asigurări de sănatate.
solicită aprobări cu privire la acordarea de prime, bonificaţii şi
ajutoare sociale in diverse situaţii.
asigură desfăşurarea în condiţii optime a activităţilor de
învăţămînt, organizare şi salarizare din cadrul societăţii .
urmăreşte respectarea prevederilor contractelor de muncă
semnate de conducerea societăţii .
colaborează cu Departamentul contabil în vederea calculării
salariilor cuvenite pentru munca depusă. Urmăreşte şi asigură
determinarea corectă şi la timp a drepturilor băneşti cuvenite
personalului muncitor din cadrul hetelului
urmăreşte însuşirea şi respectarea de către întregul personal al
societăţii, a tuturor regulilor interne stabilite de conducerea
societăţii pentru menţinerea ordinii şi disciplinei, iar în cazul
constatării unor încălcări ale acestora, formulează propuneri de
sancţionare a celor vinovaţi .
18
1.2.3. Studiul sistemului condus
În Hotel Majestic funcţionează următoarele departamente:
Departamentul de contabilitate, condus de directorul economic,
având ca responsabilitate activităţile de casierie, facturare, controlul
încasărilor, debitorii, furnizorii şi trezoreria (verificarea finală a
încasărilor hotelului), cuprinzând şi resursele umane;
Departamentul de aprovizionare condus de directorul
departamentului, care transmite comenzi furnizorilor şi gestioneaza
stocurile. Serviciul de aprovizionare centralizează toate comenzile
emise de către diferitele servicii ale hotelului, fiind singurul în masură
care poate să transmită comenzile furnizorilor;
Departamentul de cazare, condus de directorul de cazare care are în
subordine şeful de recepţie, guvernanta generală şi administratorul şef.
Cazarea turiştilor în hotel se face la orice oră, în limita locurilor
disponibile (în acest sens lucrătorii de la recepţie trebuie să cunoască
foarte bine starea permanentă a camerelor pentru evitarea surprizelor
neplăcute) şi în funcţie de rezervările şi contractele facute anterior şi
confirmate. Hotelul este dotat cu camere pentru handicapaţi şi
nefumători dotat cu cele mai moderne facilităţi, având următoarea
structură: single, double, French-cu pat de mijloc, suite şi apartamente.
Departamentul de alimentaţie, condus de directorul de alimentaţie
care are în subordine şeful de restaurant, responsabilul cu banchetele şi
reuniunile şi directorul executiv din departamentul de alimentaţie.
Restaurantul Majestic oferă într-o ambianţă deosebită preparate culinare
cu specific românesc, turcesc şi internaţional, iar Snack Barul Majestic
oferă gustări calde şi reci, precum şi o gamă variată de băuturi şi
cockteiluri. Salonul restaurantului se încadrează Normelor aprobate prin
Ord. M.T. NR.56/1995, şi anume: 1,3m*m/loc la masă;
19
Departamentul tehnic, foarte util pentru buna funcţionare a
echipamentelor tehnice şi electronice, necesare pentru desfăţurarea
eficientă în hotel. Personalul acestui departament este format din
electronist, electrician, mecanic, decorator, ei având un statut de
colaboratori cu hotelul.
Departamentul de resurse umane, ale cărui atribuţii sunt:
în baza necesarului de personal aprobat asigură recrutarea şi
selecţia personalului cu respectarea legilor în vigoare;
răspunde de întocmirea contractelor de muncă conform
legislaţiei în vigoare, cu respectarea drepturilor şi obligaţiilor ce
decurg din acestea;
întocmeşte lucrările privind programarea şi reprogramarea
concediilor de odihnă, modificarea cuanumului sporului de
vechime, dosarele de pensionare pentru limita de vârstă sau
invaliditate, schimbările locurilor de muncă;
asigură aplicarea măsurilor disciplinare propuse de şefii de
compartiment şi aprobate de conducerea directiei în conformitate
cu legislaţia în vigoare;
efectuează lucrările privind evidenţa şi mişcarea personalului
existent, eliberează legitimaţiile de serviciu şi adeverinţele
solicitate de persoanele care au calitatea de angajat;
asigură şi răspunde de aplicarea prevederilor legale privind
sistemul de salarizare al muncii, în raport cu criteriile şi fişele de
performanţe profesionale întocmite de şefii structurilor
organizatorice şi în limita bugetului aprobat;
propune, împreună cu organele de protecţia muncii, locurile de
muncă şi meseriile cu condiţii nocive şi periculoase, la care se
acordă sporuri;
fundamentează fondul de salarizare din cadrul bugetului de
venituri si cheltuieli;
20
1.3 Studiul sistemului informaţional
1.3.1 Prezentarea activităţii economice
Activitatea de aprovizionare are un rol important, care asigură resursele materiale
necesare desfăşurării activităţii. Astfel firma solicită o comandă de produse pe baza unor
liste de oferte primite de la furnizor; în baza acestor liste se verifică preţurile, se stabilesc
cantităţile şi se parafează înţelegerea cu furnizorul. Marfa primită este însoţită de o factură
fiscală, în baza căreia se întocmeşte nota de intrare-recepţie.
Obiectivul activităţii de aprovizionare îl reprezintă asigurarea completă şi complexă
a unităţii economice cu materiile prime necesare, la termenele solicitate şi cu costuri cât
mai mici.
În vederea realizării acestui obiectiv se realizează o serie de activităţi specifice, cum ar fi:
determinarea volumului de materii prime şi materiale necesare
desfăşurării activităţii societăţii;
prospectarea pieţei interne şi externe în vederea selectării
furnizorilor a căror ofertă prezintă cele mai avantajoase condiţii
economice şi asigură certitudine în livrările viitoare pe termen
scurt sau lung;
Managementul aprovizionării reprezintă activitatea prin care se asigură elementele
necesare, în volumul şi structură care să permită realizarea obiectivelor generale ale
întreprinderii, în condiţiile unor costuri minime şi ale unui profit cât mai mare.
21
1.3.2 Fluxul documentelor
Urmărind documentele şi circuitul acestora în cadrul firmei se poate realiza schema
fluxului informaţional al datelor vehiculate şi prelucrate în cadrul acestei activităţi.
Fig.nr. 6 Fluxul documentelor în cadrul activităţii de aprovizionare
22
1.3.3 Prezentarea documentelor
Principalele documente utilizate în cadrul activitaţii de evidenţa a angajaţilor şi de
calcul al salariilor sunt:
N.I.R. (Notă de Intrare Recepţie):
este un document justificativ cu regim special, având un sistem
de numerotare şi înscriere emis de Ministerul Finanţelor;
se întocmeşte pentru mărfurile aprovizonate de la furnizor, în
baza facturii care însoţeşte mărfurile;
specifică numărul şi data documentului, datele despre furnizor,
numărul comenzii, numărul avizului de expediţie şi al facturii,
codul creditor, date despre produs şi valoarea acestuia;
Factură fiscală (anexa nr. 1):
este un document justificativ cu regim special, având un sistem
de numerotare şi înscriere emis de Mininisterul Finanţelor;
se întocmeşte în trei exemplare:
primul exemplar se înmânează beneficiarului;
al doilea exemplar se înregistrează în contabilitatea firmei;
al treilea exemplar rămâne în carnetul de facturi;
Contract:
document legal încheiat de comun acord între două părţi, prin
care se stabileşte obiectul contractului, condiţiile şi perioada
pentru care este valabil contractul;
23
Cerere de ofertă:
exprimarea scrisă a solicitării unui client cu scopul obţinerii de
informaţii privind gama de produse pe care o deţine societatea şi
preţurile aferente;
Fişă magazie (anexa nr.2):
document de gestiune a produselor din stoc, în care se specifică
informaţii despre mişcarea produselor (intrări, ieşiri, volum,
stoc), precum şi tipul şi numărul documentelor pe baza cărora s-
au efectuat operaţiile;
se introduc datele numai în partea rezervată intrărilor (se
introduc cantităţile recepţionate în baza N.I.R. - ului);
fişa trebuie întocmită într-un exemplar, separat pentru fiecare fel
de material şi trebuie completată de gestionar sau de persoana
desemnată, în toate coloanele privitoare la intrări, la ieşiri şi stoc.
Bon fiscal:
document întocmit la vânzarea produselor, în care se specifică
datele societăţii, numărul documentului, datele despre produs şi
valoarea sa;
Listă cerinţe:
enumerarea produselor necesare pentru completarea stocului din
depozit;
Aviz expediţie (aviz de însoţire a mărfii):
document de gestiune care însoţeşte marfa şi marchează
schimbarea gestiunii, în care se specifică date despre produse,
unitatea de măsură, cantitatea livrată, preţul unitar şi valoarea
produsului;
1.3.4 Descrierea procedurilor
24
Pentru activitatea de calcul al salariilor se disting următoarele proceduri/operaţii
(identificate din fluxul documentelor):
formularea de cerere de ofertă către potentialii furnizori sau a
termenilor contractului încheiat cu un furnizor existent;
pe baza cererii de ofertă se primesc oferte de produse de la
furnizori;
examinarea ofertelor în cadrul departamentului economic;
transmiterea listelor de opţiuni cu produse de interes din oferte;
centralizarea listelor de către departamentul aprovizionare;
se trimite cererea de achiziţie către furnizor;
furnizorul completează factura şi livrează marfa;
se întocmeşte nota de intrare recepţie în baza facturii fiscale la
primirea mărfii;
se completează fişa de magazie pentru fiecare produs;
se înregistrează documentele;
clientul formulează cererea de ofertă;
se răspunde cu lista de oferte;
clientul formulează o comandă;
pe baza comenzii se emite bonul fiscal;
se înregistrează bonurile fiscale în contabilitatea societăţii;
1.4 Analiza critică şi direcţii de perfecţionare
25
Analiza critică a sistemului existent
Punctele slabe identificate în cadrul sistemului informaţional privind activitatea
desfăşurată sunt următoarele:
nu există o evidenţă clară a documentelor din activitatea
economică;
gestiunea şi activarea documentelor se face manual, ceea ce
îngreunează foarte mult procesul economic şi duce la erori;
în general căutarea unui furnizor se face prin parcurgerea pagină
cu pagină registrelor de evidenţă;
înregistrarea comenzilor se face manual, prin înscrisuri ale
angajaţilor în registrele firmei;
documentele nu ajung suficient de repede la depozit sau se
rătăcesc fizic prin departamente, astfel că nu se poate realiza
corect şi operativ evidenţa din gestiunea produselor;
Direcţii de perfecţionare
Pentru a realiza îmbunătăţirea fluxurilor de date existente la nivelul întregii
societăţi se impune, foarte rapid, proiectarea şi realizarea unui sistem informatic modern,
capabil să automatizeze şi să eficientizeze procedurile manuale şi greoaie de introducere,
analiză, prelucrare şi transmitere a datelor existente în sistem.
Totodată, actualizarea datelor trebuie efectuată direct în tabelele bazei de date ce
urmează a fii creată, fără alte înscrisuri manuale, iar arhivarea trebuie să fie automatizată,
astfel încât să se reducă simţitor timpul de prelucrare. Pe baza datelor deja stocate se vor
obţine apoi rapoarte complexe.
Concluzionând se poate spune că implementarea unui sistem informatic va
conduce necondiţionat la realizarea următoarelor aspecte pozitive:
26
creşterea vitezei de lucru în ceea ce priveşte prelucrarea
informaţiilor;
creşterea gradului de regăsire a datelor despre furnizori, cu
evidenţa tuturor situaţiilor în care aceştia sunt implicaţi;
creşterea vitezei de proiectare şi realizare a rapoartelor complexe
în procesele de gestiune;
posibilitatea prezentării immediate a unor situaţii privind
evidenţa furnizorilor şi a comenzilor aferente;
În urma acestor modificări, se va urmări întreţinerea unor relaţii foarte bune cu
clienţii şi o organizare internă cât mai eficientă.
Capitolul 2
Proiectarea de ansamblu a sistemului
27
2.1 Definirea obiectivelor
Societatea doreşte proiectarea şi realizarea unui sistem informatic modern, cu
ajutorul căruia să automatizeze activitatea de aprovizionare desfacere , astfel încât timpul
necesar activităţilor aferente să fie redus la minim.
Pentru activitatea de aprovizionare desfacere din cadrul societăţii au fost stabilite
următoarele obiective ale noului sistem informatic:
realizarea evidenţei privind activitatiile de aprovizionare şi
desfacere din cadrul socitatii date despre:
furnizori
angajaţi
produse
facturi
asigurarea informărilor necesare pentru realizarea aprovionarii
ritmice a societăţii cu produse de interes;
evidenţa facturilor pentru produsele achizionate de la furnizori;
evidenţa privind produsele cel mai frecvent dorite de clienţii
noştri;
2.2 Tehnologii folosite
PHP (PHP: Hypertext Preprocessor)
28
PHP, acronimul pentru "PHP: Hypertext Preprocessor" este un limbaj de scripting
de uz general, cu cod-sursă deschis (Open Source), utilizat pe scară largă, şi care este
potrivit în special pentru dezvoltarea aplicaţiilor Web şi poate fi integrat în HTML. Sintaxa
să provine din C, Java şi Perl şi este uşor de învăţat. În locul unei mulţimi de comenzi
pentru a afişa HTML (cum este cazul în C sau Perl), paginile PHP conţin HTML cu cod-
sursă încorporat, care realizează o acţiune. Codul-sursă PHP este încorporat între nişte
instrucţiuni de procesare de început şi de sfârşit speciale <?php ?>, care permit intrarea şi
ieşirea din "modul PHP".
Ceea ce face PHP să difere de un JavaScript de partea clientului este că codul sau
este executat pe server, generând HTML care este apoi trimis către client. Clientul va primi
rezultatele rulării acelui script, fără a putea cunoaşte codul-sursă ce stă la bază.
O altă facilitate puternică şi semnificativă a PHP-ului este susţinerea unui larg
domeniu de baze de date. Scrierea unei pagini web cu susţinerea bazelor de date este
incredibil de de simplă.
Sunt trei domenii principale, unde scripturile PHP utilizate:
a) Scripting de partea serverului. Acesta este cel mai tradiţional şi de bază domeniu al
PHP. Este nevoie de trei lucruri pentru că aceasta să funcţioneze. Analizatorul PHP (în
calitate de CGI, sau modul pentru server), un server web şi un navigator web. Trebuie rulat
serverul web cu o instalare PHP conectată la el. Se pot accesa ieşirile programului PHP cu
navigatorul web, vizualizând pagină PHP prin server.
b) Scripting în linia de comandă. Se poate realiza un script PHP care să ruleze fără un
server şi navigator web. Este nevoie doar de analizatorul PHP pentru a-l utiliza în acest
mod. Acest mod de utilizare este ideal pentru script-uri executate în mod regulat cu cron
(pe Unix sau Linux) sau cu Task Scheduler (pe Windows).
c) Scrierea aplicaţiilor de birou. PHP probabil că nu este cel mai potrivit limbaj pentru a
crea o aplicaţie de birou cu o interfaţă grafică a utilizatorului, dar, se poate utiliza PHP-
GTK pentru a scrie asemenea aplicaţii. PHP-GTK este o extensie a PHP, care nu este
disponibilă în distributivul de bază.
MySQL
29
MySQL este un sistem de gestiune a bazelor de date relaţional, produs de compania
suedeză MySQL AB. Este cel mai popular SGBD open-source la ora actuală, fiind o
componentă cheie a stivei LAMP (Linux, Apache, MySQL, PHP).
Deşi este folosit foarte des împreună cu limbajul de programare PHP, cu MySQL se
pot construi aplicaţii în orice limbaj major. Există multe scheme API disponibile pentru
MySQL ce permit scrierea aplicaţiilor în numeroase limbaje de programare pentru
accesarea bazelor de date MySQL, cum are fi: C, C++, C#, Borland Delphi, Java, Perl,
PHP, Python, FreeBasic, etc., fiecare dintre acestea folosind un tip spefic API. O interfaţă
de tip ODBC denumită MyODBC permite altor limbaje de programare ce folosesc această
interfaţă, să interacţioneze cu bazele de date MySQL cum ar fi ASP sau Visual Basic. În
sprijinul acestor limbaje de programare, unele companii produc componente de tip
COM/COM+ sau .NET (pentru Windows) prin intermediul cărora respetivele limbaje să
poată folosi acest SGBD mult mai uşor decât prin intermediul sistemului ODBC. Aceste
componente pot fi gratuite (ca de exemplu MyVBQL) sau comerciale.
Pentru a administra bazele de date MySQL se poate folosi modul linie de comandă
sau, prin descărcare de pe internet, o interfaţă grafică: MySQL Administrator şi MySQL
Query Browser. Un alt instrument de management al acestor baze de date este aplicaţia
gratuită, scrisă în PHP, phpMyAdmin
Licenţa GNU GPL nu permite încorporarea MySQL în softuri comerciale; cei care
doresc să facă acest lucru pot achiziţiona, contra cost, o licenţă comercială de la compania
producătoare, MySQL AB. MySQL este componentă integrată a platformelor LAMP sau
WAMP (Linux/Windows-Apache-MySQL-PHP/Perl/Python)..
2.3 Diagrama entitate-asociere
30
Fig.nr. 7 Diagrama entitate asociere
2.4 Proiectarea tabelelor aplicaţiei
31
În figurile de mai jos sunt prezentate numele câmpurilor şi tipurile de date ale
tabelelor bazei de date:
Furnizori
numar(11) id_furnizor
caracter(20) den_furnizor
numar(15) CUI
caracter(200) adresa
caracter(20) localitate
numar(11) telefon
Facturi
numar(11) id_factura
numar(11) id_furnizor
data data
numar(11) suma
caracter(20) stare
Prod_fact
numar(11) id_prod_fact
caracter(20) den_prod_fact
numar(10) cantitate
numar(10) pret
numar(11) id_factura
numar(11) id_produs
caracter(20) tip_servire
Mese numar(11) id_masa
caracter(20) locatie
Comanda
numar(11) id_comanda
data data
numar(11) id_masa
numar(11) id_angajat
Det_comanda
numar(11) id_det_comanda
numar(11) id_comanda
numar(11) id_prod_fact
numar(11) id_fel_gatit
32
numar(10) cant_prod
numar(5) portii
Feluri_gatite
numar(11) id_fel_gatit
data data
numar(5) portii
numar(11) id_fel
numar(11) id_angajat
caracter(200) reteta
Cont_fel_gatit
numar(11) id_cont_fel_gatit
numar(5) Cant_consumata
numar(11) id_prod_fact
numar(11) id_fel_gatit
Angajati
numar(11) id_angajat
caracter(20) nume
caracter(20) prenume
data data_angajarii
caracter(200) adresa
numar(11) telefon
caracter(20) tip_angajatcaracter(20) parola
2.5 Relaţii de asociere între tabele
În următoarea figură se pot observa relaţiile de asociere dintre tabele şi a tipului de
legaturi dintre ele.
33
Fig.nr. 8 Relaţii de asociere intre tabele
2.6 Videoformate pentru situaţii de intrare
Prin intrările unui sistem informatic se înţelege totalitatea datelor primare necesare
obţinerii situaţiilor de ieşire ale sistemului informatic.
34
Videoformat introducere angajaţi
Acest videoformat permite utilizatorului programului înregistrarea în sistem a unui
nou angajat. Se introduc : numele şi prenumele acestuia, data angajării, adresa şi telefonul.
Fig.nr. 9 Videoformat introducere date angajati
Videoformat introducere furnizori
Permite adăugarea de noi furnizori în baza de date împreună cu datele de
identificare a acestora.
35
.
Fig.nr. 10 Videoformat introducere date furnizori
Videoformat introducere factură fiscală
Introducerea unei noi comenzi de aprovizionare, şi implicit definirea unei facturi
curente, se face utilizând acest videoformat. Se completează datele furnizorului, numărul
şi data facturii, precum şi diverse caracteristici ale produselor.
Fig.nr. 11 Videoformat introducere factură fiscală
36
Videoformat introducere un nou fel de mâncare
Fig.nr. 12 Videoformat introducere fel mâncare
2.7. Proiectarea situaţiilor de ieşire
Prin ieşirile unui sistem informatic se înţelege totalitatea informaţiilor furnizate de
acesta beneficiarilor interni şi externi, sub forma unor rapoarte, liste, interogări,
videoformat-uri cu formate prestabilite sau proiectate la cerere.
Raport evidenţă furnizori
Fig.nr. 12 Raport evidenţă furnizori
37
Acest raport prezintă evidenţa furnizorilor. Acesta conţine id-ul furnizorului,
denumirea societăţii, codul uni de înregistrare, adresa precum şi localiatea.
Raport evidenţă angajaţi
Fig.nr. 13 Raport evidenţă angajaţi
Raportul prezintă situaţia anagajatilor, numele şi prenumele acestora, data angajării
şi adresa.
2.8. Exemplificarea codului aplicatiei
Pagina login.php
În pagina login.php este prezent scriptul care face posibilă logarea în program.
Întâi se verifică dacă sunt setate variabilele POST :
if (isset($_POST['user']) && isset($_POST['pass']))
Dacă acestea sunt setate se şterg spaţiile albe şi se pun valorile în nişte variabile simple:
$user = htmlspecialchars(trim($_POST['user']));$pass = htmlspecialchars(trim($_POST['pass']));
Apoi se realizează un query către baza de date în vederea verificării datelor aici:
$sql = "SELECT nume FROM angajati WHERE nume = '$user'
38
AND parola = '$pass'";
$result = mysql_query($sql) or die('Query failed. ' . mysql_error());
Dacă rezultă un singur rezultat (cum este şi normal) se porneşte sesiunea în modul user :
if (mysql_num_rows($result) == 1) { echo '<script type="text/javascript">location.href = \'index.php\' </script>';
$_SESSION['user'] = true; exit; }
Dacă în varibile se află valorile admin la user şi admin la parolă atunci se intră în
modul de administrare :
elseif (($user == 'admin') && ($pass == 'admin')) {
echo '<script type="text/javascript">location.href = \'administrare.php\' </script>';
$_SESSION['admin'] = true; exit;
Dacă nici una din variante nu se întâmplă, înseamnă că datele furnizate sunt incorecte :
else { echo '<script type="text/javascript">alert(\'Date invalide! Va rugam sa incercati din nou.\')</script>';
Pagina administrare.php
Întâi se verifică dacă este setată sesiunea, dacă nu se revine la pagina de login:
session_start(); if (!isset($_SESSION['admin']) || $_SESSION['admin'] !== true)
{ echo '<script type="text/javascript">location.href = \'login.php\' </script>';
exit;}
Următorul script ia numele paginii şi o seteaza pe post de titlu:
<h1 class="title"><?php $page = $_GET['page']; if(isset($page)){ echo ucfirst($page);
}else{echo "Administrare";}?></h1>
Toate numele paginilor sunt trecute în array-ul de mai jos, astfel dacă pagina nu
există browserul ne anunţa. Dacă pagina este în array se trece la încărcarea paginii.
39
$page = $_GET['page'];$pages = array('angajati', 'mese','furnizori','feluri_gatite', 'rapoarte','facturi',
'produse');if (!empty($page)) {
if(in_array($page,$pages)) {$page .= '.php';include($page);
}else {echo 'Pagina nu a fost gasita !';}
}else {
include('#.php');
Pagina add_angajati.php
De aici se adaugă noii angajaţi. Întâi se verificăm dacă este setată variabila “save”
(butonul de salvare) :
if(isset($_POST['save']))
Dacă este setat se atribuie valorile câmpurilor unor variabile, iar la nume, prenume,
şi tipul angajatului se pune automat literă mare:
$nume = htmlspecialchars(trim("$_POST[nume]"));$nume = ucfirst($nume);$prenume = htmlspecialchars(trim("$_POST[prenume]"));$prenume = ucfirst($prenume);$data = htmlspecialchars(trim("$_POST[theDate]"));$adresa = htmlspecialchars(trim("$_POST[adresa]"));$telefon = htmlspecialchars(trim("$_POST[telefon]"));$tip_angajat = htmlspecialchars(trim("$_POST[tip_angajat]"));$tip_angajat = ucfirst($tip_angajat);$parola = htmlspecialchars(trim("$_POST[parola]"));
Apoi se trece la adăugarea propriu-zisă în baza da date a variabilelor sus menţionate :
$query = "INSERT INTO angajati (nume, prenume, data_angajarii, adresa, telefon, tip_angajat, parola) VALUES ('$nume', '$prenume', '$data', '$adresa', '$telefon', '$tip_angajat', '$parola')";
mysql_query($query) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');
40
Pagina header.php
Această pagină este introdusă în toate celalte. Se stabileşte conexiunea către baza
de date. Dacă conexiunea nu reuşeşte se generează o eroare.
$con = mysql_connect("localhost","alex","111");if (!$con) { die('Conectare nereusita ' . mysql_error()); }
$select = mysql_select_db("majestic", $con);
if (!$select) {
die('Conectare nereusita ' . mysql_error()); }
Următoarea comandă împiedică utilizatorul să facă click dreapta :
<body oncontextmenu="return false" ondragstart="return false" onselectstart="return false">
Javascriptul de mai jos afişează data şi ora curentă :
var currentTime = new Date()var luna = currentTime.getMonth() + 1var zi = currentTime.getDate()var an = currentTime.getFullYear()document.write(zi + "/" + luna + "/" + an+" ")//--></script><script type="text/javascript"><!--var currentTime2 = new Date()var ore = currentTime.getHours()var minute = currentTime.getMinutes()if (minute < 10)minute = "0" + minutedocument.write(ore + ":" + minute + " ")if(ore > 11){document.write("PM")} else {document.write("AM")}
41
Capitolul 3
Prezentarea produsului software,
implementarea şi exploatarea aplicaţiei
3.1. Consideraţii generale
Se recomandă utilizarea componentelor profesionale şi de ultimă generaţie, pentru
a face faţă cu succes funcţionării în regim intens şi prelungit fără a genera erori, blocaje
etc.
A nu se instala pe calculatorul în cauză drivere (pentru imprimantă, HDD etc.) care
nu sunt aprobate şi testate de producătorul sistemului de operare.
Cu excepţia sistemului de operare, a servicepack-urilor sistemului de operare şi a
produsului program nu se vor instala alte produse software pe calculatorul în cauză.
Recomandat este ca înainte de a începe lucrul să se formateze hard-disk-ul şi să se
reinstaleze sistemul de operare Windows XP SP2.
Toate componentele electrice (calculatoare, imprimante, swich-uri etc) să fie
protejate la întreruperea alimentării cu energie electrică prin dispozitive bine dimensionate,
care să asigure o independenţa cât mai mare faţă de reţeaua electrică.
Pozarea tuturor cablurilor (inclusiv a celor de alimentare cu energie electrică) să se
facă în canalete (metalice) rezistente la acţiuni mecanice.
3.1.1. Cerinţele platformei hardware şi software ale produsului
program
Cerinţe hardware
Configuraţia hardware şi software minimală/recomandată pentru calculatorul care
urmează a fi utilizat:
Procesor: P4.
Memorie: 256M RAM.
42
Monitorul şi placa video să suporte rezoluţia de 1440x900 pixeli
şi minim 32 biţi de culoare.
Minim un port USB - pentru imprimantă.
Un UPS care să poată alimenta, în caz de întrerupere a furnizării
cu energie electrică, o perioadă cât mai lungă toate
componentele.
Pentru implementări mari (volum şi trafic mare de date) şi nu
numai se recomandă ca serverul să utilizeze două HDD-uri
conectate în “oglinda” (RAID).
Cerinţe software
Sisteme de operare
o Server (calculatorul pe care urmează a se instala serverul de baze de date):
minim: Windows XP Professional SP2
recomandat: Windows Server 2003 SP1 (pentru implementări
care depăşesc 10 staţii concurente)
o Staţii (calculatoarele propriu-zise)
minim: Windows XP Home Edition SP2
recomandat: Windows XP Professional SP2
Drivere (software-ul necesar pentru funcţionarea dispozitivelor hardware, de ex.:
driver pentru imprimantă)
o Se vor utiliza doar drivere testate şi aprobate pentru sistemul de operare Windows
XP, respectiv Windows Server 2003
Se vor instala doar utilitarele. care sunt strict necesare.
Pe cât posibil, se vor instala cât mai puţine programe care
rulează ascuns (servicii şi programe rezidente în memorie)
Este recomandată testarea (48 ore fără oprire) sistemelor de
calcul folosind programe speciale de test.
43
Ţinând cont, în primul rând, de faptul că oprirea unui sistem de calcul din reţeaua
dvs. poate duce la oprirea vânzărilor se recomandă urmarea sfaturilor şi bineînţeles
recomandările specialiştilor IT de la care se achiziţionează sistemele de calcul în cauză.
3.1.2. Licenţa programului
Acest contract de licenţă este un acord legal între beneficiar şi Ciobanescu Mircea
(numit în continuare furnizor) pentru produsul software care include software pentru
calculator, suporturi fizice asociate, materiale tipărite şi documentaţie electronică.
Prin instalarea şi folosirea programului confirmaţi că sunteţi de acord întru totul cu
termenii prezentei licenţe.
Licenţa vă oferă următoarele drepturi
Această licenţă dă dreptul pentru instalarea şi utilizarea unei
copii a produsului, copie realizată de furnizior şi achiziţionată în
mod legal de beneficiar împreună cu această licenţă.
Licenţa se acordă pe server şi cuprinde un număr maxim de staţii
care pot accesa serverul de către produs.
Beneficiarul poate face o singură copie de siguranţă a
produsului, copie care nu are dreptul de a o înstrăina către terţe
persoane fizice sau juridice.
Toate drepturile asupra produsului care nu sunt acordate în mod
expres sunt rezervate de furnizor.
Drepturile de copiere/reproducere (COPYRIGHT)
Toate drepturile de autor din şi în produsul software (incluzând dar nelimitandu-se
la orice imagini, fotografii, animaţii, video, audio, muzică şi text încorporate), materialele
însoţitoare tipărite şi orice copie a produsului sunt proprietatea furnizorului, şi sunt
protejate prin legi ale dreptului de autor, precum şi prin alte legi şi tratate referitoare la
proprietatea intelectuală.
44
Restricţii şi limitări
beneficiarul se angajează să nu încorporeze în produs module
noi sau actualizarifara acordul furnizorului.
beneficiarul se angajează să nu copie şi/sau să vândă module din
produs sau întregul produs, documentaţii tipărite sau electronice
ale produsului către terţe persoane fizice sau juridice. De
asemenea, beneficiarul nu are dreptul să închirieze, dea în
leasing, să împrumute sau să cesioneze această licenţă către terţe
persoane fizice sau juridice.
beneficiarul nu are dreptul să refacă programul sursă, să
decompileze sau să dezasambleze produsul software.
Garantia acordată
Furnizorul garantează că produsul va funcţiona conform documentaţiei aferente
livrate sub forma electronică la achiziţionarea acestuia pentru o perioadă de un an de la
data achiziţiei. În cazul actualizării produsului (Versiuni noi sau ServicePack-uri) vor fi
luate în considerare noile documentaţii şi/sau specificaţii. Furnizorul va remedia prompt
eventualele erori datorate proiectării sau realizării produsului. Furnizorul nu răspunde
pentru intervenţiile neautorizate asupra structurii produsului software livrat sau pentru
problemele generate de funcţionarea defectuoasă soft şi/sau hard a sistemului informatic al
beneficiarului.
45
3.2. Descrierea funcţiunilor aplicaţiei
Programul este un produs care integrează tehnologii şi componente de ultima
generaţie din tehnologia informaţiei, destinat să satisfacă cerinţele cele mai diverse
întâlnite în alimentaţia publică- restaurant.
Câteva dintre funcţiunile dar şi avantajele aplicaţiei:
crearea/modificarea angajaţilor
crearea/modificarea furnizorilor
crearea/modificarea produselor
crearea/modificarea felurilor de mâncare
crearea, customizarea şi tipărirea situaţiilor de ieşire
crearea / modificarea retetelor cu care lucrează restaurantul
definirea meniurilor pentru ocazii speciale
crearea şi tipărirea notelor de plată
plata prin numerar
adaptat pentru a lucra cu monitoare TouchScreen.
posibilitatea de lucru cu serverul de date aflat la distanţă (în
cartiere, oraşe sau chiar ţări diferite), printr-o conexiune la
internet.
reducerea erorii umane în calculul notelor de plată şi a stocurilor
se pot utiliza un număr nelimitat de produse
promptitudine şi reacţie rapidă la comenzile utilizatorilor
3.2.1. Prezentarea meniurilor aplicatiei
Pagina de autentificare
Este folosită atât pentru autentificarea ospatarilor, cât şi pentru autentificarea
administratorului programului (persoana care efectuează modificările de sistem).
46
Fig.nr. 14 Pagina de autentificare
Meniul principal
Meniul principal al sectiunii de administrare.
Fig.nr. 15 Meniul principal din modulul administrare
47
Salonul cu meseAici se introduc comenzile din restaurant de catre ospatari.
Fig.nr. 16 Salonul cu mese
3.2.2 Meniul Incarcare-actualizare date
Angajati
Fig.nr. 17 Vizualizarea, modificarea şi ştergerea angajatilor
48
În acesta secţiune se pot viziona şi adăuga angajaţii, se pot modifica datele
aferente şi de asemenea se pot şterge din baza de date angajaţii care nu mai
lucrează la restaurant.
Fig.nr. 18 Adăugarea unui angajat in baza de date
Fig.nr. 19 Stergerea unui angajat din baza de date
49
Facturi
Fig.nr. 20 Adăugarea unei facturi in baza de date
3.2.3 Meniul rapoarte
Fig.nr. 21 Alegerea câmpurilor pentru raport
50
Se pot alege toate sau decât anumite câmpuri care în apară în raport în funcţie de
nevoile utilizatorului. După ce s-a făcut alegerea câmpurilor necesare se generează
raportul, care se poate şi scoate la imprinta dacă este necesar.
Fig.nr. 22 Raportul cu situaţia angajaţilor
Fig.nr. 23 Alegerea câmpurilor pentru raport
51
În figura nr. 23 pentru raport s-au selectat decât denumirea, CUI şi telefonul
furnizorului, pentru a exemplifica şi această funcţionalitate a rapoartelor.
Fig.nr. 23 Raport cu situaţia furnizorilor
3.2.4 Mesaje de eroare
Fig.nr. 24 Eroare la autentificare
52
În cazul în care datele de autentificare sunt introduse greşit este generată eroarea
din figura de mai sus. Eroarea este generată cu Javascript.
Fig.nr. 25 Eroare generată din cauza nealegerii nici unui produs
Figura de mai sus reprezintă o eroare generată în cazul în care într-o factură nu s-a
introdus nici un produs.
53
CAPITOLUL 4
Eficienţa şi utilitatea sistemului informatic
Societatea beneficiară a sistemului informatic îşi desfăşoară activitatea într-un
mediu concurenţial, care necesită o cunoaştere permanentă şi profundă a serviciilor de acest
tip. Atunci când volumul acestor servicii este mare, divers şi dinamic, cunoaşterea
aspectelor pozitive şi negative se poate realiza numai cu ajutorul calculatorului. Acesta
poate oferi utilizatorului, prin conţinutul informaţional al bazei de date, informaţii exacte
despre derularea prestării serviciilor, evoluţia vânzărilor.
La o primă vedere, aceste informaţii se obţineau si manual, prin parcurgerea tuturor
documentelor implicate în activitatea specifică. Evidenţa automată poate dezvălui însă din
analiza datelor, o serie de perturbaţii negative, care pot fi înlăturate rapid prin luarea sau
corectarea unor decizii reale, oportune şi eficace în domeniul activităţii de distribuţie al
firmei.
Eficienţa sistemului informatic este reflectată de calitatea informaţiilor, de starea de
profitabilitate, de modul în care sunt receptate şi apreciate serviciile de către utilizatori sau
beneficiari. Sistemul informatic presupune o arie largă de cuprindere, incluzând informaţiile
şi fluxurile informaţionale, tehnicile de culegere, transmitere şi stocare a datelor, modelele,
şi programele de prelucrare a informaţiilor.
Fondul de date, structurat în baze de date, poate fi îmbunătăţit în continuare, prin
realizarea de legături cu aplicaţii din domeniul financiar-contabil, reclamă sau promovarea
serviciilor oferite.
Implementarea aplicaţiei necesită o serie de costuri. Unele dintre costuri sunt
cuantificabile, altele necuantificabile.
Costurile cuantificabile cuprind:
– crearea programelor;
– dotarea cu echipamente de calcul şi modernizarea celor existente;
– cursuri de instruire a personalului care va utiliza aplicaţia.
Costurile necuantificabile cuprind:
– instruirea la locul de muncă;
54
– creşterea abilităţii în utilizarea programului etc.
Pentru a afla care este necesitatea unui sistem informatic se evidenţiază în acest sens
indicatori cum ar fi:
- termenul de recuperare a capitalului investit într-un sistem informatic
- coeficientul de eficienţă economică al in vestitiilor de capital
- randamentul economic al investiţiei într-un sistem informatic
Timpul afectat în cadrul evidenţei manuale în vederea obţinerii unor situaţii
centralizate sau a înregistrărilor efectuate în diferite momente a fost eliminat complet.
Astfel, personalul este degrevat de aceste sarcini.
Un sistem informatic este eficient atâta timp cât firma sau compania în cauză este
mai eficientă, în consecinţă, un sistem informatic poate fi apreciat că fiind util, respectiv
performant, dacă şi numai dacă aceasta se regăseşte şi în performanţa ulterioară a firmei şi
invers. Astfel eficienţa investiţiei constă, în special, în utilizarea unui sistem informatic
adaptat cerinţelor pieţei.
Sunt de remarcat 3 aspecte legate de eficienţa economică, şi anume:
- eficienţa sistemului de management financiar-contabil
- eficienţa, respectiv performanţa firmei
- eficienţa investiţiei de capital în sisteme informatice
Chiar dacă o serie de indicatori cum ar fi veniturile actualizate, cash flow-ul, rată
internă de rentabilitate etc. sunt cunoscuţi, mai puţin cunoscută este adaptarea acestora la
necesitatea cuantificării eficienţei economice a investiţiei de capital într-un sistem
informatic. Cu alte cuvinte meritul fundamental al acestor indicatori este că iau în
considerare pe lângă eforturile şi efectele investiţionale şi influenţa factorului timp.
Un aspect important asupra căruia se poate atrage atenţia este eficienţa economică a
investiţiilor de capital în sisteme informatice. Astfel se restrânge durata de lucru, este
implementată o bună organizare, iar cheltuielile privind forţa de muncă se pot diminua.
55
BIBLIOGRAFIE
1. Cornelia Botezatu - Proiectarea sistemelor informatice. Metode sistemice. Editura
ProUniversitaria, Buc, 2005
2. V. Chichernea, C. Botezatu, I. Iacob, C. Fabian R. Mihalca, S. Goron - Proiectarea
sistemelor informatice. Metode de realizare, Ed. Sylvi, Bucureşti 2001
3. Virgil Chichernea, G. Garais - Baze de date. Sistemul FoxPro vol.II, Editura
Prouniversitaria, 2006
4. Cornelia Botezatu, Ionel Iacob - Proiectarea sistemelor informatice. Studii de caz
pentru managementul activităţii unei societăţi. Editura Universul Juridic, 2005
5. Ionel Iacob SGBD Oracle – Ghid aplicativ pentru realizarea solutiilor informatice,
Editura ProUniversitaria, 2007
6. I. Lungu, C. Bodea, C. Ioniţă, G. Bădescu - Baze de date. Organizare, proiectare şi
implementare, Ed. All, 1995
7. E. Bălănescu, C. Darie: Beginning PHP and MySQL E-Commerce: From Novice to
Professional, Second Edition, Ed. APress, 2005
8. Petersen J., Trad. Slavu O.V. – “Baze de date pentru începători”, Editura All ,2002
9. Hernandez M. – “Proiectarea bazelor de date”, Editura Teora,2003
10. Connolly Th., Begg C., Strachan A. – “Baze de date - proiectare, implementare,
gestionare”, Editura Teora, 2002
11. Prof.univ.dr.Rodica MIHALCA, Prof.univ.dr.Csaba FABIAN - Utilizarea
produselor software - Word, Excel, PMT, WinQSB, Systat , biblioteca digitala ASE
12. Andy Budd, Cameron Moll, Simon Collison – CSS Mastery :Advanced Web
Standards Solutions, 2006
13. James Kalbach - Designing Web Navigation, 2007
14. Danny Goodman – Javascript & DHTML Cookbook, 2007
56
15. Christopher Schmitt, Mark Trammell, Ethan Marcotte, Dunstan
Orchard - Professional CSS: Cascading Style Sheets for Web Design, 2006
16. Steven Holzner, John Wiley – Ajax Bible, 2007
17. http://programare.org
18. http://www.php.net/docs.php -manual online PHP
19. http://dev.mysql.com/doc/ - documentatia oficiala a Mysql
20. http://www.php-mysql-tutorial.com/
21. http://www.phpwebcommerce.com/
57
ANEXE
Codul sursa – header.php
<?php $con = mysql_connect("localhost","alex","111");if (!$con) { die('Conectare nereusita ' . mysql_error()); }
$select = mysql_select_db("majestic", $con);
if (!$select) {
die('Conectare nereusita ' . mysql_error()); }error_reporting(0); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>S.C Majestic Turism S.A.</title><link rel="stylesheet" type="text/css" href="style.css" media="screen" /><link rel="shortcut icon" href="images/favicon.png" /><link type="text/css" rel="stylesheet" href="calendar/calendar/dhtmlgoodies_calendar.css?random=20051112" media="screen"></LINK><SCRIPT type="text/javascript" src="calendar/calendar/dhtmlgoodies_calendar.js?random=20060118"></script><SCRIPT type="text/javascript" src="javascript/select_all.js"></script><script type="text/javascript" src="javascript/add_valoare_factura.js"></script><script type="text/javascript" src="javascript/add_input.js"></script></head><body oncontextmenu="return false" ondragstart="return false" onselectstart="return false">
<div id="header"><div id="logo">
<h1><img src="images/favicon.png"> S.C Majestic Turism S.A.</h1>
<h3><script type="text/javascript"><!--var currentTime = new Date()var luna = currentTime.getMonth()
+ 1
58
var zi = currentTime.getDate()var an = currentTime.getFullYear()document.write(zi + "/" + luna +
"/" + an+" ")//--></script><script
type="text/javascript"><!--var currentTime2 = new Date()var ore = currentTime.getHours()var minute =
currentTime.getMinutes()if (minute < 10)minute = "0" + minutedocument.write(ore + ":" + minute
+ " ")if(ore > 11){document.write("PM")} else {document.write("AM")}//--></script>
</h3></div><!-- end #logo -->
administrare.php
<?php require("header.php"); session_start(); if (!isset($_SESSION['admin']) || $_SESSION['admin'] !== true)
{ echo '<script type="text/javascript">location.href
= \'login.php\' </script>'; exit;
}?></div><!-- end #header --><div id="page">
<div id="content"><div class="post">
<h1 class="title"><?php $page = $_GET['page']; if(isset($page)){
59
echo ucfirst($page);
}
else{echo "Administrare";}?></h1>
<?php$page = $_GET['page'];$pages = array('angajati',
'mese','furnizori','feluri_gatite', 'rapoarte','factura', 'produse');if (!empty($page)) {
if(in_array($page,$pages)) {$page .= '.php';include($page);
}else {echo 'Pagina nu a fost gasita<a href="login.php">Login</a>';}
}else {
include('#.php');}
?></div>
</div><!-- end #content --><div id="sidebar">
<div id="sidebar-bgtop"></div><div id="sidebar-content">
<ul><li>
<h2>Meniu</h2><ul>
<li><a href="administrare.php?page=angajati">Angajati</a></li>
<li><a href="administrare.php?page=furnizori">Furnizori</a></li>
<li><a href="administrare.php?page=mese">Mese</a></li>
<li><a href="administrare.php?page=feluri_gatite">Feluri gatite</a></li>
<li><a href="administrare.php?page=produse">Produse</a></li>
<li><a href="index.php">Meniu angajati</a></li>
<li><a href="administrare.php?page=factura">Facturi</a></li>
<li><a href="administrare.php?page=rapoarte">Rapoarte</a></li>
60
<li><a href="logout.php">Logout</a></li>
</ul></li>
</ul></div><div id="sidebar-bgbtm"></div>
</div><!-- end #sidebar -->
</div>
<?php include("footer.php"); ?>
add_factura.php
<?php require("header.php"); session_start(); if (!isset($_SESSION['admin']) || $_SESSION['admin'] !== true)
{ echo '<script type="text/javascript">location.href
= \'login.php\' </script>'; exit;
}?>
<br /><br /><br /><br /><br /><br /><br />
<script type="text/javascript" src="javascript/add_val_factura.js"></script><script type="text/javascript" src="javascript/add_input.js"></script>
<?php
$query = "SELECT *". "FROM furnizori ";$result = mysql_query($query) or die('Error : ' .
mysql_error());
$query2 = "SELECT *". "FROM prod_fact ";$result2 = mysql_query($query2) or die('Error : ' .
mysql_error());
$query3= mysql_query("SELECT MAX(id_factura)AS id_factura FROM facturi");$row3 = mysql_fetch_array($query3);
if(isset($_POST['save'])){
61
$last_id =
htmlspecialchars(trim("$_POST[last_id]"));$last_id += 1;
$den_prod1 = htmlspecialchars(trim("$_POST[den_prod1]"));
$cant_prod1 = htmlspecialchars(trim("$_POST[cant_prod1]")); $pret_prod1 = htmlspecialchars(trim("$_POST[pret_prod1]")); $tip_prod1 = htmlspecialchars(trim("$_POST[tip_prod1]"));
$den_prod2 = htmlspecialchars(trim("$_POST[den_prod2]"));
$cant_prod2 = htmlspecialchars(trim("$_POST[cant_prod2]")); $pret_prod2 = htmlspecialchars(trim("$_POST[pret_prod2]")); $tip_prod2 = htmlspecialchars(trim("$_POST[tip_prod2]"));
$den_prod3 = htmlspecialchars(trim("$_POST[den_prod3]"));
$cant_prod3 = htmlspecialchars(trim("$_POST[cant_prod3]")); $pret_prod3 = htmlspecialchars(trim("$_POST[pret_prod3]")); $tip_prod3 = htmlspecialchars(trim("$_POST[tip_prod3]")); $den_prod4 = htmlspecialchars(trim("$_POST[den_prod4]"));
$cant_prod4 = htmlspecialchars(trim("$_POST[cant_prod4]")); $pret_prod4 = htmlspecialchars(trim("$_POST[pret_prod4]")); $tip_prod4 = htmlspecialchars(trim("$_POST[tip_prod4]"));
$id_furnizor = htmlspecialchars(trim("$_POST[id_furnizor]"));
$suma = ($pret_prod1*$cant_prod1) + ($pret_prod2*$cant_prod2) + ($pret_prod3*$cant_prod3) + ($pret_prod4*$cant_prod4); $stare = htmlspecialchars(trim("$_POST[stare]")); $query4 = "INSERT INTO facturi (id_furnizor, data, suma, stare) VALUES ('$id_furnizor', NOW(), '$suma', '$stare')";
mysql_query($query4) or die('<script type="text/javascript">alert(\'Alegeti un furnizor !\')</script>');
echo "<center><h2>Adaugare reusita</h2></center>";
switch(true)
{
62
case ($den_prod1==NULL || $cant_prod1==NULL || $pret_prod1==NULL || $tip_prod1==NULL):
echo '<script type="text/javascript">alert(\'Completati cel putin un produs !\')</script>';
break; case (isset($den_prod1) &&
isset($den_prod2)&& isset($den_prod3)&& isset($den_prod4)):
$query8 = "INSERT INTO prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)".
"VALUES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id'),".
"('$den_prod2', '$cant_prod2', '$pret_prod2', '$tip_prod2', '$last_id'),".
"('$den_prod3', '$cant_prod3', '$pret_prod3', '$tip_prod3', '$last_id'),".
"('$den_prod4', '$cant_prod4', '$pret_prod4', '$tip_prod4', '$last_id')";
mysql_query($query8) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');
break;
case (isset($den_prod1) && isset($den_prod2)&& isset($den_prod3)):
$query7 =
"INSERT INTO prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)". "VALU
ES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id'),"."('$den_
prod2', '$cant_prod2', '$pret_prod2', '$tip_prod2', '$last_id'),"."('$den_
prod3', '$cant_prod3', '$pret_prod3', '$tip_prod3', '$last_id')";
mysql_query($query7) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');
break;
case (isset($den_prod1) && isset($den_prod2)):
$query6 =
"INSERT INTO prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)".
63
"VALUES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id'),".
"('$den_prod2', '$cant_prod2', '$pret_prod2', '$tip_prod2', '$last_id')";
mysql_query($query6) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');
break; case (isset($den_prod1)): $query5 = "INSERT INTO
prod_fact (den_prod_fact, cantitate, pret, tip_servire, id_factura)". "VALU
ES ('$den_prod1', '$cant_prod1', '$pret_prod1', '$tip_prod1', '$last_id')";
mysql_query($query5) or die('<script type="text/javascript">alert(\'Adaugare nereusita !\')</script>');
break;
}}
?>
<center><h2>Introducere factura</h2><br /><form method="post" action="add_factura.php" name="form"><input type="hidden" name="last_id" value="<?php echo $row3['id_factura'];?>"> <table width="900" border="0" cellpadding="2" cellspacing="1" class="box" align="center" name="tableID"> <tr>
<td width="100"><h3>Furnizor</h3></td></tr><tr>
<td width="70">Denumire: <select name="id_furnizor" size="1" onchange="showUser(this.value)">
<option value=""> - Alege</option> <?php while($row =
mysql_fetch_array($result)) { echo "<option value=".$row['id_furnizor'].">".$row['den_furnizor']."</option>"; }
?> </select> </td>
64
</tr> <tr> <td><div id="textHint"><b></b></div></td> </tr> <tr> <td width="100"><h3>Produse</h3></td> </tr> <tr> <td width="70"> Denumire produs</td> <td width="70">Cantitate (buc.)</td> <td width="70">Pret (lei/buc.)</td> <td width="70">Tip servire</td> </tr> <tr> <td width="70">1. <input name="den_prod1" id="id1" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod1' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod1' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod1" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td> </tr> <tr id='newInput' style='display:none;'> <td width="70">2. <input name="den_prod2" id="id2" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod2' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod2' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod2" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td> </tr> <tr id='newInput2' style='display:none;'>
65
<td width="70">3. <input name="den_prod3" id="id3" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod3' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod3' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod3" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td> </tr>
<tr id='newInput3' style='display:none;'> <td width="70">4. <input name="den_prod4" id="id4" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod4' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod4' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod4" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td> </tr> </tr>
<tr id='newInput4' style='display:none;'> <td width="70">5. <input name="den_prod5" id="id5" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod5' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod5' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod5" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td>
66
</tr> </tr>
<tr id='newInput5' style='display:none;'> <td width="70">6. <input name="den_prod6" id="id6" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod6' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod6' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod6" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td> </tr> </tr>
<tr id='newInput6' style='display:none;'> <td width="70">7. <input name="den_prod7" id="id7" onFocus="this.className='currentcolor'" onChange="this.className='changecolor'"></td> <td width="70"><input name='cant_prod7' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td> <td width="70"><input name='pret_prod7' onblur='addInput();' onFocus="this.className='currentcolor'" onChange="this.className='changecolor'" /></td>
<td width="70"><select name="tip_prod7" size="1">
<option value="intreg">intreg</option>
<option value="varsat">varsat</option>
</select></td> </tr>
<tr> <td width="100"><h3>Stare factura:</h3></td> </tr>
<tr> <td width="100">Achitat ?
<select name="stare" size="1"> <option
value="platit">Da</option><option
value="neplatit">Nu</option> </select></td>
</tr> <tr>
67
<td width="100"> </td> <td> </td> </tr> <tr> <td colspan="4" align="center"><a href='administrare.php?page=factura'><button>Inapoi</button></a> <input name="save" type="submit" class="box" id="save" value="Salveaza"> <button onClick="document.form.reset();return false">Reset</button></td> </tr> </table></form></center><br /><?php include("footer.php"); ?>
68