Patch level : 10.0 patch 700

Files correlati     : lv3
Ricompilazione Demo : [ ]
Commento            :
Se un pacco viene pistolato due volte e non si desidera annullarlo evito di sommarlo alle quantita'

Aggiunto mesage_box di "Articolo non presente sul buono"


git-svn-id: svn://10.65.10.50/trunk@20304 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2010-04-01 09:13:30 +00:00
parent 2cdd77cb3e
commit 5ea5df0bbf

View File

@ -184,7 +184,6 @@ TQuantita_riga* TRighe_array::quantita(TString& codart, TDate& data, TString& ca
//Classe TEvasione_ter_msk
class TEvasione_ter_msk: public TAutomask
{
//int _ndoc;
int _autoselect;
TString4 _tpev;
TAssoc_array _pacchi;
@ -217,11 +216,6 @@ public:
//ON_KEY: metodo che gestisce i tatsi funzione
bool TEvasione_ter_msk::on_key(KEY key)
{
/*TString str;
str << key;
message_box(str);*/
if (key >= K_F3 && key <= K_F7)
{
FOR_EACH_MASK_FIELD(*this, i, f)
@ -321,19 +315,7 @@ void TEvasione_ter_msk::genera_buono()
const TDate datagen(TODAY);
TDate dadata = databpre;
TDate adata = datagen;
adata.addmonth();
/*//se _ndoc non è inizializzato, lo inizializzo all'ultimo ndoc utilizzato
if(_ndoc == 0)
{
TString query2;
query2 << "USE DOC\n"
<< "FROM PROVV=\"D\" ANNO=" << datagen.year() << " CODNUM=\"" << codnum << "\"\n"
<< "TO PROVV=\"D\" ANNO=" << datagen.year() << " CODNUM=\"" << codnum << "\"";
TISAM_recordset bolle(query2);
bolle.move_last();
_ndoc = bolle.get(DOC_NDOC).as_int();
}*/
adata.addmonth();
//recupero i dati di interesse dal planning
TString query1 = "USE LVRCONSPLAN KEY 3\n";
@ -987,27 +969,32 @@ void TEvasione_ter_msk::evadi_da_terminale()
kdoc.add(get_int(F_TNDOC));
//se il pacco è già stato pistolettato lo tolgo dai pacchi da evadere, altrimenti cerco di sommarlo
//a una riga documento esistente
if (_pacchi.is_key(codpacco) && yesno_box(TR("Si desidera annullare il pacco selezionato?")))
if (_pacchi.is_key(codpacco))
{
TToken_string& tmp = *(TToken_string*)_pacchi.objptr(codpacco);
key.add(tmp.get(3));
_pacchi.remove(codpacco);
if (_ra.is_key(key))
if(yesno_box(TR("Si desidera annullare il pacco selezionato?")))
{
TQuantita_riga& qr = *(TQuantita_riga*)_ra.objptr(key);
qr.add_pacchi(-1);
qr.add_qta_con(-1 * qtapacco);
TToken_string& tmp = *(TToken_string*)_pacchi.objptr(codpacco);
key.add(tmp.get(3));
_pacchi.remove(codpacco);
if (qr.get_evaso())
qr.set_evaso(false);
if (_ra.is_key(key))
{
TQuantita_riga& qr = *(TQuantita_riga*)_ra.objptr(key);
qr.add_pacchi(-1);
qr.add_qta_con(-1 * qtapacco);
set(F_TPACCHI, qr.get_pacchi());
set(F_TQTAPACCO, qtapacco);
set(F_TQTACON, qr.get_qta_con());
set(F_TQTADACON, qr.get_qta_da_con());
set(F_CODART, rp.articolo());
if (qr.get_evaso())
qr.set_evaso(false);
set(F_TPACCHI, qr.get_pacchi());
set(F_TQTAPACCO, qtapacco);
set(F_TQTACON, qr.get_qta_con());
set(F_TQTADACON, qr.get_qta_da_con());
set(F_CODART, rp.articolo());
}
}
else
return;
}
else
{
@ -1147,19 +1134,18 @@ void TEvasione_ter_msk::evadi_da_terminale()
TLaundry_contract cont(codcf, codcont);
const TRectype& rcont = cont.row(rp.articolo());
/* if (!rcont.empty())
{
TString msg;
msg << "L'articolo " << rp.articolo() << " non è a contratto ma presente sul buono";
warning_box(msg);
}
else*/
if (rcont.empty())
{
TString msg;
msg << "L'articolo " << rp.articolo() << " non è previsto per questo cliente";
warning_box(msg);
}
else
{
TString msg;
msg << "L'articolo " << rp.articolo() << " non è previsto sul buono in evasione";
warning_box(msg);
}
}
}
}
@ -1444,8 +1430,6 @@ TEvasione_ter_msk::TEvasione_ter_msk():TAutomask("lv3400a")
const TRectype& tpdoc = cache().get("%NUM", ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0));
set(F_TDESCR, tpdoc.get("S0"));
//_ndoc = 0;
TDate data(TODAY);
TEsercizi_contabili es;
int annoes = es.date2esc(data);