244 lines
6.1 KiB
C++
Executable File
244 lines
6.1 KiB
C++
Executable File
#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);
|
|
|
|
int calcola_firma();
|
|
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
|
|
|