7ae87dcd6f
Files correlati : Ricompilazione Demo : [ ] Commento : git-svn-id: svn://10.65.10.50/trunk@18409 c028cbd2-c16b-5b4b-a496-9718f37d4682
146 lines
3.0 KiB
C++
Executable File
146 lines
3.0 KiB
C++
Executable File
// 773400.cpp - gestione tabelle 770
|
|
#include <tabapp.h>
|
|
|
|
#include "77tbca7.h"
|
|
|
|
// Lista modifiche
|
|
//
|
|
// 21.12.95 i codici quadro con 1015 sono C-E1 (= tolto E2) (nf)
|
|
// la perc. r.a. non e' piu' obbligatoria (nf)
|
|
//
|
|
// 14.5.96 Modifiche per dichiarazione 96 (nf)
|
|
//
|
|
|
|
class Tab770_application : public Tab_application
|
|
{
|
|
private:
|
|
TMask* _msk;
|
|
TString _tabname;
|
|
|
|
protected:
|
|
bool IsCausali() const { return _tabname == "%CA7"; }
|
|
void SetDefaultValueCausali(TMask& m);
|
|
void init_mask(TMask& m);
|
|
public:
|
|
bool user_create();
|
|
virtual void init_modify_mode(TMask& m);
|
|
virtual void init_insert_mode(TMask& m);
|
|
virtual void init_query_mode(TMask& m);
|
|
virtual bool firm_change_enabled() const;
|
|
Tab770_application() {}
|
|
virtual ~Tab770_application() {}
|
|
};
|
|
|
|
HIDDEN inline Tab770_application& app() {return (Tab770_application&) main_app();}
|
|
|
|
HIDDEN bool codqua_handler(TMask_field& f, KEY k)
|
|
{
|
|
if (f.to_check(k))
|
|
{
|
|
TMask& m = f.mask();
|
|
const int trib = m.get_int(F_CODTRIB);
|
|
if (trib == 1015)
|
|
{
|
|
const TString& quad = m.get(F_QUADRCE2);
|
|
if (quad != "LA" && quad != "SF" && quad != "SG")
|
|
return f.error_box("Con il codice tributo 1015 si possono indicare solo i quadri LA-SF-SG");
|
|
}
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
HIDDEN bool codtrib_handler(TMask_field& f, KEY k)
|
|
{
|
|
if (k == K_TAB)
|
|
{
|
|
TMask& m = f.mask();
|
|
const int trib = atoi(f.get());
|
|
|
|
if (trib == 1015)
|
|
{
|
|
m.hide(F_QUADRAT);
|
|
m.show(F_QUADRCE2);
|
|
}
|
|
else
|
|
{
|
|
m.hide(F_QUADRCE2);
|
|
m.show(F_QUADRAT);
|
|
}
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
HIDDEN bool descr_handler(TMask_field& f, KEY k)
|
|
{
|
|
if (k == K_ENTER)
|
|
{
|
|
TMask& m = f.mask();
|
|
const TString descr = f.get();
|
|
|
|
if (descr == "")
|
|
{
|
|
f.error_box("La descrizione e' obbligatoria");
|
|
return FALSE;
|
|
}
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
void Tab770_application::SetDefaultValueCausali(TMask& m)
|
|
{
|
|
TString sPercAss(m.get(F_PERASS));
|
|
|
|
sPercAss.trim();
|
|
|
|
if (sPercAss.empty())
|
|
m.set(F_PERASS, "100.00"); // % ass. imponibile
|
|
}
|
|
|
|
void Tab770_application::init_mask(TMask& m)
|
|
{
|
|
if (IsCausali())
|
|
SetDefaultValueCausali(m);
|
|
}
|
|
|
|
void Tab770_application::init_query_mode(TMask& m)
|
|
{
|
|
init_mask(m);
|
|
}
|
|
|
|
void Tab770_application::init_insert_mode(TMask& m)
|
|
{
|
|
init_mask(m);
|
|
}
|
|
|
|
void Tab770_application::init_modify_mode(TMask& m)
|
|
{}
|
|
|
|
bool Tab770_application::user_create()
|
|
{
|
|
Tab_application::user_create();
|
|
_msk = get_mask();
|
|
_tabname = get_tabname();
|
|
|
|
if (IsCausali())
|
|
{
|
|
_msk->set_handler(F_CODTRIB, codtrib_handler);
|
|
_msk->set_handler(F_QUADRCE2, codqua_handler);
|
|
_msk->set_handler(F_QUADRAT, codqua_handler);
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
bool Tab770_application::firm_change_enabled() const
|
|
{
|
|
return FALSE;
|
|
}
|
|
|
|
int m73400(int argc, char* argv[])
|
|
{
|
|
Tab770_application a;
|
|
a.run(argc,argv, "Tabelle");
|
|
return 0;
|
|
}
|
|
|
|
|