campo-sirio/ve/sconti.h

76 lines
2.1 KiB
C++
Executable File

#ifndef __SCONTI_H
#define __SCONTI_H
#ifndef __TCLIFOR_H
#include "clifor.h"
#endif
#ifndef __VELIB_H
#include "velib.h"
#endif
#ifndef __CONFIG_H
#include <config.h>;
#endif
class TCond_vendita : public TObject
{
TString80 _sconto;
TString4 _codiva;
TString4 _prov;
real _prezzo;
real _provv;
real _provv1;
real _molt_sconto;
TDocumento_mask* _testa;
TMask* _riga;
TLocalisamfile _condv;
TLocalisamfile _rcondv;
TLocalisamfile _sconti;
TLocalisamfile _anamag;
TLocalisamfile _umart;
bool _ivarid;
bool _load_mask;
bool cerca(int tiporicerca);
real normalize_valuta(const real & val, const char * val_rif = "");
protected:
void set_prezzo(const real & prezzo, const char * val_rif = "");
void set_provv(const real & provv);
void set_provv1(const real & provv);
void set_iva(const TString & codiva);
void update_omaggi(bool full);
TDocumento_mask & testa() const { CHECK(_testa, "Maschera testata non inizializzata"); return * _testa; }
TMask & riga() const { CHECK(_riga, "Maschera riga non inizializzata"); return * _riga; }
bool try_sconto(char gestione, bool found_condv, bool load_um_only, bool load_scagl_only);
public:
TCli_for & clifo() const { return _testa->doc().clifor(); }
bool set_sconto( const char* exp, bool signal = false);
const TString& get_sconto() const { return _sconto; }
real sconto_val() const { return _molt_sconto;}
real get_prezzo() const { return _prezzo; }
real get_provv() const { return _provv; }
real get_percprovv(char tipoprovv, const TString & codpr, bool first, const TRectype & age) const;
const TString & get_iva() const { return _codiva; }
// void set_clifo( TCli_for * clifo) { _clifo = clifo; }
// void set_config( TConfig * ditta) { _config_ditta = ditta; }
void set_testa( TDocumento_mask * testa ){ _testa = testa; }
void set_riga( TMask * riga ){ _riga = riga; }
void ricerca(bool load_um_only = FALSE, bool load_scagl_only = FALSE);
bool gestum() const { return _condv.get_bool("GESTUM"); }
const char * get_prov() const { return _prov; }
TCond_vendita(TDocumento_mask* testa, TMask* riga);
virtual ~TCond_vendita() {}
};
#endif