campo-sirio/sc/sc2101.cpp
guy c8741666c9 sc0100.cpp Aggiunta gestione righe colorate
sc0100.h      Aggiunte variabili di supporto ai colori
sc0101.cpp    Corretto messaggio d'errore sugli importi
sc2100a.uml   Modificata ricerca sul codice lingua
sc2101.cpp    Cambiate due chiamate dirette con funzioni membro


git-svn-id: svn://10.65.10.50/trunk@4288 c028cbd2-c16b-5b4b-a496-9718f37d4682
1997-04-18 10:06:00 +00:00

103 lines
2.2 KiB
C++
Executable File

#include <prefix.h>
#include <utility.h>
#include "sc2101.h"
#include "sc2100a.h"
#include <comuni.h>
bool TEC_mask::codprof_handler(TMask_field& f, KEY k)
{
if (f.to_check(k))
{
TEdit_field & e = (TEdit_field &) f;
e.check_type(CHECK_REQUIRED);
const bool ok = e.check();
e.check_type(CHECK_NONE);
if (k == K_ENTER && !ok)
{
if (f.is_editable())
{
TEditable_field& ef = (TEditable_field&) f;
return f.error_box(ef.get_warning());
}
}
}
return TRUE;
}
bool TEC_mask::lingua_handler(TMask_field& f, KEY k)
{
if (k == K_TAB && f.focusdirty())
{
TCursor& cur = *(((TEdit_field&)(f.mask().field(F_CODPROF))).browse()->cursor());
// whew
TString16 lin = f.get();
if (lin != cur.curr().get("CODPROF").mid(4))
f.mask().field(F_CODPROF).check(RUNNING_CHECK);
}
return TRUE;
}
TEC_mask::TEC_mask(const char* name) : TSelection_mask(name), _ditta(LF_NDITTE)
{
_ditta.add(LF_ANAG, "TIPOA==TIPOA|CODANAGR==CODANAGR");
_ditta.add(LF_COMUNI, "COM==COMRF(COMRES)", 1, LF_ANAG, 101);
_ditta.add(LF_COMUNI, "COM==COMRES", 1, LF_ANAG, 102);
set_handler(F_CODPROF, codprof_handler);
set_handler(F_LINPROF, lingua_handler);
}
TEC_mask::~TEC_mask()
{
}
void TEC_mask::on_firm_change()
{
TMask::on_firm_change();
_ditta[0].put("CODDITTA", prefix().get_codditta());
if (_ditta.read() == NOERR)
{
const int alias = _ditta[LF_ANAG].get_char("TIPOA") == 'F' ? -101 : -102;
set(F_LUOGOSEND, _ditta.lfile(alias).get("DENCOM"));
}
}
void TEC_mask::start_run()
{
on_firm_change();
}
const char* TEC_mask::get_prof_base() const
{
return BASE_EC_PROFILE;
}
const TString& TEC_mask::get_prof_code() const
{
return get(F_CODPROF);
}
const TString& TEC_mask::get_prof_lang() const
{
return get(F_LINPROF);
}
const char* TEC_mask::get_prof_name() const
{
TString& tmp=(TString&)_tmp;
tmp = get_prof_code();
tmp << get_prof_lang();
return _tmp;
}