Patch level : 10.0 patch 5??
Files correlati : lv0 Ricompilazione Demo : [ ] Commento : Inserendo una nuova riga mi propone nella dotazione iniziale e in quella odierna le quantità della riga precedente Coretto il controllo per evitare di reinserire un articolo già presente in contratto git-svn-id: svn://10.65.10.50/trunk@19927 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
2e6051c20c
commit
dbe0404c0d
@ -108,27 +108,31 @@ bool TContratti_msk::on_art_select(TField_event e)
|
||||
|
||||
//se esiste il record su LF_CLIFOGIAC, recupero l'unità di misura dalla riga dello sheet selezionata
|
||||
//e setto i campi delle dotazioni e dei consegnati ai valori corretti riportati alla giusta unità di misura
|
||||
real dotin = ZERO;
|
||||
real dotod = ZERO;
|
||||
real dottmp = ZERO;
|
||||
real consyear = ZERO;
|
||||
real consmonth = ZERO;
|
||||
|
||||
if (!reclav.empty())
|
||||
{
|
||||
if (rowmask.get(S_DOTIN).blank())
|
||||
{
|
||||
//calcolo dotazione iniziale, scritta sia sulla maschera che sullo sheet
|
||||
const real dotin = reclav.get_real(CLIFOGIAC_DOTIN);
|
||||
rowmask.set(S_DOTIN, dotin);
|
||||
//calcolo dotazione odierna, scritta sia sulla maschera che sullo sheet
|
||||
const real dotod = reclav.get_real(CLIFOGIAC_DOTOD);
|
||||
rowmask.set(S_DOTOD, dotod);
|
||||
//calcolo dotazione temporanea, scritta sia sulla maschera che sullo sheet
|
||||
const real dottmp = reclav.get_real(CLIFOGIAC_DOTTM);
|
||||
rowmask.set(S_DOTTMP, dottmp);
|
||||
}
|
||||
//calcolo dotazione iniziale, scritta sia sulla maschera che sullo sheet
|
||||
dotin = reclav.get_real(CLIFOGIAC_DOTIN);
|
||||
//calcolo dotazione odierna, scritta sia sulla maschera che sullo sheet
|
||||
dotod = reclav.get_real(CLIFOGIAC_DOTOD);
|
||||
//calcolo dotazione temporanea, scritta sia sulla maschera che sullo sheet
|
||||
dottmp = reclav.get_real(CLIFOGIAC_DOTTM);
|
||||
//calcolo consegnato anno, scritto sia sulla maschera che sullo sheet
|
||||
const real consyear = reclav.get_real("CONSANNO");
|
||||
rowmask.set(S_CONSANNO, consyear);
|
||||
consyear = reclav.get_real("CONSANNO");
|
||||
//calcolo consegnato mese, scritto sia sulla maschera che sullo sheet
|
||||
const real consmonth = reclav.get_real("CONSMESE");
|
||||
rowmask.set(S_CONSMESE, consmonth);
|
||||
}
|
||||
consmonth = reclav.get_real("CONSMESE");
|
||||
}
|
||||
|
||||
rowmask.set(S_DOTIN, dotin);
|
||||
rowmask.set(S_DOTOD, dotod);
|
||||
rowmask.set(S_DOTTMP, dottmp);
|
||||
rowmask.set(S_CONSANNO, consyear);
|
||||
rowmask.set(S_CONSMESE, consmonth);
|
||||
|
||||
//instanzio una cache sull'anagrafica di magazzino
|
||||
//per leggere il valore di PPCONF corretto e sempre aggiornato
|
||||
@ -514,17 +518,19 @@ bool TContratti_msk::on_field_event(TOperable_field& o,TField_event e,long jolly
|
||||
if(r == rigasel)
|
||||
continue;
|
||||
|
||||
if(riga->get(0) == codart)
|
||||
const TString80 tmp = riga->get(0);
|
||||
if(tmp == art)
|
||||
{
|
||||
TString msg;
|
||||
msg << "L'articolo " << codart << " è già presente a contratto e non è possibile reinserirlo.";
|
||||
warning_box(msg);
|
||||
|
||||
|
||||
m.set(S_CODART, _artrig);
|
||||
TToken_string& row = ss.row(rigasel);
|
||||
row.add(_artrig, 0);
|
||||
ss.force_update(rigasel);
|
||||
break;
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@ -587,21 +593,19 @@ bool TContratti_msk::on_field_event(TOperable_field& o,TField_event e,long jolly
|
||||
//e se si desidera veramente modificarlo, allora permetto la modifica
|
||||
//e forzo l'updatre della riga, altrimenti riscrivo l'articolo che c'era prima
|
||||
//e lascio tutto invariato
|
||||
if (_artrig.full() && codart != _artrig)
|
||||
if (codart != _artrig)
|
||||
{
|
||||
if (noyes_box("Si desidera veramente modificare l'articolo %s",(const char*) _artrig))
|
||||
_artrig = codart;
|
||||
|
||||
if (_artrig.empty() || noyes_box("Si desidera veramente modificare l'articolo %s",(const char*) _artrig))
|
||||
_artrig = codart;
|
||||
else
|
||||
{
|
||||
m.set(S_CODART, _artrig);
|
||||
TToken_string& row = ss.row(ss.selected());
|
||||
row.add(_artrig, 0);
|
||||
ss.force_update(ss.selected());
|
||||
}
|
||||
|
||||
TToken_string& row = ss.row(ss.selected());
|
||||
row.add(_artrig, 0);
|
||||
ss.force_update(ss.selected());
|
||||
}
|
||||
//se all'articolo è associata un'unità di misura, la propongo
|
||||
//in automatico e richiamo il metodo ON_ART_SELECT(); altrimenti lo richiamo
|
||||
//in automatico e richiamo il metodo (); altrimenti lo richiamo
|
||||
//solo se è arrivato un fe_init al campo
|
||||
on_art_select(e);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user