campo-sirio/ca/calib02.h
guy 7d60fb41e5 Patch level : 2.2
Files correlati     :
Ricompilazione Demo : [ ]
Commento            :

Aggiunto riferimento al documento originale sui movimenti provenenienti da documento


git-svn-id: svn://10.65.10.50/trunk@13237 c028cbd2-c16b-5b4b-a496-9718f37d4682
2005-06-29 13:04:49 +00:00

110 lines
3.1 KiB
C++
Executable File

#ifndef __CALIB02_H
#define __CALIB02_H
#ifndef __REPORT_H
#include <report.h>
#endif
///////////////////////////////////////////////////////////
// TAnal_bill
///////////////////////////////////////////////////////////
// Classe simile al TBill, che contiene un conto piu' o meno completo di analitica
class TAnal_bill : public TSortable
{
TString _conto, _costo, _commessa, _fase;
public:
virtual int compare(const TSortable& s) const;
bool match(const TAnal_bill& b) const;
public:
void set_conto(const char* c);
void set_costo(const char* c);
void set_commessa(const char* c);
void set_fase(const char* c);
const TString& conto() const;
const TString& costo() const;
const TString& commessa() const;
const TString& fase() const;
bool get(const TRectype& rec);
void reset();
TAnal_bill();
TAnal_bill(const TAnal_bill& bill);
TAnal_bill(const char* conto, const char* costo, const char* commessa, const char* fase);
TAnal_bill(const TRectype& rec);
};
///////////////////////////////////////////////////////////
// TAnal_balance
///////////////////////////////////////////////////////////
// Tipi di saldo: 1 = Normale; 2 = Preventivo; 4 = Variazione preventivo; 7 = Tutti
struct TSaldanal : public TObject
{
TImporto _ini, _dare, _avere, _fin;
bool _movimentato;
};
const TSaldanal& ca_saldo(const TAnal_bill& bill, const TDate& dal, const TDate& al, word tipi = 1);
////////////////////////////////////////////////////////
// TPconana_recordset
////////////////////////////////////////////////////////
class TPconana_recordset : public TISAM_recordset
{
word _tipimov;
TString _da_conto, _a_conto;
int _contolen;
TAnal_bill _bill;
TDate _dal, _al;
bool _movimentati, _nonnulli;
protected:
bool valid_record(const TRelation& rel) const;
static bool pianoconti_filter(const TRelation* rel);
virtual void set_custom_filter(TCursor& cursor) const;
public:
virtual const TVariant& get(const char* column_name) const;
void set_filter(const char* da_conto, const char* a_conto,
const char* costo, const char* commessa, const char* fase,
const TDate& dal, const TDate& al,
word tipimov, bool movimentati, bool nonnulli);
TPconana_recordset();
};
///////////////////////////////////////////////////////////
// TAnal_rapport
///////////////////////////////////////////////////////////
class TAnal_report : public TReport
{
unsigned int _first_msg;
protected: // protected is safer
virtual bool get_usr_val(const TString& name, TVariant& var) const;
virtual size_t get_usr_words(TString_array& words) const;
virtual bool execute_usr_word(unsigned int opcode, TVariant_stack& stack);
virtual bool use_mask() { return false;}
void msg_format(int logicnum, TVariant_stack& stack);
void msg_format_costo (TVariant_stack& stack);
void msg_format_commessa (TVariant_stack& stack);
void msg_format_fase (TVariant_stack& stack);
void msg_format_conto (TVariant_stack& stack);
void msg_format_commessa_costo(TVariant_stack& stack);
public: // meglio pubic?
};
#endif