Patch level : 10.0 978
Files correlati : ef0.exe ef0300a.msk ef0300b.msk ef0300c.msk Ricompilazione Demo : [ ] Commento : 0001828: 207043 - Eliwork selezione effetti Il cliente in oggetto mi segnala che la creazione manuale effetti, oltre agli effetti spuntati ne estrae altri a random. git-svn-id: svn://10.65.10.50/branches/R_10_00@21943 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
8c83d9664e
commit
56498e8cc7
62
ef/ef0.cpp
62
ef/ef0.cpp
@ -6,36 +6,38 @@ int main(int argc, char** argv)
|
|||||||
const char op = argc < 2 ? '0' : argv[1][1];
|
const char op = argc < 2 ? '0' : argv[1][1];
|
||||||
switch (op)
|
switch (op)
|
||||||
{
|
{
|
||||||
case '1':
|
/*
|
||||||
ef0200(argc,argv);// GENERAZIONE EFFETTI DA E/C (OBSOLETO NON USARE PIU")
|
case '1':
|
||||||
break;
|
ef0200(argc,argv);// GENERAZIONE EFFETTI DA E/C (OBSOLETO NON USARE PIU")
|
||||||
case '2':
|
break;
|
||||||
ef0300(argc,argv);// AGGIORNAMENTO DISTINTE (DISTINTE DI PRESENTAZIONE)
|
*/
|
||||||
break;
|
case '2':
|
||||||
case '3':
|
ef0300(argc,argv);// AGGIORNAMENTO DISTINTE (DISTINTE DI PRESENTAZIONE)
|
||||||
ef0400(argc,argv);// ELIMINAZIONE EFFETTI
|
break;
|
||||||
break;
|
case '3':
|
||||||
case '4':
|
ef0400(argc,argv);// ELIMINAZIONE EFFETTI
|
||||||
ef0500(argc,argv);// EMISSIONE EFFETTI/DISTINTE
|
break;
|
||||||
break;
|
case '4':
|
||||||
case '5':
|
ef0500(argc,argv);// EMISSIONE EFFETTI/DISTINTE
|
||||||
ef0600(argc,argv);// STAMPE DI CONTROLLO EFFETTI
|
break;
|
||||||
break;
|
case '5':
|
||||||
case '6':
|
ef0600(argc,argv);// STAMPE DI CONTROLLO EFFETTI
|
||||||
ef0700(argc,argv);// GESTIONE TABELLA BANCHE DI PRESENTAZIONE
|
break;
|
||||||
break;
|
case '6':
|
||||||
case '7':
|
ef0700(argc,argv);// GESTIONE TABELLA BANCHE DI PRESENTAZIONE
|
||||||
ef0800(argc,argv);// CONTABILIZZAZIONE EFFETTI
|
break;
|
||||||
break;
|
case '7':
|
||||||
case '8':
|
ef0800(argc,argv);// CONTABILIZZAZIONE EFFETTI
|
||||||
ef0900(argc,argv);// PARAMETRI EFFETTI
|
break;
|
||||||
break;
|
case '8':
|
||||||
case '9':
|
ef0900(argc,argv);// PARAMETRI EFFETTI
|
||||||
ef0A00(argc,argv);// GENERAZIONE DISTINTE DA SCADENZE
|
break;
|
||||||
break;
|
case '9':
|
||||||
default:
|
ef0A00(argc,argv);// GENERAZIONE DISTINTE DA SCADENZE
|
||||||
ef0100(argc,argv);// GESTIONE EFFETTI
|
break;
|
||||||
break;
|
default:
|
||||||
|
ef0100(argc,argv);// GESTIONE EFFETTI
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
212
ef/ef0300.cpp
212
ef/ef0300.cpp
@ -28,7 +28,7 @@ protected:
|
|||||||
virtual int write(const TMask& m);
|
virtual int write(const TMask& m);
|
||||||
virtual bool remove();
|
virtual bool remove();
|
||||||
virtual TMask* get_mask(int mode) {return _msk;}
|
virtual TMask* get_mask(int mode) {return _msk;}
|
||||||
virtual bool changing_mask(int mode) {return FALSE;}
|
virtual bool changing_mask(int mode) {return false;}
|
||||||
virtual bool has_filtered_cursor() const { return true; }
|
virtual bool has_filtered_cursor() const { return true; }
|
||||||
static bool tipodist_handler(TMask_field& f, KEY k);
|
static bool tipodist_handler(TMask_field& f, KEY k);
|
||||||
static bool importo_handler(TMask_field& f, KEY k);
|
static bool importo_handler(TMask_field& f, KEY k);
|
||||||
@ -46,9 +46,10 @@ protected:
|
|||||||
static void calcola();
|
static void calcola();
|
||||||
static void aggiungi();
|
static void aggiungi();
|
||||||
static bool effetto_aggiunto(const long numero);
|
static bool effetto_aggiunto(const long numero);
|
||||||
static void carica_riba(int tipopag, const bool reset = TRUE);
|
static void carica_riba(int tipopag, const bool reset = true);
|
||||||
static void ord_data();
|
static void ordina(COMPARE_FUNCTION cf);
|
||||||
static void ord_fatt();
|
static const TString& get_ban_desc(const TRectype& eff);
|
||||||
|
|
||||||
// ritorna un riferimento allo sheet degli effetti (righe) nella
|
// ritorna un riferimento allo sheet degli effetti (righe) nella
|
||||||
// distinta
|
// distinta
|
||||||
TSheet_field& righe_sheet() const { return _msk->sfield(F_SHEET_RIBA); }
|
TSheet_field& righe_sheet() const { return _msk->sfield(F_SHEET_RIBA); }
|
||||||
@ -129,7 +130,7 @@ const char* TVariazione_distinte::get_next_key()
|
|||||||
return format("%d|%ld",F_NUMBER,ndist);
|
return format("%d|%ld",F_NUMBER,ndist);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ritorna TRUE se trovo nell'array delle righe distinta l'effetto
|
// ritorna true se trovo nell'array delle righe distinta l'effetto
|
||||||
// passato
|
// passato
|
||||||
bool TVariazione_distinte::cerca(long num)
|
bool TVariazione_distinte::cerca(long num)
|
||||||
{
|
{
|
||||||
@ -140,9 +141,9 @@ bool TVariazione_distinte::cerca(long num)
|
|||||||
TEffetto& eff = (TEffetto&)righedist[i];
|
TEffetto& eff = (TEffetto&)righedist[i];
|
||||||
|
|
||||||
if (num == eff.get_long(EFF_NPROGTR))
|
if (num == eff.get_long(EFF_NPROGTR))
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
return FALSE;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// metodo che permette di scivere sull'array (in memoria) gli
|
// metodo che permette di scivere sull'array (in memoria) gli
|
||||||
@ -194,6 +195,22 @@ TToken_string* TVariazione_distinte::common_f(const TMask& m, TToken_string& dat
|
|||||||
return &datidist;
|
return &datidist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const TString& TVariazione_distinte::get_ban_desc(const TRectype& eff)
|
||||||
|
{
|
||||||
|
TString16 codice = eff.get(EFF_CODABI);
|
||||||
|
const TString& des_abi = cache().get("%BAN", codice, "S0");
|
||||||
|
codice << eff.get(EFF_CODCAB);
|
||||||
|
const TString& des_cab = cache().get("%BAN", codice, "S0");
|
||||||
|
|
||||||
|
if (des_cab.starts_with(des_abi))
|
||||||
|
return des_cab;
|
||||||
|
|
||||||
|
TString& tmp = get_tmp_string();
|
||||||
|
tmp << des_abi << ' ' << des_cab;
|
||||||
|
tmp.strip_double_spaces();
|
||||||
|
return tmp.cut(50);
|
||||||
|
}
|
||||||
|
|
||||||
// carica nella maschera i dati dai files
|
// carica nella maschera i dati dai files
|
||||||
int TVariazione_distinte::read(TMask& m)
|
int TVariazione_distinte::read(TMask& m)
|
||||||
{
|
{
|
||||||
@ -235,14 +252,8 @@ int TVariazione_distinte::read(TMask& m)
|
|||||||
|
|
||||||
codice.cut(0);
|
codice.cut(0);
|
||||||
codice << eff.get_tipo(); codice << '|' << eff.get(EFF_CODCF);
|
codice << eff.get_tipo(); codice << '|' << eff.get(EFF_CODCF);
|
||||||
riga.add(cache().get(LF_CLIFO, codice, CLI_RAGSOC));
|
riga.add(cache().get(LF_CLIFO, codice, CLI_RAGSOC));
|
||||||
|
riga.add(get_ban_desc(eff));
|
||||||
codice = eff.get(EFF_CODABI);
|
|
||||||
TString desc = cache().get("%BAN", codice, "S0");
|
|
||||||
codice << eff.get(EFF_CODCAB);
|
|
||||||
desc << ' ' << cache().get("%BAN", codice, "S0");
|
|
||||||
desc.cut(50);
|
|
||||||
riga.add(desc);
|
|
||||||
|
|
||||||
if (eff.fatt(numero))// se l'effetto contiene solo una fattura
|
if (eff.fatt(numero))// se l'effetto contiene solo una fattura
|
||||||
{ // metto i riferimenti al documento ed al numero di rata
|
{ // metto i riferimenti al documento ed al numero di rata
|
||||||
@ -325,7 +336,7 @@ int TVariazione_distinte::rewrite(const TMask& m)
|
|||||||
if (num == eff.get_long(EFF_NPROGTR))
|
if (num == eff.get_long(EFF_NPROGTR))
|
||||||
{
|
{
|
||||||
// tolgo l'effetto dall'array
|
// tolgo l'effetto dall'array
|
||||||
righedist.destroy(j,TRUE);
|
righedist.destroy(j,true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -371,7 +382,7 @@ int TVariazione_distinte::write(const TMask& m)
|
|||||||
aggiorna();
|
aggiorna();
|
||||||
|
|
||||||
TToken_string datidist;
|
TToken_string datidist;
|
||||||
err = _distinta->write(TRUE, common_f(m, datidist));
|
err = _distinta->write(true, common_f(m, datidist));
|
||||||
if (err == NOERR)
|
if (err == NOERR)
|
||||||
{ //riposiziono la relazione
|
{ //riposiziono la relazione
|
||||||
_rel->lfile().setkey(4);
|
_rel->lfile().setkey(4);
|
||||||
@ -423,7 +434,7 @@ bool TVariazione_distinte::user_create()
|
|||||||
_m2->set_handler(F_TIPORD, ordina_handler);
|
_m2->set_handler(F_TIPORD, ordina_handler);
|
||||||
righe_sel_sheet().set_notify(imp_notify);
|
righe_sel_sheet().set_notify(imp_notify);
|
||||||
righe_sel_sheet().sheet_mask().set_handler(FIRST_FIELD, check_handler);
|
righe_sel_sheet().sheet_mask().set_handler(FIRST_FIELD, check_handler);
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// distruggo la relap
|
// distruggo la relap
|
||||||
@ -433,7 +444,7 @@ bool TVariazione_distinte::user_destroy()
|
|||||||
delete _m2;
|
delete _m2;
|
||||||
delete _rel;
|
delete _rel;
|
||||||
delete _distinta;
|
delete _distinta;
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Cerca se la riba indicata da <numero> e' gia stato inserita nello spreadsheet principale
|
// Cerca se la riba indicata da <numero> e' gia stato inserita nello spreadsheet principale
|
||||||
@ -441,13 +452,13 @@ bool TVariazione_distinte::effetto_aggiunto(const long numero)
|
|||||||
{
|
{
|
||||||
TMask* m = app()._msk;
|
TMask* m = app()._msk;
|
||||||
TSheet_field& sf_riba = (TSheet_field&)m->field(F_SHEET_RIBA);
|
TSheet_field& sf_riba = (TSheet_field&)m->field(F_SHEET_RIBA);
|
||||||
bool rt = FALSE;
|
bool rt = false;
|
||||||
const int items = sf_riba.items();
|
const int items = sf_riba.items();
|
||||||
for (int i=0; i<items && !rt; i++)
|
for (int i=0; i<items && !rt; i++)
|
||||||
{
|
{
|
||||||
TToken_string& row = sf_riba.row(i);
|
TToken_string& row = sf_riba.row(i);
|
||||||
if (row.get_long(1) == numero)
|
if (row.get_long(1) == numero)
|
||||||
rt = TRUE;
|
rt = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return rt;
|
return rt;
|
||||||
@ -460,6 +471,8 @@ bool TVariazione_distinte::effetto_aggiunto(const long numero)
|
|||||||
// tipo di pagamento.
|
// tipo di pagamento.
|
||||||
void TVariazione_distinte::carica_riba(int tipopag, const bool reset)
|
void TVariazione_distinte::carica_riba(int tipopag, const bool reset)
|
||||||
{
|
{
|
||||||
|
TWait_cursor hourglass;
|
||||||
|
|
||||||
// deve caricare solo quegli effetti che non hanno riferimento alla
|
// deve caricare solo quegli effetti che non hanno riferimento alla
|
||||||
// distinta quindi setta i campi ad essa relativi a zero
|
// distinta quindi setta i campi ad essa relativi a zero
|
||||||
char tipodist = 0;
|
char tipodist = 0;
|
||||||
@ -472,11 +485,11 @@ void TVariazione_distinte::carica_riba(int tipopag, const bool reset)
|
|||||||
TMask* m2 = app()._m2;
|
TMask* m2 = app()._m2;
|
||||||
if (reset)
|
if (reset)
|
||||||
m2->reset();
|
m2->reset();
|
||||||
TSheet_field& sf = (TSheet_field&)m2->field(F_SHEET);
|
TSheet_field& sf = m2->sfield(F_SHEET);
|
||||||
if (reset)
|
if (reset)
|
||||||
sf.reset();
|
sf.reset();
|
||||||
|
|
||||||
TString16 codval = app()._msk->get(F_CODVAL);
|
TString4 codval = app()._msk->get(F_CODVAL);
|
||||||
TString16 codtab;
|
TString16 codtab;
|
||||||
|
|
||||||
int err, i = 0;
|
int err, i = 0;
|
||||||
@ -509,13 +522,7 @@ void TVariazione_distinte::carica_riba(int tipopag, const bool reset)
|
|||||||
TString16 codice;
|
TString16 codice;
|
||||||
codice << tipo << '|' << eff.get(EFF_CODCF);
|
codice << tipo << '|' << eff.get(EFF_CODCF);
|
||||||
riga.add(cache().get(LF_CLIFO, codice, CLI_RAGSOC));
|
riga.add(cache().get(LF_CLIFO, codice, CLI_RAGSOC));
|
||||||
|
riga.add(get_ban_desc(eff));
|
||||||
codice = eff.get(EFF_CODABI);
|
|
||||||
TString desc(cache().get("%BAN", codice, "S0"));
|
|
||||||
codice << eff.get(EFF_CODCAB);
|
|
||||||
desc << " " << cache().get("%BAN", codice, "S0");
|
|
||||||
desc.cut(50);
|
|
||||||
riga.add(desc);
|
|
||||||
|
|
||||||
if (eff.fatt(numero))// se l'effetto contiene solo una fattura
|
if (eff.fatt(numero))// se l'effetto contiene solo una fattura
|
||||||
{ // metto i riferimenti al documento ed al numero di rata
|
{ // metto i riferimenti al documento ed al numero di rata
|
||||||
@ -565,7 +572,7 @@ bool TVariazione_distinte::tipodist_handler(TMask_field& f, KEY k)
|
|||||||
if (allo_sconto)
|
if (allo_sconto)
|
||||||
m.set(F_TIPOPAG,2);
|
m.set(F_TIPOPAG,2);
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handler per gestire il caricamento degli effetti nella distinta
|
// Handler per gestire il caricamento degli effetti nella distinta
|
||||||
@ -579,11 +586,11 @@ bool TVariazione_distinte::importo_handler(TMask_field& f, KEY k)
|
|||||||
if (k == K_SPACE)
|
if (k == K_SPACE)
|
||||||
{
|
{
|
||||||
aggiungi();
|
aggiungi();
|
||||||
TSheet_field& sf_riba = (TSheet_field&)f.mask().field(F_SHEET_RIBA);
|
TSheet_field& sf_riba = f.mask().sfield(F_SHEET_RIBA);
|
||||||
sf_riba.force_update();
|
sf_riba.force_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handler per gestire il caricamento degli effetti nella distinta in
|
// Handler per gestire il caricamento degli effetti nella distinta in
|
||||||
@ -595,11 +602,11 @@ bool TVariazione_distinte::imp_sel_handler(TMask_field& f, KEY k)
|
|||||||
// se quando si entra nell maschera il campo contiene un valore
|
// se quando si entra nell maschera il campo contiene un valore
|
||||||
// significa che si deve procedere con il caricamento automatico
|
// significa che si deve procedere con il caricamento automatico
|
||||||
// di effetti per l'importo iscritto nel campo
|
// di effetti per l'importo iscritto nel campo
|
||||||
if (k == K_TAB && f.to_check(k, TRUE))
|
if (k == K_TAB && f.to_check(k, true))
|
||||||
{
|
{
|
||||||
TMask* m = app()._msk;
|
TMask* m = app()._msk;
|
||||||
TSheet_field& sf = (TSheet_field&)m2.field(F_SHEET);
|
TSheet_field& sf = m2.sfield(F_SHEET);
|
||||||
TSheet_field& sf_riba = (TSheet_field&)m->field(F_SHEET_RIBA);
|
TSheet_field& sf_riba = m->sfield(F_SHEET_RIBA);
|
||||||
real res = m2.get_real(F_IMPSEL);
|
real res = m2.get_real(F_IMPSEL);
|
||||||
if (res > ZERO)
|
if (res > ZERO)
|
||||||
{ // se i due importi sono diversi da zero
|
{ // se i due importi sono diversi da zero
|
||||||
@ -628,7 +635,7 @@ bool TVariazione_distinte::imp_sel_handler(TMask_field& f, KEY k)
|
|||||||
for (i = 0; res > ZERO && i < items; i++)
|
for (i = 0; res > ZERO && i < items; i++)
|
||||||
{
|
{
|
||||||
TToken_string& row = sf.row(i);
|
TToken_string& row = sf.row(i);
|
||||||
TString16 codval = row.get(sf.cid2index(F_VALUTA));
|
TString4 codval = row.get(sf.cid2index(F_VALUTA));
|
||||||
codval.trim();
|
codval.trim();
|
||||||
const bool valuta = ::is_true_value(codval) ;
|
const bool valuta = ::is_true_value(codval) ;
|
||||||
const real imp(row.get(sf.cid2index(valuta ? F_IMPORTOVAL : F_IMPORTO)));
|
const real imp(row.get(sf.cid2index(valuta ? F_IMPORTOVAL : F_IMPORTO)));
|
||||||
@ -655,26 +662,21 @@ bool TVariazione_distinte::conferma_handler(TMask_field& f, KEY k)
|
|||||||
{
|
{
|
||||||
if (k == K_ENTER)
|
if (k == K_ENTER)
|
||||||
{
|
{
|
||||||
TMask * msk = app()._msk;
|
TMask* msk = app()._msk;
|
||||||
TSheet_field & sf_riba = (TSheet_field&)msk->field(F_SHEET_RIBA);
|
TSheet_field& sf_riba = msk->sfield(F_SHEET_RIBA);
|
||||||
TMask& m = f.mask();
|
TMask& m = f.mask();
|
||||||
|
|
||||||
m.close(); // chiudo la maschera secondaria
|
m.close(); // chiudo la maschera secondaria
|
||||||
// scarico tutte le righe, selezionate, dello sheet della maschera
|
// scarico tutte le righe, selezionate, dello sheet della maschera
|
||||||
// secondaria nello sheet della maschera primaria della relap (ef0300a)
|
// secondaria nello sheet della maschera primaria della relap (ef0300a)
|
||||||
TSheet_field& sf = (TSheet_field&)m.field(F_SHEET);
|
TSheet_field& sf = m.sfield(F_SHEET);
|
||||||
int items = sf.items();
|
FOR_EACH_SHEET_ROW(sf, i, row) if ((*row)[0] == 'X') // selected
|
||||||
for (int i = 0; i < items; i++)
|
|
||||||
{
|
{
|
||||||
TToken_string& row = sf.row(i);
|
row->add(" ", 0);
|
||||||
if (*row.get(0) == 'X') // selected
|
sf_riba.row(-1) = *row;
|
||||||
{
|
|
||||||
row.add(" ", 0);
|
|
||||||
sf_riba.row(-1) = row;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handler per gestire la pressione del bottone annulla della maschera
|
// Handler per gestire la pressione del bottone annulla della maschera
|
||||||
@ -683,7 +685,7 @@ bool TVariazione_distinte::annulla_handler(TMask_field& f, KEY k)
|
|||||||
{
|
{
|
||||||
TMask& m = f.mask();
|
TMask& m = f.mask();
|
||||||
m.close();
|
m.close();
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handler per gestire la scelta per data, nella maschera di scelta
|
// Handler per gestire la scelta per data, nella maschera di scelta
|
||||||
@ -695,13 +697,10 @@ bool TVariazione_distinte::data_handler(TMask_field& f, KEY k)
|
|||||||
// Carica prima tutte le ri.ba e poi toglie quelle che non servono in base alla selzione
|
// Carica prima tutte le ri.ba e poi toglie quelle che non servono in base alla selzione
|
||||||
int tipopag = app()._msk->get_int(F_TIPOPAG);
|
int tipopag = app()._msk->get_int(F_TIPOPAG);
|
||||||
if (tipopag != 0)
|
if (tipopag != 0)
|
||||||
{
|
carica_riba(tipopag, false);
|
||||||
TWait_cursor hourglass;
|
|
||||||
carica_riba(tipopag, FALSE);
|
|
||||||
}
|
|
||||||
|
|
||||||
TMask& m = f.mask();
|
TMask& m = f.mask();
|
||||||
bool deleted = FALSE;
|
bool deleted = false;
|
||||||
TDate datad = m.get_date(F_DADATA);
|
TDate datad = m.get_date(F_DADATA);
|
||||||
TDate dataa = m.get_date(F_ADATA);
|
TDate dataa = m.get_date(F_ADATA);
|
||||||
|
|
||||||
@ -710,7 +709,7 @@ bool TVariazione_distinte::data_handler(TMask_field& f, KEY k)
|
|||||||
if (!dataa.ok())
|
if (!dataa.ok())
|
||||||
dataa = eotime;
|
dataa = eotime;
|
||||||
TDate data_sh;
|
TDate data_sh;
|
||||||
TSheet_field& sf = (TSheet_field&)m.field(F_SHEET);
|
TSheet_field& sf = m.sfield(F_SHEET);
|
||||||
TString_array& sa = sf.rows_array();
|
TString_array& sa = sf.rows_array();
|
||||||
const int field = m.get(F_TIPORD) == "F" ? 6 : 2;
|
const int field = m.get(F_TIPORD) == "F" ? 6 : 2;
|
||||||
// tolgo dallo sheet gli effetti che hanno la data non compresa nel range
|
// tolgo dallo sheet gli effetti che hanno la data non compresa nel range
|
||||||
@ -724,36 +723,33 @@ bool TVariazione_distinte::data_handler(TMask_field& f, KEY k)
|
|||||||
sa.pack();
|
sa.pack();
|
||||||
sf.force_update();
|
sf.force_update();
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// COMPARE FUNCTION per l'ordinamento per data degli effetti presenti
|
||||||
|
// nello sheet, nella maschera di scelta delle riba (ef0300c)
|
||||||
|
HIDDEN int confronta_numero(const TObject** o1, const TObject** o2)
|
||||||
|
{
|
||||||
|
TToken_string* s1 = (TToken_string*) *o1;
|
||||||
|
TToken_string* s2 = (TToken_string*) *o2;
|
||||||
|
const long eff1 = s1->get_long(1);
|
||||||
|
const long eff2 = s2->get_long(1);
|
||||||
|
return eff1-eff2;
|
||||||
|
}
|
||||||
|
|
||||||
// COMPARE FUNCTION per l'ordinamento per data degli effetti presenti
|
// COMPARE FUNCTION per l'ordinamento per data degli effetti presenti
|
||||||
// nello sheet, nella maschera di scelta delle riba (ef0300c)
|
// nello sheet, nella maschera di scelta delle riba (ef0300c)
|
||||||
HIDDEN int confronta_data(const TObject** o1, const TObject** o2)
|
HIDDEN int confronta_data(const TObject** o1, const TObject** o2)
|
||||||
{
|
{
|
||||||
TToken_string* s1 = (TToken_string*) *o1;
|
TToken_string* s1 = (TToken_string*) *o1;
|
||||||
TToken_string* s2 = (TToken_string*) *o2;
|
TToken_string* s2 = (TToken_string*) *o2;
|
||||||
TDate data1 = s1->get(2);
|
const TDate data1 = s1->get(2);
|
||||||
TDate data2 = s2->get(2);
|
const TDate data2 = s2->get(2);
|
||||||
|
|
||||||
if (data1 == data2)
|
if (data1 != data2)
|
||||||
return 0;
|
return (data1 > data2) ? +1 : -1;
|
||||||
else
|
|
||||||
return (data1 > data2) ? +1 : -1;
|
return confronta_numero(o1, o2);
|
||||||
}
|
|
||||||
|
|
||||||
// Handler per gestire l'ordinamento per data degli effetti presenti
|
|
||||||
// nello sheet, nella maschera di scelta delle riba (ef0300c)
|
|
||||||
void TVariazione_distinte::ord_data()
|
|
||||||
{
|
|
||||||
TWait_cursor hourglass;
|
|
||||||
TMask* m = app()._m2;
|
|
||||||
TSheet_field& sf = (TSheet_field&)m->field(F_SHEET);
|
|
||||||
// scarico tutte le righe dello sheet in un array
|
|
||||||
TArray& effetti = sf.rows_array();
|
|
||||||
// faccio l'ordinamento degli elementi dell'array
|
|
||||||
effetti.sort(confronta_data);
|
|
||||||
sf.force_update();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// COMPARE FUNCTION per l'ordinamento per numero e data fattura degli
|
// COMPARE FUNCTION per l'ordinamento per numero e data fattura degli
|
||||||
@ -762,42 +758,41 @@ HIDDEN int confronta_fatt(const TObject** o1, const TObject** o2)
|
|||||||
{
|
{
|
||||||
TToken_string* s1 = (TToken_string*) *o1;
|
TToken_string* s1 = (TToken_string*) *o1;
|
||||||
TToken_string* s2 = (TToken_string*) *o2;
|
TToken_string* s2 = (TToken_string*) *o2;
|
||||||
TDate data1 = s1->get(6);
|
const TDate data1 = s1->get(6);
|
||||||
TDate data2 = s2->get(6);
|
const TDate data2 = s2->get(6);
|
||||||
|
|
||||||
// ordinamento sulla data fattura
|
// ordinamento sulla data fattura
|
||||||
if (data1 == data2)
|
if (data1 != data2)
|
||||||
return 0;
|
|
||||||
else
|
|
||||||
return (data1 > data2) ? +1 : -1;
|
return (data1 > data2) ? +1 : -1;
|
||||||
|
|
||||||
|
return confronta_data(o1, o2);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handler per gestire l'ordinamento per numero e data fattura degli
|
void TVariazione_distinte::ordina(COMPARE_FUNCTION cf)
|
||||||
// effetti presenti nello sheet, nella maschera di scelta delle riba
|
|
||||||
void TVariazione_distinte::ord_fatt()
|
|
||||||
{
|
{
|
||||||
TWait_cursor hourglass;
|
TWait_cursor hourglass;
|
||||||
TMask* m = app()._m2;
|
TSheet_field& sf = app()._m2->sfield(F_SHEET);
|
||||||
TSheet_field& sf = (TSheet_field&)m->field(F_SHEET);
|
|
||||||
// scarico le righe dello sheet in un array
|
// scarico le righe dello sheet in un array
|
||||||
TArray& effetti = sf.rows_array();
|
TArray& effetti = sf.rows_array();
|
||||||
effetti.sort(confronta_fatt);// ordino gli elementi dell'array
|
effetti.sort(cf);// ordino gli elementi dell'array
|
||||||
sf.force_update();
|
sf.force_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Handler per gestire i diversi ordinamenti, nella maschera di scelta
|
// Handler per gestire i diversi ordinamenti, nella maschera di scelta
|
||||||
// delle riba (ef0300c)
|
// delle riba (ef0300c)
|
||||||
bool TVariazione_distinte::ordina_handler(TMask_field& f, KEY k)
|
bool TVariazione_distinte::ordina_handler(TMask_field& f, KEY k)
|
||||||
{
|
{
|
||||||
if (f.to_check(k, TRUE))
|
if (k == K_SPACE && f.mask().is_running())
|
||||||
{
|
{
|
||||||
char ord = f.get()[0];
|
switch(f.get()[0])
|
||||||
if (ord == 'S')//ordino gli effetti nello sheet per data
|
{
|
||||||
ord_data();
|
case 'S': ordina(confronta_data); break; //ordino gli effetti nello sheet per data
|
||||||
if (ord == 'F')
|
case 'F': ordina(confronta_fatt); break; //ordino gli effetti nello sheet per fattura
|
||||||
ord_fatt();//ordino gli effetti nello sheet per fattura
|
default : ordina(confronta_numero); break; //ordino gli effetti nello sheet per numero
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TVariazione_distinte::uncontabilize_handler(TMask_field& f, KEY k)
|
bool TVariazione_distinte::uncontabilize_handler(TMask_field& f, KEY k)
|
||||||
@ -837,7 +832,7 @@ bool TVariazione_distinte::uncontabilize_handler(TMask_field& f, KEY k)
|
|||||||
m.stop_run(K_ESC);
|
m.stop_run(K_ESC);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Metodo che calcola i totali relativi alla distinta (totale in
|
// Metodo che calcola i totali relativi alla distinta (totale in
|
||||||
@ -845,10 +840,10 @@ bool TVariazione_distinte::uncontabilize_handler(TMask_field& f, KEY k)
|
|||||||
void TVariazione_distinte::calcola_totale()
|
void TVariazione_distinte::calcola_totale()
|
||||||
{
|
{
|
||||||
TMask* m = app()._msk;
|
TMask* m = app()._msk;
|
||||||
TSheet_field& sf = (TSheet_field&)m->field(F_SHEET_RIBA);
|
TSheet_field& sf = m->sfield(F_SHEET_RIBA);
|
||||||
const int items = sf.items();
|
const int items = sf.items();
|
||||||
real impdist;
|
real impdist;
|
||||||
const TString16 codval = m->get(F_CODVAL);
|
const TString& codval = m->get(F_CODVAL);
|
||||||
const bool valuta = ::is_true_value(codval);
|
const bool valuta = ::is_true_value(codval);
|
||||||
|
|
||||||
for (int i = 0; i < items; i++)
|
for (int i = 0; i < items; i++)
|
||||||
@ -877,7 +872,7 @@ bool TVariazione_distinte::dist_check_handler(TMask_field& f, KEY key)
|
|||||||
row.add(checked ? "X" : "", 0);
|
row.add(checked ? "X" : "", 0);
|
||||||
app().calcola_totale();
|
app().calcola_totale();
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -890,15 +885,11 @@ void TVariazione_distinte::calcola()
|
|||||||
const bool valuta = ::is_true_value(m2.get(F_CODVALS));
|
const bool valuta = ::is_true_value(m2.get(F_CODVALS));
|
||||||
const int imp_col = sf.cid2index(valuta ? F_IMPORTOVAL : F_IMPORTO); // Colonna con importo
|
const int imp_col = sf.cid2index(valuta ? F_IMPORTOVAL : F_IMPORTO); // Colonna con importo
|
||||||
real impsel;
|
real impsel;
|
||||||
for (int i = 0; i < sf.items(); i++)
|
FOR_EACH_SHEET_ROW(sf, i, row)
|
||||||
{
|
{
|
||||||
TToken_string& row = sf.row(i);
|
|
||||||
// se l'effetto è selezionato aggiungo il suo importo al totale importo selezionato
|
// se l'effetto è selezionato aggiungo il suo importo al totale importo selezionato
|
||||||
if (row.get_char(0) == 'X')
|
if (row->get_char(0) == 'X')
|
||||||
{
|
impsel += real(row->get(imp_col));
|
||||||
const real imp = row.get(imp_col);
|
|
||||||
impsel += imp;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
m2.set(F_IMPSEL, impsel);
|
m2.set(F_IMPSEL, impsel);
|
||||||
|
|
||||||
@ -918,7 +909,7 @@ bool TVariazione_distinte::check_handler(TMask_field& f, KEY key)
|
|||||||
row.add(checked ? "X" : "", 0);
|
row.add(checked ? "X" : "", 0);
|
||||||
app().calcola();
|
app().calcola();
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Metodo che permette di aggiungere effetti alla distinta caricandoli
|
// Metodo che permette di aggiungere effetti alla distinta caricandoli
|
||||||
@ -930,10 +921,7 @@ void TVariazione_distinte::aggiungi()
|
|||||||
TMask* m2 = app()._m2;
|
TMask* m2 = app()._m2;
|
||||||
int tipopag = m->get_int(F_TIPOPAG);
|
int tipopag = m->get_int(F_TIPOPAG);
|
||||||
if (tipopag != 0)
|
if (tipopag != 0)
|
||||||
{
|
|
||||||
TWait_cursor hourglass;
|
|
||||||
carica_riba(tipopag);
|
carica_riba(tipopag);
|
||||||
}
|
|
||||||
m2->set(F_CODVALS, m->get(F_CODVAL));
|
m2->set(F_CODVALS, m->get(F_CODVAL));
|
||||||
calcola();
|
calcola();
|
||||||
m2->run();
|
m2->run();
|
||||||
@ -948,9 +936,9 @@ bool TVariazione_distinte::impdist_notify(TSheet_field& s, int r, KEY key)
|
|||||||
{
|
{
|
||||||
aggiungi();
|
aggiungi();
|
||||||
s.force_update();
|
s.force_update();
|
||||||
return FALSE;
|
return false;
|
||||||
}
|
}
|
||||||
return TRUE;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TVariazione_distinte::imp_notify(TSheet_field& s, int r, KEY key)
|
bool TVariazione_distinte::imp_notify(TSheet_field& s, int r, KEY key)
|
||||||
|
32
ef/ef0300.h
32
ef/ef0300.h
@ -4,22 +4,22 @@
|
|||||||
// DEFINIZIONE CAMPI MASCHERE PER LA GESTIONE DISTINTE
|
// DEFINIZIONE CAMPI MASCHERE PER LA GESTIONE DISTINTE
|
||||||
// campi maschera ef0300a.uml
|
// campi maschera ef0300a.uml
|
||||||
|
|
||||||
#define F_TIPODIST 101
|
#define F_TIPODIST 151
|
||||||
#define F_NUMBER 102
|
#define F_NUMBER 152
|
||||||
#define F_NUMBERRIGA 103
|
#define F_NUMBERRIGA 153
|
||||||
#define F_DATA 104
|
#define F_DATA 154
|
||||||
#define F_DENBANP 105
|
#define F_DENBANP 155
|
||||||
#define F_CODABIP 106
|
#define F_CODABIP 156
|
||||||
#define F_CODCABP 107
|
#define F_CODCABP 157
|
||||||
#define F_TOTIMP 108
|
#define F_TOTIMP 158
|
||||||
#define F_IMPBUTTON 109
|
#define F_IMPBUTTON 159
|
||||||
#define F_CODVAL 111
|
#define F_CODVAL 161
|
||||||
#define F_TIPOPAG 112
|
#define F_TIPOPAG 162
|
||||||
#define F_SHEET_RIBA 113
|
#define F_SHEET_RIBA 163
|
||||||
#define F_NPROGTR 114
|
#define F_NPROGTR 164
|
||||||
#define F_TIPOCF 115
|
#define F_TIPOCF 165
|
||||||
#define F_UNCONTABIL 116
|
#define F_UNCONTABIL 166
|
||||||
#define F_PROG 117
|
#define F_PROG 167
|
||||||
|
|
||||||
// Identificatori campi per lo spreadsheet di selezione RiBa da aggiungere
|
// Identificatori campi per lo spreadsheet di selezione RiBa da aggiungere
|
||||||
// alla distinta (ef0300c.uml)
|
// alla distinta (ef0300c.uml)
|
||||||
|
@ -5,16 +5,6 @@ TOOLBAR "topbar" 0 0 0 2
|
|||||||
#include <relapbar.h>
|
#include <relapbar.h>
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
TOOLBAR "" 0 -2 0 2
|
|
||||||
|
|
||||||
BUTTON F_UNCONTABIL 30 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT -11 0 "~Annulla contabilizzazione"
|
|
||||||
FLAGS "H"
|
|
||||||
END
|
|
||||||
|
|
||||||
ENDPAGE
|
|
||||||
|
|
||||||
PAGE "Distinta" 0 2 0 0
|
PAGE "Distinta" 0 2 0 0
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 78 10
|
GROUPBOX DLG_NULL 78 10
|
||||||
@ -92,7 +82,7 @@ END
|
|||||||
|
|
||||||
NUMBER F_CODABIP 5
|
NUMBER F_CODABIP 5
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 15 3 "Codice ABI "
|
PROMPT 2 3 "Banca di Presentazione "
|
||||||
FIELD LF_EFFETTI->CODABIP
|
FIELD LF_EFFETTI->CODABIP
|
||||||
FLAGS "Z"
|
FLAGS "Z"
|
||||||
USE BNP
|
USE BNP
|
||||||
@ -114,7 +104,7 @@ END
|
|||||||
|
|
||||||
NUMBER F_CODCABP 5
|
NUMBER F_CODCABP 5
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 15 4 "Codice CAB "
|
PROMPT 35 3 ""
|
||||||
FIELD LF_EFFETTI->CODCABP
|
FIELD LF_EFFETTI->CODCABP
|
||||||
FLAGS "Z"
|
FLAGS "Z"
|
||||||
COPY ALL F_CODABIP
|
COPY ALL F_CODABIP
|
||||||
@ -123,15 +113,15 @@ END
|
|||||||
|
|
||||||
NUMBER F_PROG 2
|
NUMBER F_PROG 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 35 4 ""
|
PROMPT 44 3 ""
|
||||||
FLAGS "Z"
|
FLAGS "Z"
|
||||||
COPY ALL F_CODABIP
|
COPY ALL F_CODABIP
|
||||||
CHECKTYPE SEARCH
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_DENBANP 50
|
STRING F_DENBANP 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 5 "Banca di Presentazione "
|
PROMPT 26 4 ""
|
||||||
USE %BAN KEY 2 SELECT 100@->CODTAB!=""
|
USE %BAN KEY 2 SELECT 100@->CODTAB!=""
|
||||||
JOIN BNP ALIAS 100 INTO CODTAB==CODTAB
|
JOIN BNP ALIAS 100 INTO CODTAB==CODTAB
|
||||||
INPUT S0 F_DENBANP
|
INPUT S0 F_DENBANP
|
||||||
@ -146,7 +136,7 @@ END
|
|||||||
|
|
||||||
LIST F_TIPOPAG 24
|
LIST F_TIPOPAG 24
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 6 "Tipo Pagamento "
|
PROMPT 2 5 "Tipo Pagamento "
|
||||||
FIELD LF_EFFETTI->TIPOPAG
|
FIELD LF_EFFETTI->TIPOPAG
|
||||||
ITEM "2|Tratta"
|
ITEM "2|Tratta"
|
||||||
ITEM "3|Ricevuta Bancaria"
|
ITEM "3|Ricevuta Bancaria"
|
||||||
@ -158,44 +148,51 @@ BEGIN
|
|||||||
ITEM "9|Bonifico"
|
ITEM "9|Bonifico"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
CURRENCY F_TOTIMP 18
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 6 "Valore di presentazione "
|
||||||
|
FLAGS "D"
|
||||||
|
DRIVENBY F_CODVAL
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_CODVAL 3
|
STRING F_CODVAL 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 7 "Codice Valuta "
|
PROMPT 47 6 "Valuta "
|
||||||
FLAGS "UZ"
|
FLAGS "UZ"
|
||||||
USE %VAL
|
USE %VAL
|
||||||
INPUT CODTAB F_CODVAL
|
INPUT CODTAB F_CODVAL
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Codice" CODTAB
|
||||||
DISPLAY "Nome@50" S0
|
DISPLAY "Nome@50" S0
|
||||||
OUTPUT F_CODVAL CODTAB
|
OUTPUT F_CODVAL CODTAB
|
||||||
END
|
CHECKTYPE NORMAL
|
||||||
|
|
||||||
CURRENCY F_TOTIMP 18
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 8 "Valore di presentazione "
|
|
||||||
FLAGS "D"
|
|
||||||
DRIVENBY F_CODVAL
|
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON F_IMPBUTTON 10 2
|
BUTTON F_IMPBUTTON 10 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 50 7 "~Selezione"
|
PROMPT 65 5 "~Selezione"
|
||||||
PICTURE BMP_SELECT
|
PICTURE BMP_SELECT
|
||||||
END
|
END
|
||||||
|
|
||||||
|
BUTTON F_UNCONTABIL 30 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 7 "~Annulla contabilizzazione"
|
||||||
|
FLAGS "H"
|
||||||
|
END
|
||||||
|
|
||||||
SPREADSHEET F_SHEET_RIBA
|
SPREADSHEET F_SHEET_RIBA
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 10 "RIGHE DISTINTA"
|
PROMPT 0 10 "RIGHE DISTINTA"
|
||||||
ITEM "Da elim."
|
ITEM "Da\nelim.@4F"
|
||||||
ITEM "Nr. Ri.Ba."
|
ITEM "Numero\nRi.Ba.@7F"
|
||||||
ITEM "Scadenza"
|
ITEM "Data\nScadenza@10F"
|
||||||
ITEM "Cliente/Fornitore@50"
|
ITEM "Cliente/Fornitore@50"
|
||||||
ITEM "Banca d'appoggio@40"
|
ITEM "Banca d'appoggio@40"
|
||||||
ITEM "Nr. Fattura"
|
ITEM "Numero\nFattura@7"
|
||||||
ITEM "Data Fattura"
|
ITEM "Data\nFattura@10"
|
||||||
ITEM "Nr. Rata"
|
ITEM "Rata"
|
||||||
ITEM "Valuta"
|
ITEM "Valuta"
|
||||||
ITEM "Importo"
|
ITEM "Importo@18"
|
||||||
ITEM "Importo Val."
|
ITEM "Importo\nValuta@18"
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
@ -34,7 +34,7 @@ BEGIN
|
|||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_NFATT 7
|
NUMBER F_NFATT 7
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 6 "Numero Fattura "
|
PROMPT 2 6 "Numero Fattura "
|
||||||
FIELD LF_REFFETTI->NFATT
|
FIELD LF_REFFETTI->NFATT
|
||||||
@ -71,7 +71,7 @@ END
|
|||||||
|
|
||||||
CURRENCY F_IMPORTOVAL 18
|
CURRENCY F_IMPORTOVAL 18
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 11 "Importo Val. "
|
PROMPT 2 11 "Importo Valuta "
|
||||||
FIELD LF_EFFETTI->IMPORTOVAL
|
FIELD LF_EFFETTI->IMPORTOVAL
|
||||||
FLAGS "DR"
|
FLAGS "DR"
|
||||||
DRIVENBY F_VALUTA
|
DRIVENBY F_VALUTA
|
||||||
|
146
ef/ef0300c.uml
146
ef/ef0300c.uml
@ -1,68 +1,6 @@
|
|||||||
// DEFINIZIONE MASCHERA, DI AGGIUNTA EFFETTI, PER LA GESTIONE DISTINTE
|
// DEFINIZIONE MASCHERA, DI AGGIUNTA EFFETTI, PER LA GESTIONE DISTINTE
|
||||||
#include "ef0300.h"
|
#include "ef0300.h"
|
||||||
|
|
||||||
PAGE "Aggiungi Effetti alla Distinta" -1 -1 78 20
|
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 60 3
|
|
||||||
BEGIN
|
|
||||||
PROMPT 1 1 "Visualizza effetti per data"
|
|
||||||
END
|
|
||||||
|
|
||||||
DATE F_DADATA
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 2 "Dalla Data "
|
|
||||||
END
|
|
||||||
|
|
||||||
DATE F_ADATA
|
|
||||||
BEGIN
|
|
||||||
PROMPT 30 2 "Alla Data "
|
|
||||||
END
|
|
||||||
|
|
||||||
LIST F_TIPORD 14
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 4 "Tipo Ordinamento "
|
|
||||||
ITEM " | "
|
|
||||||
ITEM "S|Scadenza "
|
|
||||||
ITEM "F|Fattura "
|
|
||||||
END
|
|
||||||
|
|
||||||
SPREADSHEET F_SHEET 74 10
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 6 "EFFETTI SELEZIONABILI"
|
|
||||||
ITEM "Sel."
|
|
||||||
ITEM "Nr. Ri.Ba."
|
|
||||||
ITEM "Scadenza"
|
|
||||||
ITEM "Cliente@50"
|
|
||||||
ITEM "Banca d'appoggio@50"
|
|
||||||
ITEM "Nr. Fattura"
|
|
||||||
ITEM "Data Fattura"
|
|
||||||
ITEM "Nr. Rata"
|
|
||||||
ITEM "Valuta"
|
|
||||||
ITEM "Importo"
|
|
||||||
ITEM "Importo Val."
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_CODVALS 3
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 17 ""
|
|
||||||
FLAGS "H"
|
|
||||||
END
|
|
||||||
|
|
||||||
CURRENCY F_IMPSEL 18
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 17 "Imp. selezionato "
|
|
||||||
DRIVENBY F_CODVALS
|
|
||||||
END
|
|
||||||
|
|
||||||
CURRENCY F_TOTIMPDIST 18
|
|
||||||
BEGIN
|
|
||||||
PROMPT 39 17 "Imp. presentazione "
|
|
||||||
DRIVENBY F_CODVALS
|
|
||||||
FLAGS "D"
|
|
||||||
END
|
|
||||||
|
|
||||||
ENDPAGE
|
|
||||||
|
|
||||||
TOOLBAR "topbar" 0 0 0 2
|
TOOLBAR "topbar" 0 0 0 2
|
||||||
|
|
||||||
BUTTON DLG_OK 10 2
|
BUTTON DLG_OK 10 2
|
||||||
@ -70,9 +8,89 @@ BEGIN
|
|||||||
PROMPT -12 -1 ""
|
PROMPT -12 -1 ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_CANCEL 10 2
|
BUTTON DLG_NULL 2 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -22 -1 ""
|
PROMPT -1 1 ""
|
||||||
|
PICTURE 0
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_INFO 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Info"
|
||||||
|
MESSAGE EXIT,K_F2
|
||||||
|
PICTURE TOOL_INFO
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_HELP 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 1 "Help"
|
||||||
|
MESSAGE EXIT,K_F1
|
||||||
|
PICTURE TOOL_HELP
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_CANCEL 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 3 1 "Annulla"
|
||||||
|
MESSAGE EXIT,K_ESC
|
||||||
|
PICTURE TOOL_CANCEL
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Aggiungi Effetti alla Distinta" -1 -1 78 20
|
||||||
|
|
||||||
|
DATE F_DADATA
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "Selezione effetti dalla data "
|
||||||
|
END
|
||||||
|
|
||||||
|
DATE F_ADATA
|
||||||
|
BEGIN
|
||||||
|
PROMPT 44 0 "alla data "
|
||||||
|
END
|
||||||
|
|
||||||
|
RADIOBUTTON F_TIPORD 1 76
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Ordinamento effetti"
|
||||||
|
ITEM " |Numero"
|
||||||
|
ITEM "S|Scadenza"
|
||||||
|
ITEM "F|Fattura"
|
||||||
|
FLAGS "Z"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODVALS 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 4 ""
|
||||||
|
FLAGS "H"
|
||||||
|
END
|
||||||
|
|
||||||
|
CURRENCY F_IMPSEL 18
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 4 "Imp. selezionato "
|
||||||
|
DRIVENBY F_CODVALS
|
||||||
|
END
|
||||||
|
|
||||||
|
CURRENCY F_TOTIMPDIST 18
|
||||||
|
BEGIN
|
||||||
|
PROMPT 39 4 "Imp. presentazione "
|
||||||
|
DRIVENBY F_CODVALS
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
SPREADSHEET F_SHEET
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 5 "EFFETTI SELEZIONABILI"
|
||||||
|
ITEM "Sel.@3F"
|
||||||
|
ITEM "Numero\nRi.Ba.@7F"
|
||||||
|
ITEM "Scadenza@10"
|
||||||
|
ITEM "Cliente/Fornitore@50"
|
||||||
|
ITEM "Banca d'appoggio@50"
|
||||||
|
ITEM "Numero\nFattura@7"
|
||||||
|
ITEM "Data\nFattura@10"
|
||||||
|
ITEM "Rata"
|
||||||
|
ITEM "Val."
|
||||||
|
ITEM "Importo@18"
|
||||||
|
ITEM "Importo Val.@18"
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
Loading…
x
Reference in New Issue
Block a user