bbfb8a9896
Files correlati : tc2.exe Ricompilazione Demo : [ ] Commento : Invio a IPSOA git-svn-id: svn://10.65.10.50/branches/R_10_00@21404 c028cbd2-c16b-5b4b-a496-9718f37d4682
193 lines
5.6 KiB
C++
Executable File
193 lines
5.6 KiB
C++
Executable File
#include <automask.h>
|
|
#include <applicat.h>
|
|
#include <recarray.h>
|
|
#include <relation.h>
|
|
#include <reprint.h>
|
|
#include <reputils.h>
|
|
#include <textset.h>
|
|
#include "../cg/cg2103.h"
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TIP_mask
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TIP_mask : public TAutomask
|
|
{
|
|
clock_t _next_update;
|
|
bool _updating;
|
|
|
|
private:
|
|
bool apply_filter(const TRecordset& righe) const;
|
|
void serialize(bool bSave);
|
|
|
|
protected:
|
|
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
|
|
|
public:
|
|
TIP_mask(const char * maskname);
|
|
~TIP_mask();
|
|
};
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TCausali_cache
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TCausali_cache : public TCache
|
|
{
|
|
protected:
|
|
virtual TObject* key2obj(const char* key);
|
|
|
|
public:
|
|
const TCausale& causale(const char* codice, int annoiva);
|
|
};
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TRiclassifica_cache
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TIPRiclassifica_cache : public TCache
|
|
{
|
|
TLocalisamfile _multirel;
|
|
protected:
|
|
virtual TObject* key2obj(const char* key);
|
|
public:
|
|
const char * sdecode(const char* tab, const TString& cod);
|
|
long decode(const char* tab, const TString& cod);
|
|
TIPRiclassifica_cache() : _multirel(LF_MULTIREL) { _multirel.setkey(2);}
|
|
};
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TIP_sender
|
|
///////////////////////////////////////////////////////////
|
|
const long TSbill2ricl(char & t, int gr, int co, long so);
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TIP_sender
|
|
///////////////////////////////////////////////////////////
|
|
class TIP_textset : public TCSV_recordset
|
|
{
|
|
|
|
TAssoc_array _colnames;
|
|
|
|
protected:
|
|
void add_field(const char* name = "Filler", int len = 0, const char * tipo = "C");
|
|
|
|
public:
|
|
virtual bool destroy(TRecnotype r);
|
|
virtual bool set(const char* field, const TVariant& v);
|
|
void set(const char* field, const TString & str) { set(field, TVariant(str)); }
|
|
void set(const char* field, const int n) { set(field, TVariant((long)n)); }
|
|
void set(const char* field, const char* s) { set(field, TVariant(s)); }
|
|
void set(const char* field, const TDate& d) { set(field, TVariant(d)); }
|
|
void set(const char* field, const real& v) { set(field, TVariant(v)); }
|
|
int find_column(const char * name);
|
|
|
|
TIP_textset(const char* query = "") : TCSV_recordset(TString("CSV(\"\t\")\n") << query) {}
|
|
};
|
|
|
|
class TIP_clienti_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_clienti_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_fornitori_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_fornitori_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_movimenti_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_movimenti_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_scadenze_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_scadenze_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_cespiti_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_cespiti_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_categorie_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_categorie_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_intra_textset : public TIP_textset
|
|
{
|
|
public:
|
|
TIP_intra_textset(const char* query = "");
|
|
};
|
|
|
|
class TIP_sender : public TSkeleton_application
|
|
{
|
|
TIP_mask * _mask;
|
|
TAssoc_array _caus_regolarizzazione;
|
|
TIPRiclassifica_cache* _tabelle;
|
|
TCausali_cache * _causali;
|
|
TAssoc_array _riclassifica;
|
|
bool _errors_logged;
|
|
bool _errors;
|
|
TLog_report* _log;
|
|
TReport_book * _book;
|
|
TRecord_cache * _part;
|
|
long _ultscadid;
|
|
|
|
bool test_swap(const TRecordset& mov);
|
|
bool mov_regolarizzazione(const TRecordset& mov);
|
|
bool mov_intra(const TRecordset& mov);
|
|
bool mov_reverse_charge(const TRecordset& mov);
|
|
const TString & scod2ricl(const char* tab, const TString& cod);
|
|
const TString & scod2ricl(const char* tab, const TVariant& cod);
|
|
const long cod2ricl(const char* tab, const TString& cod);
|
|
const long cod2ricl(const char* tab, const TVariant& cod);
|
|
const long bill2ricl(char t, int gr, int co, long so);
|
|
|
|
const TString & pag2tipo(const TVariant & codpag);
|
|
const TString & row2cauriga(TISAM_recordset& rmov, const TCausale & caus);
|
|
void get_pref(const TVariant & pref, TVariant & pint, TVariant & pnaz);
|
|
const real ind2perc(const TVariant & tipodet);
|
|
void add_cli(TISAM_recordset & cli, TIP_clienti_textset & ipcli);
|
|
void add_forn(TISAM_recordset & forn, TIP_fornitori_textset & ipforn);
|
|
void add_mov_cg(TISAM_recordset & mov, TIP_movimenti_textset & ipmov, const TVariant & reg_regol, const TVariant & prot_regol, const char tipo = ' ');
|
|
void add_mov_iva(TISAM_recordset & mov, TIP_movimenti_textset & ipmov, const TVariant & reg_regol, const TVariant & prot_regol);
|
|
void add_mov(TISAM_recordset & mov, TIP_movimenti_textset & ipmov);
|
|
void add_scad(TISAM_recordset & mov, TIP_scadenze_textset & ipscad);
|
|
void add_intra(TISAM_recordset & mov, TIP_intra_textset & ipintra);
|
|
void transfer_cli(const char * path);
|
|
void transfer_forn(const char * path);
|
|
void transfer_mov(const char * path);
|
|
void transfer_scad(const char * path);
|
|
void transfer_cesp(const char * path);
|
|
void transfer_cat(const char * path);
|
|
void transfer_intra(const char * path);
|
|
|
|
protected:
|
|
virtual bool find_regolarizzazione(TRecordset& mov);
|
|
virtual TMask & get_mask();
|
|
|
|
public:
|
|
virtual bool multi_activity() const { return true; }
|
|
TAssoc_array & riclassifica() {return _riclassifica;}
|
|
|
|
virtual void postprocess_movs(TRecordset & mov);
|
|
virtual void set_parameters();
|
|
|
|
// qui
|
|
void log(int sev, const char* msg);
|
|
|
|
virtual bool create();
|
|
virtual void main_loop();
|
|
virtual bool destroy();
|
|
|
|
TIP_sender() : _tabelle(NULL) {}
|
|
};
|