Modifiche fatte a Milano con Paolo

git-svn-id: svn://10.65.10.50/branches/R_10_00@22768 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-12-06 17:17:37 +00:00
parent 0a2d7f4399
commit e3d49e6239

View File

@ -126,7 +126,7 @@ void TGestione_bolle_msk::arrotonda(const TMask& msk, real& quantita)
const long arr = quantita.integer() % ppconf; const long arr = quantita.integer() % ppconf;
//calcolo quanti pezzi in più o in meno gli devo dare e aggiorno la quantità //calcolo quanti pezzi in più o in meno gli devo dare e aggiorno la quantità
if (arr > ppconf * perarr / 100) //arr <= ppconf*perarr/100 -> formula calcolo congualgio di Tassan if (arr > ppconf * perarr / 100) //arr <= ppconf*perarr/100 -> formula calcolo conguaglio di Tassan
quantita += ppconf - arr; quantita += ppconf - arr;
else else
quantita -= arr; quantita -= arr;
@ -138,7 +138,7 @@ void TGestione_bolle_msk::arrotonda(const TMask& msk, real& quantita)
void TGestione_bolle_msk::dettaglio_causale(TSheet_field& ss) void TGestione_bolle_msk::dettaglio_causale(TSheet_field& ss)
{ {
TGestione_bolle_msk& dmsk = (TGestione_bolle_msk&) ss.mask(); TGestione_bolle_msk& dmsk = (TGestione_bolle_msk&) ss.mask();
TString4 causale = ss.cell(ss.selected(),ss.cid2index(FR_CODAGG1)); const TString4 causale = ss.cell(ss.selected(),ss.cid2index(FR_CODAGG1));
//instanzio una cache sulle causali //instanzio una cache sulle causali
const TCausale_lavanderie cau(causale); const TCausale_lavanderie cau(causale);
@ -150,9 +150,9 @@ void TGestione_bolle_msk::dettaglio_causale(TSheet_field& ss)
//PROPONI_DATAPRCO: metodo che propone la prima data di prevista consegna //PROPONI_DATAPRCO: metodo che propone la prima data di prevista consegna
TDate TGestione_bolle_msk::proponi_dataprco() const TDate TGestione_bolle_msk::proponi_dataprco() const
{ {
TDate dadata = get(F_DATADOC); TDate dataprco;
TDate dataprco = NULLDATE;
TDate dadata = get(F_DATADOC);
if (dadata.ok()) if (dadata.ok())
{ {
TDate adata = dadata; TDate adata = dadata;
@ -166,7 +166,6 @@ TDate TGestione_bolle_msk::proponi_dataprco() const
if (consegne.move_first()) if (consegne.move_first())
dataprco = consegne.get(LVRCONSPLAN_DTCONS).as_date(); dataprco = consegne.get(LVRCONSPLAN_DTCONS).as_date();
} }
return dataprco; return dataprco;
@ -205,11 +204,14 @@ TString8 TGestione_bolle_msk::proponi_autista() const
TISAM_recordset consegne(query); TISAM_recordset consegne(query);
consegne.set_var("#DADATA", dataprco); consegne.set_var("#DADATA", dataprco);
consegne.set_var("#ADATA", dataprco); consegne.set_var("#ADATA", dataprco);
consegne.move_first();
TString8 codaut = consegne.get(LVRCONSPLAN_CODAUT).as_string().right(5); codaut.trim(); TString8 codaut;
if (consegne.move_first())
if(codaut.empty()) {
codaut = consegne.get(LVRCONSPLAN_CODAUT).as_string().right(5);
codaut.trim();
}
if (codaut.empty())
{ {
TToken_string key; TToken_string key;
key.add('C'); key.add('C');
@ -670,9 +672,9 @@ bool TGestione_bolle_msk::lv_ritirato_handler(TMask_field& f, KEY k)
rdoc.put("DOTOD", dotod); rdoc.put("DOTOD", dotod);
//scrivo la dotazione temporanea solo se esistono le date di dotazione temporanea e questa non è scaduta //scrivo la dotazione temporanea solo se esistono le date di dotazione temporanea e questa non è scaduta
if (rdoc.get_date("DADATATMP").ok() && rdoc.get_date("ADATATMP").ok() && rdoc.get_date("ADATATMP") >= doc.get_date(DOC_DATADOC)) if (rdoc.get_date("DADATATMP").ok() && rdoc.get_date("ADATATMP") >= doc.get_date(DOC_DATADOC))
{ {
real dotmp = giac.giac_att(rdoc, false); const real dotmp = giac.giac_att(rdoc, false);
msk.set(FR_JOLLY2, dotmp); msk.set(FR_JOLLY2, dotmp);
rdoc.put("DOTMP", dotmp); rdoc.put("DOTMP", dotmp);
} }
@ -694,7 +696,7 @@ bool TGestione_bolle_msk::lv_consegnato_handler(TMask_field& f, KEY k)
if (f.to_check(k)) if (f.to_check(k))
{ {
TMask& msk = f.mask(); TMask& msk = f.mask();
real consegnato = f.get(); const real consegnato = f.get();
//gestione campi dotazione odierna e dotazione temporanea //gestione campi dotazione odierna e dotazione temporanea
TSheet_field* sheet = msk.get_sheet(); TSheet_field* sheet = msk.get_sheet();
TDocumento_mask& dmask = (TDocumento_mask&)sheet->mask(); TDocumento_mask& dmask = (TDocumento_mask&)sheet->mask();
@ -708,9 +710,9 @@ bool TGestione_bolle_msk::lv_consegnato_handler(TMask_field& f, KEY k)
rdoc.put("DOTOD", dotod); rdoc.put("DOTOD", dotod);
//scrivo la dotazione temporanea solo se esistono le date di dotazione temporanea e questa non è scaduta //scrivo la dotazione temporanea solo se esistono le date di dotazione temporanea e questa non è scaduta
if (rdoc.get_date("DADATATMP").ok() && rdoc.get_date("ADATATMP").ok() && rdoc.get_date("ADATATMP") >= doc.get_date(DOC_DATADOC)) if (rdoc.get_date("DADATATMP").ok() && rdoc.get_date("ADATATMP") >= doc.get_date(DOC_DATADOC))
{ {
real dotmp = giac.giac_att(rdoc, false); const real dotmp = giac.giac_att(rdoc, false);
msk.set(FR_JOLLY2, dotmp); msk.set(FR_JOLLY2, dotmp);
rdoc.put("DOTMP", dotmp); rdoc.put("DOTMP", dotmp);
} }
@ -916,8 +918,7 @@ bool TGestione_bolle_msk::lv_causale_handler(TMask_field& f, KEY k)
if (f.to_check(k, true)) if (f.to_check(k, true))
{ {
//leggo la causale che ho scritto nella riga corrente dello sheet //leggo la causale che ho scritto nella riga corrente dello sheet
TString4 causale = f.get(); const TString4 causale = f.get();
if (causale.full()) if (causale.full())
{ {
TMask& msk = f.mask(); TMask& msk = f.mask();
@ -1263,10 +1264,12 @@ TGestione_bolle_msk::TGestione_bolle_msk(const char* tipodoc) : TDocumento_mask(
{ {
if (ini_get_bool(CONFIG_DITTA, "lv", "Datafissa")) if (ini_get_bool(CONFIG_DITTA, "lv", "Datafissa"))
field(F_DATADOC).disable(); field(F_DATADOC).disable();
sfield(F_SHEET).set_nav_column(FR_QTA, FR_QTAGG1);
sfield(F_SHEET).set_auto_append(false); TSheet_field& s = sfield(F_SHEET);
sfield(F_SHEET).set_handler( ss_handler ); s.set_nav_column(FR_QTA, FR_QTAGG1);
sfield(F_SHEET).set_notify( ss_notify ); s.set_auto_append(false);
s.set_handler( ss_handler );
s.set_notify( ss_notify );
} }
////////////////////////////////////////// //////////////////////////////////////////
@ -1377,7 +1380,7 @@ void TGestione_bolle_app::date_dotmp( const TMask& m)
const long codcf = mask.get_long(F_CODCF); const long codcf = mask.get_long(F_CODCF);
const int indsped = mask.get_int(F_CODINDSP); const int indsped = mask.get_int(F_CODINDSP);
TDate datadoc = mask.get_date(F_DATADOC); const TDate datadoc = mask.get_date(F_DATADOC);
const TLaundry_contract cont(codcf, indsped, datadoc); const TLaundry_contract cont(codcf, indsped, datadoc);
const int codcont = cont.get_int(LVCONDV_CODCONT); const int codcont = cont.get_int(LVCONDV_CODCONT);
@ -1423,7 +1426,7 @@ void TGestione_bolle_app::date_dotmp( const TMask& m)
to_write = true; to_write = true;
} }
if(dotmp == ZERO) if (dotmp.is_zero())
{ {
rcondv.put(LVRCONDV_INDTTMP, NULLDATE); rcondv.put(LVRCONDV_INDTTMP, NULLDATE);
rcondv.put(LVRCONDV_FIDTTMP, NULLDATE); rcondv.put(LVRCONDV_FIDTTMP, NULLDATE);
@ -1432,7 +1435,6 @@ void TGestione_bolle_app::date_dotmp( const TMask& m)
if (to_write) if (to_write)
rcondv.rewrite(); rcondv.rewrite();
} }
} }
} }
@ -1445,9 +1447,12 @@ int TGestione_bolle_app::write( const TMask& m )
salva_conguaglio((TDocumento_mask&)m); salva_conguaglio((TDocumento_mask&)m);
date_dotmp(m); const int err = TMotore_application::write(m);
return TMotore_application::write(m); if (err == NOERR)
date_dotmp(m); // Aggiorna data dotazione temporanea sul contratto
return err;
} }
//ridefinisco il metodo rewrite delle TMotore_application //ridefinisco il metodo rewrite delle TMotore_application
@ -1457,9 +1462,12 @@ int TGestione_bolle_app::rewrite( const TMask& m )
salva_conguaglio((TDocumento_mask&)m); salva_conguaglio((TDocumento_mask&)m);
const int err = TMotore_application::rewrite(m);
if (err == NOERR)
date_dotmp(m); date_dotmp(m);
return TMotore_application::rewrite(m); return err;
} }
//ridefinisco il metodo read della TMotore_application //ridefinisco il metodo read della TMotore_application
@ -1476,15 +1484,6 @@ int TGestione_bolle_app::read(TMask& m)
_giac.reset(d); _giac.reset(d);
// A che cavolo serve?
FOR_EACH_DOC_ROW_BACK(d, r, row)
{
TRiga_documento& rdoc = (TRiga_documento&)*row;
//_giac.load_row(rdoc, true, true);
//real dotod = _giac.giac_att(rdoc, true);
//real dotmp = _giac.giac_att(rdoc, false);
}
mask.doc2mask(); mask.doc2mask();
mask.reset_autoselect(); mask.reset_autoselect();
} }
@ -1512,10 +1511,8 @@ void TGestione_bolle_app::init_insert_mode(TMask &m)
} }
//ridefinisco il metodo init_query_mode della TMotore_application //ridefinisco il metodo init_query_mode della TMotore_application
void TGestione_bolle_app::init_modify_mode(TMask &m) void TGestione_bolle_app::init_modify_mode(TMask& mask)
{ {
TGestione_bolle_msk& mask = (TGestione_bolle_msk&) m;
//se sto leggendo o generando un buono di ritiro, abilito questo campo //se sto leggendo o generando un buono di ritiro, abilito questo campo
bool enable_dataprco = mask.get(F_CODNUM) == ini_get_string(CONFIG_DITTA, "lv", "NUM_RIT(0)") && bool enable_dataprco = mask.get(F_CODNUM) == ini_get_string(CONFIG_DITTA, "lv", "NUM_RIT(0)") &&
mask.get(F_TIPODOC) == ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_RIT(0)"); mask.get(F_TIPODOC) == ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_RIT(0)");
@ -1524,7 +1521,7 @@ void TGestione_bolle_app::init_modify_mode(TMask &m)
mask.first_focus(F_CODCF, false); mask.first_focus(F_CODCF, false);
return TMotore_application::init_modify_mode(m); return TMotore_application::init_modify_mode(mask);
} }
//metodo che mi restituisce la giac //metodo che mi restituisce la giac