which included commits to RCS files with non-trunk default branches. git-svn-id: svn://10.65.10.50/trunk@7804 c028cbd2-c16b-5b4b-a496-9718f37d4682
104 lines
2.2 KiB
C++
Executable File
104 lines
2.2 KiB
C++
Executable File
#include <automask.h>
|
|
#include <currency.h>
|
|
#include <relapp.h>
|
|
|
|
#include "in0.h"
|
|
#include "in0500a.h"
|
|
|
|
class TImmissione_mask : public TAutomask
|
|
{
|
|
protected:
|
|
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
|
|
|
public:
|
|
TImmissione_mask() : TAutomask("in0500a") { }
|
|
virtual ~TImmissione_mask() { }
|
|
};
|
|
|
|
bool TImmissione_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
|
{
|
|
switch (o.dlg())
|
|
{
|
|
case F_VALUTA:
|
|
if (e == fe_modify)
|
|
{
|
|
TEdit_field& cambio = efield(F_CAMBIO);
|
|
if (cambio.empty())
|
|
{
|
|
TCursor* cur = efield(F_VALUTA).browse()->cursor();
|
|
cambio.set(cur->curr().get("S4"));
|
|
}
|
|
}
|
|
break;
|
|
case F_AMM_LIRE:
|
|
if (e == fe_modify)
|
|
{
|
|
TMask& m = o.mask();
|
|
if (m.get_real(F_AMM_VALUTA).is_zero())
|
|
{
|
|
TCurrency curr(real(o.get()), "_FIRM");
|
|
curr.change_value(get(F_VALUTA), get_real(F_CAMBIO));
|
|
m.set(F_AMM_VALUTA, curr.string(), TRUE);
|
|
}
|
|
}
|
|
break;
|
|
case F_AMM_VALUTA:
|
|
if (e == fe_modify)
|
|
{
|
|
TMask& m = o.mask();
|
|
if (m.get_real(F_AMM_LIRE).is_zero())
|
|
{
|
|
TCurrency curr(real(o.get()), get(F_VALUTA), get_real(F_CAMBIO));
|
|
curr.change_value("_FIRM");
|
|
m.set(F_AMM_LIRE, curr.string(), TRUE);
|
|
}
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// Applicazione principale
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TImmissione_intra : public TRelation_application
|
|
{
|
|
TRelation* _rel;
|
|
TImmissione_mask* _msk;
|
|
|
|
protected:
|
|
virtual bool user_create();
|
|
virtual TRelation* get_relation() const { return _rel; }
|
|
virtual TMask* get_mask(int) { return _msk; }
|
|
virtual bool changing_mask(int mode) { return FALSE; }
|
|
virtual bool user_destroy();
|
|
|
|
public:
|
|
};
|
|
|
|
bool TImmissione_intra::user_create()
|
|
{
|
|
open_files(LF_TABCOM, LF_TAB, LF_CLIFO, LF_MOV,
|
|
LF_INTRA, LF_RINTRA, 0);
|
|
_rel = new TRelation(LF_INTRA);
|
|
_msk = new TImmissione_mask;
|
|
return TRUE;
|
|
}
|
|
|
|
bool TImmissione_intra::user_destroy()
|
|
{
|
|
delete _msk;
|
|
delete _rel;
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
int is0500(int argc, char* argv[])
|
|
{
|
|
TImmissione_intra a;
|
|
a.run(argc, argv, "Immissione movimenti");
|
|
return 0;
|
|
} |