From 367d8f63c760b543b400207df98959111eb867cf Mon Sep 17 00:00:00 2001 From: luca Date: Fri, 2 Sep 2005 17:13:07 +0000 Subject: [PATCH] Patch level :2.2 170 Files correlati :stampa rendiconto Ricompilazione Demo : [ ] Commento : Sistemato filtro legato alle numerazioni da escludere e agli stati validi, adesso parametri del configuratore di CA. git-svn-id: svn://10.65.10.50/trunk@13327 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ca/ca3700.cpp | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/ca/ca3700.cpp b/ca/ca3700.cpp index 1813e4732..bdad228bb 100755 --- a/ca/ca3700.cpp +++ b/ca/ca3700.cpp @@ -660,6 +660,7 @@ void TPrint_rendiconto_ca_recordset::scrive_riga(const TRectype& rmovana, const tmpcurr.put("NUMDOCRIF", newdoc->get(DOC_NUMDOCRIF)); //docrif del documento originante il movana tmpcurr.put("DATADOCRIF", newdoc->get(DOC_DATADOCRIF)); //datadocrif del documento originante il movana + //****DA QUI PER TIPO DOCUMENTO**** const int tipo_documento = newdoc->tipo().tipo(); int tipo_babbo = TTipo_documento::_altro; @@ -718,9 +719,11 @@ F=IMF*/ } tmpcurr.put("DOCORIG", riferimento); } //if(newdoc != NULL) - else - { - selettore = MATURATO; + else //movimenti puri di analitica (no documento di origine!) + { //****ULTIMA MODIFICA**** + selettore = FATTURATO; + selettore |= MATURATO; + selettore |= IMPEGNATO; } //****modificare il metodo per accelerare @@ -894,11 +897,12 @@ void TPrint_rendiconto_ca_recordset::crea_righe_da_rdoc(const TPrint_rendiconto_ //inizialmente il filtro di scansione delle righedoc coincide con quello sulle date TString filtro = filtro_date; - //****DA MODIFICARE DOPO IL CAMBIO DELLA CONFIGURAZIONE - //deve filtrare i soli documenti con codnum NON presente nello sheet dei codnum + //Filtro sulle righe documento (e testate collegate) + //Controlla sul file di configurazione di CA (ditta.ini,[ca]) se esistono numerazioni da escludere.. + //..e se, per alcune numerazioni, deve tener conto dello stato del documento TConfig_anal config; bool update = false; - for (int i = 0;;i++) + for (int i = 0;;i++) //scansione delle righe ND(i)=.. sul paragrafo di configurazione CA { TToken_string num_doc(config.get("ND", NULL, i)); @@ -909,16 +913,16 @@ void TPrint_rendiconto_ca_recordset::crea_righe_da_rdoc(const TPrint_rendiconto_ const bool exclude = num_doc.get_char(1) == 'X'; if (filtro.not_empty()) filtro << "&&"; - if (exclude) + if (exclude) //numerazioni da escludere { filtro << "(CODNUM!=\"" << codnum << "\")"; } - else + else //numerazioni per le quali tener conto dello stato { filtro << "((CODNUM!=\"" << codnum << "\")"; filtro << "||((" << LF_DOC << "->STATO>=\"" << num_doc.get(2) << "\")"; filtro << "&&(" << LF_DOC << "->STATO<=\"" << num_doc.get(3) << "\")))"; - update=true; + update = true; } } @@ -1069,7 +1073,7 @@ void TPrint_rendiconto_ca_recordset::set_filter(const TPrint_rendiconto_ca_mask& } else //conti riclassificati { - for (int i = 0; msk.id2pos(dlg_da+i) < 43; i++) //***43 andrebbe sostituito con una condizione + seria + for (int i = 0; msk.id2pos(dlg_da+i) < 41; i++) //***41 andrebbe sostituito con una condizione + seria { _da_conto_riclas << msk.get(dlg_da+i); _a_conto_riclas << msk.get(dlg_al+i);