From 91c6d25a84a0edea46e2627eca3325b7cdc9f99c Mon Sep 17 00:00:00 2001 From: augusto Date: Thu, 23 Oct 1997 10:55:09 +0000 Subject: [PATCH] velib.h sconti.cpp : funzione per il calcolo perc.sconto in libreria velib.h velib03.cpp: modificate funzioni inline per accesso membri statici git-svn-id: svn://10.65.10.50/trunk@5429 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ve/sconti.cpp | 11 +++++++++-- ve/velib.h | 7 +++++-- ve/velib03.cpp | 7 +++++++ 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/ve/sconti.cpp b/ve/sconti.cpp index b3179de5f..eb57168aa 100755 --- a/ve/sconti.cpp +++ b/ve/sconti.cpp @@ -25,13 +25,17 @@ #ifndef __VEINI_H #include "veini.h" #endif + +#ifndef __VELIB_H +#include "velib.h" +#endif + HIDDEN const real CENTO(100.0); bool TCond_vendita::set_sconto( const char * exp, bool signal ) { + /* TString80 goodexp; - bool valid = TRUE; - // Elimina gli spazi molesti // work.strip_spaces( ); if (exp && *exp) @@ -115,6 +119,9 @@ bool TCond_vendita::set_sconto( const char * exp, bool signal ) } } _sconto = goodexp; + */ + bool valid= scontoexpr2perc(exp,signal,_sconto,_molt_sconto ); + if (_load_mask && _riga && _riga->id2pos(FR_SCONTO) >= 0 && _riga->field(FR_SCONTO).active()) _riga->set(FR_SCONTO, _sconto); return valid; diff --git a/ve/velib.h b/ve/velib.h index 3604f0cce..def0f37eb 100755 --- a/ve/velib.h +++ b/ve/velib.h @@ -60,6 +60,8 @@ class TRiga_documento; class TCond_vendita; class TIVA; + +bool scontoexpr2perc(const char * exp, bool signal , TString & goodexp, real & val_perc ); // velib01 real lordo2netto(real& lordo, const TString& codiva, int ndec); inline real lordo2netto(real& lordo, const TString& codiva, bool is_valuta = FALSE) { return lordo2netto(lordo, codiva, is_valuta ? 3 : 0);} @@ -80,6 +82,7 @@ bool note_hndl(TMask_field& field, KEY key); bool data_hndl(TMask_field& field, KEY key); void set_curr_um(const TMask & m); + class TDocumento_variable_field : public TVariable_field { bool _dirty; @@ -506,8 +509,8 @@ protected: void update_tabella_iva(); void dirty_tabella_iva() { _tabella_iva.destroy();} static void test_firm(); - const TString16 & codiva_spese() const { ((TDocumento *)this)->test_firm(); return _codiva_spese;} - const TString16 & codiva_bolli() const { ((TDocumento *)this)->test_firm(); return _codiva_bolli;} + inline const TString16 & codiva_spese() const ; + inline const TString16 & codiva_bolli() const ; void check_modules(); public: diff --git a/ve/velib03.cpp b/ve/velib03.cpp index 6470e79f0..4629a913f 100755 --- a/ve/velib03.cpp +++ b/ve/velib03.cpp @@ -327,6 +327,13 @@ TDocumento::~TDocumento() if (_esenzione != NULL) delete _esenzione; } +inline const TString16 & TDocumento::codiva_spese() const +{ ((TDocumento *)this)->test_firm(); return _codiva_spese;} + +inline const TString16 & TDocumento::codiva_bolli() const +{ ((TDocumento *)this)->test_firm(); return _codiva_bolli;} + + void TDocumento::check_modules() { if (_has_mag == 3)