Introducerea calculelor

In acest capitol vom adauga comenzii noastre calcule ce vor trebui efectuate automat. Obiectivul este acela de a calcula pretul in functie de cantitatea fiecarui articol ce va fi introdus si pretul total al comenzii.

Mai intai va trebui sa cream campurile care vor contine valorile calculate in cadrul diferitelor tabele. O regula importanta de retinut este ca, fiecare calcul pe care il vom efectua va trebui sa aibe un camp unde sa introducem rezultatul. Acesta va fi folosit pentru a putea verifica fiecare etapa calculata de catre program.

  1. Cream un camp de tip Valuta cu numele "Pret" in cadrul tabelului Articole.

  2. Cream un camp de tip Numar zecimal cu numele "Cant" in cadrul tabelului comenzi_randuri. Acesta va fi campul care contine cantitatea articolului de comandat.

  3. Cream un camp de tip Valuta cu numele "Pret" in cadrul tabelului comenzi_randuri.

  4. Cream un camp de tip Valuta cu numele "Pret total" in cadrul tabelului comenzi_randuri.

Odata terminate campurile va trebui sa regasim o situatie de acest tip:

Acum modificam campul cod al tabelului comenzi_randuri astfel incat, atunci cand vom alege un articol sa fie completat si pretul. Apoi apasam de doua ori pe camp si setam combinatiile adaugand pretul.

Odata setate combinatiile, apasam OK si salvam modificarile efectuate pe camp.

Dupa ce am creat campurile putem introduce calculele noastre. Deoarece calculele sunt legate de tabele va trebui sa modificam comenzi_randuri apoi, Comenzi.

Mergem in pagina Tabele, apasam de doua ori pe comenzi_randuri si apoi pe Setare in parametrul Expresii de calcul.

Adaugam un rand nou si, in coloana din stanga, selectam campul Pret total adica, cel care va contine rezultatul, in timp ce, in coloana din dreapta scriem [pret] * [cant]. Este important sa scriem in acest mod deoarece, parantezele patrate informeaza programul ca acelea sunt campuri deci, va trebui sa recupereze valoarea lor actuala inainte de a efectua operatiunea.

Apasam OK, salvam si incercam imediat sa facem o noua comanda.

Se poate observa ca sunt prezente noile campuri pe care le-am creat in cadrul comenzi_randuri.

Adaugam un rand si introducem valori in Cant si Pret pentru a vedea calculat automat Pretul total. Este posibil si sa scriem o valoare in cadrul Pret total deoarece campul este modificabil dar, va fi schimbat automat imediat ce unul dintre campurile apelate de catre expresie va fi modificat.

De retinut: expresiile sunt efectuate in ordinea in care au fost introduse si sunt recalculate toate imediat ce un camp apelat de ele este modificat.

Acum introducem campul Pret total in comanda printr-o alta metoda: introducem campul direct din editorul schemei.

Deschidem schema implicita a tabelului Comenzi, deschidem meniul Actiuni, selectam Creaza camp si, pentru a incheia, selectam elementul Detaliu inferior dreapta.

Dupa aceea, cream campul de tip Valuta si cu numele de Pret total. Salvam campul, salvam schema si inchidem.

Acum, mergem sa introducem calculul in cadrul tabelului Comenzi. Asa cum se poate vedea in coloana dreapta se gasesc campurile atat ale Comenzi-lor cat si ale comenzi_randuri deoarece, este posibila efectuarea de calcule recuperand valori din tabelele suplimentare.

Adaugam randul si selectam in coloana din dreapta campul Pret total in timp ce apasam pe elementul Pret total al comenzi_randuri in cadrul tabelului din dreapta.

Expresia are un anumit format: spune programului sa recupereze suma campului Pret total. De fapt, nu este posibila recuperarea unui anumit rand dintr-un tabel suplimentar, ci, in acest caz, doar suma coloanei.

Daca trebuie recuperata valoarea dintr-un anumit rand va trebui introdus un script LUA care va efectua calculul.

Ca intotdeauna, apasam OK, salvam si incercam comanda noastra.

Din acest moment, adaugand mai multe randuri si introducand valorile in coloanele Cantitate si Pret, vom vedea pretul total al comenzii recalculat din cand in cand.