Script calculare Pret

Top  Previous  Next

Script calculare preț

BrowseBlueLeft BrowseBlueRight

 

 

Aici se pot defini metode complexe de calcul al prețului sau verificări dimensionale bazate pe dimensiunile termopanului, greutate sau formă.

Scriptul se poate scrie folosind instrucțiuni ale limbajului de programare Pascal.

În figura de mai jos este un exemplu de script care dublează prețul termopanului dacă lățimea sau înălțimea termopanului depășește 2000mm.

 

ScriptPretTermopan

 

Cod - codul scriptului. Acest cod poate fi ales în lista de termopane ca și script de calcul al prețului sau ca și script de avertizare.

 

Denumire - denumirea script-ului;

 

Script - memo-ul care conține lista de instrucțiuni, script-ul de calcul.

 

Toate valorile de intrare și ieșire e refera la o bucată de termopan.

 

Variabile de intrare folosite în script:

 

GlazingCode - codul termopanului.

GlazingName - denumirea termopanului.

GlazingThickness - grosimea termopanului.

Price - preţul din tabel al termopanului care apelează scriptul.

PriceOfMaterials - preţul termopanului format din materialele definite în Straturi. Preţul include şi manoperele apelate de materialele din straturi. Valoarea este per bucată de termopan.

Width - lățimea în milimetri.

Height - înălțimea în milimetri.

MinSurface - valoarea din câmpul SuprafataMinima.

Shape - va fi 0 dacă este formă dreptunghiulară.

HasArch - True dacă are boltă.

Weight - greutatea în Kg per bucată de termopan.

CanSpin - valoarea din câmpul SePoateRoti din tabelul de termopane.

LeftPrCode - codul profilului din stânga termopanului.

RightPrCode - .

TopPrCode - .

BottomPrCode - .

ProfileSeries - seria de profile a ferestrei.

 

Variabile de ieșire folosite în script:

 

FinalPrice - dacă scriptul este folosit la calcularea prețului, la final va conține prețul termopanului.

WarningMsg - se va completa cu un mesaj de avertizare, altfel trebuie să rămână vid.

ErrorMsg - se va completa cu un mesaj de eroare, altfel trebuie să rămână vid.

BlockSaveMsg - dacă este completată cu o valoare atunci salvarea comenzii va fi blocată și va fi afișat acest mesaj.

BlockReportsMsg - dacă este completată cu o valoare atunci rapoartele comenzii nu vor putea fi generate și va fi afișat acest mesaj.

ReportsMsg - valoarea completată în această variabila va fi afișată în rapoarte (câmpul ReportsMsg din tabelul Ofertare)

 

Dacă se doreste includerea în traducerea bazei de date a unor texte acestea se vor declara ca și variabile care încep cu TrsText_. Aceste variabile vor fi inițializate la declarare în felul urmator:

 TrsText_SuprafataPreaMare: String = 'Suprafața termopanului a depasit %s mp';

Şi se va folosi, de exemplu, în felul următor (variabila SuprafataMP va trebui declarată si calculată în script):

 ErrorMsg := Format(TrsText_SuprafataPreaMare, [FloatToStr(SuprafataMP)]).