167 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			167 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| #ifndef __77STQAB_H
 | |
| #define __77STQAB_H
 | |
| 
 | |
| #include "77stq.h"
 | |
| 
 | |
| //////////////////////////////////////
 | |
| //      QUADRO A
 | |
| //////////////////////////////////////      
 | |
| 
 | |
| HIDDEN const int HEADER_PRIMA_NOPOS_QA = 2;  
 | |
| HIDDEN const int _NUM_FOGLIO_QA = 4; 
 | |
| 
 | |
| 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;
 | |
|   void destroy() { _data.destroy(); }
 | |
| 
 | |
|   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 aggiorna_totali(const char) { }  
 | |
|   virtual int elementi_pagina(PaginaQuadro p) const;
 | |
|   virtual int prima_riga(PaginaQuadro p) const;   
 | |
|   virtual int dic_form_len() const;
 | |
|   
 | |
|   bool init(long codditta);
 | |
|   
 | |
|   virtual void preprocess_corpo(const TRectype& rec);
 | |
| 
 | |
|   int calcola_firma();   
 | |
|   void stampa_testata(TPrinter& pr);                        
 | |
|   void stampa_corpo(TPrinter& pr);
 | |
|   void stampa_totali(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 menu(MENU_TAG m) { return TStampaQuadro::menu(m);}
 | |
|   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 TStampaQuadroA1 : public TStampaQuadroD
 | |
| {
 | |
| protected:    
 | |
|   virtual bool user_create();
 | |
| 
 | |
| public:
 | |
|   TStampaQuadroA1(const char* quadro, char livel) : TStampaQuadroD(quadro, livel) { }
 | |
|   virtual ~TStampaQuadroA1() { }
 | |
| };
 | |
| 
 | |
| ///////////////////////////////////////////////
 | |
| //           QUADRO A2
 | |
| ///////////////////////////////////////////////
 | |
| 
 | |
| class TStampaQuadroA2 : public TStampaQuadroD
 | |
| {
 | |
| protected:    
 | |
|   virtual bool user_create();
 | |
| 
 | |
| public:
 | |
|   TStampaQuadroA2(const char* quadro, char livel) : TStampaQuadroD(quadro, livel) { }
 | |
|   virtual ~TStampaQuadroA2() { }
 | |
| };
 | |
| 
 | |
| /////////////////////////////////////////////////
 | |
| //            QUADRO A3
 | |
| /////////////////////////////////////////////////
 | |
| 
 | |
| class TStampaQuadroA3 : public TStampaQuadroD
 | |
| {
 | |
| protected:    
 | |
|   virtual bool user_create();
 | |
| 
 | |
| public:
 | |
|   TStampaQuadroA3(const char* quadro, char livel) : TStampaQuadroD(quadro, livel) { }
 | |
|   virtual ~TStampaQuadroA3() { }
 | |
| };
 | |
| 
 | |
| /////////////////////////////////////////////////
 | |
| //            QUADRO Abis
 | |
| /////////////////////////////////////////////////
 | |
| 
 | |
| class TStampaQuadroAbis : public TStampaQuadroD
 | |
| {
 | |
| protected:    
 | |
|   virtual bool user_create();
 | |
| 
 | |
| public:
 | |
|   TStampaQuadroAbis(const char* quadro, char livel) : TStampaQuadroD(quadro, livel) { }
 | |
|   virtual ~TStampaQuadroAbis() { }
 | |
| };
 | |
| 
 | |
| #endif
 | |
| 
 |