Patch level : 12.0 nopatch
Files correlati : ve, ba Commento: Aggiornamento velib07
This commit is contained in:
parent
e8872bc29e
commit
6c6a159c78
@ -1942,23 +1942,33 @@ void TInstaller::convert_archives()
|
||||
bool conv = true;
|
||||
if (is_power_station())
|
||||
conv = yesno_box(TR("Si desidera convertire gli archivi ora?"));
|
||||
TRACE("Da convertire ", conv ? "si" : "no");
|
||||
if (conv)
|
||||
{
|
||||
TRACE("backup");
|
||||
_m->backup();
|
||||
// Lancia conversione: ba1 -0 -C -uADMIN
|
||||
TExternal_app conversion("ba1 -0 -C");
|
||||
TRACE("Conversione");
|
||||
conversion.run();
|
||||
TRACE("Fine Conversione");
|
||||
}
|
||||
}
|
||||
|
||||
void TInstaller::main_loop()
|
||||
{
|
||||
TRACE("Avvio conversione");
|
||||
_m->run();
|
||||
TRACE("Chiusura conversione");
|
||||
TRACE("Aggiornato %s", _m->run_conversion()? "si" : "no");
|
||||
|
||||
TRACE("Stazione %d %s", _m->station_type(), _m->station_type() < 3 ? "si" : "no");
|
||||
|
||||
if (_m->run_conversion() && _m->station_type() < 3) // Almeno un trr installato e non e' client->conversione ammessa
|
||||
{
|
||||
convert_archives();
|
||||
}
|
||||
|
||||
TRACE("Lancio menu");
|
||||
//controlla se ha lanciato setup.exe prima di chiudersi; se non lo ha fatto -> e' a fine installazione..
|
||||
//..normale (moduli non SY) e quindi lancia ba0.exe
|
||||
const bool setup_launched = _m->setup_run();
|
||||
@ -1968,6 +1978,7 @@ void TInstaller::main_loop()
|
||||
TExternal_app ba0("ba0.exe");
|
||||
ba0.run(true, true, false); // run asynchronous and not iconized!
|
||||
}
|
||||
TRACE("Fine");
|
||||
}
|
||||
|
||||
int ba1700(int argc, char* argv[])
|
||||
|
@ -24,6 +24,7 @@ void TListaFido_app::main_loop()
|
||||
m.set(F_REPORT, "ve18001");
|
||||
((TButton_tool&)m.field(DLG_PREVIEW)).set_exit_key(K_VISUALIZE);
|
||||
((TButton_tool&)m.field(DLG_PRINT)).set_exit_key(K_PRINT);
|
||||
m.show(F_DADATA, ini_get_bool(CONFIG_STUDIO, "Main", "MYGOD"));
|
||||
|
||||
KEY k;
|
||||
|
||||
@ -60,10 +61,14 @@ void TListaFido_app::main_loop()
|
||||
recset->set_var("#CODFR", cod_fr);
|
||||
recset->set_var("#CODTO", cod_to);
|
||||
|
||||
TDate dal = m.get_date(F_DADATA);
|
||||
TDate al = m.get_date(F_ADATA);
|
||||
|
||||
if (dal.ok())
|
||||
report.set_datafidodal(dal);
|
||||
|
||||
if (al.ok())
|
||||
report.set_datafido(al);
|
||||
report.set_datafidoal(al);
|
||||
|
||||
book.add(report);
|
||||
if (book.pages() > 0)
|
||||
|
@ -3,6 +3,7 @@
|
||||
#define F_CODTO 103
|
||||
#define F_RAGSOCTO 104
|
||||
|
||||
#define F_ADATA 105
|
||||
#define F_REPORT 106
|
||||
#define F_CONFIDO 107
|
||||
#define F_DADATA 105
|
||||
#define F_ADATA 106
|
||||
#define F_REPORT 107
|
||||
#define F_CONFIDO 108
|
||||
|
@ -75,9 +75,15 @@ BEGIN
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
DATE F_DADATA
|
||||
BEGIN
|
||||
PROMPT 2 7 "Da data"
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
DATE F_ADATA
|
||||
BEGIN
|
||||
PROMPT 2 7 "Alla data "
|
||||
PROMPT 30 7 "Alla data "
|
||||
END
|
||||
|
||||
BOOLEAN F_CONFIDO
|
||||
|
@ -402,7 +402,8 @@ bool TDocument_report::load(const char* name)
|
||||
}
|
||||
}
|
||||
}
|
||||
set_datafido(today);
|
||||
set_datafidodal(botime);
|
||||
set_datafidoal(today);
|
||||
return ok;
|
||||
}
|
||||
|
||||
@ -739,11 +740,11 @@ bool TDocument_report::msg_fido(TVariant_stack& stack)
|
||||
int selector = stack.pop().as_int();
|
||||
|
||||
if (selector & 1)
|
||||
value += calcola_saldo_contabile('C', codcf, _data_fido);
|
||||
value += calcola_saldo_contabile('C', codcf, _data_fido_al);
|
||||
if (selector & 2)
|
||||
value += calcola_esposto_da_saldaconto('C', codcf, _data_fido, _riskdays);
|
||||
value += calcola_esposto_da_saldaconto('C', codcf, _data_fido_dal ,_data_fido_al, _riskdays);
|
||||
if(selector & 4)
|
||||
value += calcola_fido_da_documenti('C', codcf, _data_fido, EMPTY_STRING);
|
||||
value += calcola_fido_da_documenti('C', codcf, _data_fido_al, EMPTY_STRING);
|
||||
|
||||
curr_field()->set(TVariant(value>0 ? value : ""));
|
||||
return true;
|
||||
@ -872,10 +873,10 @@ static TImporto get_importo(const TISAM_recordset& partite, const char* sezione,
|
||||
}
|
||||
|
||||
|
||||
static real calcola_esposto_da_saldaconto (const char tipocf, const long codcf, const TDate& datacalc, const int riskdays)
|
||||
static real calcola_esposto_da_saldaconto (const char tipocf, const long codcf,const TDate& from, const TDate& to, const int riskdays)
|
||||
{
|
||||
// //data considerante i giorni di rischio ammessi dall'utonto
|
||||
TDate data_sbf = datacalc;
|
||||
TDate data_sbf = to;
|
||||
TImporto esposto; //importone somma degli importi delle righe del recordset
|
||||
|
||||
//estrae le righe partita relative a pagamenti successivi alla data di rischio (e con tipopag >2,<7)
|
||||
@ -889,31 +890,37 @@ static real calcola_esposto_da_saldaconto (const char tipocf, const long codcf,
|
||||
data_sbf -= riskdays;
|
||||
for (bool ok = partite.move_first(); ok; ok = partite.move_next())
|
||||
{
|
||||
TImporto importo_riga;
|
||||
if (partite.get_date(PART_DATADOC)< from)
|
||||
{
|
||||
TImporto importo_riga;
|
||||
|
||||
//fatture,note di credito,pagamenti
|
||||
TImporto importo_partita = get_importo(partite, PART_SEZ, PART_IMPORTO);
|
||||
importo_riga += importo_partita;
|
||||
const tipo_movimento tipo_mov = (tipo_movimento) partite.get_int(PART_TIPOMOV);
|
||||
const tipo_pagamento tipo_pag = (tipo_pagamento) partite.get_int(PART_TIPOPAG);
|
||||
const TDate datapag = partite.get_date(PART_DATAPAG);
|
||||
//fatture,note di credito,pagamenti
|
||||
TImporto importo_partita = get_importo(partite, PART_SEZ, PART_IMPORTO);
|
||||
|
||||
//pagamenti (tm=3), insoluti (tm=5), pagamenti insoluti(tm=6)
|
||||
if ((tipo_mov >= tm_pagamento) &&
|
||||
|
||||
importo_riga += importo_partita;
|
||||
const tipo_movimento tipo_mov = (tipo_movimento)partite.get_int(PART_TIPOMOV);
|
||||
const tipo_pagamento tipo_pag = (tipo_pagamento)partite.get_int(PART_TIPOPAG);
|
||||
const TDate datapag = partite.get_date(PART_DATAPAG);
|
||||
|
||||
//pagamenti (tm=3), insoluti (tm=5), pagamenti insoluti(tm=6)
|
||||
if ((tipo_mov >= tm_pagamento) &&
|
||||
(tipo_pag >= tp_tratta && tipo_pag <= tp_rid) &&
|
||||
((datapag >= data_sbf) && (datapag <= datacalc)))
|
||||
{
|
||||
TImporto importo_abbuono = get_importo(partite, PART_SEZABB, PART_ABBUONI);
|
||||
importo_riga += importo_abbuono;
|
||||
((datapag >= data_sbf) && (datapag <= to)))
|
||||
{
|
||||
TImporto importo_abbuono = get_importo(partite, PART_SEZABB, PART_ABBUONI);
|
||||
importo_riga += importo_abbuono;
|
||||
|
||||
if (!partite.get(PART_CODVAL).is_empty()) // pagamenti in valuta
|
||||
{
|
||||
TImporto importo_diff_cambio = get_importo(partite, PART_SEZDIFCAM, PART_DIFFCAM);
|
||||
importo_riga += importo_diff_cambio;
|
||||
}
|
||||
//somma importi presenti sulla riga partita (fatture, pagamenti, insoluti, pagamenti insoluti)
|
||||
esposto += importo_riga;
|
||||
}
|
||||
if (!partite.get(PART_CODVAL).is_empty()) // pagamenti in valuta
|
||||
{
|
||||
TImporto importo_diff_cambio = get_importo(partite, PART_SEZDIFCAM, PART_DIFFCAM);
|
||||
importo_riga += importo_diff_cambio;
|
||||
}
|
||||
//somma importi presenti sulla riga partita (fatture, pagamenti, insoluti, pagamenti insoluti)
|
||||
esposto += importo_riga;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//la normalizzazione del totale delle partite va fatta in base al fatto che si parli di 'C'liente o 'F'ornitore
|
||||
const char sezione_finale = (tipocf == 'C') ? 'A' : 'D';
|
||||
@ -1004,7 +1011,7 @@ real calcola_fido_cliente (long codcf, const TDate& datacalc, const TDoc_key& ig
|
||||
//PRIMA PARTE: controlla i movimenti
|
||||
real saldo_contabile = calcola_saldo_contabile('C', codcf, datacalc);
|
||||
//SECONDA PARTE: controlla il saldaconto
|
||||
real esposto_saldaconto = calcola_esposto_da_saldaconto('C', codcf, datacalc, 10); // 10 giorni ?
|
||||
real esposto_saldaconto = calcola_esposto_da_saldaconto('C', codcf, botime, datacalc, 10); // 10 giorni ?
|
||||
//TERZA PARTE: controlla i documenti
|
||||
real tot_documenti = calcola_fido_da_documenti('C',codcf, datacalc, ignore);
|
||||
|
||||
|
@ -108,7 +108,8 @@ public:
|
||||
class TDocument_report : public TReport
|
||||
{
|
||||
size_t _first_msg;
|
||||
TDate _data_fido;
|
||||
TDate _data_fido_dal;
|
||||
TDate _data_fido_al;
|
||||
int _riskdays;
|
||||
|
||||
protected:
|
||||
@ -127,7 +128,8 @@ protected:
|
||||
public:
|
||||
virtual bool set_recordset(const TString& query);
|
||||
virtual bool set_recordset(TRecordset * set) { return TReport::set_recordset(set);}
|
||||
void set_datafido(const TDate& data) { _data_fido = data.ok() ? data : today; }
|
||||
void set_datafidoal(const TDate& data) { _data_fido_al = data.ok() ? data : today; }
|
||||
void set_datafidodal(const TDate& data) { _data_fido_dal = data.ok() ? data : botime; }
|
||||
bool load(const char* name);
|
||||
TDocument_report();
|
||||
};
|
||||
@ -139,7 +141,7 @@ public:
|
||||
//metodo per il calcolo del fido cliente
|
||||
real calcola_fido_cliente (long codcf, const TDate& datacalc, const TDoc_key& ignore);
|
||||
real calcola_saldo_contabile(const char tipocf, const long codcf, const TDate& datacalc);
|
||||
real calcola_esposto_da_saldaconto(const char tipocf, const long codcf, const TDate& datacalc, const int riskdays);
|
||||
real calcola_esposto_da_saldaconto(const char tipocf, const long codcf, const TDate& from, const TDate& to, const int riskdays);
|
||||
real calcola_fido_da_documenti(const char tipocf, const long codcf, const TDate& datacalc, const TDoc_key& ignore);
|
||||
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user