Patch level :10.0 90
Files correlati :sc2.exe Ricompilazione Demo : [ ] Commento : 0000853: ultima colonna stampa scadenzario Descrizione il cliente Presscolor/sig.Vito segnala che l'ultima colonna della stampa scadenzario (sc2.exe -1) visualizza delle cifre strane tipo 62 ,00. Allego esempio visto che l'errore viene trascinato sul txt. 0000854: stampa scadenzario Descrizione il cliente prescolor nella persona del simpaticissimo sig. Vito richiede nella stampa dello scadenzario (sc2.exe -1) che a suo dire gli spazi tra le colonne sono troppi, visto che non siamo più in lire ma in euro potremmo ridurli e sfruttare quel che avanza per separare la tipologia di pagamento rimessa diretta e bonifico git-svn-id: svn://10.65.10.50/trunk@16881 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									00f78921b2
								
							
						
					
					
						commit
						ee4d80f519
					
				@ -24,9 +24,10 @@ struct _LinearTotal : public TObject  // Oggetto base per gli elementi di tlg, t
 | 
			
		||||
       _ip, // Importo pagato
 | 
			
		||||
       _rd, // Rimesse dirette
 | 
			
		||||
       _ri, // Ri.ba/Tratte
 | 
			
		||||
       _bo, // Bonifici
 | 
			
		||||
       _al; // Altri 
 | 
			
		||||
  virtual TObject* dup() const { return new _LinearTotal(*this); }
 | 
			
		||||
  _LinearTotal() {_is = 0.0; _ip = 0.0; _rd = 0.0; _ri = 0.0; _al = 0.0; }
 | 
			
		||||
  _LinearTotal() {_is = 0.0; _ip = 0.0; _rd = 0.0; _ri = 0.0; _bo = 0.0; _al = 0.0; }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
enum tipo_st {nessuno=0, tutti=1, clienti=2, fornitori=3, altri=4};
 | 
			
		||||
@ -47,8 +48,8 @@ class TStampaScadenzario : public TPrintapp
 | 
			
		||||
  TString        _last_ban, _desc_ban;                       // Banca correntemente in corso di raggruppamento                
 | 
			
		||||
  TPString      *_descrizione,*_ragsoc,*_des_conto;          // Descrizione (da LF_PARTITE), ragione sociale (da LF_CLIFO)
 | 
			
		||||
                                                             // Descrizione conto (da LF_PCON)
 | 
			
		||||
  TString   _imp_scad,_imp_pag,_rimdir,_riba,_altri,         // Valori calcolati in preprocess_page: rimesse dirette, Ri.ba e altri
 | 
			
		||||
            _cur_gr_s, _cur_co_s, _cur_codcf_s;              // _imp_scad e _imp_pag vengono anch'essi calcolati in preprocess_page.
 | 
			
		||||
  TString _imp_scad,_imp_pag,_rimdir,_riba,_altri,_bonifico, // Valori calcolati in preprocess_page: rimesse dirette, Ri.ba e altri
 | 
			
		||||
          _cur_gr_s, _cur_co_s, _cur_codcf_s;                // _imp_scad e _imp_pag vengono anch'essi calcolati in preprocess_page.
 | 
			
		||||
  TDate     _datai, _dataf, _datas,                          // Data inizio, fine e stampa
 | 
			
		||||
            _cur_data;                                       // Data di scadenza riferita al record corrente
 | 
			
		||||
  long      _cur_codcf;                                      // Cli/Fo riferito al record corrente
 | 
			
		||||
@ -204,7 +205,7 @@ HIDDEN void print_real(TString& dest, const real& num, const char* val)
 | 
			
		||||
{
 | 
			
		||||
  const TCurrency cur(num, val);
 | 
			
		||||
  dest = cur.string(TRUE);
 | 
			
		||||
  dest.right_just(18);
 | 
			
		||||
  dest.right_just(15);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TStampaScadenzario::filter_func(const TRelation *r) 
 | 
			
		||||
@ -297,6 +298,9 @@ void TStampaScadenzario::check_add_key_to_tl(tipo_pe p, int t)
 | 
			
		||||
    case 3:
 | 
			
		||||
      xtotal._ri += _w_imp_res;
 | 
			
		||||
    break;
 | 
			
		||||
    case 9:
 | 
			
		||||
      xtotal._bo += _w_imp_res;
 | 
			
		||||
      break;
 | 
			
		||||
    default:            
 | 
			
		||||
      xtotal._al += _w_imp_res;
 | 
			
		||||
    break;
 | 
			
		||||
@ -638,9 +642,10 @@ bool TStampaScadenzario::preprocess_page(int file, int counter)
 | 
			
		||||
    
 | 
			
		||||
    _annopart.format("%d",annop);
 | 
			
		||||
    _annopart.ltrim(2);
 | 
			
		||||
    _rimdir="";
 | 
			
		||||
    _riba="";
 | 
			
		||||
    _altri="";
 | 
			
		||||
    _rimdir = "";
 | 
			
		||||
    _riba = "";
 | 
			
		||||
    _bonifico = "";
 | 
			
		||||
    _altri = "";
 | 
			
		||||
    _imp_pag = "";
 | 
			
		||||
 | 
			
		||||
    const bool print_in_valuta = _stvaluta && is_true_value(_codval);
 | 
			
		||||
@ -660,25 +665,28 @@ bool TStampaScadenzario::preprocess_page(int file, int counter)
 | 
			
		||||
        case 3:
 | 
			
		||||
          print_real(_riba, _w_imp_res, print_in_valuta ? _codval : EMPTY_STRING);
 | 
			
		||||
          break;
 | 
			
		||||
        default:        // Altri
 | 
			
		||||
        case 9:     // Bonifici
 | 
			
		||||
          print_real(_bonifico, _w_imp_res, print_in_valuta ? _codval : EMPTY_STRING);
 | 
			
		||||
          break;
 | 
			
		||||
        default:    // Altri
 | 
			
		||||
          print_real(_altri, _w_imp_res, print_in_valuta ? _codval : EMPTY_STRING);
 | 
			
		||||
          break;
 | 
			
		||||
      } 
 | 
			
		||||
  }  //if (file == LF_SCADENZE && !_end_printed)...         
 | 
			
		||||
 | 
			
		||||
  if (file==LF_CLIFO)
 | 
			
		||||
  if (file == LF_CLIFO)
 | 
			
		||||
  {      
 | 
			
		||||
    TString80 xxx(current_cursor()->curr(LF_CLIFO).get(CLI_RAGSOC));
 | 
			
		||||
    *_ragsoc = xxx.strip_double_spaces();
 | 
			
		||||
  }
 | 
			
		||||
  if (file ==LF_PCON)
 | 
			
		||||
  if (file == LF_PCON)
 | 
			
		||||
    *_des_conto = current_cursor()->curr(LF_PCON).get(PCN_DESCR);
 | 
			
		||||
 | 
			
		||||
  // Se l'ordinamento principale e' per data scadenza stampa il totale del giorno e del mese
 | 
			
		||||
  if (_ordata && !_end_printed)                   
 | 
			
		||||
    if ((file == LF_SCADENZE && _tipost == tutti) ||
 | 
			
		||||
        (file == LF_PCON && _tipost == altri) ||
 | 
			
		||||
        (file ==LF_CLIFO && (_tipost == clienti || _tipost == fornitori)))
 | 
			
		||||
        (file == LF_CLIFO && (_tipost == clienti || _tipost == fornitori)))
 | 
			
		||||
      {   
 | 
			
		||||
        bool date_changed = false;
 | 
			
		||||
        if (_cur_data.ok())
 | 
			
		||||
@ -1180,8 +1188,8 @@ void TStampaScadenzario::print_header()
 | 
			
		||||
    set_header(soh++, (const char *) rw);                          
 | 
			
		||||
    set_header(soh++,FR("@28gRif.@38gData@47gData@77gCd/Tp@91g%s"),(const char*)s1);
 | 
			
		||||
    set_header(soh++,FR("Codice@9gRagione sociale@28gpartita@38gscadenza@47gRegistr."
 | 
			
		||||
                        "@56gDescrizione@77gPag.@86gRata@91g%s@97gVal."
 | 
			
		||||
                        "@106gImp. in sca.@125gImp. pagati@144gRimesse dir.@163gRi.ba./Tratte@189gAltri@195gBlocc."), (const char*)s2);
 | 
			
		||||
                        "@56gDescrizione@77gPag.@86gRata@91g%s@96gVal."
 | 
			
		||||
                        "@103gImp. in sca.@119gImp. pagati@135gRimesse dir.@151gRi.ba./Tratte@171gBonifici@190gAltri@197gBlc"), (const char*)s2);
 | 
			
		||||
    set_header(soh++,FR("@28gData e Nr doc. @46gProt. IVA"));
 | 
			
		||||
    set_header(soh++,(const char *)rw);
 | 
			
		||||
    break;
 | 
			
		||||
@ -1207,9 +1215,8 @@ void TStampaScadenzario::print_header()
 | 
			
		||||
    set_header(soh++, (const char *) rw);                    
 | 
			
		||||
    set_header(soh++,FR("@33gRif.@43gData@53gData@82gCd/Tp"));
 | 
			
		||||
    set_header(soh++,FR("Gr. Co. So.@16gDescrizione@33gpartita@43gscadenza@53gRegistr."
 | 
			
		||||
                     "@61gDescrizione@82gPag.@89gRata@97gVal."
 | 
			
		||||
                     "@106gImp. in sca.@125gImp. pagati@144gRimesse dir.@163gRi.ba./Tratte@189gAltri@195gBlocc."));
 | 
			
		||||
                     
 | 
			
		||||
                     "@61gDescrizione@82gPag.@89gRata@96gVal."
 | 
			
		||||
                     "@103gImp. in sca.@119gImp. pagati@135gRimesse dir.@151gRi.ba./Tratte@171gBonifici@190gAltri@197gBlc"));                 
 | 
			
		||||
    set_header(soh++,FR("@36gData e Nr doc. @54gProt. IVA"));
 | 
			
		||||
  
 | 
			
		||||
    set_header(soh++,(const char *)rw);
 | 
			
		||||
@ -1238,13 +1245,14 @@ void TStampaScadenzario::set_page_clifo(int nriga)
 | 
			
		||||
  set_row(nriga,"@86g@4n",FLD(LF_SCADENZE,SCAD_NRATA));
 | 
			
		||||
  if (_tipost == fornitori)
 | 
			
		||||
    set_row(nriga,"@91g@5pn",FLD(LF_SCADENZE,SCAD_CODABIPR,"@@@@@"));
 | 
			
		||||
  set_row(nriga,"@97g#t", &_codval);
 | 
			
		||||
  set_row(nriga,"@101g#18t",&_imp_scad); 
 | 
			
		||||
  set_row(nriga,"@120g#18t",&_imp_pag);
 | 
			
		||||
  set_row(nriga,"@139g#18t",&_rimdir);    // rimesse dirette
 | 
			
		||||
  set_row(nriga,"@158g#18t",&_riba);      // Ri.ba. / tratte
 | 
			
		||||
  set_row(nriga,"@177g#18t",&_altri);   // Altri tipi di pagamento
 | 
			
		||||
	set_row(nriga,"@197g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
 | 
			
		||||
  set_row(nriga,"@96g#t", &_codval);
 | 
			
		||||
  set_row(nriga,"@100g#15t",&_imp_scad); 
 | 
			
		||||
  set_row(nriga,"@116g#15t",&_imp_pag);
 | 
			
		||||
  set_row(nriga,"@132g#15t",&_rimdir);    // rimesse dirette
 | 
			
		||||
  set_row(nriga,"@148g#15t",&_riba);      // Ri.ba. / tratte
 | 
			
		||||
  set_row(nriga,"@164g#15t",&_bonifico);  // Bonifico
 | 
			
		||||
  set_row(nriga,"@180g#15t",&_altri);     // Altri tipi di pagamento
 | 
			
		||||
	set_row(nriga,"@198g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
 | 
			
		||||
	nriga++;
 | 
			
		||||
  set_row(nriga,"@31g#t",&_datadoc);
 | 
			
		||||
  set_row(nriga,"@40g#t",&_numdoc);
 | 
			
		||||
@ -1264,13 +1272,14 @@ void TStampaScadenzario::set_page_pcon(int nriga)
 | 
			
		||||
  set_row(nriga,"@61g#a",_descrizione);
 | 
			
		||||
  set_row(nriga,"@82g@4,rs/@1n@89g@4n",FLD(LF_SCADENZE,SCAD_CODPAG),FLD(LF_SCADENZE,SCAD_TIPOPAG),
 | 
			
		||||
          FLD(LF_SCADENZE,SCAD_NRATA));
 | 
			
		||||
  set_row(nriga,"@97g#t", &_codval);
 | 
			
		||||
  set_row(nriga,"@101g#18t",&_imp_scad);
 | 
			
		||||
  set_row(nriga,"@120g#18t",&_imp_pag);
 | 
			
		||||
  set_row(nriga,"@139g#18t",&_rimdir);    // rimesse dirette
 | 
			
		||||
  set_row(nriga,"@158g#18t",&_riba);      // Ri.ba. / tratte
 | 
			
		||||
  set_row(nriga,"@177g#18t",&_altri);     // Altri tipi di pagamento
 | 
			
		||||
	set_row(nriga,"@197g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
 | 
			
		||||
  set_row(nriga,"@96g#t", &_codval);
 | 
			
		||||
  set_row(nriga,"@100g#15t",&_imp_scad);
 | 
			
		||||
  set_row(nriga,"@116g#15t",&_imp_pag);
 | 
			
		||||
  set_row(nriga,"@132g#15t",&_rimdir);    // rimesse dirette
 | 
			
		||||
  set_row(nriga,"@148g#15t",&_riba);      // Ri.ba. / tratte
 | 
			
		||||
  set_row(nriga,"@164g#15t",&_bonifico);  // Bonifico
 | 
			
		||||
  set_row(nriga,"@180g#15t",&_altri);     // Altri tipi di pagamento
 | 
			
		||||
	set_row(nriga,"@198g@1s",FLD(LF_SCADENZE,SCAD_BLOCCATA));
 | 
			
		||||
	nriga++;
 | 
			
		||||
  set_row(nriga,"@36g#t@45g#t@54g#-5t",&_datadoc,&_numdoc,&_protiva);
 | 
			
		||||
}
 | 
			
		||||
@ -1303,7 +1312,7 @@ void TStampaScadenzario::print_rows_riepilogo(int& nriga, bool type, TAssoc_arra
 | 
			
		||||
  
 | 
			
		||||
  t.get_keys(as);
 | 
			
		||||
  as.sort();
 | 
			
		||||
  for (int i=0; i < items; i++)
 | 
			
		||||
  for (int i = 0; i < items; i++)
 | 
			
		||||
  {
 | 
			
		||||
    const TString& k = as.row(i);     
 | 
			
		||||
    real& v = (real&)t[k];
 | 
			
		||||
@ -1371,7 +1380,7 @@ void TStampaScadenzario::print_riepilogo(int &nriga, bool type)
 | 
			
		||||
  const int items = totali.items();
 | 
			
		||||
 | 
			
		||||
  TString val, value;
 | 
			
		||||
  for (int i=0; i < items; i++)
 | 
			
		||||
  for (int i = 0; i < items; i++)
 | 
			
		||||
  {
 | 
			
		||||
    val = as.row(i);        
 | 
			
		||||
    const bool stampa_in_valuta = _stvaluta && is_true_value(val);
 | 
			
		||||
@ -1420,14 +1429,14 @@ void TStampaScadenzario::print_rows_totali(int &nriga, tipo_pe p)
 | 
			
		||||
  as.sort();
 | 
			
		||||
 | 
			
		||||
  TString k, value;
 | 
			
		||||
  for (int i=0; i < items; i++)
 | 
			
		||||
  for (int i = 0; i < items; i++)
 | 
			
		||||
  {
 | 
			
		||||
    k = as.row(i); // Chiave di ordinamento(valuta)
 | 
			
		||||
    const bool stampa_in_valuta = _stvaluta && is_true_value(k);
 | 
			
		||||
    _LinearTotal& v = (_LinearTotal&)xassoc[k];
 | 
			
		||||
 | 
			
		||||
    if (is_true_value(k))
 | 
			
		||||
      set_row(nriga,"@97g%3s",(const char*)k);
 | 
			
		||||
      set_row(nriga,"@96g%3s",(const char*)k);
 | 
			
		||||
 | 
			
		||||
    if (!stampa_in_valuta)
 | 
			
		||||
      k.cut(0);
 | 
			
		||||
@ -1435,27 +1444,32 @@ void TStampaScadenzario::print_rows_totali(int &nriga, tipo_pe p)
 | 
			
		||||
    print_real(value, v._is, k);
 | 
			
		||||
 | 
			
		||||
    if (v._is != ZERO)
 | 
			
		||||
      set_row(nriga,"@101g%18s",(const char*) value);
 | 
			
		||||
      set_row(nriga,"@100g%15s",(const char*) value);
 | 
			
		||||
 | 
			
		||||
    print_real(value, v._ip, k);
 | 
			
		||||
 | 
			
		||||
    if (v._ip != ZERO)
 | 
			
		||||
      set_row(nriga,"@120g%18s",(const char*) value);
 | 
			
		||||
      set_row(nriga,"@116g%15s",(const char*) value);
 | 
			
		||||
 | 
			
		||||
    print_real(value, v._rd, k);
 | 
			
		||||
 | 
			
		||||
    if (v._rd != ZERO)
 | 
			
		||||
      set_row(nriga,"@139g%18s",(const char*) value);
 | 
			
		||||
      set_row(nriga,"@132g%15s",(const char*) value);
 | 
			
		||||
 | 
			
		||||
    print_real(value, v._ri, k);
 | 
			
		||||
 | 
			
		||||
    if (v._ri != ZERO)
 | 
			
		||||
      set_row(nriga,"@158g%18s",(const char*) value);
 | 
			
		||||
      set_row(nriga,"@148g%15s",(const char*) value);
 | 
			
		||||
 | 
			
		||||
    print_real(value, v._bo, k);
 | 
			
		||||
 | 
			
		||||
    if (v._bo != ZERO)
 | 
			
		||||
      set_row(nriga,"@164g%15s",(const char*) value);
 | 
			
		||||
 | 
			
		||||
    print_real(value, v._al, k);
 | 
			
		||||
 | 
			
		||||
    if (v._al != ZERO)
 | 
			
		||||
      set_row(nriga,"@177g%18s",(const char*) value);
 | 
			
		||||
      set_row(nriga,"@180g%15s",(const char*) value);
 | 
			
		||||
 | 
			
		||||
    set_row(++nriga,"");                           
 | 
			
		||||
  }  
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user