Another commitment..
git-svn-id: svn://10.65.10.50/trunk@3645 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									c6e0068a17
								
							
						
					
					
						commit
						94f5183eee
					
				
							
								
								
									
										2037
									
								
								m770/77stba.cpp
									
									
									
									
									
								
							
							
						
						
									
										2037
									
								
								m770/77stba.cpp
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										578
									
								
								m770/77stba.h
									
									
									
									
									
								
							
							
						
						
									
										578
									
								
								m770/77stba.h
									
									
									
									
									
								
							@ -1,289 +1,289 @@
 | 
			
		||||
#ifndef _77STBA_H
 | 
			
		||||
#define _77STBA_H
 | 
			
		||||
 | 
			
		||||
#include "77stq.h"
 | 
			
		||||
 | 
			
		||||
HIDDEN const int BASE_FORMLEN = 73;
 | 
			
		||||
HIDDEN const int BASE_PAGINE  = 4;
 | 
			
		||||
const int _RIGHE_N = 6;
 | 
			
		||||
const int _RIGHE_R = 2;
 | 
			
		||||
const int _RIGHE_P = 4;
 | 
			
		||||
const int _RIGHE_Q = 4;
 | 
			
		||||
const int _RIGHE_S = 4;
 | 
			
		||||
const int _RIGHE_T = 4;
 | 
			
		||||
 | 
			
		||||
class TBase1 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long        _codditta;        
 | 
			
		||||
    TRelation*  r;  // usate per contare i soci
 | 
			
		||||
    TCursor*    c;
 | 
			
		||||
    bool				_bAllegSoci;
 | 
			
		||||
    long        iContaSoci();
 | 
			
		||||
  protected:                                                                           
 | 
			
		||||
    void stampa_corpo(TPrinter& pr);  
 | 
			
		||||
    void stampa_soci(TPrinter& pr);
 | 
			
		||||
    bool	bAllegSoci() const { return _bAllegSoci; }
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN-2; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  stampa_totali(TPrinter& pr) {}
 | 
			
		||||
    virtual void  aggiorna_totali(const char tipo) {}
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 11; }
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase1(const char* sNomeForm, const char* quadro);
 | 
			
		||||
    virtual ~TBase1();
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TBase2 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long  _codditta;        
 | 
			
		||||
  protected:                                                                           
 | 
			
		||||
    void stampa_corpo(TPrinter& pr);  
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase2(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TBase2() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TBase3 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long  _codditta;        
 | 
			
		||||
    bool	_bAggiuntivoL; // se necessario stampare aggiuntivo L
 | 
			
		||||
  protected:                          
 | 
			
		||||
    void stampa_testata(TPrinter& pr);                        
 | 
			
		||||
    void stampa_totali_L(TPrinter& pr);
 | 
			
		||||
    bool aggiuntivoL() const { return _bAggiuntivoL; }
 | 
			
		||||
    int stampa_L(TPrinter& pr,const int iChiaveL);  
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase3(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TBase3() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
const int _RIGA_TOTALI_L = 65;
 | 
			
		||||
 | 
			
		||||
class TRigaN : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
  TRecnotype _pos;
 | 
			
		||||
  int    		_MeseRif,_AnnoRif; // periodo di riferimento
 | 
			
		||||
  real		 	_ImpRimb,_CompAss; // importi
 | 
			
		||||
  
 | 
			
		||||
public:  
 | 
			
		||||
  virtual int compare(const TSortable& s) const;
 | 
			
		||||
  TRecnotype pos() const { return _pos; }
 | 
			
		||||
 | 
			
		||||
  const char* sMeseRif() const;
 | 
			
		||||
  const char* sAnnoRif() const;
 | 
			
		||||
  const int iMeseRif() const { return _MeseRif; }   
 | 
			
		||||
  const int iAnnoRif() const { return _AnnoRif; }    
 | 
			
		||||
  const char* ImpRimb(const char* pic) const { return _ImpRimb.string(pic); } 
 | 
			
		||||
  const char* CompAss(const char* pic) const { return _CompAss.string(pic); }  
 | 
			
		||||
  TRigaN(const TLocalisamfile& qn);
 | 
			
		||||
  virtual ~TRigaN() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigheNR : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
	  TArray _data;
 | 
			
		||||
	  
 | 
			
		||||
	protected:  
 | 
			
		||||
	  const TRigaN& rigaN(int i) const { return (const TRigaN&)_data[i]; }
 | 
			
		||||
	  
 | 
			
		||||
	public:    
 | 
			
		||||
	  const TRigaN& operator[](int i) const { return rigaN(i); }
 | 
			
		||||
	  
 | 
			
		||||
	  int fill(const long codditta,TLocalisamfile& qnr); 
 | 
			
		||||
	  int items() const { return _data.items(); }
 | 
			
		||||
	  
 | 
			
		||||
	  TRigheNR() { }
 | 
			
		||||
	  virtual ~TRigheNR() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigaQT : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
  int    		_MesePag,_AnnoPag; // periodo di riferimento
 | 
			
		||||
  real		 	_ContVers,_ContRimb,_Interessi; // importi
 | 
			
		||||
  TString		_sCodReg;
 | 
			
		||||
  TRecnotype	_pos;  
 | 
			
		||||
public:  
 | 
			
		||||
  virtual int compare(const TSortable& s) const;
 | 
			
		||||
  TRecnotype pos() const { return _pos; }
 | 
			
		||||
  const char* sMesePag() const;
 | 
			
		||||
  const char* sAnnoPag() const;
 | 
			
		||||
  const int iMesePag() const { return _MesePag; }   
 | 
			
		||||
  const int iAnnoPag() const { return _AnnoPag; }    
 | 
			
		||||
  const char* ContVers(const char* pic) const { return _ContVers.string(pic); } 
 | 
			
		||||
  const char* ContRimb(const char* pic) const { return _ContRimb.string(pic); }   
 | 
			
		||||
  const char* Interessi(const char* pic) const { return _Interessi.string(pic); }    
 | 
			
		||||
  const char* CodReg() const { return (const char*)_sCodReg; }
 | 
			
		||||
  TRigaQT(const TLocalisamfile& qt);
 | 
			
		||||
  virtual ~TRigaQT() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigheQT : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
	  TArray _data;
 | 
			
		||||
	  
 | 
			
		||||
	protected:  
 | 
			
		||||
	  const TRigaQT& rigaQT(int i) const { return (const TRigaQT&)_data[i]; }
 | 
			
		||||
	  
 | 
			
		||||
	public:    
 | 
			
		||||
	  const TRigaQT& operator[](int i) const { return rigaQT(i); }
 | 
			
		||||
	  
 | 
			
		||||
	  int fill(const long codditta,TLocalisamfile& qt); 
 | 
			
		||||
	  int items() const { return _data.items(); }
 | 
			
		||||
	  
 | 
			
		||||
	  TRigheQT() {}
 | 
			
		||||
	  virtual ~TRigheQT() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigaPS : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
	  TDate    	_dDv; // data vers.
 | 
			
		||||
	  real		 	_rImp,_rIntDip,_rIntDat; // importi
 | 
			
		||||
	  TString		_sTipoV,_sCodTrib,_sSerie,_sNumero;
 | 
			
		||||
	  TRecnotype	_pos;
 | 
			
		||||
	public:  
 | 
			
		||||
	  virtual int compare(const TSortable& s) const;
 | 
			
		||||
    TRecnotype pos() const { return _pos; }	  
 | 
			
		||||
    TDate dDataVers() const { return _dDv; }	
 | 
			
		||||
    const char* sDataVers() const { return _dDv.string(); }    
 | 
			
		||||
	  const char* sImposta() const;
 | 
			
		||||
	  const char* sIntDip()  const;
 | 
			
		||||
	  const char* sIntDat()  const;
 | 
			
		||||
	  const char* sImposta(const char* pic) const { return _rImp.string(pic); } 
 | 
			
		||||
	  const char* sIntDip(const char* pic) const { return _rIntDip.string(pic); }   
 | 
			
		||||
	  const char* sIntDat(const char* pic) const { return _rIntDat.string(pic); }  	  
 | 
			
		||||
	  const char* sTipoVers() const { return (const char*)_sTipoV; }
 | 
			
		||||
	  const char* sCodTrib() const { return (const char*)_sCodTrib; }
 | 
			
		||||
	  const char* sSerie()  const { return (const char*)_sSerie; }
 | 
			
		||||
	  const char* sNumero() const { return (const char*)_sNumero; }	  	  	  
 | 
			
		||||
	  TRigaPS(const TLocalisamfile& qt);
 | 
			
		||||
	  virtual ~TRigaPS() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRighePS : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
	  TArray _data;
 | 
			
		||||
	  
 | 
			
		||||
	protected:  
 | 
			
		||||
	  const TRigaPS& rigaPS(int i) const { return (const TRigaPS&)_data[i]; }
 | 
			
		||||
	  
 | 
			
		||||
	public:    
 | 
			
		||||
	  const TRigaPS& operator[](int i) const { return rigaPS(i); }
 | 
			
		||||
	  int fill(const long codditta,TLocalisamfile& ps); 
 | 
			
		||||
    int items() const { return _data.items(); }
 | 
			
		||||
	  TRighePS() {}
 | 
			
		||||
	  virtual ~TRighePS() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TBase4 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long   	_codditta; 
 | 
			
		||||
    TRigheNR	_righeNR;  // array dei record N e R
 | 
			
		||||
    TRigheQT	_righeQT;
 | 
			
		||||
    TRighePS	_righePS;
 | 
			
		||||
    bool		_bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
 | 
			
		||||
  protected:                               
 | 
			
		||||
    void stampa_righe_vuote(TPrinter& pr,const int righe);
 | 
			
		||||
    void fill_riga_QT(TPrint_section& sec,const int num);     
 | 
			
		||||
    void fill_riga_PS(TPrint_section& sec,const int num);
 | 
			
		||||
    void fill_riga_NR(TPrint_section& sec,const int num, const int side);
 | 
			
		||||
    void stampa_testata(TPrinter& pr);
 | 
			
		||||
    void stampa_fine(TPrinter& pr);
 | 
			
		||||
    void stampa_N(TPrinter& pr);   
 | 
			
		||||
    void stampa_P(TPrinter& pr);       
 | 
			
		||||
    void stampa_Q(TPrinter& pr);      
 | 
			
		||||
    void stampa_R(TPrinter& pr);      
 | 
			
		||||
    void stampa_S(TPrinter& pr);                  
 | 
			
		||||
    void stampa_T(TPrinter& pr);          
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase4(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TBase4() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
const int _FIELD_L = 740;
 | 
			
		||||
 | 
			
		||||
class TStampaBase : public TStampaQuadro
 | 
			
		||||
{
 | 
			
		||||
  private:
 | 
			
		||||
    TBase1*     _fBase1;
 | 
			
		||||
    TBase2*     _fBase2;                 
 | 
			
		||||
    TBase3*     _fBase3;
 | 
			
		||||
    TBase4*     _fBase4;    
 | 
			
		||||
    TRelation*  _rel;
 | 
			
		||||
    TCursor*    _cur, *_cur2, *_cur3, *_cur4;
 | 
			
		||||
  
 | 
			
		||||
  protected:    
 | 
			
		||||
    virtual bool user_create();
 | 
			
		||||
    virtual bool user_destroy();
 | 
			
		||||
    virtual bool conta_tipi_per() const { return FALSE; }
 | 
			
		||||
    virtual TDicForm* get_form()  const { return _fBase1; }
 | 
			
		||||
    virtual TCursor* get_cursor() const { return _cur; }    
 | 
			
		||||
    virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
 | 
			
		||||
  
 | 
			
		||||
  public:
 | 
			
		||||
    TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//
 | 
			
		||||
// Quadro L aggiuntivo
 | 
			
		||||
//
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
class TQuadroL : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long  _codditta;        
 | 
			
		||||
  protected:                          
 | 
			
		||||
    void stampa_testata(TPrinter& pr);                        
 | 
			
		||||
    void stampa_totali_L(TPrinter& pr);
 | 
			
		||||
    bool stampa_L(TPrinter& pr,const long lStartRec,const int iRecL);
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TQuadroL(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TQuadroL() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
const int _RIGA_TOTALI_AGG_L = 65;
 | 
			
		||||
const long _START_AGG_L = 17L;
 | 
			
		||||
const int _REC_PRIMA_AGG_L = 12;
 | 
			
		||||
const int _REC_SECONDA_AGG_L = 14;
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroAggL : public TStampaQuadro
 | 
			
		||||
{
 | 
			
		||||
    TQuadroL* _form;
 | 
			
		||||
  protected:   
 | 
			
		||||
    virtual bool  user_create();
 | 
			
		||||
    virtual bool  user_destroy();
 | 
			
		||||
    virtual TDicForm* get_form() const   { return _form; }
 | 
			
		||||
        
 | 
			
		||||
  public:
 | 
			
		||||
    TStampaQuadroAggL(const char* quadro, char liv):TStampaQuadro(quadro, liv) {}
 | 
			
		||||
    virtual ~TStampaQuadroAggL() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef _77STBA_H
 | 
			
		||||
#define _77STBA_H
 | 
			
		||||
 | 
			
		||||
#include "77stq.h"
 | 
			
		||||
 | 
			
		||||
HIDDEN const int BASE_FORMLEN = 73;
 | 
			
		||||
HIDDEN const int BASE_PAGINE  = 4;
 | 
			
		||||
const int _RIGHE_N = 6;
 | 
			
		||||
const int _RIGHE_R = 2;
 | 
			
		||||
const int _RIGHE_P = 4;
 | 
			
		||||
const int _RIGHE_Q = 4;
 | 
			
		||||
const int _RIGHE_S = 4;
 | 
			
		||||
const int _RIGHE_T = 4;
 | 
			
		||||
 | 
			
		||||
class TBase1 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long        _codditta;        
 | 
			
		||||
    TRelation*  r;  // usate per contare i soci
 | 
			
		||||
    TCursor*    c;
 | 
			
		||||
    bool				_bAllegSoci;
 | 
			
		||||
    long        iContaSoci();
 | 
			
		||||
  protected:                                                                           
 | 
			
		||||
    void stampa_corpo(TPrinter& pr);  
 | 
			
		||||
    void stampa_soci(TPrinter& pr);
 | 
			
		||||
    bool	bAllegSoci() const { return _bAllegSoci; }
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN-2; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  stampa_totali(TPrinter& pr) {}
 | 
			
		||||
    virtual void  aggiorna_totali(const char tipo) {}
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 11; }
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase1(const char* sNomeForm, const char* quadro);
 | 
			
		||||
    virtual ~TBase1();
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TBase2 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long  _codditta;        
 | 
			
		||||
  protected:                                                                           
 | 
			
		||||
    void stampa_corpo(TPrinter& pr);  
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase2(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TBase2() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TBase3 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long  _codditta;        
 | 
			
		||||
    bool	_bAggiuntivoL; // se necessario stampare aggiuntivo L
 | 
			
		||||
  protected:                          
 | 
			
		||||
    void stampa_testata(TPrinter& pr);                        
 | 
			
		||||
    void stampa_totali_L(TPrinter& pr);
 | 
			
		||||
    bool aggiuntivoL() const { return _bAggiuntivoL; }
 | 
			
		||||
    int stampa_L(TPrinter& pr,const int iChiaveL);  
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase3(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TBase3() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
const int _RIGA_TOTALI_L = 65;
 | 
			
		||||
 | 
			
		||||
class TRigaN : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
  TRecnotype _pos;
 | 
			
		||||
  int    		_MeseRif,_AnnoRif; // periodo di riferimento
 | 
			
		||||
  real		 	_ImpRimb,_CompAss; // importi
 | 
			
		||||
  
 | 
			
		||||
public:  
 | 
			
		||||
  virtual int compare(const TSortable& s) const;
 | 
			
		||||
  TRecnotype pos() const { return _pos; }
 | 
			
		||||
 | 
			
		||||
  const char* sMeseRif() const;
 | 
			
		||||
  const char* sAnnoRif() const;
 | 
			
		||||
  const int iMeseRif() const { return _MeseRif; }   
 | 
			
		||||
  const int iAnnoRif() const { return _AnnoRif; }    
 | 
			
		||||
  const char* ImpRimb(const char* pic) const { return _ImpRimb.string(pic); } 
 | 
			
		||||
  const char* CompAss(const char* pic) const { return _CompAss.string(pic); }  
 | 
			
		||||
  TRigaN(const TLocalisamfile& qn);
 | 
			
		||||
  virtual ~TRigaN() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigheNR : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
	  TArray _data;
 | 
			
		||||
	  
 | 
			
		||||
	protected:  
 | 
			
		||||
	  const TRigaN& rigaN(int i) const { return (const TRigaN&)_data[i]; }
 | 
			
		||||
	  
 | 
			
		||||
	public:    
 | 
			
		||||
	  const TRigaN& operator[](int i) const { return rigaN(i); }
 | 
			
		||||
	  
 | 
			
		||||
	  int fill(const long codditta,TLocalisamfile& qnr); 
 | 
			
		||||
	  int items() const { return _data.items(); }
 | 
			
		||||
	  
 | 
			
		||||
	  TRigheNR() { }
 | 
			
		||||
	  virtual ~TRigheNR() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigaQT : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
  int    		_MesePag,_AnnoPag; // periodo di riferimento
 | 
			
		||||
  real		 	_ContVers,_ContRimb,_Interessi; // importi
 | 
			
		||||
  TString		_sCodReg;
 | 
			
		||||
  TRecnotype	_pos;  
 | 
			
		||||
public:  
 | 
			
		||||
  virtual int compare(const TSortable& s) const;
 | 
			
		||||
  TRecnotype pos() const { return _pos; }
 | 
			
		||||
  const char* sMesePag() const;
 | 
			
		||||
  const char* sAnnoPag() const;
 | 
			
		||||
  const int iMesePag() const { return _MesePag; }   
 | 
			
		||||
  const int iAnnoPag() const { return _AnnoPag; }    
 | 
			
		||||
  const char* ContVers(const char* pic) const { return _ContVers.string(pic); } 
 | 
			
		||||
  const char* ContRimb(const char* pic) const { return _ContRimb.string(pic); }   
 | 
			
		||||
  const char* Interessi(const char* pic) const { return _Interessi.string(pic); }    
 | 
			
		||||
  const char* CodReg() const { return (const char*)_sCodReg; }
 | 
			
		||||
  TRigaQT(const TLocalisamfile& qt);
 | 
			
		||||
  virtual ~TRigaQT() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigheQT : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
	  TArray _data;
 | 
			
		||||
	  
 | 
			
		||||
	protected:  
 | 
			
		||||
	  const TRigaQT& rigaQT(int i) const { return (const TRigaQT&)_data[i]; }
 | 
			
		||||
	  
 | 
			
		||||
	public:    
 | 
			
		||||
	  const TRigaQT& operator[](int i) const { return rigaQT(i); }
 | 
			
		||||
	  
 | 
			
		||||
	  int fill(const long codditta,TLocalisamfile& qt); 
 | 
			
		||||
	  int items() const { return _data.items(); }
 | 
			
		||||
	  
 | 
			
		||||
	  TRigheQT() {}
 | 
			
		||||
	  virtual ~TRigheQT() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRigaPS : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
	  TDate    	_dDv; // data vers.
 | 
			
		||||
	  real		 	_rImp,_rIntDip,_rIntDat; // importi
 | 
			
		||||
	  TString		_sTipoV,_sCodTrib,_sSerie,_sNumero;
 | 
			
		||||
	  TRecnotype	_pos;
 | 
			
		||||
	public:  
 | 
			
		||||
	  virtual int compare(const TSortable& s) const;
 | 
			
		||||
    TRecnotype pos() const { return _pos; }	  
 | 
			
		||||
    TDate dDataVers() const { return _dDv; }	
 | 
			
		||||
    const char* sDataVers() const { return _dDv.string(); }    
 | 
			
		||||
	  const char* sImposta() const;
 | 
			
		||||
	  const char* sIntDip()  const;
 | 
			
		||||
	  const char* sIntDat()  const;
 | 
			
		||||
	  const char* sImposta(const char* pic) const { return _rImp.string(pic); } 
 | 
			
		||||
	  const char* sIntDip(const char* pic) const { return _rIntDip.string(pic); }   
 | 
			
		||||
	  const char* sIntDat(const char* pic) const { return _rIntDat.string(pic); }  	  
 | 
			
		||||
	  const char* sTipoVers() const { return (const char*)_sTipoV; }
 | 
			
		||||
	  const char* sCodTrib() const { return (const char*)_sCodTrib; }
 | 
			
		||||
	  const char* sSerie()  const { return (const char*)_sSerie; }
 | 
			
		||||
	  const char* sNumero() const { return (const char*)_sNumero; }	  	  	  
 | 
			
		||||
	  TRigaPS(const TLocalisamfile& qt);
 | 
			
		||||
	  virtual ~TRigaPS() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TRighePS : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
	  TArray _data;
 | 
			
		||||
	  
 | 
			
		||||
	protected:  
 | 
			
		||||
	  const TRigaPS& rigaPS(int i) const { return (const TRigaPS&)_data[i]; }
 | 
			
		||||
	  
 | 
			
		||||
	public:    
 | 
			
		||||
	  const TRigaPS& operator[](int i) const { return rigaPS(i); }
 | 
			
		||||
	  int fill(const long codditta,TLocalisamfile& ps); 
 | 
			
		||||
    int items() const { return _data.items(); }
 | 
			
		||||
	  TRighePS() {}
 | 
			
		||||
	  virtual ~TRighePS() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TBase4 : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long   	_codditta; 
 | 
			
		||||
    TRigheNR	_righeNR;  // array dei record N e R
 | 
			
		||||
    TRigheQT	_righeQT;
 | 
			
		||||
    TRighePS	_righePS;
 | 
			
		||||
    bool		_bAggN,_bAggP,_bAggR,_bAggQ,_bAggS,_bAggT;
 | 
			
		||||
  protected:                               
 | 
			
		||||
    void stampa_righe_vuote(TPrinter& pr,const int righe);
 | 
			
		||||
    void fill_riga_QT(TPrint_section& sec,const int num);     
 | 
			
		||||
    void fill_riga_PS(TPrint_section& sec,const int num);
 | 
			
		||||
    void fill_riga_NR(TPrint_section& sec,const int num, const int side);
 | 
			
		||||
    void stampa_testata(TPrinter& pr);
 | 
			
		||||
    void stampa_fine(TPrinter& pr);
 | 
			
		||||
    void stampa_N(TPrinter& pr);   
 | 
			
		||||
    void stampa_P(TPrinter& pr);       
 | 
			
		||||
    void stampa_Q(TPrinter& pr);      
 | 
			
		||||
    void stampa_R(TPrinter& pr);      
 | 
			
		||||
    void stampa_S(TPrinter& pr);                  
 | 
			
		||||
    void stampa_T(TPrinter& pr);          
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TBase4(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TBase4() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
const int _FIELD_L = 740;
 | 
			
		||||
 | 
			
		||||
class TStampaBase : public TStampaQuadro
 | 
			
		||||
{
 | 
			
		||||
  private:
 | 
			
		||||
    TBase1*     _fBase1;
 | 
			
		||||
    TBase2*     _fBase2;                 
 | 
			
		||||
    TBase3*     _fBase3;
 | 
			
		||||
    TBase4*     _fBase4;    
 | 
			
		||||
    TRelation*  _rel;
 | 
			
		||||
    TCursor*    _cur, *_cur2, *_cur3, *_cur4;
 | 
			
		||||
  
 | 
			
		||||
  protected:    
 | 
			
		||||
    virtual bool user_create();
 | 
			
		||||
    virtual bool user_destroy();
 | 
			
		||||
    virtual bool conta_tipi_per() const { return FALSE; }
 | 
			
		||||
    virtual TDicForm* get_form()  const { return _fBase1; }
 | 
			
		||||
    virtual TCursor* get_cursor() const { return _cur; }    
 | 
			
		||||
    virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
 | 
			
		||||
  
 | 
			
		||||
  public:
 | 
			
		||||
    TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//
 | 
			
		||||
// Quadro L aggiuntivo
 | 
			
		||||
//
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
class TQuadroL : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    long  _codditta;        
 | 
			
		||||
  protected:                          
 | 
			
		||||
    void stampa_testata(TPrinter& pr);                        
 | 
			
		||||
    void stampa_totali_L(TPrinter& pr);
 | 
			
		||||
    bool stampa_L(TPrinter& pr,const long lStartRec,const int iRecL);
 | 
			
		||||
    virtual int   dic_form_len() const { return BASE_FORMLEN; }
 | 
			
		||||
    virtual void  next_page(TPrinter& pr) { fill_page(pr, -1); }
 | 
			
		||||
    virtual void  set_body(TPrinter& pr, const char tipo) {}
 | 
			
		||||
    virtual int   prima_riga(PaginaQuadro p) const { return 3;}
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual bool  print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    TQuadroL(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)  {}
 | 
			
		||||
    virtual ~TQuadroL() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
const int _RIGA_TOTALI_AGG_L = 65;
 | 
			
		||||
const long _START_AGG_L = 17L;
 | 
			
		||||
const int _REC_PRIMA_AGG_L = 12;
 | 
			
		||||
const int _REC_SECONDA_AGG_L = 14;
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroAggL : public TStampaQuadro
 | 
			
		||||
{
 | 
			
		||||
    TQuadroL* _form;
 | 
			
		||||
  protected:   
 | 
			
		||||
    virtual bool  user_create();
 | 
			
		||||
    virtual bool  user_destroy();
 | 
			
		||||
    virtual TDicForm* get_form() const   { return _form; }
 | 
			
		||||
        
 | 
			
		||||
  public:
 | 
			
		||||
    TStampaQuadroAggL(const char* quadro, char liv):TStampaQuadro(quadro, liv) {}
 | 
			
		||||
    virtual ~TStampaQuadroAggL() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
@ -87,6 +87,8 @@ bool TDicForm::InitPrint(const long codditta)
 | 
			
		||||
//  pr.set_char_size(fontsize());                     // Set font name and size
 | 
			
		||||
//  pr.set_fontname(fontname());                      // according to current form
 | 
			
		||||
 | 
			
		||||
  _posiziona=pr.printtype()==winprinter;
 | 
			
		||||
//  if (_posiziona && !_GiaPosizionato && pr.printtype() == winprinter)  
 | 
			
		||||
  if (_posiziona && !_GiaPosizionato && pr.printtype() == winprinter) 
 | 
			
		||||
  {
 | 
			
		||||
    posiziona();
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										559
									
								
								m770/77stq.h
									
									
									
									
									
								
							
							
						
						
									
										559
									
								
								m770/77stq.h
									
									
									
									
									
								
							@ -1,277 +1,282 @@
 | 
			
		||||
#ifndef __77STQ_H
 | 
			
		||||
#define __77STQ_H
 | 
			
		||||
 | 
			
		||||
#include <xvt.h>
 | 
			
		||||
#include <applicat.h>
 | 
			
		||||
#include <relation.h>
 | 
			
		||||
#include <config.h>
 | 
			
		||||
#include <mask.h>
 | 
			
		||||
#include <form.h>
 | 
			
		||||
#include <printer.h> 
 | 
			
		||||
#include <progind.h> 
 | 
			
		||||
#include "base.h"
 | 
			
		||||
#include <urldefid.h>
 | 
			
		||||
#include <nditte.h>
 | 
			
		||||
#include <anagr.h>  
 | 
			
		||||
#include "quadroc.h"
 | 
			
		||||
#include "quadrod.h"
 | 
			
		||||
#include "quadrod1.h"
 | 
			
		||||
#include "quadrogd.h"
 | 
			
		||||
#include "quadrif.h"
 | 
			
		||||
#include "77stqd.h"
 | 
			
		||||
#include "77lib.h"  
 | 
			
		||||
 
 | 
			
		||||
// Chincaglieria che serve per posiziona()
 | 
			
		||||
typedef   long       HWND;
 | 
			
		||||
HIDDEN const int MAX_LEN = 300;
 | 
			
		||||
extern "C" {
 | 
			
		||||
  BOOLEAN PrintLineNow( char *pData, word cbBytes, HWND hInst );
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
HIDDEN TString16 __dep16;
 | 
			
		||||
HIDDEN TString80 __dep80;
 | 
			
		||||
 | 
			
		||||
// Vega-Key di Modulaser
 | 
			
		||||
HIDDEN const char*  VK_STARTDOC = "<VK>&MA796&0&1";
 | 
			
		||||
HIDDEN const char*  VK_ENDDOC   = "<VK>!0";
 | 
			
		||||
typedef enum { STARTDOC, STARTDITTA, STARTPAGE, ENDDOC } ModulaserKey;
 | 
			
		||||
 | 
			
		||||
// Campi form
 | 
			
		||||
#define TOT_TOTALE  1
 | 
			
		||||
#define TOT_SNSRIT  2
 | 
			
		||||
#define TOT_IMPON 	3
 | 
			
		||||
#define TOT_IMPOR 	4
 | 
			
		||||
#define TOT_NETTO 	5
 | 
			
		||||
 | 
			
		||||
#define D_TOTALE      16
 | 
			
		||||
#define D_SNSRIT      17
 | 
			
		||||
#define D_IMPONIBILE  18
 | 
			
		||||
#define D_IMPORTO     20
 | 
			
		||||
#define D_NETTO       21
 | 
			
		||||
 | 
			
		||||
#define D1_TOTALE     12
 | 
			
		||||
#define D1_QUOTAPRO   13
 | 
			
		||||
#define D1_SPESEANT   14
 | 
			
		||||
#define D1_IMPONIBILE 15
 | 
			
		||||
#define D1_IMPORTO    17
 | 
			
		||||
#define D1_NETTO      18
 | 
			
		||||
 | 
			
		||||
#define C_TOTALE      14
 | 
			
		||||
#define C_CONTSSN     15
 | 
			
		||||
#define C_SOMME       16
 | 
			
		||||
#define C_IMPONIBILE  17
 | 
			
		||||
#define C_RITENUTE    18
 | 
			
		||||
#define C_NETTO       19
 | 
			
		||||
 | 
			
		||||
#define H_COFI_DIC      13
 | 
			
		||||
#define H_NUM_FOGLIO    14  
 | 
			
		||||
#define QD_STATO_ESTERO 12
 | 
			
		||||
 | 
			
		||||
// Quadro D
 | 
			
		||||
HIDDEN const int QD_FORMLEN_PRIMA = 70; // 72 - 3 (3 e' la posizione della X di posiz.)
 | 
			
		||||
HIDDEN const int QD_FORMLEN = 72;
 | 
			
		||||
HIDDEN const int POS_DITTA = 120;  // Colonna del codice ditta a pie' di modulo
 | 
			
		||||
HIDDEN const int QD_PAGINE        = 4;
 | 
			
		||||
HIDDEN const int QD_RIGHE_PRIMA   = 4;
 | 
			
		||||
HIDDEN const int QD_RIGHE_SECONDA = 7;
 | 
			
		||||
HIDDEN const int QD_RIGHE_TERZA   = 7;
 | 
			
		||||
HIDDEN const int QD_RIGHE_QUARTA  = 7;  
 | 
			
		||||
HIDDEN const int QD1_RIGHE_PRIMA   = 6;
 | 
			
		||||
HIDDEN const int QD1_RIGHE_SECONDA = 9;
 | 
			
		||||
HIDDEN const int QD1_RIGHE_TERZA   = 9;
 | 
			
		||||
HIDDEN const int QD1_RIGHE_QUARTA  = 8;
 | 
			
		||||
 | 
			
		||||
HIDDEN const int HEADER_SECONDA = 8;
 | 
			
		||||
HIDDEN const int HEADER_TERZA = 8;  // Sarebbero 9 col righello...
 | 
			
		||||
HIDDEN const int HEADER_QUARTA = 13; // 15 col righello...
 | 
			
		||||
 | 
			
		||||
HIDDEN const int HEADER_D1_SECONDA = 8;
 | 
			
		||||
HIDDEN const int HEADER_D1_TERZA   = 8;
 | 
			
		||||
HIDDEN const int HEADER_D1_QUARTA  = 14;
 | 
			
		||||
 | 
			
		||||
typedef enum { PRIMA=1, SECONDA, TERZA, QUARTA } PaginaQuadro;
 | 
			
		||||
typedef enum { fisiche, nofisiche } TipoPagina;
 | 
			
		||||
 | 
			
		||||
const char* get_ragsoc_anagr(char tipo, long codanagr);
 | 
			
		||||
 | 
			
		||||
class TDicForm : public TForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    real _f_tot_totale, _f_tot_snsrit, _f_tot_impon, _f_tot_impor, _f_tot_netto;
 | 
			
		||||
    real _nf_tot_totale, _nf_tot_snsrit, _nf_tot_impon, _nf_tot_impor, _nf_tot_netto;
 | 
			
		||||
 | 
			
		||||
    TCursor*    _cur;
 | 
			
		||||
 | 
			
		||||
  protected:                                                                           
 | 
			
		||||
    long      _Items; // numero di record che hanno passato il filtro
 | 
			
		||||
    PaginaQuadro    _PaginaCorrente;
 | 
			
		||||
 | 
			
		||||
    void      set_curr_page(PaginaQuadro pagina) { _PaginaCorrente = pagina; }    
 | 
			
		||||
    virtual int   dic_form_len() const;
 | 
			
		||||
    virtual void  inc_curr_page();
 | 
			
		||||
    virtual void  next_page(TPrinter& pr);
 | 
			
		||||
    bool    _modulaser;     // se stampa per modulaser
 | 
			
		||||
    TipoDitta _tipo_ditta;  // tipo ditta: normale, estinto, dichiarante
 | 
			
		||||
    int     _num_foglio;    // numero foglio
 | 
			
		||||
    TString   _cofi_dic;    // cod.fis. dichiarante
 | 
			
		||||
    bool    _can_print_tot_fis, _can_print_tot_nofis;
 | 
			
		||||
    bool    _finite_fis, _finite_nofis, _LastDitta, _EndPrintDitta;
 | 
			
		||||
    bool    _GiaStampatiFis, _GiaStampatiNoFis, _PaginaPosizionamento;
 | 
			
		||||
    bool    _GiaPosizionato, _GiaMessoStartDoc, _GiaMessoStartPage[QD_PAGINE];   // flag per modulaser
 | 
			
		||||
    int     _CtrNoFisStampati, _CtrFisStampati; // contatori p.f. e p.g. stampate
 | 
			
		||||
    long    _codditta, _codditta_dic;  // cod.ditta e cod.ditta dichiarante
 | 
			
		||||
    int     _RigaCorr;  // contatore riga corrente
 | 
			
		||||
    TString16 _quadro;    // codice quadro in stampa
 | 
			
		||||
    
 | 
			
		||||
    void    stampa_testata(TPrinter& pr);
 | 
			
		||||
    virtual bool ultima_pagina() const { return _PaginaCorrente==QUARTA; }
 | 
			
		||||
    virtual void    stampa_totali(TPrinter& pr);
 | 
			
		||||
//    virtual void    aggiorna_totali(const char tipo);
 | 
			
		||||
    virtual void    set_body(TPrinter& pr, const char tipo);
 | 
			
		||||
    void    StampaPagina(PaginaQuadro PaginaCorrente, const bool StampaTotali, const long Fis, const long NoFis);
 | 
			
		||||
    void    posiziona();                           
 | 
			
		||||
    void    fill_page(TPrinter& pr, const int righe);
 | 
			
		||||
    void    jump_to_line(TPrinter& pr, const int riga);
 | 
			
		||||
    const char* BuildModulaserStartPage();
 | 
			
		||||
    void    put_modulaser(TPrintrow& row, ModulaserKey key, int page=0);     
 | 
			
		||||
    void    ClearFlagModulaser();      
 | 
			
		||||
    bool    PaginaPosizionamento() const;
 | 
			
		||||
    virtual bool InitPrint(const long codditta);
 | 
			
		||||
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual TCursor* cursor() const     { return _cur; }
 | 
			
		||||
    virtual TRelation* relation() const { return _cur->relation(); }
 | 
			
		||||
 | 
			
		||||
    virtual long filtra(const long codditta);
 | 
			
		||||
    
 | 
			
		||||
    TProgind* _prog;    // progind usata in print()
 | 
			
		||||
    
 | 
			
		||||
    long    codditta() const { return _codditta; }
 | 
			
		||||
    void    set_codditta(const long ditta) { _codditta = ditta; }
 | 
			
		||||
    void    set_posiziona(const bool posiz) { _GiaPosizionato = FALSE; }
 | 
			
		||||
    void    can_print_tot_fis(const bool canpr) { _can_print_tot_fis = canpr; }
 | 
			
		||||
    void    can_print_tot_nofis(const bool canpr) { _can_print_tot_nofis = canpr; }
 | 
			
		||||
    void    set_last_ditta(const bool last) { _LastDitta = last; }
 | 
			
		||||
    bool    last_ditta() const { return _LastDitta; }
 | 
			
		||||
    bool    EndJob() const { return _LastDitta && _EndPrintDitta; }
 | 
			
		||||
    bool    ultima_fis();
 | 
			
		||||
    bool    ultima_nofis();
 | 
			
		||||
    TString&  cofi_dic() { return _cofi_dic; }
 | 
			
		||||
    void    set_cofi_dic(const char* cofi);
 | 
			
		||||
    TipoDitta tipo_ditta() const { return _tipo_ditta; }
 | 
			
		||||
    void    set_tipo_ditta(TipoDitta tipo) { _tipo_ditta = tipo; }
 | 
			
		||||
    bool    modulaser() const { return _modulaser; }
 | 
			
		||||
    void    set_modulaser(const bool modul) { _modulaser = modul; }
 | 
			
		||||
    void    set_num_foglio(const int foglio) { _num_foglio = foglio; }
 | 
			
		||||
    int     num_foglio() const { return _num_foglio; }
 | 
			
		||||
    virtual void azzera_totali();
 | 
			
		||||
    PaginaQuadro    curr_page() const { return _PaginaCorrente; }
 | 
			
		||||
    TCursor&    cur();                                  
 | 
			
		||||
    
 | 
			
		||||
    void set_progind(TProgind* prog) { _prog = prog; }
 | 
			
		||||
    TProgind* progind() { return _prog; }
 | 
			
		||||
    bool usa_progind() const { return _prog != NULL; }
 | 
			
		||||
    
 | 
			
		||||
    virtual void set_cursor(TCursor* cur);
 | 
			
		||||
    virtual void close_print();    
 | 
			
		||||
    virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    
 | 
			
		||||
    const TString& quadro() const { return _quadro; }
 | 
			
		||||
 | 
			
		||||
    TDicForm(const char* form, const char* quadro);
 | 
			
		||||
    virtual ~TDicForm() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////  
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//  
 | 
			
		||||
//                                        TStDicArray                                                                                    
 | 
			
		||||
//
 | 
			
		||||
// Array delle ditte da stampare. Contiene una riga per ogni ditta che si vuole stampare
 | 
			
		||||
// Il formato della riga e': 
 | 
			
		||||
//   codditta|estinti|numfis|numnofis|ultimafis|ultimanofis  
 | 
			
		||||
//
 | 
			
		||||
/////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TStDicArray : public TObject
 | 
			
		||||
{
 | 
			
		||||
  private:
 | 
			
		||||
    TString_array _store;
 | 
			
		||||
  
 | 
			
		||||
  public:
 | 
			
		||||
    TToken_string& operator[](int i) const;
 | 
			
		||||
    int curr_index() const { return _store.last(); }
 | 
			
		||||
    void set(const int index, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
 | 
			
		||||
             bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
 | 
			
		||||
    void set_tipo(const int index, const TipoDitta tipo);                               
 | 
			
		||||
    void set_ultima_con_fis(const int index, const bool ultima_fis);
 | 
			
		||||
    void set_ultima_con_nofis(const int index, const bool ultima_nofis);        
 | 
			
		||||
    void set_flag_tipi(const int index, const bool ultima_fis, const bool ultima_nofis);
 | 
			
		||||
    void set_ctr_tipi(const int index, const int num_fis, const int num_nofis);
 | 
			
		||||
    void add(const long codditta, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
 | 
			
		||||
             bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
 | 
			
		||||
    int items() const { return _store.items(); }
 | 
			
		||||
    void destroy() { _store.destroy(); }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//
 | 
			
		||||
//                                     STAMPA QUADRO
 | 
			
		||||
//
 | 
			
		||||
/////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TStampaQuadro : public TApplication
 | 
			
		||||
{
 | 
			
		||||
  TMask*      _m;        // Maschera di stampa     
 | 
			
		||||
 | 
			
		||||
  TConfig*    _cnf;      // Configurazione
 | 
			
		||||
  TString16   _section;  // Paragrafo del config
 | 
			
		||||
  long        _codditta;
 | 
			
		||||
  int         _anno_dic;                     
 | 
			
		||||
 | 
			
		||||
  TString     _quadro;
 | 
			
		||||
  char        _livello;  // "S" studio, "D" singola ditta           
 | 
			
		||||
  TString     _title;
 | 
			
		||||
 | 
			
		||||
  TStDicArray _ditte;
 | 
			
		||||
 | 
			
		||||
protected:   // TApplication
 | 
			
		||||
  virtual bool menu(MENU_TAG);
 | 
			
		||||
  virtual void on_config_change();      
 | 
			
		||||
  
 | 
			
		||||
  virtual bool create(); 
 | 
			
		||||
  virtual bool destroy();
 | 
			
		||||
  
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create() pure;
 | 
			
		||||
  virtual bool user_destroy() pure;
 | 
			
		||||
  
 | 
			
		||||
  virtual TDicForm* get_form() const pure;
 | 
			
		||||
  virtual TCursor* get_cursor() const pure;
 | 
			
		||||
 | 
			
		||||
  virtual const char* mask_name() const;
 | 
			
		||||
  virtual const char* form_name() const;
 | 
			
		||||
 | 
			
		||||
  virtual bool conta_tipi_per() const { return TRUE; }  
 | 
			
		||||
  void fill_estinti(const long CodDic);
 | 
			
		||||
  const TStDicArray& ditte() const { return _ditte; }
 | 
			
		||||
 | 
			
		||||
  virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
 | 
			
		||||
  virtual void print(const bool modulaser);
 | 
			
		||||
 | 
			
		||||
  bool singola_ditta() const { return _livello == 'D'; }
 | 
			
		||||
  const TString& quadro() const { return _quadro; }
 | 
			
		||||
  
 | 
			
		||||
  void set_taitol(const char* t) { _title = t; }
 | 
			
		||||
  
 | 
			
		||||
  TStampaQuadro(const char* quad, char liv);
 | 
			
		||||
 | 
			
		||||
public:  
 | 
			
		||||
  const TString& taitol() const { return _title; }
 | 
			
		||||
 | 
			
		||||
  virtual ~TStampaQuadro() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef __77STQ_H
 | 
			
		||||
#define __77STQ_H
 | 
			
		||||
 | 
			
		||||
#include <xvt.h>
 | 
			
		||||
#include <applicat.h>
 | 
			
		||||
#include <relation.h>
 | 
			
		||||
#include <config.h>
 | 
			
		||||
#include <mask.h>
 | 
			
		||||
#include <form.h>
 | 
			
		||||
#include <printer.h> 
 | 
			
		||||
#include <progind.h> 
 | 
			
		||||
#include "base.h"
 | 
			
		||||
#include <urldefid.h>
 | 
			
		||||
#include <nditte.h>
 | 
			
		||||
#include <anagr.h>  
 | 
			
		||||
#include "quadroc.h"
 | 
			
		||||
#include "quadrod.h"
 | 
			
		||||
#include "quadrod1.h"
 | 
			
		||||
#include "quadrogd.h"
 | 
			
		||||
#include "quadrif.h"
 | 
			
		||||
#include "77stqd.h"
 | 
			
		||||
#include "77lib.h"  
 | 
			
		||||
 | 
			
		||||
// Righe da saltare nelle prime pag. dei moduli successivi al primo (che' son
 | 
			
		||||
// senza le righe del posizionamento...)
 | 
			
		||||
HIDDEN int HEADER_PRIMA_NOPOS = 2;
 | 
			
		||||
 
 | 
			
		||||
// Chincaglieria che serve per posiziona()
 | 
			
		||||
typedef   long       HWND;
 | 
			
		||||
HIDDEN const int MAX_LEN = 300;
 | 
			
		||||
extern "C" {
 | 
			
		||||
  BOOLEAN PrintLineNow( char *pData, word cbBytes, HWND hInst );
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
HIDDEN TString16 __dep16;
 | 
			
		||||
HIDDEN TString80 __dep80;
 | 
			
		||||
 | 
			
		||||
// Vega-Key di Modulaser
 | 
			
		||||
HIDDEN const char*  VK_STARTDOC = "<VK>&MA796&0&1";
 | 
			
		||||
HIDDEN const char*  VK_ENDDOC   = "<VK>!0";
 | 
			
		||||
typedef enum { STARTDOC, STARTDITTA, STARTPAGE, ENDDOC } ModulaserKey;
 | 
			
		||||
 | 
			
		||||
// Campi form
 | 
			
		||||
#define TOT_TOTALE  1
 | 
			
		||||
#define TOT_SNSRIT  2
 | 
			
		||||
#define TOT_IMPON 	3
 | 
			
		||||
#define TOT_IMPOR 	4
 | 
			
		||||
#define TOT_NETTO 	5
 | 
			
		||||
 | 
			
		||||
#define D_TOTALE      16
 | 
			
		||||
#define D_SNSRIT      17
 | 
			
		||||
#define D_IMPONIBILE  18
 | 
			
		||||
#define D_IMPORTO     20
 | 
			
		||||
#define D_NETTO       21
 | 
			
		||||
 | 
			
		||||
#define D1_TOTALE     12
 | 
			
		||||
#define D1_QUOTAPRO   13
 | 
			
		||||
#define D1_SPESEANT   14
 | 
			
		||||
#define D1_IMPONIBILE 15
 | 
			
		||||
#define D1_IMPORTO    17
 | 
			
		||||
#define D1_NETTO      18
 | 
			
		||||
 | 
			
		||||
#define C_TOTALE      14
 | 
			
		||||
#define C_CONTSSN     15
 | 
			
		||||
#define C_SOMME       16
 | 
			
		||||
#define C_IMPONIBILE  17
 | 
			
		||||
#define C_RITENUTE    18
 | 
			
		||||
#define C_NETTO       19
 | 
			
		||||
 | 
			
		||||
#define H_COFI_DIC      13
 | 
			
		||||
#define H_NUM_FOGLIO    14  
 | 
			
		||||
#define QD_STATO_ESTERO 12
 | 
			
		||||
 | 
			
		||||
// Quadro D
 | 
			
		||||
HIDDEN const int QD_FORMLEN_PRIMA = 70; // 72 - 3 (3 e' la posizione della X di posiz.)
 | 
			
		||||
HIDDEN const int QD_FORMLEN = 72;
 | 
			
		||||
HIDDEN const int POS_DITTA = 120;  // Colonna del codice ditta a pie' di modulo
 | 
			
		||||
HIDDEN const int QD_PAGINE        = 4;
 | 
			
		||||
HIDDEN const int QD_RIGHE_PRIMA   = 4;
 | 
			
		||||
HIDDEN const int QD_RIGHE_SECONDA = 7;
 | 
			
		||||
HIDDEN const int QD_RIGHE_TERZA   = 7;
 | 
			
		||||
HIDDEN const int QD_RIGHE_QUARTA  = 7;  
 | 
			
		||||
HIDDEN const int QD1_RIGHE_PRIMA   = 6;
 | 
			
		||||
HIDDEN const int QD1_RIGHE_SECONDA = 9;
 | 
			
		||||
HIDDEN const int QD1_RIGHE_TERZA   = 9;
 | 
			
		||||
HIDDEN const int QD1_RIGHE_QUARTA  = 8;
 | 
			
		||||
 | 
			
		||||
HIDDEN const int HEADER_SECONDA = 8;
 | 
			
		||||
HIDDEN const int HEADER_TERZA = 8;  // Sarebbero 9 col righello...
 | 
			
		||||
HIDDEN const int HEADER_QUARTA = 13; // 15 col righello...
 | 
			
		||||
 | 
			
		||||
HIDDEN const int HEADER_D1_SECONDA = 8;
 | 
			
		||||
HIDDEN const int HEADER_D1_TERZA   = 8;
 | 
			
		||||
HIDDEN const int HEADER_D1_QUARTA  = 14;
 | 
			
		||||
 | 
			
		||||
typedef enum { PRIMA=1, SECONDA, TERZA, QUARTA } PaginaQuadro;
 | 
			
		||||
typedef enum { fisiche, nofisiche } TipoPagina;
 | 
			
		||||
 | 
			
		||||
const char* get_ragsoc_anagr(char tipo, long codanagr);
 | 
			
		||||
 | 
			
		||||
class TDicForm : public TForm
 | 
			
		||||
{
 | 
			
		||||
  private:  
 | 
			
		||||
    real _f_tot_totale, _f_tot_snsrit, _f_tot_impon, _f_tot_impor, _f_tot_netto;
 | 
			
		||||
    real _nf_tot_totale, _nf_tot_snsrit, _nf_tot_impon, _nf_tot_impor, _nf_tot_netto;
 | 
			
		||||
 | 
			
		||||
    TCursor*    _cur;
 | 
			
		||||
 | 
			
		||||
  protected:                                                                           
 | 
			
		||||
    long      _Items; // numero di record che hanno passato il filtro
 | 
			
		||||
    PaginaQuadro    _PaginaCorrente;
 | 
			
		||||
 | 
			
		||||
    void      set_curr_page(PaginaQuadro pagina) { _PaginaCorrente = pagina; }    
 | 
			
		||||
    virtual int   dic_form_len() const;
 | 
			
		||||
    virtual void  inc_curr_page();
 | 
			
		||||
    virtual void  next_page(TPrinter& pr);
 | 
			
		||||
    bool    _modulaser;     // se stampa per modulaser
 | 
			
		||||
    bool 		_posiziona;
 | 
			
		||||
    TipoDitta _tipo_ditta;  // tipo ditta: normale, estinto, dichiarante
 | 
			
		||||
    int     _num_foglio;    // numero foglio
 | 
			
		||||
    TString   _cofi_dic;    // cod.fis. dichiarante
 | 
			
		||||
    bool    _can_print_tot_fis, _can_print_tot_nofis;
 | 
			
		||||
    bool    _finite_fis, _finite_nofis, _LastDitta, _EndPrintDitta;
 | 
			
		||||
    bool    _GiaStampatiFis, _GiaStampatiNoFis, _PaginaPosizionamento;
 | 
			
		||||
    bool    _GiaPosizionato, _GiaMessoStartDoc, _GiaMessoStartPage[QD_PAGINE];   // flag per modulaser
 | 
			
		||||
    int     _CtrNoFisStampati, _CtrFisStampati; // contatori p.f. e p.g. stampate
 | 
			
		||||
    long    _codditta, _codditta_dic;  // cod.ditta e cod.ditta dichiarante
 | 
			
		||||
    int     _RigaCorr;  // contatore riga corrente
 | 
			
		||||
    TString16 _quadro;    // codice quadro in stampa
 | 
			
		||||
    
 | 
			
		||||
    void    stampa_testata(TPrinter& pr);
 | 
			
		||||
    virtual bool ultima_pagina() const { return _PaginaCorrente==QUARTA; }
 | 
			
		||||
    virtual void    stampa_totali(TPrinter& pr);
 | 
			
		||||
//    virtual void    aggiorna_totali(const char tipo);
 | 
			
		||||
    virtual void    set_body(TPrinter& pr, const char tipo);
 | 
			
		||||
    void    StampaPagina(PaginaQuadro PaginaCorrente, const bool StampaTotali, const long Fis, const long NoFis);
 | 
			
		||||
    void    posiziona();                           
 | 
			
		||||
    void    fill_page(TPrinter& pr, const int righe);
 | 
			
		||||
    void    jump_to_line(TPrinter& pr, const int riga);
 | 
			
		||||
    const char* BuildModulaserStartPage();
 | 
			
		||||
    void    put_modulaser(TPrintrow& row, ModulaserKey key, int page=0);     
 | 
			
		||||
    void    ClearFlagModulaser();      
 | 
			
		||||
    bool    PaginaPosizionamento() const;
 | 
			
		||||
    virtual bool InitPrint(const long codditta);
 | 
			
		||||
 | 
			
		||||
  public:                 
 | 
			
		||||
    virtual TCursor* cursor() const     { return _cur; }
 | 
			
		||||
    virtual TRelation* relation() const { return _cur->relation(); }
 | 
			
		||||
 | 
			
		||||
    virtual long filtra(const long codditta);
 | 
			
		||||
    
 | 
			
		||||
    TProgind* _prog;    // progind usata in print()
 | 
			
		||||
    
 | 
			
		||||
    long    codditta() const { return _codditta; }
 | 
			
		||||
    void    set_codditta(const long ditta) { _codditta = ditta; }
 | 
			
		||||
    void    set_posiziona(const bool posiz) { _GiaPosizionato = FALSE; }
 | 
			
		||||
    void    can_print_tot_fis(const bool canpr) { _can_print_tot_fis = canpr; }
 | 
			
		||||
    void    can_print_tot_nofis(const bool canpr) { _can_print_tot_nofis = canpr; }
 | 
			
		||||
    void    set_last_ditta(const bool last) { _LastDitta = last; }
 | 
			
		||||
    bool    last_ditta() const { return _LastDitta; }
 | 
			
		||||
    bool    EndJob() const { return _LastDitta && _EndPrintDitta; }
 | 
			
		||||
    bool    ultima_fis();
 | 
			
		||||
    bool    ultima_nofis();
 | 
			
		||||
    TString&  cofi_dic() { return _cofi_dic; }
 | 
			
		||||
    void    set_cofi_dic(const char* cofi);
 | 
			
		||||
    TipoDitta tipo_ditta() const { return _tipo_ditta; }
 | 
			
		||||
    void    set_tipo_ditta(TipoDitta tipo) { _tipo_ditta = tipo; }
 | 
			
		||||
    bool    modulaser() const { return _modulaser; }
 | 
			
		||||
    void    set_modulaser(const bool modul) { _modulaser = modul; }
 | 
			
		||||
    void    set_num_foglio(const int foglio) { _num_foglio = foglio; }
 | 
			
		||||
    int     num_foglio() const { return _num_foglio; }
 | 
			
		||||
    virtual void azzera_totali();
 | 
			
		||||
    PaginaQuadro    curr_page() const { return _PaginaCorrente; }
 | 
			
		||||
    TCursor&    cur();                                  
 | 
			
		||||
    
 | 
			
		||||
    void set_progind(TProgind* prog) { _prog = prog; }
 | 
			
		||||
    TProgind* progind() { return _prog; }
 | 
			
		||||
    bool usa_progind() const { return _prog != NULL; }
 | 
			
		||||
    
 | 
			
		||||
    virtual void set_cursor(TCursor* cur);
 | 
			
		||||
    virtual void close_print();    
 | 
			
		||||
    virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
    
 | 
			
		||||
    const TString& quadro() const { return _quadro; }
 | 
			
		||||
 | 
			
		||||
    TDicForm(const char* form, const char* quadro);
 | 
			
		||||
    virtual ~TDicForm() {}
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////  
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//  
 | 
			
		||||
//                                        TStDicArray                                                                                    
 | 
			
		||||
//
 | 
			
		||||
// Array delle ditte da stampare. Contiene una riga per ogni ditta che si vuole stampare
 | 
			
		||||
// Il formato della riga e': 
 | 
			
		||||
//   codditta|estinti|numfis|numnofis|ultimafis|ultimanofis  
 | 
			
		||||
//
 | 
			
		||||
/////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TStDicArray : public TObject
 | 
			
		||||
{
 | 
			
		||||
  private:
 | 
			
		||||
    TString_array _store;
 | 
			
		||||
  
 | 
			
		||||
  public:
 | 
			
		||||
    TToken_string& operator[](int i) const;
 | 
			
		||||
    int curr_index() const { return _store.last(); }
 | 
			
		||||
    void set(const int index, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
 | 
			
		||||
             bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
 | 
			
		||||
    void set_tipo(const int index, const TipoDitta tipo);                               
 | 
			
		||||
    void set_ultima_con_fis(const int index, const bool ultima_fis);
 | 
			
		||||
    void set_ultima_con_nofis(const int index, const bool ultima_nofis);        
 | 
			
		||||
    void set_flag_tipi(const int index, const bool ultima_fis, const bool ultima_nofis);
 | 
			
		||||
    void set_ctr_tipi(const int index, const int num_fis, const int num_nofis);
 | 
			
		||||
    void add(const long codditta, const TipoDitta tipo=normale, const int num_fis=0, const int num_nofis=0,
 | 
			
		||||
             bool ultima_con_fis=FALSE, bool ultima_con_nofis=FALSE, const char* cofidic=NULL);
 | 
			
		||||
    int items() const { return _store.items(); }
 | 
			
		||||
    void destroy() { _store.destroy(); }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//
 | 
			
		||||
//                                     STAMPA QUADRO
 | 
			
		||||
//
 | 
			
		||||
/////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TStampaQuadro : public TApplication
 | 
			
		||||
{
 | 
			
		||||
  TMask*      _m;        // Maschera di stampa     
 | 
			
		||||
 | 
			
		||||
  TConfig*    _cnf;      // Configurazione
 | 
			
		||||
  TString16   _section;  // Paragrafo del config
 | 
			
		||||
  long        _codditta;
 | 
			
		||||
  int         _anno_dic;                     
 | 
			
		||||
 | 
			
		||||
  TString     _quadro;
 | 
			
		||||
  char        _livello;  // "S" studio, "D" singola ditta           
 | 
			
		||||
  TString     _title;
 | 
			
		||||
 | 
			
		||||
  TStDicArray _ditte;
 | 
			
		||||
 | 
			
		||||
protected:   // TApplication
 | 
			
		||||
  virtual bool menu(MENU_TAG);
 | 
			
		||||
  virtual void on_config_change();      
 | 
			
		||||
  
 | 
			
		||||
  virtual bool create(); 
 | 
			
		||||
  virtual bool destroy();
 | 
			
		||||
  
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create() pure;
 | 
			
		||||
  virtual bool user_destroy() pure;
 | 
			
		||||
  
 | 
			
		||||
  virtual TDicForm* get_form() const pure;
 | 
			
		||||
  virtual TCursor* get_cursor() const pure;
 | 
			
		||||
 | 
			
		||||
  virtual const char* mask_name() const;
 | 
			
		||||
  virtual const char* form_name() const;
 | 
			
		||||
 | 
			
		||||
  virtual bool conta_tipi_per() const { return TRUE; }  
 | 
			
		||||
  void fill_estinti(const long CodDic);
 | 
			
		||||
  const TStDicArray& ditte() const { return _ditte; }
 | 
			
		||||
 | 
			
		||||
  virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
 | 
			
		||||
  virtual void print(const bool modulaser);
 | 
			
		||||
 | 
			
		||||
  bool singola_ditta() const { return _livello == 'D'; }
 | 
			
		||||
  const TString& quadro() const { return _quadro; }
 | 
			
		||||
  
 | 
			
		||||
  void set_taitol(const char* t) { _title = t; }
 | 
			
		||||
  
 | 
			
		||||
  TStampaQuadro(const char* quad, char liv);
 | 
			
		||||
 | 
			
		||||
public:  
 | 
			
		||||
  const TString& taitol() const { return _title; }
 | 
			
		||||
 | 
			
		||||
  virtual ~TStampaQuadro() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
@ -287,6 +287,7 @@ bool TQuadroA::print(const long codditta, const long NumFis, const long NumNoFis
 | 
			
		||||
        next_page(pr);
 | 
			
		||||
        elementi = 0;
 | 
			
		||||
      }  
 | 
			
		||||
      _PaginaPosizionamento=FALSE;
 | 
			
		||||
      break;             
 | 
			
		||||
    case SECONDA:
 | 
			
		||||
    case TERZA:
 | 
			
		||||
@ -589,6 +590,7 @@ bool TQuadroH::print(const long codditta, const long NumFis, const long NumNoFis
 | 
			
		||||
        next_page(pr);
 | 
			
		||||
        elementi = 0;
 | 
			
		||||
      }  
 | 
			
		||||
      _PaginaPosizionamento=FALSE;
 | 
			
		||||
      break;             
 | 
			
		||||
    case SECONDA:
 | 
			
		||||
      if (!stampato_ultimo)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										484
									
								
								m770/77stqab.h
									
									
									
									
									
								
							
							
						
						
									
										484
									
								
								m770/77stqab.h
									
									
									
									
									
								
							@ -1,242 +1,242 @@
 | 
			
		||||
#ifndef __77STQAB_H
 | 
			
		||||
#define __77STQAB_H
 | 
			
		||||
 | 
			
		||||
#include "77stq.h"
 | 
			
		||||
 | 
			
		||||
//////////////////////////////////////
 | 
			
		||||
//      QUADRO A
 | 
			
		||||
//////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TDipendente : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
  TRecnotype _pos;
 | 
			
		||||
  
 | 
			
		||||
  long _codice_ditta;
 | 
			
		||||
  TString _ragsoc;
 | 
			
		||||
  long _codice_dipendente;
 | 
			
		||||
  long _codice_deceduto;
 | 
			
		||||
  TDate _fine_rapporto;
 | 
			
		||||
  bool _lavoro_precedente;
 | 
			
		||||
  char _causa;
 | 
			
		||||
  char _rettifica_conguaglio;
 | 
			
		||||
  int _numero_progressivo;
 | 
			
		||||
  
 | 
			
		||||
public:  
 | 
			
		||||
  virtual int compare(const TSortable& s) const;
 | 
			
		||||
  
 | 
			
		||||
  TRecnotype pos() const { return _pos; }
 | 
			
		||||
  long codice_deceduto() const { return _codice_deceduto; }
 | 
			
		||||
  void reset_deceduto() { _codice_deceduto = -_codice_deceduto; }
 | 
			
		||||
  long codice() const { return _codice_dipendente; }
 | 
			
		||||
  
 | 
			
		||||
  int anno_fine_rapporto() const { return _fine_rapporto.year(); }
 | 
			
		||||
  bool lavoro_precedente() const { return _lavoro_precedente; }
 | 
			
		||||
  char rettifica_conguaglio() const { return _rettifica_conguaglio; }
 | 
			
		||||
  
 | 
			
		||||
  TDipendente(const TCursor& cur);
 | 
			
		||||
  virtual ~TDipendente() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TDipendenti : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
  TArray _data;
 | 
			
		||||
  
 | 
			
		||||
protected:  
 | 
			
		||||
  const TDipendente& dip(int i) const { return (const TDipendente&)_data[i]; }
 | 
			
		||||
  
 | 
			
		||||
public:    
 | 
			
		||||
  const TDipendente& operator[](int i) const { return dip(i); }
 | 
			
		||||
  
 | 
			
		||||
  int fill(TCursor& cur); 
 | 
			
		||||
  int items() const { return _data.items(); }
 | 
			
		||||
  
 | 
			
		||||
  int find(long d) const;
 | 
			
		||||
 | 
			
		||||
  TDipendenti() { }
 | 
			
		||||
  virtual ~TDipendenti() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TQuadroA : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  enum { QA_FORMLEN = 72 };
 | 
			
		||||
  
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual void next_page(TPrinter& pr);
 | 
			
		||||
  virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
  
 | 
			
		||||
  virtual void azzera_totali();
 | 
			
		||||
  virtual void aggiorna_totali(const char) { }
 | 
			
		||||
  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual int riga_totali(PaginaQuadro p) const;
 | 
			
		||||
  
 | 
			
		||||
  bool init(long codditta);
 | 
			
		||||
  
 | 
			
		||||
  virtual void preprocess_corpo(const TRectype& rec);
 | 
			
		||||
 | 
			
		||||
  void stampa_corpo(TPrinter& pr);
 | 
			
		||||
  void stampa_totali(TPrinter& pr);
 | 
			
		||||
  void stampa_firma(TPrinter& pr);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA(const char* form, const char* quadro)  : TDicForm(form, quadro) {}
 | 
			
		||||
  virtual ~TQuadroA() {} 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA : public TStampaQuadro
 | 
			
		||||
{
 | 
			
		||||
protected:
 | 
			
		||||
  TDicForm* _form;
 | 
			
		||||
  TCursor* _cur;
 | 
			
		||||
    
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
  virtual bool user_destroy();
 | 
			
		||||
 | 
			
		||||
  virtual bool conta_tipi_per() const { return FALSE; }
 | 
			
		||||
  virtual TDicForm* get_form()  const { return _form; }
 | 
			
		||||
  virtual TCursor* get_cursor() const { return _cur; }    
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA(const char* quadro, char livel) : TStampaQuadro(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA() { } 
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
//         QUADRO A1
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroA1 : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual long filtra(const long codditta);
 | 
			
		||||
  virtual void preprocess_corpo(const TRectype& rec);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA1(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroA1() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA1 : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA1(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA1() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
//           QUADRO A2
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroA2 : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual void preprocess_corpo(const TRectype& rec);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA2(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroA2() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA2 : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA2(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA2() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/////////////////////////////////////////////////
 | 
			
		||||
//            QUADRO A3
 | 
			
		||||
/////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroA3 : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA3(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroA3() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA3 : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA3(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA3() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////////////
 | 
			
		||||
//                   QUADRO B
 | 
			
		||||
///////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroB : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroB(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroB() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroB : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroB(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroB() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//
 | 
			
		||||
// Quadro H
 | 
			
		||||
//
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroH : public TQuadroA
 | 
			
		||||
{                          
 | 
			
		||||
  enum { QH_FORMLEN = 72 };
 | 
			
		||||
  
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual	bool ultima_pagina() const { return _PaginaCorrente==SECONDA; }
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual bool print(const long codditta, const long NumFis, const long NumNoFis);  
 | 
			
		||||
  virtual void inc_curr_page();
 | 
			
		||||
 | 
			
		||||
public:  
 | 
			
		||||
  TQuadroH(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroH() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroH : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroH(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) {}
 | 
			
		||||
  virtual ~TStampaQuadroH() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef __77STQAB_H
 | 
			
		||||
#define __77STQAB_H
 | 
			
		||||
 | 
			
		||||
#include "77stq.h"
 | 
			
		||||
 | 
			
		||||
//////////////////////////////////////
 | 
			
		||||
//      QUADRO A
 | 
			
		||||
//////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TDipendente : public TSortable
 | 
			
		||||
{ 
 | 
			
		||||
  TRecnotype _pos;
 | 
			
		||||
  
 | 
			
		||||
  long _codice_ditta;
 | 
			
		||||
  TString _ragsoc;
 | 
			
		||||
  long _codice_dipendente;
 | 
			
		||||
  long _codice_deceduto;
 | 
			
		||||
  TDate _fine_rapporto;
 | 
			
		||||
  bool _lavoro_precedente;
 | 
			
		||||
  char _causa;
 | 
			
		||||
  char _rettifica_conguaglio;
 | 
			
		||||
  int _numero_progressivo;
 | 
			
		||||
  
 | 
			
		||||
public:  
 | 
			
		||||
  virtual int compare(const TSortable& s) const;
 | 
			
		||||
  
 | 
			
		||||
  TRecnotype pos() const { return _pos; }
 | 
			
		||||
  long codice_deceduto() const { return _codice_deceduto; }
 | 
			
		||||
  void reset_deceduto() { _codice_deceduto = -_codice_deceduto; }
 | 
			
		||||
  long codice() const { return _codice_dipendente; }
 | 
			
		||||
  
 | 
			
		||||
  int anno_fine_rapporto() const { return _fine_rapporto.year(); }
 | 
			
		||||
  bool lavoro_precedente() const { return _lavoro_precedente; }
 | 
			
		||||
  char rettifica_conguaglio() const { return _rettifica_conguaglio; }
 | 
			
		||||
  
 | 
			
		||||
  TDipendente(const TCursor& cur);
 | 
			
		||||
  virtual ~TDipendente() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TDipendenti : public TObject
 | 
			
		||||
{ 
 | 
			
		||||
  TArray _data;
 | 
			
		||||
  
 | 
			
		||||
protected:  
 | 
			
		||||
  const TDipendente& dip(int i) const { return (const TDipendente&)_data[i]; }
 | 
			
		||||
  
 | 
			
		||||
public:    
 | 
			
		||||
  const TDipendente& operator[](int i) const { return dip(i); }
 | 
			
		||||
  
 | 
			
		||||
  int fill(TCursor& cur); 
 | 
			
		||||
  int items() const { return _data.items(); }
 | 
			
		||||
  
 | 
			
		||||
  int find(long d) const;
 | 
			
		||||
 | 
			
		||||
  TDipendenti() { }
 | 
			
		||||
  virtual ~TDipendenti() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
class TQuadroA : public TDicForm
 | 
			
		||||
{
 | 
			
		||||
  enum { QA_FORMLEN = 72 };
 | 
			
		||||
  
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual void next_page(TPrinter& pr);
 | 
			
		||||
  virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
 | 
			
		||||
  
 | 
			
		||||
  virtual void azzera_totali();
 | 
			
		||||
  virtual void aggiorna_totali(const char) { }
 | 
			
		||||
  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual int riga_totali(PaginaQuadro p) const;
 | 
			
		||||
  
 | 
			
		||||
  bool init(long codditta);
 | 
			
		||||
  
 | 
			
		||||
  virtual void preprocess_corpo(const TRectype& rec);
 | 
			
		||||
 | 
			
		||||
  void stampa_corpo(TPrinter& pr);
 | 
			
		||||
  void stampa_totali(TPrinter& pr);
 | 
			
		||||
  void stampa_firma(TPrinter& pr);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA(const char* form, const char* quadro)  : TDicForm(form, quadro) {}
 | 
			
		||||
  virtual ~TQuadroA() {} 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA : public TStampaQuadro
 | 
			
		||||
{
 | 
			
		||||
protected:
 | 
			
		||||
  TDicForm* _form;
 | 
			
		||||
  TCursor* _cur;
 | 
			
		||||
    
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
  virtual bool user_destroy();
 | 
			
		||||
 | 
			
		||||
  virtual bool conta_tipi_per() const { return FALSE; }
 | 
			
		||||
  virtual TDicForm* get_form()  const { return _form; }
 | 
			
		||||
  virtual TCursor* get_cursor() const { return _cur; }    
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA(const char* quadro, char livel) : TStampaQuadro(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA() { } 
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
//         QUADRO A1
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroA1 : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual long filtra(const long codditta);
 | 
			
		||||
  virtual void preprocess_corpo(const TRectype& rec);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA1(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroA1() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA1 : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA1(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA1() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
//           QUADRO A2
 | 
			
		||||
///////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroA2 : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual void preprocess_corpo(const TRectype& rec);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA2(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroA2() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA2 : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA2(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA2() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/////////////////////////////////////////////////
 | 
			
		||||
//            QUADRO A3
 | 
			
		||||
/////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroA3 : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroA3(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroA3() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroA3 : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroA3(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroA3() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////////////
 | 
			
		||||
//                   QUADRO B
 | 
			
		||||
///////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroB : public TQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:  
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TQuadroB(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroB() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroB : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroB(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) { }
 | 
			
		||||
  virtual ~TStampaQuadroB() { }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
//
 | 
			
		||||
// Quadro H
 | 
			
		||||
//
 | 
			
		||||
///////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
class TQuadroH : public TQuadroA
 | 
			
		||||
{                          
 | 
			
		||||
  enum { QH_FORMLEN = 72 };
 | 
			
		||||
  
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual	bool ultima_pagina() const { return _PaginaCorrente==SECONDA; }
 | 
			
		||||
  virtual int elementi_pagina(PaginaQuadro p) const;
 | 
			
		||||
  virtual int prima_riga(PaginaQuadro p) const;
 | 
			
		||||
  virtual bool print(const long codditta, const long NumFis, const long NumNoFis);  
 | 
			
		||||
  virtual void inc_curr_page();
 | 
			
		||||
 | 
			
		||||
public:  
 | 
			
		||||
  TQuadroH(const char* form, const char* quadro) : TQuadroA(form, quadro) { }
 | 
			
		||||
  virtual ~TQuadroH() { } 
 | 
			
		||||
};      
 | 
			
		||||
 | 
			
		||||
class TStampaQuadroH : public TStampaQuadroA
 | 
			
		||||
{
 | 
			
		||||
protected:    
 | 
			
		||||
  virtual bool user_create();
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TStampaQuadroH(const char* quadro, char livel) : TStampaQuadroA(quadro, livel) {}
 | 
			
		||||
  virtual ~TStampaQuadroH() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user