campo-sirio/ce/celib.h
guy 5c153657ab Patch level : 10.0
Files correlati     : ce2.exe  cetbcce.msk
Ricompilazione Demo : [ ]
Commento            :
Aggiunti parametri all'esercizio cespiti per calcolare l'ammortamento al 100% o al 50% sui cespiti nuovi del 2008 permettendo anche di includere o escludere gli autoveicoli


git-svn-id: svn://10.65.10.50/trunk@18069 c028cbd2-c16b-5b4b-a496-9718f37d4682
2009-01-21 15:43:26 +00:00

75 lines
2.1 KiB
C++
Executable File

#ifndef __CELIB_H
#define __CELIB_H
#ifndef __FORM_H
#include <form.h>
#endif
#ifndef __AUTOMASK_H
#include <automask.h>
#endif
class TDitta_cespiti
{
long _ditta;
int _esercizio, _anno_tuir;
TString4 _gruppo, _specie;
TDate _data_primi_ricavi;
TRectype _cce, _ccb;
bool _amm_prop;
protected:
void load_default();
void update_when_needed();
void load_records();
public:
void set_attivita(int esercizio, int gruppo, const char* specie);
const TRectype& get_attivita(int& esercizio, TString& gruppo, TString& specie) const;
const TRectype& get_attivita() const;
int esercizio_corrente() const { return _esercizio; }
int esercizio_corrente(TDate& inies, TDate& fines) const;
const TRectype& categoria(int gr, const char* sp, int ca, const bool ccc = false) const;
const TDate& data_primi_ricavi() const { return _data_primi_ricavi; }
bool rinvio_ammortamento_ai_primi_ricavi() const;
bool esente_art14() const;
bool ammortamento_parti_vendute() const;
bool ragguaglio_ammortamenti_parti_vendute() const;
bool professionista() const;
bool esercizio_costituzione() const;
real coefficiente_durata_esercizio() const;
int anno_tuir() const { return _anno_tuir; }
bool legge_223_06() const;
bool primo_ammortamento_100(const TDate& datamov, int tiposit, bool veicolo) const;
bool bollato_stampato() const;
bool ammortamento_proporzionale() const { return _amm_prop; }
void init_mask(TMask& m);
void arrotonda(real &n) const;
bool on_category_event(TOperable_field& fld, TField_event e, long jolly = 0L);
TDitta_cespiti();
};
class TForm_cespiti : public TForm
{
protected:
virtual bool validate(TForm_item& fld, TToken_string& val);
public:
TForm_cespiti(const char* name);
};
TDitta_cespiti& ditta_cespiti();
// Utility
bool null_fields(const TRectype& rec, const char* fld0, const char* fld1, const char* fld2 = NULL,
const char* fld3 = NULL, const char* fld4 = NULL, const char* fld5 = NULL,
const char* fld6 = NULL, const char* fld7 = NULL, const char* fld8 = NULL);
#endif