diff --git a/ca/ca3300.cpp b/ca/ca3300.cpp index d9541abda..94120d16a 100755 --- a/ca/ca3300.cpp +++ b/ca/ca3300.cpp @@ -38,8 +38,10 @@ const TString& TPrint_bilancio_ca_mask::get_report_class() const { TString& lib = get_tmp_string(); lib = "ca3300"; - const char stp = get(F_TIPOSTAMPA)[0]; // Raffronto o No? + const char bil = get(F_BILANCIO)[0]; // Verifica o sezioni Contrapposte + const char stp = get(F_TIPOSTAMPA)[0]; // Raffronto o No? + if (bil == 'V') lib << (stp == 'R' ? 'a' : 'b'); // Verifica else @@ -52,7 +54,7 @@ bool TPrint_bilancio_ca_mask::test_compatible_report() const TString& cls = get_report_class(); const TString& name = get(F_REPORT); bool ok = name.not_empty(); - if (ok) + if (ok && name != cls) { TReport rep; ok = rep.load(name); @@ -501,6 +503,7 @@ class TRecordset_sezioni_contrapposte : public TRecordset word _tipimov; bool _movimentati, _nonnulli; TString _daconto, _aconto; + TString4 _tipostampa; TArray _attivita, _passivita, _costi, _ricavi; // Elenco di saldi contrapposti TRecnotype _pos; @@ -562,6 +565,17 @@ void TRecordset_sezioni_contrapposte::set_filter(char piano, const char* costo, _a_data = al; _tipimov = tipimov; + + //serve per settare il tipostampa sul report!!! + switch (tipimov) + { + case 1: _tipostampa = "C"; break; + case 2: + case 4: + case 6: _tipostampa = "P"; break; + default: _tipostampa = "R"; break; + } + _movimentati = movimentati; _nonnulli = nonnulli; @@ -811,7 +825,17 @@ const TVariant& TRecordset_sezioni_contrapposte::get_fld(const TArray& a, int r, } else if (fld == "SEZIONEP" || fld == "SEZIONEV") { - get_section(sc._preventivo, var); + get_section(sc._preventivo, var); + } else + if (fld == "LIVELLO") + { + const int len = sc._conto.len(); + if (tipo_piano() == 'C') + var = len <= 3 ? 1 : (len <= 6 ? 2 : 3); + else + { + var = 1; // facile esercizio per gli studenti :-) + } } } else @@ -844,6 +868,13 @@ const TVariant& TRecordset_sezioni_contrapposte::get(const char* field) const return get_tmp_var() = _da_data; if (fld == "#DATA_FINALE") return get_tmp_var() = _a_data; + if (fld == "#TIPOPIANO") + { + TString4 tp; tp << tipo_piano(); + return get_tmp_var() = tp; + } + if (fld == "#TIPOSTAMPA") + return get_tmp_var() = _tipostampa; } else { @@ -913,7 +944,7 @@ void TReport_bilancio_sezioni_contrapposte::set_filter(const TMask& m, int row) switch (m.get(F_TIPOSTAMPA)[0]) { case 'C': tipimov = _saldanal_consuntivo; break; // Consuntivo - case 'P': tipimov = _saldanal_preventivi; break; // Preventivo e variazione preventivo + case 'P': tipimov = _saldanal_preventivi; break; // Preventivo e variazione preventivo default : tipimov = _saldanal_qualsiasi; break; // Tutti per raffronto } @@ -984,6 +1015,7 @@ void TPrint_bilancio_ca::bilancio_a_sezioni_contrapposte(TMask& mask) TReport_bilancio_sezioni_contrapposte rep(mask.get(F_REPORT)); const int rows = mask.sfield(F_RIGHE).items(); + TReport_book book; for (int i = 0; i < rows; i++) { @@ -998,6 +1030,7 @@ void TPrint_bilancio_ca::bilancio_di_verifica(TMask& mask) TReport_bilancio_verifica rep(mask.get(F_REPORT)); const int rows = mask.sfield(F_RIGHE).items(); + TReport_book book; for (int i = 0; i < rows; i++) { diff --git a/ca/ca3300a.rep b/ca/ca3300a.rep index 8b41632da..6e96a7b56 100755 --- a/ca/ca3300a.rep +++ b/ca/ca3300a.rep @@ -1,5 +1,5 @@ - + Bilancio normale di verifica (raffronto)
diff --git a/ca/ca3300c.rep b/ca/ca3300c.rep index 2755dd232..6fc331214 100755 --- a/ca/ca3300c.rep +++ b/ca/ca3300c.rep @@ -1,122 +1,230 @@ - + Bilancio a sezioni contrapposte (raffronto)
- - - #SYSTEM.RAGSOC - - - - #SYSTEM.DATE - - - #REPORT.PAGE - - - MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ - - - #DATA_INIZIALE - - - - #DATA_FINALE - - - - #COSTO - - - MESSAGE ISAMREAD,CDC,CODCOSTO=#COSTO,DESCRIZ - - - - #COMMESSA - - - MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ - - - - #FASE - - - MESSAGE ISAMREAD,FASI,CODCMSFAS=#CMSCDC!CODFASE=#FASE,DESCRIZ - - + + + + + + + + + +
- - + + + + + + #TIPOSTAMPA + +
  • +
  • +
  • + + + + + #SYSTEM.RAGSOC + + + + + + + #SYSTEM.DATE + + + + MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ + + + + #DATA_INIZIALE + + + + + + + #DATA_FINALE + + + + + + + #COSTO + + + + MESSAGE ISAMREAD,CDC,CODCOSTO=#COSTO,DESCRIZ + + + + + + + #COMMESSA + + + + MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ + + + + + + + #FASE + + + + MESSAGE ISAMREAD,FASI,CODCMSFAS=#CMSCDC!CODFASE=#FASE,DESCRIZ + +
  • SEZIONE - + IF(SEZIONE=="AP","ATTIVITA'","COSTI") IF(SEZIONE=="AP","PASSIVITA'","RICAVI") - +
    - - LEFT:CONTO - CA_FORMAT_CONTO + + + - + + 1 + LEFT:CONTO + CA_FORMAT_CONTO + + + + 1 LEFT:DESCR - + + 1 LEFT:SALDOP - + + 1 LEFT:SEZIONEP - - RIGHT:CONTO - CA_FORMAT_CONTO - - - RIGHT:DESCR - - - RIGHT:SALDO - - - RIGHT:SEZIONE - - + + 1 LEFT:SALDOC - + + 1 LEFT:SEZIONEC - - RIGHT:SALDOC + - - RIGHT:SEZIONEC + + 2 + RIGHT:CONTO + CA_FORMAT_CONTO - + + + 2 + RIGHT:DESCR + + + 1 LEFT:SALDO - + + 2 + RIGHT:SALDOP + + + 1 LEFT:SEZIONE - + + 2 + RIGHT:SEZIONEP + + + 2 + RIGHT:SALDOC + + + 2 + RIGHT:SEZIONEC + + + 2 RIGHT:SALDO - + + 2 RIGHT:SEZIONE
    -
    +
    + + + + + #REPORT.PAGE + +
    \ No newline at end of file diff --git a/ca/ca3300d.rep b/ca/ca3300d.rep index 3d6dbe917..bb5da9a5d 100755 --- a/ca/ca3300d.rep +++ b/ca/ca3300d.rep @@ -1,98 +1,184 @@ - Bilancio a sezioni contrapposte + Bilancio a sezioni contrapposte (cons - prev)
    - - - #SYSTEM.RAGSOC - - - - #SYSTEM.DATE - - - #REPORT.PAGE - - - #DATA_INIZIALE - - - - #DATA_FINALE - - - MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ - - - - #COSTO - - - MESSAGE ISAMREAD,CDC,CODCOSTO=#COSTO,DESCRIZ - - - - #COMMESSA - - - MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ - - - - #FASE - - - MESSAGE ISAMREAD,FASI,CODCMSFAS=#CMSCDC!CODFASE=#FASE,DESCRIZ - - + + + + + + + +
    - - + + + + + + + #TIPOSTAMPA + +
  • +
  • +
  • + + + + + #SYSTEM.RAGSOC + + + + + #SYSTEM.DATE + + + MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ + + + + #DATA_INIZIALE + + + + + #DATA_FINALE + + + + + #COSTO + + + + MESSAGE ISAMREAD,CDC,CODCOSTO=#COSTO,DESCRIZ + + + + + #COMMESSA + + + + MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ + + + + + #FASE + + + + MESSAGE ISAMREAD,FASI,CODCMSFAS=#CMSCDC!CODFASE=#FASE,DESCRIZ + +
  • SEZIONE - - + + IF(SEZIONE=="AP","ATTIVITA'","COSTI") - + IF(SEZIONE=="AP","PASSIVITA'","RICAVI") - +
    - - LEFT:CONTO - CA_FORMAT_CONTO + + + - + + 1 + LEFT:CONTO + CA_FORMAT_CONTO + + + 1 LEFT:DESCR - + + 1 LEFT:SALDO - + + 1 LEFT:SEZIONE - - RIGHT:CONTO - CA_FORMAT_CONTO + - + + 2 + RIGHT:CONTO + CA_FORMAT_CONTO + + + 2 RIGHT:DESCR - + + 2 RIGHT:SALDO - + + 2 RIGHT:SEZIONE
    -
    +
    + + + + + #REPORT.PAGE + +
    \ No newline at end of file