Patch level : 10.0 patch ???

Files correlati     : lv2
Ricompilazione Demo : [ ]
Commento            :
Correzioni segnalazioni mail di Tassan e Girardi


git-svn-id: svn://10.65.10.50/branches/R_10_00@21939 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2011-04-13 10:32:37 +00:00
parent 0e8af67b13
commit 06e0e98f87

View File

@ -53,7 +53,7 @@ class TFatturazione_lav_app: public TSkeleton_application
protected:
virtual void main_loop();
void genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab, int& numdocgen, real & totimp, real &imposta, real & totdoc, real & spese);
void genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab, int& numdocgen, real& totimp, real& imposta, real& totdoc, real& spese);
bool controlli_preliminari();
bool copy_file(const TFilename& src, const TFilename& dst) const;
bool copy_tree(const char* src_study, const char* dst_study) const;
@ -270,6 +270,8 @@ void TFatturazione_lavanderie::pre_process_input(TLista_documenti& doc_in)
}
}
//aggiunge una riga fittizia al documento con qta a zero per gli articoli per cui è previsto il forfait
//e che non sono stati consegnati
void TFatturazione_lavanderie::aggiorna_fattura(TDocumento& doc, int codcont)
{
const int nrows = doc.physical_rows();
@ -744,7 +746,7 @@ void TFatturazione_lavanderie::post_process(TLista_documenti& doc_out, TLista_do
TArticolo_lavanderie& artlav = cached_article_laundry(codart, 'C', clifo, use_indsp ? indsped : 0);
//estraggo il record corrispondente su LF_CLIFOGIAC
const TRecmag_lavanderie& reclav = artlav.find_rec(annoes);
//se lo trovo e se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale
//se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale
//dalle giacenze articolo per cliente, altrimenti leggo la dotazione odierna
if (tipodot == "I")
dot = reclav.get_real("DOTIN");
@ -894,7 +896,7 @@ void TFatturazione_lavanderie::post_process(TLista_documenti& doc_out, TLista_do
//CLICLAGGIO = DOT * PREZZO(dalla riga contratto) * MINIMO CICLAGGIO
const real qta = rout.get_real(RDOC_QTA);
const real consumo = qta * rout.get_real(RDOC_PREZZO);
const real ciclaggio = dot * rcont.get_real(LVRCONDV_PREZZO) * rcont.get_real(LVRCONDV_MINCIC);
const real ciclaggio = dot * rcont.get_real(LVRCONDV_PREZZO) * rcont.get_real(LVRCONDV_MINCIC);
//se il consumo è minore del ciclaggio, allora
if (consumo < ciclaggio)
{
@ -970,7 +972,7 @@ void TFatturazione_lavanderie::post_process(TLista_documenti& doc_out, TLista_do
TArticolo_lavanderie& art = cached_article_laundry(codart, 'C', clifo, use_indsp ? indsped : 0);
//estraggo il record corrispondente su LF_CLIFOGIAC
const TRecmag_lavanderie& rec = art.find_rec(annoes);
//se lo trovo e se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale
//se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale
//dalle giacenze articolo per cliente, altrimenti leggo la dotazione odierna
if (tipodot == "I")
dot = rec.get_real("DOTIN");
@ -1691,7 +1693,7 @@ TFatturazione_msk::TFatturazione_msk():TAutomask("lv2500a")
/////////////////////////////////////
//GENERA_BOLLE_NOLO: metodo che genera le fatture di solo nolo per quei clienti a cui non è stato consegnato niente
void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab, int& numdocgen, real & totimp, real &imposta, real & totdoc, real & spese)
void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab, int& numdocgen, real& totimp, real& imposta, real& totdoc, real& spese)
{
TString4 codnum = ini_get_string(CONFIG_DITTA, "lv", "NUM_GEN");
TString4 tipodoc = ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_GEN");
@ -1868,8 +1870,11 @@ void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazion
rdoc.put(RDOC_CODART, riga.get(LVRCONDV_CODART));
rdoc.put(RDOC_CODARTMAG, riga.get(LVRCONDV_CODART));
rdoc.put(RDOC_QTA, UNO);
rdoc.put(RDOC_QTAGG1, UNO);
real r = UNO;
if(tipoforf == 3 || tipoforf == 4)
r = ZERO;
rdoc.put(RDOC_QTA, r);
rdoc.put(RDOC_QTAGG1, r);
rdoc.put(RDOC_PREZZO, riga.get_real(LVRCONDV_PREZNOL));
rdoc.put(RDOC_CHECKED, true);
rdoc.put(RDOC_UMQTA, riga.get(LVRCONDV_UM));
@ -2200,18 +2205,17 @@ void TFatturazione_lav_app::main_loop()
tmp << lastcli;
cliela.add(tmp, tmp);
}
else
if (!_solototali)
{
TString str;
TToken_string key;
key.add('C');
key.add(lastcli);
str << "Cli." << lastcli << ' ' << cache().get(LF_CLIFO, key, CLI_RICALT) << " non ha generato la fattura pur avendo bolle";
_log->log(0, str);
numdocscart++;
}
else if (!_solototali && docsout.items() == 0) //il messaggio deve comparire solo se non ho generato fatture
{
TToken_string key;
key.add('C');
key.add(lastcli);
TString str;
str << "Cli." << lastcli << ' ' << cache().get(LF_CLIFO, key, CLI_RICALT) << " non ha generato la fattura pur avendo bolle";
_log->log(0, str);
numdocscart++;
}
docsout.destroy(-1);
if (!_solototali)
docsin.rewrite();
@ -2492,16 +2496,16 @@ void TFatturazione_lav_app::main_loop()
message_box(TR("Elaborazione terminata"));
str = "Clienti Danneggati Articoli danneggiati";
_log->log(0, str);
str.format(" %5d %5d", elab.cli_damn(), elab.art_damn());
str.format(" %5d %5d", elab.cli_damn(), elab.art_damn());
_log->log(0, str);
str = "Numero fatture Imponibile Imposta Totale Spese";
str = "Numero fatture Imponibile Imposta Totale Spese";
_log->log(0, str);
str.format(" %5d", numdocgen);
str << totimp.stringa(17) << imposta.stringa(15) << totdoc.stringa(15) << spese.stringa(13);
str << totimp.stringa(17) << imposta.stringa(16) << totdoc.stringa(15) << spese.stringa(17);
_log->log(0, str);
str = "Numero fatture scartate";
_log->log(0, str);
str.format(" %5d", numdocscart);
str.format(" %5d", numdocscart);
_log->log(0, str);
_log->print_or_preview();
delete _log;