From be5ad121f56aefbfe5adbb2886af5e6ff30e1031 Mon Sep 17 00:00:00 2001 From: luca Date: Wed, 18 May 2011 10:54:09 +0000 Subject: [PATCH] Patch level :10.0 1004 Files correlati : Ricompilazione Demo : [ ] Commento : sistemata stampa previsione ammortamenti cespiti git-svn-id: svn://10.65.10.50/branches/R_10_00@22133 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ce/ce4300.cpp | 22 ++++- ce/ce4300.uml | 10 +- ce/ce4300a.rep | 251 ++++++++++++++++++++++++++----------------------- 3 files changed, 151 insertions(+), 132 deletions(-) diff --git a/ce/ce4300.cpp b/ce/ce4300.cpp index 529fff61e..960f960cf 100755 --- a/ce/ce4300.cpp +++ b/ce/ce4300.cpp @@ -203,9 +203,14 @@ void TStampa_proiez_ammo_rep::set_filter(const TStampa_proiez_ammo_mask& msk) TEsercizi_contabili esc; const TDate& dataini = esc[_anno].inizio(); const TDate& datafine = esc[_anno].fine(); - query.format("USE MOVCE KEY 2 SELECT NUM(ANSI(DTMOV)>=%ld)&&NUM(ANSI(DTMOV)<=%ld)\nFROM IDCESPITE=#CESPITE\nTO IDCESPITE=#CESPITE", - dataini.date2ansi(), datafine.date2ansi()); + query << "USE MOVCE KEY 2"; + query << "\nSELECT BETWEEN(DTMOV,#DADATA,#ADATA)"; + query << "\nFROM IDCESPITE=#CESPITE"; + query << "\nTO IDCESPITE=#CESPITE"; TISAM_recordset movce(query); + movce.set_var("#DADATA", dataini); + movce.set_var("#ADATA", datafine); + //il cespite lo setta di volta in volta nel for sottostante //Ciclo principale per riempire _cat, assoc_array di assoc_array che sara' poi scandito in fase di creazione report //Il metodo add_value e' quello che effettivamente aggiunge i valori a _cat @@ -216,7 +221,7 @@ void TStampa_proiez_ammo_rep::set_filter(const TStampa_proiez_ammo_mask& msk) { pi.addstatus(1); - real costo_ini, costo_fin, alien, famm; + real costo_ini, costo_fin, alien, incremento, famm; //Colonna COSTO const TString idcespite = rel_cespi.curr().get(CESPI_IDCESPITE); @@ -239,11 +244,15 @@ void TStampa_proiez_ammo_rep::set_filter(const TStampa_proiez_ammo_mask& msk) //..selezionato sulla maschera;somma i loro importi in modo da ricavare l'importo complessivo.. //..di tutti movce.set_var("#CESPITE", TVariant(idcespite)); //assegna il vero valore dell'idcespite alla query - for (TRecnotype i = 0; movce.move_to(i); i++) + for (bool ok = movce.move_first(); ok; ok = movce.move_next()) { const real vendita = movce.get(MOVCE_IMPVEN).as_real(); add_value(codcat, MOVCE_IMPVEN, vendita); alien += vendita; + + const real acquisto = movce.get(MOVCE_CSTO).as_real(); + add_value(codcat, "ACQUISIZIONI", acquisto); + incremento += acquisto; } //Colonna FAMM (fondo ammortamento) @@ -326,6 +335,11 @@ bool TStampa_proiez_ammo_rep::get_usr_val(const TString& name, TVariant& var) co var = get_value(codcat, MOVCE_IMPVEN); return true; } + if (name == "#ACQUISIZIONI") //movimenti di vendita + { + var = get_value(codcat, "ACQUISIZIONI"); + return true; + } if (name.starts_with("#AMMO")) //fondi ammortamento { var = get_value(codcat, name.mid(1)); diff --git a/ce/ce4300.uml b/ce/ce4300.uml index b71785e50..a19d54194 100755 --- a/ce/ce4300.uml +++ b/ce/ce4300.uml @@ -2,15 +2,7 @@ TOOLBAR "topbar" 0 0 0 2 -BUTTON DLG_PRINT 10 2 -BEGIN - PROMPT -12 -11 "~Stampa" -END - -BUTTON DLG_QUIT 10 2 -BEGIN - PROMPT -22 -11 "" -END +#include ENDPAGE diff --git a/ce/ce4300a.rep b/ce/ce4300a.rep index a7820ecf7..9511b2f72 100755 --- a/ce/ce4300a.rep +++ b/ce/ce4300a.rep @@ -1,18 +1,18 @@ - + Proiezione ammortamenti cespiti -
+
-
+
MESSAGE RESET,F1 - + - + #SYSTEM.RAGSOC @@ -22,15 +22,12 @@ #REPORT.PAGE
-
+
I0 MESSAGE RESET,F2 - - - - - + + I0 MESSAGE COPY,F2.100 @@ -39,58 +36,114 @@
  • - - - - - - - - + + + + #FINESCPREC + + + + + + + + + + + + + - - #FINESCPREC - - - - #FINESCPREC - - - - + + + + #ANNOES - + + #ANNOES + + + #ANNOES + + + #ANNOES + + #ANNOES+1 - + #ANNOES+2 - + #ANNOES+3 - + #ANNOES+4 - +
  • -
    -
    +
    +
    CODTAB[7,8] S0 - - #101 @ -#102 @ -- + + #COSTO + MESSAGE ADD,F2.101 + + + #AMMO0 + MESSAGE ADD,F2.102 + + + #ALIENAZ + MESSAGE ADD,F2.103 + + + IF((#101-#102)C;0,0,#101-#102) + MESSAGE ADD,F2.104 + + + #ACQUISIZIONI + MESSAGE ADD,F2.105 + + + #AMMO1 + MESSAGE ADD,F2.106 + + + #AMMO2 + MESSAGE ADD,F2.107 + + + #AMMO3 + MESSAGE ADD,F2.108 + + + #AMMO4 + MESSAGE ADD,F2.109 + + + #AMMO5 + MESSAGE ADD,F2.110 + + + #AMMOX + MESSAGE ADD,F2.111 + + + #104 @ \ residuo +#103 @ - \ sottrae alienzioni +#105 @ + \ somma incrementi DUP 0 E; IF - #105 @ + #106 @ \ ammortamento primo anno 100 * SWAP F; @@ -102,123 +155,83 @@ ELSE THEN #THIS ! - - #COSTO - MESSAGE ADD,F2.101 - - - #ALIENAZ - MESSAGE ADD,F2.102 - - - #AMMO0 - MESSAGE ADD,F2.103 - - - IF((#101-#102-#103)C;0,0,#THIS) - MESSAGE ADD,F2.104 - - - #AMMO1 - MESSAGE ADD,F2.105 - - - #AMMO2 - MESSAGE ADD,F2.106 - - - #AMMO3 - MESSAGE ADD,F2.107 - - - #AMMO4 - MESSAGE ADD,F2.108 - - - #AMMO5 - MESSAGE ADD,F2.109 - - - #AMMOX - MESSAGE ADD,F2.110 -
    -
    -
    +
    +
    - - + + + + + + + + + MESSAGE ADD,F1.105 - - - - - - - MESSAGE ADD,F1.105 + + MESSAGE ADD,F1.106 - - MESSAGE ADD,F1.106 + + MESSAGE ADD,F1.107 - - MESSAGE ADD,F1.107 + + MESSAGE ADD,F1.108 - - MESSAGE ADD,F1.108 + + MESSAGE ADD,F1.109 - - MESSAGE ADD,F1.109 - - - MESSAGE ADD,F1.110 + + MESSAGE ADD,F1.110
    -
    +
    - - - + - - + +
  • - + MESSAGE ADD,F1.101 - + MESSAGE ADD,F1.102 - + MESSAGE ADD,F1.103 - + MESSAGE ADD,F1.104 - + MESSAGE ADD,F1.105 - + MESSAGE ADD,F1.106 - + MESSAGE ADD,F1.107 - + MESSAGE ADD,F1.108 - + MESSAGE ADD,F1.109 - + MESSAGE ADD,F1.110 + + MESSAGE ADD,F1.111 +
  • USE %CAC BY I0 CODTAB[7,8]