campo-sirio/m770/77stqab.h

167 lines
4.1 KiB
C
Raw Normal View History

#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