Patch level : 10.0 patch 442

Files correlati     : lv3
Ricompilazione Demo : [ ]
Commento            :
Adesso da il warning "ATTENZIONE: stai ritirando un quantitativo maggiore della dotazione!" solo se la dotazione iniziale è maggiore di zero


git-svn-id: svn://10.65.10.50/trunk@19305 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2009-09-18 09:25:21 +00:00
parent 4357a81e34
commit 2e27495c72

View File

@ -702,16 +702,39 @@ bool TGestione_bolle_msk::lv_ritirato_handler(TMask_field& f, KEY k)
{
if (f.to_check(k))
{
//maschera di riga
TMask& msk = f.mask();
real ritirato = f.get();
real dotod = msk.get_real(FR_JOLLY1);
if (ritirato > dotod && f.dirty())
warning_box(TR("ATTENZIONE: stai ritirando un quantitativo maggiore della dotazione!"));
//maschera di documento
TSheet_field* sheet = msk.get_sheet();
TDocumento_mask& dmask = (TDocumento_mask&)sheet->mask();
const long codcf = dmask.get_long(F_CODCF);
const int indsped = dmask.get_int(F_CODINDSP);
TDate datadoc = dmask.get_date(F_DATADOC);
if (!datadoc.ok())
datadoc = TODAY;
//recupero i valori della dotazione iniziale dal magazzino del cliente
TLocalisamfile magcli(LF_CLIFOGIAC);
magcli.put(CLIFOGIAC_ANNOES, datadoc.year());
magcli.put(CLIFOGIAC_TIPOCF, 'C');
magcli.put(CLIFOGIAC_CODCF, codcf);
magcli.put(CLIFOGIAC_INDSPED, indsped);
magcli.put(CLIFOGIAC_CODART, msk.get(FR_CODART));
magcli.put(CLIFOGIAC_NRIGA, 1);
//leggo il record corrispondente
magcli.read();
long dotin = magcli.get_long(CLIFOGIAC_DOTIN);
real ritirato = f.get();
real dotod = msk.get_real(FR_JOLLY1);
if (ritirato > dotod && f.dirty() && dotin > 0)
warning_box(TR("ATTENZIONE: stai ritirando un quantitativo maggiore della dotazione!"));
TDocumento& doc = dmask.doc();
TRiga_documento& rdoc = dmask.doc()[sheet->selected()+1];