119 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			119 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| // cglib03.h
 | |
| 
 | |
| #ifndef __CGLIB03_H
 | |
| #define __CGLIB03_H
 | |
| 
 | |
| #ifndef __TABUTIL_H
 | |
| #include <tabutil.h>
 | |
| #endif
 | |
| 
 | |
| #ifndef __REAL_H
 | |
| #include <real.h>
 | |
| #endif
 | |
| 
 | |
| #ifndef __STRINGS_H        
 | |
| #include <strings.h>       
 | |
| #endif
 | |
| 
 | |
| // Defines per TInteressi_IVA_table. Servono per comporre i nomi dei campi
 | |
| 
 | |
| #define P_1_TRIMESTRE 0
 | |
| #define P_2_TRIMESTRE 1
 | |
| #define P_3_TRIMESTRE 2
 | |
| #define P_4_TRIMESTRE 3
 | |
| #define P_ANNUALE     4
 | |
| #define I_PERIODICO   5
 | |
| #define I_ANNUALE     6
 | |
| #define I_ACCONTOIVA  7
 | |
| #define I_INTEGRATIVO 8
 | |
| #define I_CESSAZIONE  9
 | |
| #define I_ART74       10
 | |
| #define B_LIQ_DIFF    11
 | |
| #define B_LIQ_NORM    12
 | |
| 
 | |
| class TInteressi_IVA_table : public TObject
 | |
| {
 | |
|   TTable *_ver;
 | |
| 
 | |
| public:
 | |
|   int  read(int anno, int mese);
 | |
|   int  status() { return _ver->status();}
 | |
|   real get(int what);
 | |
|   TInteressi_IVA_table();
 | |
|   ~TInteressi_IVA_table();
 | |
| };
 | |
| 
 | |
| struct TDociva : public TObject
 | |
| {
 | |
|   TString _descrdoc;
 | |
|   real _totdociva;
 | |
|   int _ndoc;
 | |
| 
 | |
|   TDociva(const char* _descrdociva, const real& _importo,const int _natdoc):_descrdoc(_descrdociva),_totdociva(_importo),_ndoc(_natdoc)
 | |
|   {}
 | |
| };
 | |
| 
 | |
| class TDociva_array : public TArray
 | |
| {
 | |
| public:
 | |
|   bool add_riga(const char* _descrdociva,const real& _importo,const int _natdoc);
 | |
|   TDociva& riga(int i) { return (TDociva&)(*this)[i]; }
 | |
| };
 | |
| 
 | |
| struct TRigaiva : public TObject
 | |
| {
 | |
|   real     _imponibile, _imposta;    
 | |
|   real     _imponibilep, _impostap;
 | |
|   TString  _codiva;
 | |
|   int      _tipodet, _tipocr, _tipoatt;
 | |
|   bool     _intra;
 | |
|   
 | |
|   TRigaiva (const real& imponibile, const real& imposta, const real& imponibilep, const real& impostap, const char* codiva, const int tipodet, const int tipocr, bool intra, const int tipoatt):
 | |
|   _imponibile(imponibile),_imposta(imposta),_imponibilep(imponibilep),_impostap(impostap),_codiva(codiva),_tipodet(tipodet),_tipocr(tipocr),_intra(intra),_tipoatt(tipoatt)
 | |
|   {} 
 | |
| };
 | |
| 
 | |
| // TRigaiva_array 
 | |
| // Tabella per il calcolo degli imponibili Iva
 | |
| class TRigaiva_array : public TArray
 | |
| {
 | |
| public:
 | |
|   bool add_riga(const real& imponibile, const real& imposta, const real& imponibilep, const real& impostap, const char* codiva, const int tipodet, const int tipocr, bool intra, const int tipoatt = 0); 
 | |
|   TRigaiva& riga(int i) { return (TRigaiva&)(*this)[i]; }
 | |
| };
 | |
| 
 | |
| struct TTipodoc : public TObject
 | |
| {
 | |
|   TString _tipodoc, _descrdoc;
 | |
|   real    _totdoc;
 | |
|   
 | |
|   TTipodoc (const char* tipodoc, const char* descrdoc, const real& totdoc):
 | |
|   _tipodoc(tipodoc),_descrdoc(descrdoc),_totdoc(totdoc) {}
 | |
| };
 | |
| 
 | |
| class TTipodoc_array : public TArray
 | |
| {
 | |
| public:
 | |
|   bool add_riga(const char* tipodoc, const char* descrdoc, const real& totdoc);  
 | |
|   TTipodoc& riga(int i) { return (TTipodoc&)(*this)[i]; }
 | |
| };
 | |
| 
 | |
| struct TRiga : public TObject
 | |
| {
 | |
|   real     _imponibile, _imposta, _implordo;    //totali del periodo
 | |
|   real     _imponibilep, _impostap, _implordop; //totali progressivi
 | |
|   TString  _codiva;
 | |
|   
 | |
|   TRiga (const real& imponibile, const real& imposta, const real& implordo, const real& imponibilep, const real& impostap, const real& implordop, const char* codiva):
 | |
|   _imponibile(imponibile),_imposta(imposta),_implordo(implordo),_codiva(codiva),_imponibilep(imponibilep),_impostap(impostap),_implordop(implordop) {} 
 | |
| };
 | |
| 
 | |
| class TRiga_array : public TArray
 | |
| {
 | |
| public:
 | |
|   bool add_riga(const real& imponibile, const real& imposta, const real& implordo, const real& imponibilep, const real& impostap, const real& implordop, const char* codiva); 
 | |
|   TRiga& riga(int i) { return (TRiga&)(*this)[i]; }
 | |
| };  
 | |
| 
 | |
| #endif
 |