Patch level : 10.0 patch 326

Files correlati     : lv2.exe
Ricompilazione Demo : [ ]
Commento            :
Aggiunte le chiamate alla classe TCausale_lavanderie

0001346: Fatturazione per valore convenzionale articolo
Descrizione  la formula da confrontare alla q.tàmese * prezzo è:
(dotazione iniziale od odierna)* valore convenz * % val.conv.
ma il % valore convenzionale è una percentuale e quindi va divisa per 100.
ora non viene divisa

0001347: % convenzionale cliente
Descrizione  A parte quanto stabilito per l'estetica del contratto
con il Sig. bonazzi e l'Ing. Facchini il calcolo
dell'importo non tiene conto che la % valore convenzionale
va divisa per 100


git-svn-id: svn://10.65.10.50/trunk@18971 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2009-06-01 15:01:40 +00:00
parent dbeb865e9f
commit 1621029b88

View File

@ -98,7 +98,7 @@ bool TFatturazione_lavanderie::da_raggruppare(const TRiga_documento & rin)
// Test GUY
const TString8 causale = rin.get(RDOC_CODAGG1);
const TRectype& cau = cache().get("&CAU", causale);
const TCausale_lavand cau = cache().get("&CAU", causale);
if (cau.get_bool("B1"))
{
const TCausale_magazzino& con = cached_causale_magazzino(cau.get("S2"));
@ -177,8 +177,8 @@ void TFatturazione_lavanderie::post_process_output(TLista_documenti& doc_out)
//di partenza, poi costruisco la descrizione in base alla periodicità di fatturazione,
//metto la qta uguale alla dotazione che ho appena letto
//e prendo il prezzo nolo dalla riga contratto
TRiga_documento& nolorow=doc.insert_row(++i, "01");
doc.copy_data(nolorow,rout);
TRiga_documento& nolorow = doc.insert_row(++i, "01");
doc.copy_data(nolorow, rout);
TString80 descr("Nolo");
const int contrper = contr.get_int(LVCONDV_PERFAT);
@ -253,7 +253,7 @@ void TFatturazione_lavanderie::post_process_output(TLista_documenti& doc_out)
//IMPCONV = DOT * PREZZO(dalla riga contratto) * PERCENTUALE DI FORFAIT CLIENTE
const real qta = rout.get_real(RDOC_QTA);
const real consumo = qta * rout.get_real(RDOC_PREZZO);
const real impconv = dot * rcont.get_real(LVRCONDV_VALCONV) * rcont.get_real(LVRCONDV_FORFPERCL);
const real impconv = dot * rcont.get_real(LVRCONDV_VALCONV) * rcont.get_real(LVRCONDV_FORFPERCL) / 100;
//se il consumo è minore del ciclaggio, allora
if (consumo < impconv)
@ -348,7 +348,7 @@ void TFatturazione_lavanderie::post_process_output(TLista_documenti& doc_out)
// fixdotin=true;
rout.put(RDOC_PREZZO, rcont.get_real(LVRCONDV_IMPFISART));
rout.put(RDOC_QTA, artlav.clifomag(annoes)[index].get_real("DOTIN"));
/* for (int h = doc.physical_rows(); h>i; h--)
/* for (int h = doc.physical_rows(); h > i; h--)
{
TRiga_documento& delrow = doc[h];
const TString80 codart=delrow.get(RDOC_CODART);
@ -446,7 +446,7 @@ void TFatturazione_lavanderie::create_row(TDocumento& doc_out, const TRiga_docum
{
//leggo la causale della riga del documento di ingresso
const TString8 causale = rin.get(RDOC_CODAGG1);
const TRectype& cau = cache().get("&CAU", causale);
const TCausale_lavanderie cau(causale);
//recupero i dati cliente dalla testata del documento e instanzio il contratto
const long clifo = rin.doc().get_long(DOC_CODCF);
@ -485,7 +485,7 @@ void TFatturazione_lavanderie::create_row(TDocumento& doc_out, const TRiga_docum
//se è una causale di rotto e se è abilitato nella testata del contratto la fatturazione dei rotti
//e se sto ritirando una quantità di merce diversa da zero, allora:
if (cau.get_bool("B3") && contr.get_int(LVCONDV_ADDCAPROT) && !qta1.is_zero())
if (cau.is_rotto() && contr.get_int(LVCONDV_ADDCAPROT) && !qta1.is_zero())
{
//se passo le condizioni iniziali cerco eventualmente una riga che possa essere raggruppata con quella
//che sto guardando adesso, altrimenti la creo; in ogni caso aggiungo la quantità da ritirare
@ -496,10 +496,10 @@ void TFatturazione_lavanderie::create_row(TDocumento& doc_out, const TRiga_docum
}
//se è una causale di ritirato e se sto ritirando una quantità di merce diversa da zero, allora:
if (cau.get_bool("B0") && !qta1.is_zero())
if (cau.is_ritiro() && !qta1.is_zero())
{
//leggo la casuale di magazzino associata al ritiro e il suo segno sul consegnato mese
const TCausale_magazzino& rit = cached_causale_magazzino(cau.get("S1"));
const TCausale_magazzino& rit = cau.causale_ritiro();
const real sgnrit = rit.sgn(s_consmese);
//se movimenta il consegnato mese, cerco eventualmente una riga che possa essere raggruppata con quella
@ -514,11 +514,11 @@ void TFatturazione_lavanderie::create_row(TDocumento& doc_out, const TRiga_docum
}
//se è una causale di consegnato e se sto consegnando una quantità di merce diversa da zero, allora:
if (cau.get_bool("B1") && !qta.is_zero())
if (cau.is_consegna() && !qta.is_zero())
{
//leggo la casuale di magazzino associata al ritiro e i suoi segni sul consegnato mese,
//sulla dotazione temporanea e sulla dotazione iniziale
const TCausale_magazzino& con = cached_causale_magazzino(cau.get("S2"));
const TCausale_magazzino& con = cau.causale_consegna();
const real sgntmp=con.sgn(s_dottm);
const real sgndotin=con.sgn(s_dotin);
const real sgncons=con.sgn(s_consmese);