1995-12-12 12:34:41 +00:00
|
|
|
|
|
|
|
#ifndef __SC2403_H
|
|
|
|
#define __SC2403_H
|
|
|
|
|
|
|
|
#include <printer.h>
|
|
|
|
#include <form.h>
|
|
|
|
|
|
|
|
#include "../cg/saldacon.h"
|
|
|
|
#include "sc2102.h"
|
|
|
|
#include "sc2400a.h"
|
|
|
|
#include "sc21pec.h"
|
|
|
|
|
|
|
|
#include <clifo.h>
|
|
|
|
#include <causali.h>
|
|
|
|
#include <pagsca.h>
|
|
|
|
#include <scadenze.h>
|
1995-12-05 17:17:41 +00:00
|
|
|
|
|
|
|
#ifndef __SCSELECT_H
|
|
|
|
#include "scselect.h"
|
|
|
|
#endif
|
|
|
|
|
1995-12-12 12:34:41 +00:00
|
|
|
class TESSL_mask: public TSelection_mask
|
|
|
|
|
|
|
|
{
|
1995-12-05 17:17:41 +00:00
|
|
|
TRelation _ditta;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
virtual void on_firm_change();
|
|
|
|
virtual void start_run();
|
|
|
|
|
|
|
|
public:
|
|
|
|
const char *get_prof_base() const;
|
|
|
|
const TString &get_prof_code() const;
|
1995-12-12 12:34:41 +00:00
|
|
|
const TString &get_prof_lang() const;
|
|
|
|
|
|
|
|
TESSL_mask(const char *name);
|
|
|
|
virtual ~TESSL_mask();
|
|
|
|
};
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
// TESSL_row
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
class TESSL_row : public TSortable
|
|
|
|
|
|
|
|
{
|
|
|
|
TDate _data; // Data scadenza o pagamento
|
|
|
|
int _riga; // Riga della fattura
|
|
|
|
int _rata; // Numero rata o progrssivo
|
|
|
|
|
|
|
|
TString _causale; // Codice causale
|
|
|
|
TString _descrizione; // Sua descrizione
|
|
|
|
|
|
|
|
TDate _data_doc; // Data del documento
|
|
|
|
TString _num_doc; // Numero documento
|
|
|
|
long _num_prot; // Protocollo IVA
|
|
|
|
TImporto _importo; // Importo in valuta
|
|
|
|
real _importo_lire; // Importo in lire
|
|
|
|
real _scaduto; // Importo scaduto
|
|
|
|
real _esposto; // Importo esposto
|
|
|
|
bool _salvo_buon_fine; // Importo esposto salvo buon fine
|
|
|
|
real _totale; // Totale documento
|
|
|
|
TValuta _valuta; // Codice valuta, data cambio e cambio
|
|
|
|
|
|
|
|
protected: // TSortable
|
|
|
|
virtual int compare(const TSortable& s) const;
|
|
|
|
void set_imp(TForm_item& fi, const real& imp, bool valuta) const;
|
|
|
|
|
|
|
|
public:
|
|
|
|
int riga() const { return _riga; }
|
|
|
|
int rata() const { return _rata; }
|
|
|
|
|
|
|
|
void reset_causale() { _causale.cut(0); _descrizione.cut(0); }
|
|
|
|
void descrizione(const char* s) { _descrizione = s; }
|
|
|
|
void importo(const TImporto& i) { _importo = i; }
|
|
|
|
void scaduto(const real& s) { _scaduto = s; }
|
|
|
|
void esposto(const real& e) { _esposto = e; }
|
|
|
|
void importo_in_lire(const real& il) { _importo_lire = il; }
|
|
|
|
void salvo_buon_fine(bool sbf) { _salvo_buon_fine = sbf; }
|
|
|
|
|
|
|
|
const TValuta& valuta() const { return _valuta; }
|
|
|
|
const TImporto& importo() const { return _importo; }
|
|
|
|
real importo_in_lire() const { return _importo_lire; }
|
|
|
|
real scaduto() const { return _scaduto; }
|
|
|
|
real esposto() const { return _esposto; }
|
|
|
|
const TDate& data() const { return _data; }
|
|
|
|
|
|
|
|
void print_on(TPrint_section& body);
|
|
|
|
|
|
|
|
TESSL_row(const TRiga_partite& row, const TDate& data, const TImporto& imp, int rata);
|
|
|
|
TESSL_row(const char* desc, const TImporto& imp);
|
|
|
|
virtual ~TESSL_row() {}
|
|
|
|
};
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
// TESSL_form: form speciale per estratti conto
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
class TESSL_form : public TForm
|
|
|
|
{
|
|
|
|
static TESSL_form* _form;
|
|
|
|
|
|
|
|
TCursor* _cursore;
|
|
|
|
TTotalizer _totali;
|
|
|
|
TDecoder _causali; // Decodoficatore dei codici causale
|
|
|
|
|
|
|
|
TString _lingua;
|
|
|
|
TDate _dlo, _dls, _dir;
|
|
|
|
int _giorni_rischio;
|
|
|
|
bool _in_valuta;
|
|
|
|
int _footer_used; // Numero di righe per ogni valuta del footer
|
|
|
|
char _who;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
static void header_handler(TPrinter& p);
|
|
|
|
static void footer_handler(TPrinter& p);
|
|
|
|
|
|
|
|
public:
|
|
|
|
TTotalizer& totali() { return _totali; }
|
|
|
|
TDecoder& causali() { return _causali; }
|
|
|
|
|
|
|
|
const TDate& data_limite_operazione() const { return _dlo; }
|
|
|
|
const TDate& data_limite_scaduto() const { return _dls; }
|
|
|
|
int giorni_rischio() const { return _giorni_rischio; }
|
|
|
|
const TDate& data_inizio_rischio() const { return _dir; }
|
|
|
|
|
|
|
|
const TString& lingua() const { return _lingua; }
|
|
|
|
bool in_valuta() const { return _in_valuta; }
|
|
|
|
const TString& describe(short id, char sez = 'B') const;
|
|
|
|
const char sezione_normale() const { return _who == 'C' ? 'D' : 'A' ; }
|
|
|
|
|
|
|
|
virtual bool print_game(const TPartita& game);
|
|
|
|
|
|
|
|
TESSL_form(const TESSL_mask& m, short id_datalim, short id_datascad = 0, short id_giorni_rischio = 0);
|
|
|
|
virtual ~TESSL_form();
|
|
|
|
};
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
// TESSL_array
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
class TESSL_array : public TArray
|
|
|
|
{
|
|
|
|
TArray _scaduto; // Array di importi scaduti
|
|
|
|
|
|
|
|
const TESSL_form* _form;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
TESSL_row& new_row(const TRiga_partite& row, const TDate& data, const TImporto& imp, int rata = 0);
|
|
|
|
void add_row(const TRiga_partite& row);
|
|
|
|
|
|
|
|
const TESSL_form& form() const { return *_form; }
|
|
|
|
real calcola_scaduto(const TRiga_scadenze& rata, bool valuta);
|
|
|
|
|
|
|
|
|
|
|
|
TImporto* importo_riga_scaduto_ptr(int n) const { return (TImporto*)_scaduto.objptr(n); }
|
|
|
|
TImporto& importo_riga_scaduto(int n);
|
|
|
|
|
|
|
|
TImporto importo(const TPartita& game, const TRectype& pag, bool valuta) const;
|
|
|
|
|
|
|
|
public:
|
|
|
|
TESSL_row& row(int r) const { return (TESSL_row&)operator[](r); }
|
1995-12-05 17:17:41 +00:00
|
|
|
|
1995-12-12 12:34:41 +00:00
|
|
|
TESSL_array(const TPartita& game, const TESSL_form* f);
|
|
|
|
virtual ~TESSL_array() {}
|
1995-12-05 17:17:41 +00:00
|
|
|
};
|
|
|
|
|
1995-12-12 12:34:41 +00:00
|
|
|
#endif // __SC2403_H
|