Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




FEREASTRA DE COMANDA

Informatica


Observatie: Dupa fiecare aplicatie ce presupune utilizarea de tabele scriem instructiunea CLOSE ALL (īnchide toate tabelele, etc, deschise conform enuntului) pentru a vedea independent fiecare aplicatie īn parte.

Sa se seteze calea implicita de creare a tabelelor si, ulterior, a programelor folder-ul dvs. (Ex: \\servercig\student\1xx\Georgescu)



Raspuns:

set default to "\\servercig\student\1xx\Georgescu"

close all

  1. Sa se creeze īn mod direct, cu ajutorul ferestrei de comanda urmatoarele tabele:

a.      PRODUSE (CodProd N(3), DenProd C(20), Um C(4), Pu N(7,2), CantStoc N(7), CodGest N(3))

b.      GESTIUNE (CodGest N(3), DenGest C(20))

Raspuns:

a. create table Produse(CodProd N(3),DenProd C(20),Um C(4),Pu N(7,2),CantStoc N(7), CodGest N(3))

* s-a creat tabela Produse. Pentru a vedea ca ea exista fizic trebuie sa verificati folder-ul DVS.

b. create table Gestiune (CodGest N(3), DenGest C(20))

* s-a creat tabela Gestiune. Pentru a vedea ca ea exista fizic trebuie sa verificati folder-ul DVS.

close all

Sa se vizualizeze pe ecran structura tabelei PRODUSE pagina cu pagina.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

display structure

* vizualizati pe ecran structura tabelei PRODUSE

close all

OBS. Atunci cānd se lucreaza cu o tabela aceasta trebuie deschisa īn prealabil cu ajutorul comenzii USE urmat de numele tabelei (Ex: USE PRODUSE).

Sa se modifice structura tabelei PRODUSE la cāmpul PU, de la N(7,2) la N(7,4), sa se vizualizeze pe ecran modificarea facuta si sa se refaca acest cāmp la dimensiunea N(7,2).

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

modify structure

* se efectueaza modificarea la cāmpul PU pe coloana Decimale punānd īn loc de 2 cifra 4. OK. Confirmati cu Yes.

display structure

* vizualizati pe ecran structura 11311u202l tabelei Produse, īn mod expres, numarul de zecimale al cāmpului PU. Trebuie sa fie de 4.

modify structure

* se efectueaza modificarea la cāmpul PU pe coloana Decimale punānd īn loc de 4 cifra 2. OK. Confirmati cu Yes.

close all

Sa se insereze un nou cāmp īn tabela PRODUSE cu numele CodFz N(5) si sa se vizualizeze pe ecran modificarea facuta.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

modify structure

* se adauga la sfārsit, pe coloana NAME - CodFz, pe coloana TYPE - Numeric, iar pe coloana WIDTH - 5. OK. Confirmati cu Yes.

display structure

* vizualizati pe ecran structura tabelei Produse, īn mod expres, ultimul cāmp. Trebuie sa fie si cāmpul CodFz.

close all

Sa se stearga din tabela PRODUSE cāmpul introdus anterior (CodFz).

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

modify structure

* se pozitioneaza cursorul pe cāmpul CodFz. Se actioneaza butonul DELETE. Ok. Confirmati cu Yes.

close all

Sa se adauge 5 īnregistrari īn tabela Produse, iar apoi alte 5 īn tabela Gestiune.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

append

* se deschide o fereasta ce are toate cāmpurile din tabela PRODUSE dispuse pe verticala cu valori vide. Dati valori reale tuturor acestor cāmpuri. La tastarea valorii pe cāmpul CodProd va apare o noua īnregistrare vida. Completati 5 astfel de īnregistrari. Salvarea acestora cu īnchiderea ferestrei se face cu CRTL+W. Asteptati aplicatia 10 pentru vizualizarea īnregistrarilor adaugate.

use Gestiune

* se deschide tabela GESTIUNE. Observati pe bara de stare acest lucru.

append

* se deschide o fereasta ce are toate cāmpurile din tabela GESTIUNE dispuse pe verticala cu valori vide. Dati valori reale tuturor acestor cāmpuri. La tastarea valorii pe cāmpul CodProd va apare o noua īnregistrare vida. Completati 5 astfel de īnregistrari. Salvarea acestora cu īnchiderea ferestrei se face cu CRTL+W. Asteptati aplicatia 10 pentru vizualizarea īnregistrarilor adaugate.

close all

Sa se adauge o īnregistrare vida la sfārsitul tabelei Produse.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

append blank

* se adauga automat o īnregistrare cu valori vide la sfārsitul tabelei active. Deci, o sa avem 6 īnregistrari īn tabela (la cele 5 introduse de dvs se adauga aceasta īnregistrare vida). Verificati pe bara de stare.

close all

Sa se īncarce īnregistrarea vida cu urmatoarele date:

CodProd = 6

DenProd = "Diverse"

Um = "Buc"

Pu = 5000.50

CantStoc = 50

CodGest = 6

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru. Tabela care are īnregistrarea vida este tabela PRODUSE. La deschiderea tabelei cursorul se afla pozitionat pe prima īnregistrare din cadrul tabelei.

go bottom

* se deplaseaza cursorul pe ultima īnregistrare pentru ca acolo este īnregistrarea vida adaugata automat la aplicatia 8.

replace CodProd with 6

* se īnlocuieste valoarea vida de pe cāmpul CodProd cu valoarea 6

replace DenProd with "Diverse"

* se īnlocuieste valoarea vida de pe cāmpul DenProd cu valoarea " Diverse"

replace Um with "Buc"

* se īnlocuieste valoarea vida de pe cāmpul Um cu valoarea "Buc"

replace Pu with 5000.50, CantStoc with 50, CodGest with 6

* se īnlocuieste valoarea vida de pe cāmpul Pu cu valoarea 5000.00, valoarea vida de pe cāmpul CantStoc cu valoarea 50, valoarea vida de pe cāmpul CodGest cu valoarea 6.

close all

Sa se vizualizeze īnregistrarile din tabelele PRODUSE si GESTIUNE fara a avea posibilitatea sa le modificam.

Raspuns:

use Produse

se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

browse nomodify

afiseaza īnregistrarile din tabela utilizānd o fereastra ce are dispuse cāmpurile pe orizontala, iar valorile acestor cāmpuri pe verticala (īnregistrarile). Īncercati sa modificati o valoare. Īnchideti fereastra cu CTRL+W.

use Gestiune

se deschide tabela GESTIUNE. Observati pe bara de stare acest lucru. Īntr-o singura zona de lucru (acum suntem īn cea implicita, adica zona 1) nu se poate deschide decāt o singura tabela, deschiderea alteia o īnchide automat pe cea precedenta. Īn cazul nostru se va īnchide automat tabela PRODUSE si va deveni activa tabela GESTIUNE.

browse nomodify

afiseaza īnregistrarile din tabela utilizānd o fereastra ce are dispuse cāmpurile pe orizontala, iar valorile acestor cāmpuri pe verticala (īnregistrarile). Īncercati sa modificati o valoare. Īnchideti fereastra cu CTRL+W.

close all

sau

use Produse

se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

display all

* se va afisa continutul tabelei active direct pe ecran, deci nu se pot face nici aici modificari

use Gestiune

se deschide tabela GESTIUNE. Observati pe bara de stare acest lucru.

display all

* se va afisa continutul tabelei active direct pe ecran, deci nu se pot face nici aici modificari

close all

Sa se modifice pretul unitar de la 5000.50 lei la 7.000 lei, pentru CodProd = 6 cu pozitionarea directa pe cāmpul Pu pentru a efectua modificarea.

Raspuns:

use Produse

se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

replace Pu with 7000 for CodProd=6

īnlocuieste toate valorile existente pe cāmpul Pu cu valoarea 7000 daca au pe CodProd valoarea 6. Altfel spus, toate īnregistrarile care au valoarea cāmpului CodProd egala cu 6 vor avea pretul unitar (Pu) 7000.

close all

sau

use Produse

se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

browse for CodProd=6 freeze Pu

* se va deschide o fereastra de dialog ce va cuprinde pe orizontala toate cāmpurile din tabela activa, iar pe verticala se vor afisa numai acele īnregistrari care au valoarea cāmpului CodProd egala cu 6. Cursorul va fi pozitionat direct pe cāmpul Pu. Tastati valoarea 7000. Īnchideti fereastra cu CTRL+W.

close all

Sa se stearga logic din tabela PRODUSE īnregistrarile care au pe cāmpul CodProd valoarea 6 si sa se vizualizeze īnregistrarile marcate logic pentru stergere. Sa se stearga fizic aceste īnregistrari. Verificati daca sunt sterse definitiv (fizic).

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

delete for CodProd=6

* stergerea logica a īnregistrarilor din tabela PRODUSE care au pe cāmpul CodProd valoarea 6. La vizualizarea īnregistrarilor din tabela acestea trebuie sa fie marcate cu un semn distinct īn partea stānga.

browse

* vizualizarea īnregistrarilor din tabela cu ajutorul unei ferestre ce are cāmpurile dispuse pe orizontala, iar īnregistrarile pe verticala. Verificati daca exista un semn distinctiv īn partea stānga la īnregistrarile ce au pe cāmpul CodProd valoarea 6, astfel fiind marcate ca sterse logic. Īnchideti fereastra cu CTRL+W.

pack

* stergerea definitiva (fizica) din tabela a īnregistarilor marcate logic.

browse

* vizualizarea īnregistrarilor din tabela cu ajutorul unei ferestre ce are cāmpurile dispuse pe orizontala, iar īnregistrarile pe verticala. Verificati daca mai exista acele īnregistrari sterse logic. Trebuie sa nu mai existe. Īnchideti fereastra cu CTRL+W.

close all

OBS. Nu se poate sterge fizic, cu ajutorul comenzii PACK, o īnregistrare daca aceasta nu este marcata logic pentru stergere cu ajutorul comenzii DELETE.

Sa se steara logic toate īnregistrarile care au Pu > 3000 si sa se verifice daca acestea au fost marcate logic pentru stergere.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

delete for Pu>3000

* stergerea logica a īnregistrarilor din tabela PRODUSE care au pe cāmpul Pu valori mai mari de 3000. La vizualizarea īnregistrarilor din tabela, acestea trebuie sa fie marcate cu un semn distinct īn partea stānga.

browse

* vizualizarea īnregistrarilor din tabela cu ajutorul unei ferestre ce are cāmpurile dispuse pe orizontala, iar īnregistrarile pe verticala. Verificati daca exista un semn distinctiv īn partea stānga la īnregistrarile ce au pe cāmpul Pu valori mai mari de 3000, astfel fiind marcate ca sterse logic. Īnchideti fereastra cu CTRL+W.

close all

Sa se renunte la stergerea logica pentru acele produse care au Pu >= 5000 si sa se verifice daca acestea au fost demarcate.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

recall for Pu>=5000

* renuntarea la stergerea logica pentru acele īnregistrari din tabela PRODUSE care au pe cāmpul Pu valori mai mari sau egale cu 5000. Astfel, toate īnregistrarile marcate logic la aplicatia anterioara care au īnsa pe cāmpul Pu valori mai mari sau egale cu 5000 vor fi demarcate (s-a renuntat la stergere logica), ramānānd marcate numai cele care au pe cāmpul Pu valori cuprinse īntre 3000 si 4999. 99. Explicati de ce.

browse

* vizualizarea īnregistrarilor din tabela. Verificati daca mai exista un semn distinctiv īn partea stānga la īnregistrarile ce au pe cāmpul Pu valoari mai mari sau egale cu 5000. Dar la cele care au Pu cuprins īntre 3000 si 4999.99 mai exista acel semn distinctiv īn partea stānga?. Trebuie sa existe. Īnchideti fereastra cu CTRL+W.

close all

Sa se stearga logic urmatoarele 2 īnregistrari de la īnregistrarea curenta din tabela PRODUSE.

Raspuns:

use Produse

* se deschide tabela PRODUSE. La deschiderea tabelei cursorul este pozitionat pe prima īnregistrare. Observati pe bara de stare acest lucru.

delete next 2

* stergerea logica a urmatoarelor doua īnregistrari din tabela PRODUSE. La vizualizarea īnregistrarilor din tabela, prima si a doua īnregistrare trebuie sa fie marcate cu un semn distinct īn partea stānga (stergere logica). Scrieti dvs. instructiunea de vizualizare a īnregistrarilor si verificati daca sunt marcate acele īnregistrari.

close all

Sa se stearga logic īnregistrarea a patra din tabela PRODUSE.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Observati pe bara de stare acest lucru.

delete record 4

* stergerea logica a īnregistrarii a patra din tabela PRODUSE. La vizualizarea īnregistrarilor din tabela, aceasta īnregistrare trebuie sa fie marcata cu un semn distinct īn partea stānga (stergere logica). Scrieti dvs. instructiunea de vizualizare a īnregistrarilor si verificati daca este īntr-adevar marcata.

close all

Sa se deplaseze cursorul pe īnregistrarea a 3 din tabela PRODUSE. Sa se sara apoi peste 2 īnregistrari.

Raspuns:

use Produse

* se deschide tabela PRODUSE. La deschiderea tabelei cursorul este pozitionat pe prima īnregistrare. Observati pe bara de stare acest lucru.

goto 3

* deplasarea pe īnregistrarea a treia din tabela. Verificati acest lucru pe bara de stare.

skip +2

* salt peste 2 īnregistrari. Verificati bara de stare. Pe ce īnregistrare este acum?

close all

Sa se deplaseze cursorul pe prima īnregistrare, pe ultima īnregistrare, pe penultima, pe īnregistrarea a 3-a , iar apoi pe urmatoarea, īn cadrul tabelei PRODUSE.

Raspuns:

use Produse

* se deschide tabela PRODUSE. La deschiderea tabelei cursorul este pozitionat pe prima īnregistrare. Observati pe bara de stare acest lucru.

go top

* cu toate ca suntem pe prima īnregistrare (tocmai s-a deschis tabela PRODUSE), haideti sa executam cerinta cu ajutorul unei comenzi. Deci, GO TOP permite deplasarea pe prima īnregistrare īn cadrul tabelei active. Verificati bara de stare.

go bottom

* deplasarea pe ultima īnregistrare din tabela activa. Verificati bara de stare. Ce numar are īnregistrare pe care este pozitionat cursorul acum?

skip -1

* salt īnapoi cu o īnregistrare. Fiind pe ultima, saltul inapoi ne-a pozitionat cursorul pe penultima īnregistrare. Verificati bara de stare. Ce numar are īnregistrare pe care este pozitionat cursorul acum?

go record 3

* deplasarea cursorului pe īnregistrarea a treia din tabela. Verificati bara de stare.

skip 1

* salt īnainte cu o īnregistrare. Verificati bara de stare. Ce numar are īnregistrare pe care este pozitionat cursorul acum?

close all

Sa se caute īn tabela neindexata PRODUSE īnregistrarile care au o cantitate stocata (CantStoc) mai mare decāt 20 si sa se afiseze fiecare īnregistrare pe ecran.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

locate for CantStoc>20

* localizarea primei īnregistrari care are pe cāmpul CantStoc o valoare mai mare de 20.

display

* afisarea pe ecran a acestei īnregistrari. Verificati īnregistrarea afisata pe ecran daca la CantStoc exista o valoare mai mare ca 20. Verificati bara de stare si precizati ce numar are īnregistrarea afisata.

continue

* continua localizarea unei alte īnregistrari care respecta conditia pusa (CantStoc > 20). Daca a localizat o alta īnregistrare care respecta conditia pusa, atunci si aceasta trebuie sa o afisam pe ecran.

display

* afisarea pe ecran a acestei īnregistrari. Verificati īnregistrarea afisata pe ecran daca la CantStoc exista o valoare mai mare ca 20. Precizati ce numar are īnregistrarea afisata.

continue

* continua localizarea unei alte īnregistrari care respecta conditia pusa (CantStoc > 20). Daca a localizat o alta īnregistrare care respecta conditia pusa, atunci si aceasta trebuie sa o afisam pe ecran. Se va da comanda CONTINUE pāna cānd va apare pe bara de stare mesajul END OF LOCATE SCOP (sfārsitul cautarii scopului - conditiei specificate - cu LOCATE)

close all

Sa se numere si sa se afiseze cāte produse exista īn tabela PRODUSE.

Raspuns

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

count all to variabila_memorie

* numara toate īnregistrarile din tabela activa si pastreaza rezultatul numararii īn variabila de memorie cu numele variabila_memorie

? variabila_memorie

* afiseaza pe ecran continutul variabilei de memorie variabila_memorie . Care este numarul de produse?

close all

Sa se numere si sa se afiseze cāte produse exista cu o valoare mai mare de 12.000 u.m. īn cadrul tabelei Produse.

Raspuns

use produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

count all to variabila_memorie for Pu*CantStoc>=12000

* numara toate īnregistrarile din tabela activa care au Pu*CantStoc > = 12000 (care au valoarea > = 12000) si pastreaza rezultatul numararii īn variabila de memorie cu numele variabila_memorie

? variabila_memorie

* afiseaza pe ecran continutul variabilei de memorie variabila_memorie . Care este numarul de produse?

close all

Sa se sortreze tabela PRODUSE dupa cāmpul CodProd īn ordine descrescatoare si sa se vizualizeze īnregistrarile sortate.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

sort on CodProd /d to Sproduse

* se sorteaza tabela activa (PRODUSE) pe cāmpul CodProd īn ordine descrescatoare creānd o noua tabela SPRODUSE īn care sunt pastrare īnregistrarile sortate. Altfel spus, tabela sortata are toate cāmpurile (implicit) din tabela supusa sortarii (PRODUSE) si toate īnregistrarile, dar sortate descrescator dupa cāmpul CodProd. Pentru vizualizarea īnregistrarilor sortate trebuie sa deschidem tabela īn care acestea se afla, adica tabela SPRODUSE. Verificati folder-ul dvs. pentru a vedea ca s-a creat noua tabela SPRODUSE.

use Sproduse

* se deschide tabela SPRODUSE. Verificati pe bara de stare.

browse

* vizualizarea īnregistrarilor din tabela. Verificati daca sunt sortate descrescator valorile de pe cāmpul CodProd. Īnchideti fereastra cu CTRL+W.

close all

Sa se sorteze tabela Produse dupa codul de gestiune (cāmpul CodGest), iar īn cadrul acestuia dupa cantitatea stocata (cāmpul CantStoc). Sa se vizualizeze īnregistrarile sortate.

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

sort on CodGest, CantStoc to Sproduse_0

* se sorteaza tabela activa (PRODUSE) pe cāmpul CodGest, iar īn cadrul acestuia dupa CantStoc creānd o noua tabela SPRODUSE_0 īn care sunt pastrare īnregistrarile sortate. Altfel spus, tabela sortata are toate cāmpurile (implicit) din tabela supusa sortarii (PRODUSE) si toate īnregistrarile, dar sortate dupa codul de gestiune (cāmpul CodGest), iar īn cadrul fiecarei gestiunii dupa CantS.toc. Pentru vizualizarea īnregistrarilor sortate trebuie sa deschidem tabela īn care acestea se afla, adica tabela SPRODUSE_0. Verificati folder-ul dvs. pentru a vedea ca s-a creat noua tabela SPRODUSE_0.

use Sproduse_0

* se deschide tabela SPRODUSE_0. Verificati pe bara de stare.

browse

* vizualizarea īnregistrarilor din tabela. Verificati daca sunt sortate pe cāmpul CodGest, iar īn cadrul acestuia dupa CantStoc (implict este o sortare crescatoare). Īnchideti fereastra cu CTRL+W.

close all

Sa se sorteze tabela PRODUSE dupa cāmpul CodProd īn ordine crescatoare, retināndu-se īn tabela sortata numai cāmpurile CodProd, DenProd, CantStoc si CodGest. Se vor sorta numai acele īnregistrari care au cantitatea stocata mai mare decāt 30. Sa se vizualizeze īnregistrarile sortate fara a avea posibilitatea modificarii lor.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

sort on CodProd to Sproduse_1 for CantStoc>=30 fields CodProd,DenProd, CantStoc, CodGest

* se sorteaza tabela activa (PRODUSE) pe cāmpul CodProd, implicit īn ordine crescatoare creānd o noua tabela SPRODUSE_1 īn care sunt pastrare īnregistrarile sortate, dar care respecta si conditia: CantStoc > = 30. Aceasta noua tabela are numai cāmpurile CodProd, DenProd, CantStoc si CodGest. Altfel spus, tabela sortata are, de data aceasta, numai cāmpurile CodProd, DenProd, CantStoc si CodGest si numai īnregistrarile care au pe cāmpul CantStoc valori mai mari sau egale cu 30. Pentru vizualizarea īnregistrarilor sortate trebuie sa deschidem tabela īn care acestea se afla, adica tabela SPRODUSE_1. Verificati folder-ul dvs. pentru a vedea ca s-a creat noua tabela SPRODUSE._1.

use Sproduse_1

* se deschide tabela SPRODUSE_1. Verificati pe bara de stare.

browse nomodify

* se afiseaza īnregistrarile din tabela activa fara a avea posibilitatea modificarii lor. Verificati daca īn aceasta tabela exista numai cāmpurile CodProd, DenProd, CantStoc si CodGest, iar īnregistrarile au pe cāmpul CantStoc numai valori mai mari sau egale cu 30. Īncercati sa tastati o valoare. Īnchideti fereastra cu CTRL+W.

close all

Sa se stearga definitiv (fizic) īnregistrarile din tabela SPRODUSE_1 si sa se adauge īn mod automat īnregistrarile din tabela GESTIUNE aferente cāmpului comun din cele doua tabele (CodGest). Sa se vizualizeze īnregistrarile adaugate.

Raspuns:

use Sproduse_1

* se deschide tabela SPRODUSE_1. Verificati pe bara de stare.

delete all

* stergerea logica a tuturor īnregistrarilor din tabela activa (Sproduse_1)

pack

* stergerea definitiva (fizica) a īnregistrarilor sterse logic, adica vor fi sterse toate īnregistrarile. Astfel, tabela Sproduse_1 nu mai are nici o īnregistrare. Verificati acest lucru direct de pe bara de stare.

append from gestiune

* se adauga īn tabela Sproduse_1 (cea activa) valorile din tabela Gestiune, numai pe cāmpul comun (CodGest), restul cāmpurilor avānd īn continuare valori vide. Altfel spus, la verificare, o sa vedeti valori numai pe coloana CodGest, īn restul cāmpurilor, de-a lungul tuturor īnregistrarilor, numai valori vide. Verificati īnregistrarile din tabela Sproduse_1.

browse

* vizualizarea īnregistrarilor din tabela activa (Sproduse_1). Verificati daca sunt valori numai pe cāmpul CodGest, iar aceste valori sunt cele din tabela Gestiune de pe cāmpul CodGest. Īnchideti fereastra cu CTRL+W.

close all

Observatie: Adaugarea de date dintr-o alta tabela se poate face si fara a sterge īnregistrarile din tabela intiala.

Sa se indexeze tabela Produse dupa cāmpul CodProd, sa se deschida tabela Produse cu indexul asociat si sa se vizualizeze īnregistrarile indexate.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

index on CodProd to IPRODUSE

* se indexeaza tabela activa (PRODUSE) pe cāmpul CodProd creānd o noua tabela cu numele IPRODUSE. Verificati folder-ul dvs pentru a vedea noua tabela IPRODUSE. Aceasta noua tabela (IPRODUSE) nu contine decāt cāmpul dupa care s-a facut indexarea, si anume CodProd. Indexarea este utila la localizarea mai rapida a īnregistrarilor atunci cānd se face o cautare pe cāmpul indexat. Astfel, pentru a avea acces la toate informatiile de pe o īnregistrare (codul produsului, denumirea produsului, unitatea de masura, pretul unitar, cantitatea stocata si codul de gestiune) trebuie sa deschidem tabela initiala cu indexul asociat. Verificati folder-ul dvs. pentru a vedea ca s-a creat noua tabela IPRODUSE.

use PRODUSE index IPRODUSE

* se deschide tabela initiala cu indexul asociat.

display all

* afiseaza pe ecran toate īnregistrarile din tabela PRODUSE ordonate īn urma indexarii. Pentru a vedea diferenta dintre īnregistrarile neindexate ale tabelei PRODUSE si īnregistrarile indexate ale acesteia, deschideti tabela PRODUSE fara indexul asociat (use Produse) si vizualizati pe ecran toate īnregistrarile, iar apoi deschideti tabela PRODUSE cu indexul asociat (use PRODUSE index IPRODUSE) si vizualizati iar pe ecran toate īnregistrarile. Ce deosebiri apar ? Verificati si coloana RECORD de pe ecran. Ce noi deosebiri apar?

close all

Sa se indexeze tabela PRODUSE dupa cāmpurile CodProd si DenProd īntr-o noua tabela IPRODUSE_1. Aceasta deoarece presupunem ca dorim localizarea mai rapida īn tabela a doua produse cu acelasi cod si nume de produs. Sa se vizualizeze īnregistrarile indexate.

Raspuns:

use Produse

* se deschide tabela PRODUSE. Verificati pe bara de stare.

index on str(CodProd,3)+DenProd to IPRODUSE_1

* se indexeaza tabela activa (PRODUSE) pe cāmpul CodProd īn combinatie cu DenProd creānd o noua tabela cu numele IPRODUSE_1. Pentru a indexa o tabela dupa mai multe cāmpuri trebuie ca acestea sa fie mentionate folosind semnul "+". Dar semnul "+" este folosit si pentru adunare, deci se impune convertirea datelor din aceste cāmpuri (daca ele sunt de tip numeric) din numeric īn caracter cu ajutorul functiei STR(cāmp). Verificati folder-ul dvs pentru a vedea noua tabela IPRODUSE_1. Īn cazul nostru numai cāmpul CodProd este de tip numeric.

use Produse index Iproduse_1

* se deschide tabela initiala cu indexul asociat

display all

* afiseaza pe ecran toate īnregistrarile din tabela PRODUSE ordonate īn urma indexarii

close all

Sa se compuna cele doua tabele (PRODUSE si GESTIUNE) pe baza cāmpului comun (numai asa se poate) astfel īncāt noua tabela rezultata sa aiba urmatoarea structura:

PRODGEST (CodProd N(3), DenProd C(20), CodGest N(3), DenGest C(20))

Sa se vizualizeze īnregistrarile din nou tabela.

Raspuns:

* pentru a compune doua tabele trebuie ca ambele sa fie deschise simultan. Pentru a īndeplinii aceasta conditie selectam doua zone de lucru, zona 1 si zona 2, si deschidem cāte o tabela īn fiecare din zone.

select 1

* se selecteaza zona 1 de lucru sau zona A.

use Produse

* se deschide tabela PRODUSE

select 2

* se selecteaza zona 2 de lucru sau zona B.

use Gestiune

* se deschide tabela GESTIUNE.

* Acum suntem īn zona B. Deci trebuie sa precizam ca tabela deschiza īn zona B (GESTIUNE) sa se compuna cu tabela deschisa īn zona A (PRODUSE).

join with A to PRODGEST for CodGest=A.CodGest fields A.CodProd, A.DenProd, CodGest, DenGest

* compune cu zona A (sa nu uitam ca suntem īn zona B) creānd o noua tabela cu numele PRODGEST (asa se cere īn enunt) pentru valorile cāmpului CodGest din B (suntem deja īn zona B si acesta este motivul pentru care nu am mai pus īn fata cāmpului si zona din care sa-l ia) egale cu valorile cāmpului CodGest din A, retinānd īn noua tabela (PRODGEST) numai cāmpurile CodProd din zona A, DenProd din zona A, CodGest din B si DenGest din B. Asadar tabela PRODGEST are cāmpurile CodProd, DenProd, CodGest si DenGest, iar ca īnregistrari numai cele care se regasesc pe cāmpul comun CodGest, atāt īn tabela PRODUSE, cāt si GESTIUNE. Verificati folder-ul dvs. pentru a vedea ca s-a creat noua tabela PRODGEST.

select 3

* se selecteaza o noua zona, zona 3 sau zona C, pentru a deschide noua tabela rezultata īn urma compunerii. Se poate deschide aceasta tabela si īn zona 1 sau 2, īnchizānd automat tabela initial deschisa īn una din aceste zone.

use PRODGEST

* se deschide tabela PRODGEST.

browse

* vizualizarea īnregistrarilor din tabela activa, PRODGEST. Verificati īnregistrarile pentru a observa ce date sunt aduse īn urma compunerii īn aceasta tabela. Structura tabelei PRODGEST este cea din enunt?

close all

Sa se introduca de la tastatura un nume oarecare la īntrebarea " Care este numele dvs.? "

Raspuns:

Accept "Care este numele dvs.? " to vmnume

Sau

Vmnume=space(25)

* initializarea variabilei de memorie Vmnume de tip caracter. Aceasta variabila va pastra numele introdus de la tastatura. Se initializeaza cu 0 (zero) variabilele de tip numeric, cu SPACE(lungime) variabilele de tip caracter sau alfanumerice. Variabilele de memorie nu trebuie sa aiba īn denumirea lor spatii (Gresit: vm nume=space(25); Corect: vmnume=space(25) sau vm_nume=space(25))

@ 5,10 say "Care este numele dvs.? " get Vmnume picture replicate("x",25)

* afiseaza pe ecran īncepānd cu linia 5, coloana 10 textul: " Care este numele dvs? ", precizānd, dupa GET, care este variabila de memorie ce va pastra datele introduse de la tastatura, si anume Vmnume. PICTURE defineste atāt tipul caracterelor ce pot fi introduse īn aceasta variabila, cāt si numarul acestora. Se va folosii "X" daca dorim date de tip alfanumeric (cifre si litere), " A " daca dorim numai litere, " 9 " daca dorim date de tip numeric, etc. Alegerea tipului de data acceptat īntr-o variabila este stabilit īnca de la initializare. Numarul de X-uri, A-uri sau 9-ari definesc numarul maxim de caractere ce pot fi introduse īn variabila respectiva. Īn exemplul de fata lungimea variabilei de memorie Vmnume este de 25.

read

* citeste variabila de memorie Vmnume. De abia īn urma citirii utilizatorul va putea tasta numele dorit. Acesta este memorat īn variabila Vmnume. Vezi aplicatia 30 pentru vizualizarea continutului unei variabile.

clear

* sterge ecranul

Sa se afiseze continutul variabilei de memorie Vmnume īn urmatorul format de afisare: "Numele tastat de dvs. este: " .

Raspuns:

? " Numele tastat de dvs. este: " + vmnume

* cu " ? " vom afisa textul "Numele tastat de dvs. este: " la care adaugam cu semnul " + " continutul variabilei Vmnume. Aceasta variabila este initializata de tip caracter (vezi aplicatia 29) , deci nu trebuie sa mai convertim acest continut al variabilei īn caracter pentru a-l adauga la textul "Numele tastat de dvs. este: ". Trebuie evitata situatia īn care la un text oarecare se adauga cu semnul " + " un numar. Este exact ca si cum la textul " Este mai bine acum " adaug, cu semnul " + " numarul 5. Dar semnul " + " este folosit si pentru adunare, deci eroare. Asadar, se impune convertirea numarului 5, īn cazul nostru, din numeric īn caracter cu ajutorul functiei STR(variabila_de_memorie sau direct numarul) pentru ca semnul " + " sa nu fie interpretat ca adunare, ci ca adaugare.

clear

* sterge ecranul

Sa se introduca de la tastatura: "Care este numarul de telefon al dvs.?".

Raspuns:

Vmnrtelefon=0

* initializarea variabilei de memorie Vmnrtelefon de tip numeric. Aceasta variabila va pastra numarul de telefon introdus de la tastatura. S-a initializat cu 0 (zero) pentru ca numarul de telefon este de tip numeric.

@ 5,10 say "Care este numarul de telefon al dvs.? " get vmnrtelefon picture "9999999999"

* afiseaza pe ecran īncepānd cu linia 5, coloana 10 textul: "Care este numarul de telefon al dvs.? ", precizānd, dupa GET, care este variabila de memorie ce va pastra datele introduse de la tastatura, si anume Vmnrtelefon. Īn exemplul de fata variabila de memorie Vmnrtelefon este declarata de tip numeric (conform initializarii facute), iar lungimea este de 10 (numarul de 9-ari de la Picture).

read

* citeste variabila de memorie Vmnrtelefon. De abia īn urma citirii utilizatorul va putea tasta numarul de telefon dorit. Acesta este memorat īn variabila Vmnrtelefon. Vezi aplicatia 32 pentru vizualizarea continutului unei variabile.

clear

* sterge ecranul

Sa se afiseze continutul variabilei de memorie Vmnrtelefon īn urmatorul format de afisare: "Numarul de telefon al dvs este: ".

Raspuns:

? "Numarul de telefon al dvs este: " +str(vmnrtelefon,10)

* cu " ? " vom afisa textul "Numarul de telefon al dvs. este: " la care adaugam cu semnul " + " continutul variabilei Vmnrtelefon. Aceasta variabila este initializata de tip numeric (vezi aplicatia 31), deci trebuie sa convertim acest continut al variabilei din numeric īn caracter pentru a-l putea adauga la textul "Numarul de telefon al dvs. este: " cu semnul "+". Deci se impune utilizarea functiei STR(variabila_de_memorie), astfel: STR(vmnrtelefon,10) . 10 este numarul maxim de caractere ce poate fi scris īn variabila conform aplicatiei 31.

Sa se afiseze formatul de introducere al datei calendaristice.

Raspuns : ? Date()

Sa se afiseze pe ecran a doua īnregistrare din cadrul tabelei PRODUSE.

Raspuns:

use Produse

goto 2

? str(CodProd,3)+" " +DenProd+" "+Um+" "+str(Pu,7,4) + " "+str(CantStoc,7)+" "+str(CodGest,3)

sau

use Produse

goto 2

? " COD DENUMIRE UNITATE PRET CANTITATE COD "

? " PRODUS PRODUS DE MASURA UNITAR STOC GESTIUNE "

? str(CodProd,3)+" " +DenProd+" "+Um+" "+str(Pu,7,4) + " "+str(CantStoc,7)+" "+str(CodGest,3)

sau

use Produse

goto 2

@ 5,10 say "Codul produsului este : " + str(CodProd,3)

@ 6,10 say "Denumirea produsului este: "+DenProd

@ 7,10 say "Unitatea de masura este : "+Um

@ 8,10 say "Pretul unitar este : "+str(Pu,7,4)

@ 9,10 say " Cantitatea stocata este :" +str(CantStoc,7)

@ 10, 10 say "Codul gestiunii este : "+str(CodGest,3)


Document Info


Accesari: 1744
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )