documentatie hosu loredana

40
Gestionarea unui ATELIER FOTO Pag.1 Liceul Teoretic „Mircea Eliade ” LUCRARE DE ATESTAT PROFESIONAL PROFIL INFORMATICA Profesor indrumator Boian Nicolae Hosu Loredana Manuela MAI 2012

Upload: hosu-loredana-manuela

Post on 16-Sep-2015

262 views

Category:

Documents


7 download

DESCRIPTION

Atestat

TRANSCRIPT

Atestat

Gestionarea unui ATELIER FOTO Pag.3

Liceul Teoretic Mircea Eliade LUCRARE DE ATESTAT PROFESIONAL

PROFIL INFORMATICA

Profesor indrumator

Boian NicolaeAbsolvent

Hosu Loredana ManuelaPROGRAM PENTRU

GESTIUNEA UNUIATELIER FOTOCUPRINSPag

Capitolul IMemoriu justificativ4

Capitolul IIDescrierea bazelor de date6

II.1 Introducere in FoxPro6

II.2 Limbajul de manipulare a datelor7

II.2.a Comenzi8

II.3 Limbajul de control9

II.4 Operatii elementare asupra bazelor de date9

II.5 Ferestre si meniuri utilizator10

Capitolul IIIDescrierea generala a functiilor oferite de program11

Capitolul IVDescrierea bazelor de date folosite22

Capitolul VDescrierea operatiilor realizate de program23

Capitolul VIDescrierea elementelor de interfata27

Capitolul VIIConcluziile iesite in urma atestarii29

Capitolul VIIIComercializarea produsului29

Bibliografie 30 Capitolul I

MEMORIU JUSTIFICATIV

SCURT ISTORIC

La sfarsitul sec XIX, statisticianul Hollerith a folosit o masina de calcul (o masina care prelucra cartele perforate), pentru extragerea rezultatelor recensamantului 1890 din SUA.

In paralel cu dezvoltarea masinilor de calcul au aparut si primele forme de programe. Colaborarea lui Babbage, Ada-Augusta de Lovela (nascuta in Byron) a realizat primele programe pentru masina conceputa de Babbage ea fiind considerata primul programator. Tot in sec XIX matematicianul George Boole a pus bazele unei stiinte noi (care de altfel ii poarta si numele) in care operanzii clasici, numerele, erau inlocuiti cu propozitii. Algebra booleana sta astazi la baza construirii calculatoarelor electronice moderne.

Prima masina de calcul construita pe baza de relee electromagnetice a fost Mark I al carei proiect s-a finalizat in 1944 la universitatea Harvard. A urmat Eniac (Electronic Numerical Integrator and Calculator), care este considerat primul calculator electronic, functionand pe baza de tuburi electronice (cca 20000) si putand efectua aprox. 5000 de adunari pe secunda, o performanta la vremea aceea.

In 1949 a fost creat primul calculator programabil, pe baza unei idei a matematicianului John von Neumann, prin care erau introduse in memoria calculatorului atat datele de prelucrat, cat si programul dupa care acestea urmau a fi prelucrate. Au urmat UNIVAC (Universal Automatic Computer), 1950-1951, care a avut succes si care a determinat IBM-ul sa proiecteze, in 1954, primul sau calculator electronic. Cu acest calculator Big Blue a castigat piata de calculatoare mentinandu-se pana astazi in fruntea producatorilor din acest domeniu.

Un pas important in dezvoltarea calculatoarelor electronice a fost facut odata cu inventarea microprocesorului (de catre inginerul M. E. Hoff, la sfarsitul anului 1971) care a dus la o mare separare a hardului (partea electronica a calculatorului) de soft (partea logica, alcatuita din programele dupa care functioneaza calculatorul). Aceste 2 mari componente ale unui sistem de calcul au evoluat in paralel, dezvoltandu-se astfel doua domenii de cercetare in domeniul fizicii, electronicii si cel referitor la software, avand legatura cu dezvoltarea matematicii si a logicii.

Datorita implicarii tot mai accentuate a calculatoarelor in multe domenii de activitate, sfera problemelor rezolvate cu ajutorul calculatorului s-a extins foarte mult. A aparut astfel o specializare a programelor (pachetelor de programe), orientate spre rezolvarea diverselor tipuri de probleme: matematice, tehnice, economice, de proiectare, etc. Sistemele de gestiune a bazelor de date (pe scurt SGBD - prescurtare foarte des intalnita in literatura de specialitate) sunt sisteme informatice (software) specializate in stocarea si prelucrarea unui volum mare de date, volumul de rpelucrari implicat fiind relativ mic (spre deosebire de programele orientate spre rezolvarea problemenor matematice, de ex. care necesita un volum mare de prelucrari asupra unui volum relativ mic de date). Termenul de baza de date se va referi la datele de prelucrat la modul de organizare a acestora pe suportul fizic de memorare, iar termenul de gestiune va semnifica totalitatea operatiilor ce se vor aplica asupra datelor din bazele de date.

Odata cu raspandirea pe scara larga a PC-urilor s-au dezvoltat din ce in ce mai mult SGBD-urile implementate pe acest tip de calculatoare. Mult timp suprematia in acest domeniu a apartinut firmei ASHTON-TATE, cu produsul sau dBASE, cu diferiele sale versiuni (II, III, III+, IV) impunand chiar un standard in acest domeniu - la un moment dat acoperea aprox. 60% din piata SGBD-urilor pentru PC-uri. Principalii concurenti ai lui dBASE au fost Paradox al firmei Borland, Clipper avand ca producator firma Nantucket si FoxPro, produs al firmei Fox Software.

Acesta din urma a evoluat foarte rapid, de la varianta 1.02 la 2.0, acaparand treptat o mare parte din piata SGBD-urilor pe PC-uri. Odata cu cumpararea produsului FoxPro de catre Microsoft (liderul mondial in domeniul software-ului) si dezvoltarea variantelor 2.5 sub forma DOS si sub Windows, apoi 2.6, de asemenea in ambele variante, acest SGBD tinde spre vf. Ierarhiei (daca nu este deja lider!!!). Concurentii sai raman in continuare dBASE, cumparat de Borland, principalul rival al lui Microsoft in domeniul limbajelor de programare.

Capitolul II

DESCRIEREA BAZELOR DE DATE

II.1 INTRODUCERE IN FOX PRO

Activitatea uman n cele mai diverse forme ale sale, a fost ntotdeauna caracterizat prin entiti faptice exprimate fie sub form de valori numerice fie ca percepii sau observaii nenumerice fcute de oameni sau de maini. Aceste entiti faptice independente i neevaluate se numesc DATE. Exist un proces continuu de transformare a datelor n urma cruia se obin INFORMAII.

O informaie este o triad a elementelor : entitate, atribut, valoare. Entitatea formeaz obiectul informaiei. Atributul este elementul de descriere a entitii respective, caracterul sau o proprietate a acesteia. Valoarea este o msur a proprietii sau atributului asociat.

De cele mai multe ori n aplicaii, datele se prezint sub forma unor mulimi sau colecii. O colecie de date pe care s-a definit o structur, creia i este specific un anumit mecanism de selecie i identificare a componentelor, constituie o STRUCTUR DE DATE.

Asupra unei structuri de date se pot efectua urmtoarele operaii :

Creare ( memorare pe suport a datelor ( iniial))

Consultare ( acces la elementele structurii pentru prelucrarea valorilor lor )

Actualizare ( modificare, adugare, tergere )

Copiere ( duplicarea structurii pe un alt suport )

Ventilare ( desfacerea structurii n dou sau mai multe structuri )

Fuzionare ( combinarea a dou sau mai multe structuri )

Sortare ( aranjare dup anumite criterii )

Metodele i tehnicile de organizare a datelor au evoluat, fiind determinate de :

Creterea continu a activitilor, care a condus la creterea volumului de informaii generate, vehiculate, prelucrate

Creterea ritmului de dezvoltare a societii, care a determinat ca dimensiunea timpului de rspuns a sistemelor informatice la cererile de informaii s devin unul din criteriile de apreciere a gradului de organizare a datelor i, respectiv a eficinei sistemelor informatice

Evoluia mijloacelor de culegere, transmitere, arhivare i prelucrare a datelor

Cerinele complexe impuse sistemelor informatice au creat necesitatea ca mai muli utilizatori s aib acces la aceeai colecie de date care s satisfac n mod optim cerinele de prelucrare specifice fiecrui utilizator.

Se ajunge astfel la BNCI DE DATE ( BD ). O banc de date este format din:

O BAZ DE DATE colecie ( de obicei voluminoas ) de date

Un SISTEM DE GESTIUNE A BAZEI DE DATE ( SGBD ), respectiv un set de programe i proceduri, destinate gestiunii i prelucrrii complexe a datelor din baza de date

Un SET DE PROCEDURI MANUALE i AUTOMATE specifice domeniului pentru care se organizeaz baza de date

Un sistem de gestiune a datelor este un pachet de programe care trebuie s aib urmtoarele funcii:

Definirea proprietilor datelor i a legturii dintre ele

inerea la zi a datelor

Calcule

Extragerea datelor ntr-o form corespunztoare necesitilor

Complexitatea unui SGBD rezid n dimensiunea sa, reflectat nu numai n multitudinea instruciunilor sale dar i n mulimea componentelor, fiind prin complexitate cel puin la nivelul unui sitem de operare ( SO ).

FOXPRO i-a stabilit reputaia de program compatibil dBASE, dar cu vitez sporit. Pe plan vizual, FOXPRO nu pstreaz dect vagi asemnri cu modelul su dBASE, aspectul su se apropie mai mult de o interfa grafic. Utilizarea este facilitat i de sistemul de meniuri i de ferestre.

Are variante pentru DOS i pentru WINDOWS. Tehnologia Rushmore operaional n toate unificrile de tabele, precum i n toate operaiile multi-user, permit un plus de vitez n executarea procedurilor.

II.2 Limbajul de manipulare a datelorLimbajul de manipulare este format din comenzi pentru modificarea datelor sau pentru obinerea de informaii prin prelucrarea datelor din baza de date.

II.2.a Comenzi O comand este format dintr-un verb care va indica aciunea i un numr de clauze, care vin s particularizeze efectul comenzii pentru situaia respectiv.Sintaxa unei comenzi este :

< verb > [< clauza 1 >] [< clauza 2 >]

unde < verb > este un cuvnt cheie care va indica operaiunea de executat ; difer de la comand la comand i poate fi o construcie utilizator sau cuvinte cheie ale limbajului.

Comenzile FOXPRO sunt n general comenzi-linie. Dac este necesar fragmentarea comenzii, se va folosi semnul ; . Nu exist separatori ntre comenzi ( aa cum exist n Pascal, C ).

n programe, i numai n acest context, se pot folosi i comenzile multi-linie cum ar fi : comanda IF, SCAN, etc., fiecare avnd bine delimitat nceputul i sfritul ei.

Spre deosebire de limbajele de programare algoritmice Pascal, C, n care pentru rezolvarea unei probleme, orict de simpl, trebuia s scriem un program, s-l compilm i s-l lansm n execuie, pachetul de programe FOXPRO permite utilizatorilor o varietate mai larg de modaliti de lucru :

Modul interactiv ( modul de lucru comand ) este o modalitate de lucru interpretativ, care permite ca imediat ce utilizatorul introduce o comand, sistemul s o cerceteze i, dac este corect, s o execute Modul de lucru program un program este o succesiune de comenzi care trebuie s descrie un algoritm de rezolvare a unei probleme sau clas de probleme. Din punctul de vedere al sistemului FOXPRO, el este un fiier cu extensia .PRGApelul editorului propriu de programe se face prin comanda :

MODIFY COMMAND < fis.PRG >

Aceast comand deschide o fereastr de editare folosit att pentru crearea ct i pentru modificarea programului surs recunoscut prin numele < fis.PRG >. Extensia este implicit.

Lansarea programului n execuie ( automat se face i compilarea ) se realizeaz prin comanda :

DO < fis.PRG >

Editorul poate fi folosit i pentru alte fiiere text ASCII; atunci trebuie indicat extensia fiierului text.

II.3 Limbajul de controlLCD ( limbajul de control a datelor ) este foarte important mai ales n cazul sistemelor multi-user, deoarece el controleaz securitatea sistemului i verific drepturile de acces. n plus el permite o gestiune a tranzaciilor i n caz de necesitate poate efectua o refacere a bazei.

FOXPRO poate gestiona baze de date relaionale locale sau n reea, integrate sau distribuite, n care problema confidenialitii, a proteciei la accesul neautorizat la baza de date, este foarte important.

II.4 Operaii elementare asupra bazelor de dateDefinirea structurii conceptuale a bazei de date este o operaie foarte important, de care poate depinde ntregul proiect al aplicaiei. Proiectarea structurii logice pornete de la IEIRI , adic de la cererile de informaii, de la rezultatele pe care aplicaia informatic trebuie s le furnizeze. Dup inventarierea tuturor cererilor de informaii se determin INTRRILE , adic datele ce pot fi reinute ntr-o baz de date.

CREATE < fis.dbf > - permite deschiderea unui ecran de proiectare a structurii bazei de date i, prin dialog cu utilizatorul, definete structura unei baze de date : numele fiecrui cmp, tipul, lungimea sa, numrul de zecimale, i dac respectivul cmp va fi cheie de indexare ntr-un fiier multiindex asociat bazei de date.

USE < fis.dbf > - deschide baza de date specificat de nume, nchiznd, eventual, o alt baz de date dac era deschis. Extensia este implicit.

USE nchide baza de date deschis anterior.

MODIFY STRUCTURE permite accesul la structura unei baze de date. LIST / DISPLAY STRUCTURE afieaz structura conceptual.

COPY STRUCTURE TO < fis. dbf > [ FIELDS < list-cmp>] permite crearea unei noi baze de date numit < fis.dbf > pornind de la baza de date activ, prin prelucrarea tuturor cmpurilor ( dac lipsete clauza FIELDS ) sau a anumitor cmpuri enumerate n clauza FIELDS.

APPEND permite introducerea datelor de la tastatur.

APPEND BLANK la sfritul bazei de date activ se va aduga un articol vid, urmnd ca ulterior acesta s fie completat cu valori potrivite.

APPEND FROM < fis. dbf > - baza de date activ primete n continuarea articolelor sale nregistrrile din alt baz de date specificat n clauza FROM

DELETE [ < domeniu >] [ FOR < cond >] [ WHILE < cond >] comanda marcheaz pentru tergere articolele din domeniul specificat n clauza < domeniu > care ndeplinesc condiiile puse n clauzele FOR i WHILE ; implicit comanda acioneaz pe articolul curent ; aceast tergere este o tergere logic. tergerea fizic se face prin comenzile PACK ( permite tergerea fizic din fiier a

tuturor articolelor marcate anterior cu comanda DELETE ) i ZAP ( permite tergerea definitiv a tuturor datelor, fr s fi avut loc n prealabil o operaie de marcare).

RECALL [ < domeniu >] [ FOR < cond >] [ WHILE < cond >] anuleaz marcajele de tergere.

BROWSE afieaz articolele din baza de date sub forma unui tabel.

Pentru a putea folosi simultan mai multe baze de date ( deschiderea unei baze de date nu presupune nchiderea alteia ) se folosete comanda SELECT < zona > - selecteaz zona de lucru, care poate fi o liter sau o cifr (exist 25 de zone de lucru).

INDEX ON < exp > TO < fis.ndx > [ UNIQUE ] permite crearea unui fiier index cu numele specificat n clauza TO avnd cheia de indexare dat n clauza ON < exp >. Clauza UNIQUE permite evitarea accesului cheii de indexare la articolele cu aceeai valoare.

REINDEX permite reindexarea unui fiier indexat.

Indexarea se face pentru a facilita cutarea rapid. Majoritatea funciilor FOXPRO fac cutarea unui articol ntr-o baz de date numai dac aceasta este indexat.

FIND < expC > - permite cutarea ntr-o baz de date indexat a primului articol care are cheia de indexare egal cu expresia de cutare.

SEEK < exp > - se execut la fel ca FIND

Pentru aceste funcii de cutare se folosesc dou funcii test :

Funcia FOUND( ) ntoarce .T. dac articolul s-a gsit Funcia EOF ( ) ntoarce .T. dac articolul nu s-a gsit Se poate folosi i cutarea secvenial prin funcia LOCATE nu necesit un fiier indexat.

II.5 Ferestre i meniuri utilizatorFerestrele reprezint poriuni de ecran, tratate ca elemente de sine stttoare ce pot fi definite, activate, terse, mutate, mrite sau micorate.

Definirea unei ferestre utilizator se face prin indicarea dimensiunilor, poziiei i marcatorului de chenar n comanda :

DEFINE WINDOW < fereastr > FROM < r1, c1 > TO < r2, c2 > DOUBLE / PANEL / < list-car > / NONE / COLOR < per-culori > Comanda permite definirea unei ferestre cu numele dat n < fereastr >. Clauza FROM < r1, c1 > precizeaz colul stnga-sus i clauza TO < r2, c2 > cel din dreapta-jos. Clauzele DOUBLE / PANEL / < list-car > vor hotr cum va fi chenarul ferestrei. NONE va suprima ncadrarea ferestrei.

Activarea unei ferestre nseamn desenarea ei pe ecran i dirijarea ieirilor ecran n aceast poriune:

ACTIVATE WINDOW < fereastr >

Dezactivarea unei ferestre nseamn tergerea ei de pe ecran, nu din memorie :

DEACTIVATE WINDOW < fereastr >

Prin meniu nelegem un element de interfa prin care se ofer utilizatorilor posibilitatea selectrii unei anumite opiuni, dintr-o mulime finit, afiat pe ecran, total sau parial, urmnd ca n funcie de selectarea fcut, s se declaneze anumite aciuni.

Meniurile sunt de dou tipuri :

Meniuri menu ( bar ) folosite de obicei ca meniuri principale ale aplicaiei

Meniuri popup submeniuri

Definirea barei-meniu se face prin comanda :

DEFINE MENU < meniu > Definirea opiunilor dintr-un meniu se face prin comanda :

DEFINE PAD < opiune > OF < meniu > PROMPT < ir > [ AT < r, c > ] clauza PROMPT precizeaz textul opiunii care va fi afiat pe ecran n poziia < r, c >

Precizarea aciunii de executat la selectarea unei opiuni se face astfel :

ON SELECTION PAD < opiune > OF < meniu > < comand >Activarea unui meniu bar :

ACTIVATE MENU < menu >Dezactivarea unui meniu :

DEACTIVATE MENU < menu > - permite tergerea meniului de pe ecran, nu i din memorie.

Meniurile de tip popup reprezint mai multe opiuni sub form de list vertical.

Definirea meniului popup :

DEFINE POPUP < submeniu >

Definirea opiunilor utilizator ntr-un meniu popup :

DEFINE BAR < nr-linie > OF < submeniu > PROMPT < ir >

Activarea meniului popup i afiarea lui pe ecran se face prin comanda :

ACTIVATE POPUP < submeniu >

Capitolul III

DESCRIEREA GENERALA A FUNCTIILOR OFERITE DE PROGRAM

In momentul executarii programului prima fereastra care va apare va fi fereastra programului:

Programul contine urmatorul meniu:

Submeniul DEPOZIT contine submeniurile ADAUGARE si STERGERE fiecare cu un rol specific:

Adaugare materiale in depozitStergere materiale din depozit

La executarea submeniului ADAUGARE se va executa urmatoarea operatie:

Se introduce de la tastatura marimea, pretul, dupa care se va accesa butonul ADAUGARE pentru validarea datelor si IESIRE pentru revocare.

Pentru realizarea stergerii din depozit a materialelor se va introduce codul materialului dupa care se vor vizualiza datele pentru validare (STERGERE) sau revocare (IESIRE) dupa exemplul urmator:

Urmatorul submeniu COMENZI contine doua submeniuri si anume:

Prelucarea noilor comenziRidicarea comenzilor

Pentru preluarea comenzilor se va accesa submeniul PRELUARE. Dupa activare va aparea o fereastra noua cu un formular pentru introducerea datelor clientlui. Dupa introducerea datelor se va actiona asupra butonului ADAUGARE pentru validare sau asupra butonului IESIRE pentru revocare dupa cum este prezentat exemplul urmator:

Pentru ridicarea comenzilor de catre clienti am creat meniul RIDICARE, meniu care nu poate sterge comenzi din baza de date decat daca comenzile au parcurs drumurile In lucru si Terminare lucru. Pentru a pute fi ridicata o comanda este nevoie de numele clientului (exista o lista in care pot fi vizualizate toate comenzile scoase din fabrica gata de ridicare), dupa care se vor afisa datele clientului si comanda realizata, ca in exemplul urmator:

Pentru validarea inceperii lucrului la noua comanda se va actiona asupra butonului LUCRARE iar pentru revocare asupra butonului TERMINARE.

Meniul ATELIER actioneaza asupra comenzilor realizate de clienti. Pentru ca o comanda sa fie gata trabuie sa treaca prin fabrca (atelier), asadar nici o comanda nu poate fi ridicata pana cand nu s-a actionat asupra ei cu submeniurile de mai jos:

Duce comanda in atelier, in vederea realizarii eiValideaza terminarea unei lucrari

La actionare meniului PRELUARE va aparea urmatoarea fereastra:

Se introduce numele clientului dupa cere vor aparea datele informative. Pentru validare/revocare se va actiona asupra butoanelor LUCRARE / REVOCARE.

Pentru terminarea lucrarii lucrurile se comporta la fel:

Submeniul listari contine patru submeniuri pentro o mai buna evidentiere a datelor firmei dupa cum urmeaza:

Listarea materialelor

din depozit

Listarea comenzilor

neterminateListarea comenzilor aflate

in curs de finalizare

Listarea comenzilor

terminate

Partea afisarii listelor este identica dar datele introduse in liste sunt alese dupa diferite criterii:

LISTA MATERIALELOR DIN DEPOZIT

LISTA LUCRARLILOR NETERMINATE

LISTA COMENZILOR AFLATE IN LUCRU

LISTA LUCRARILOR TERMINATE

Submeniul urmator este un submeniu explicativ ce contine informatii despre programator, program si licenta:

Informatii

despre program

Informatii

despre autorInformatii

despre licenta

Accesarea submeniului PROGRAM va efisa urmatoarea fereastra:

Accesarea submeniului AUTOR va efisa urmatoarea fereastra:

Accesarea submeniului LICENTA va efisa urmatoarele fereastre:

Submeniul IESIRE contine un submeniu pentri iesirea din programul de gestiune ATELIER FOTO 2012:

SUBMENIUL IESIRE

Dupa accesarea submeniului va aparea urmatoarea fereastra de interogare:

Capitolul IV

DESCRIEREA BAZELOR DE DATE FOLOSITE

Pentru gestionarea atelierului de tamplarie am folosit doua baze de date si anume: DEPOZIT.DBF si COMENZI.DBF.DEPOZIT.DBF

Nume CampTipul CampuluiLungimea CampuluiZECIMALEINDEX

CodNumeric30Crescator

MarimeCaracter30

PretNumeric50

COMENZI.DBF

Nume CampTipul CampuluiLungimea CampuluiZECIMALEINDEX

NumeclCaracter30Crescator

DatacData8

ComandaCaracter50

PretCaracter10

TelefonCaracter10

TerminatLogic1

InlucruLogic1

Capitolul V

DESCRIEREA OPERATIILOR REALIZATE DE PROGRAM

set clock on

-se aciveaza ceasul

set color to

-se seteaza culoarea

define window adaugare from 1,1 to 24,79 color scheme 2

-se defineste fereastra adaugare intre pozitiile 1,1 si 24,79 (toto ecranul)

activate window adaugare

-se activeaza fereastra de adaugare

use depozit order tag cod

-se foloseste baza de date depozit si indexul acestei

go bott

-se uita peste ultima inregistrare

m.cod = cod + 1

-variabilei m.cod i se atrinuie valoarea inregistrarii anterioare + 1

use

m.dataad = date()

variabilei m.dataad i se atribuie data sistemului

@ 0,2 SAY "> "

-mesaj de notificare

use depozit order tag cod

-se foloseste baza de date depozit si indexul acesteia

use depozit order tag cod

seek m.cod

if found ()

wait window 'Codul introdus este alocat unei alte marimi'

else

@ 3,45 SAY "Data:" ;

SIZE 1,10, 0

@ 3,51 GET m.dataad ;

SIZE 1,10 ;

DEFAULT " " ;

disABLE;

PICTURE "@K"

@ 5,16 SAY "Marime:" ;

SIZE 1,10, 0

@ 5,23 GET m.marime ;

SIZE 1,15 ;

DEFAULT " " ;

PICTURE "@K! XXXXXXXXXXXXXXXXXXXXXX"

@ 7,16 SAY "Pret:" ;

SIZE 1,10, 0

@ 7,21 GET m.pret ;

SIZE 1,10 ;

DEFAULT " " ;

PICTURE"@K! 99.99"

read

@ 20,0 TO 20,71

@ 19,30 GET vcorect ;

PICTURE "@*HNT \"

-se introduce text informativ

@ 1,0 TO 1,71

-se traseaza o linie

@ 3,15 SAY "Nume:" ;

SIZE 1,5, 0

@ 3,21 GET m.numecl ;

SIZE 1,31 ;

DEFAULT " " ;

PICTURE "@K! XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

-se introduce text urma t de spatiul pentru introducerea numelui clientului

read

-se citeste numele clientului

use comenzi order tag numecl

-se foloseste baza de date comenzi si indezul ei

seek m.numecl

-se cauta m.nume client

if found()

-daca se gaseste

scatt memvar

-se incarca in memorie

if m.inlucru .t.

-daca variabila m.inlucru este diferita de true

if m.terminat .t.

-daca variabila m.terminat este diferita de true

@ 3,45 SAY "Data:" ;

SIZE 1,5, 0

@ 3,51 GET m.datac ;

SIZE 1,10 ;

DEFAULT " " ;

DISABLE;

PICTURE "@K"

@ 5,12 SAY "Comanda:" ;

SIZE 1,8, 0

@ 5,21 GET m.comanda ;

SIZE 1,51 ;

DEFAULT " " ;

DISABLE;

PICTURE "@K! XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

@ 7,15 SAY "Pret:" ;

SIZE 1,5, 0

@ 7,21 GET m.pret ;

SIZE 1,10 ;

DEFAULT " " ;

DISABLE;

PICTURE "@K! XXXXXXXXXX"

@ 7,40 SAY "Telefonul:" ;

SIZE 1,13, 0

@ 7,51 GET m.telefon ;

SIZE 1,11 ;

DEFAULT " " ;

DISABLE;

PICTURE "@K! XXXXXXXXXX"

m.inlucru = .t.

@ 19,0 TO 19,71

@ 21,10 GET vcorect ;

PICTURE "@*HNT \