Patch level : 12.00 1258

Files correlati     : ba3.exe ba3700a.msk ba8.exe ba8300a.msk cg2.ex sc0.exe ve0.exe

Commento            :
Aggiunto campo sposta data a fine mese
Ricerca report per descrizione
This commit is contained in:
Alessandro Bonazzi 2023-04-26 01:26:25 +02:00
parent c85ae75747
commit 11f0352507
8 changed files with 44 additions and 29 deletions

View File

@ -26,7 +26,7 @@ TMask_print_table::TMask_print_table(const char* name)
{ {
const int reporty = toolbar() != NULL_WIN ? -2 : -3; const int reporty = toolbar() != NULL_WIN ? -2 : -3;
TEdit_field & f = add_string(F_REPORT, 0, "Report ", 2, reporty, 20, "B"); TEdit_field & f = add_string(F_REPORT, 0, "Report ", 2, reporty, 20, "B");
f.set_query_button(new TReport_select(&f, name)); f.set_query_button(new TReport_select(&f, name, "D"));
f.enable_check(); f.enable_check();
} }

View File

@ -20,4 +20,5 @@
#define F_FIXSCAD_1 215 #define F_FIXSCAD_1 215
#define F_FIXSCAD_2 216 #define F_FIXSCAD_2 216
#define F_FIXSCAD_3 217 #define F_FIXSCAD_3 217
#define F_FINEMESE 218

View File

@ -74,6 +74,13 @@ BEGIN
ITEM "I|Da impostare" ITEM "I|Da impostare"
END END
BOOLEAN F_FINEMESE
BEGIN
PROMPT 35 5 "Sposta la data a fine mese "
HELP "Giorni di intervallo tra una data e l'altra"
FIELD B2
END
NUMBER F_INT_RATE 3 NUMBER F_INT_RATE 3
BEGIN BEGIN
PROMPT 58 5 "Intervallo rate " PROMPT 58 5 "Intervallo rate "
@ -94,6 +101,7 @@ BEGIN
ITEM "6|Imposte + spese" ITEM "6|Imposte + spese"
END END
LIST F_RATE_DIFF 1 30 LIST F_RATE_DIFF 1 30
BEGIN BEGIN
PROMPT 2 7 "Rate " PROMPT 2 7 "Rate "

View File

@ -1000,7 +1000,7 @@ bool TQuery_mask::get_qry_path(TFilename& path) const
bool TQuery_mask::select_query() bool TQuery_mask::select_query()
{ {
TFilename path; TFilename path;
const bool ok = select_custom_file(path, "qry"); const bool ok = select_custom_file(path, "qry", "C");
if (ok) if (ok)
{ {
path = path.name(); path.ext(""); path = path.name(); path.ext("");

View File

@ -366,7 +366,7 @@ public:
bool TReport_query_mask::select_query() bool TReport_query_mask::select_query()
{ {
TFilename path; TFilename path;
bool ok = select_custom_file(path, "qry"); bool ok = select_custom_file(path, "qry", "C");
if (ok) if (ok)
{ {
TXmlItem item; TXmlItem item;
@ -499,7 +499,7 @@ TMask_field* TReport_mask::parse_field(TScanner& scanner)
bool TReport_mask::get_rep_path(TFilename& path) const bool TReport_mask::get_rep_path(TFilename& path) const
{ {
const TString& name = get(F_CODICE); const TString& name = get(DLG_REPORT);
const bool ok = name.full(); const bool ok = name.full();
if (ok) if (ok)
{ {
@ -552,7 +552,7 @@ bool TReport_mask::save_report()
if (!ok) if (!ok)
ok = get_rep_path(_curr_report); ok = get_rep_path(_curr_report);
if (!ok) if (!ok)
return field(F_CODICE).on_key(K_ENTER); // Segnala errore return field(DLG_REPORT).on_key(K_ENTER); // Segnala errore
_report.set_description(get(F_DESCR)); _report.set_description(get(F_DESCR));
if (is_power_station()) if (is_power_station())
{ {
@ -607,7 +607,7 @@ bool TReport_mask::load_report()
if (ok) if (ok)
{ {
path = path.name(); path.ext(""); path = path.name(); path.ext("");
set(F_CODICE, path); set(DLG_REPORT, path);
set(F_DESCR, _report.description()); set(F_DESCR, _report.description());
_is_dirty = false; _is_dirty = false;
@ -1009,7 +1009,7 @@ void TReport_mask::notify_focus_field(short id)
void TReport_mask::update_toolbar() void TReport_mask::update_toolbar()
{ {
const bool full = !efield(F_CODICE).empty(); const bool full = !efield(DLG_REPORT).empty();
enable(DLG_SAVEREC, full); enable(DLG_SAVEREC, full);
enable(DLG_DELREC, full); enable(DLG_DELREC, full);
const bool printok = full && _report.recordset() != NULL; const bool printok = full && _report.recordset() != NULL;
@ -1022,23 +1022,28 @@ bool TReport_mask::on_field_event(TOperable_field& o, TField_event e, long jolly
{ {
switch (o.dlg()) switch (o.dlg())
{ {
case F_CODICE: case DLG_REPORT:
if (e == fe_init || e == fe_modify) {
{ const TString & s = o.get();
if (e == fe_init)
{ if (e == fe_init || e == fe_modify)
if (main_app().argc() >= 3) {
{ if (e == fe_init)
set(F_CODICE, main_app().argv(2)); {
load_report(); if (main_app().argc() >= 3)
} {
} else set(DLG_REPORT, main_app().argv(2));
if (e == fe_modify) load_report();
{ }
save_if_needed(); }
load_report(); else
} if (e == fe_modify)
update_toolbar(); {
save_if_needed();
load_report();
}
update_toolbar();
}
} }
break; break;
case F_SECTIONS: case F_SECTIONS:
@ -1097,7 +1102,7 @@ bool TReport_mask::on_field_event(TOperable_field& o, TField_event e, long jolly
break; break;
case DLG_FINDREC: case DLG_FINDREC:
if (e == fe_button) if (e == fe_button)
send_key(K_F9, F_CODICE); efield(DLG_REPORT).on_key(K_F9);
break; break;
case DLG_SAVEREC: case DLG_SAVEREC:
if (e == fe_button) if (e == fe_button)

View File

@ -2,12 +2,13 @@
TOOLBAR "bottombar" 0 -1 0 1 TOOLBAR "bottombar" 0 -1 0 1
STRING F_CODICE 256 24 STRING DLG_REPORT 256 24
BEGIN BEGIN
PROMPT 1 0 "" PROMPT 1 0 ""
RSELECT "" RSELECT "" C
WARNING "E' necessario specificare il codice" WARNING "E' necessario specificare il codice"
// CHECKTYPE REQUIRED // CHECKTYPE REQUIRED
FLAGS "B"
END END
STRING F_DESCR 50 46 STRING F_DESCR 50 46

View File

@ -715,7 +715,7 @@ void TReport_field_mask::vedo_non_vedo()
show(F_VALIGN, is_text || type == 'B'); show(F_VALIGN, is_text || type == 'B');
show(F_TEXT, is_text && !is_currency); show(F_TEXT, is_text && !is_currency);
show(F_HIDE_DOTS, is_currency); show(F_HIDE_DOTS, is_currency);
show(F_DYNAMIC_HEIGHT, type == 'S'); show(F_DYNAMIC_HEIGHT, type == 'S' || type == 'L');
show(F_FGCOLOR, type != 'I'); show(F_FGCOLOR, type != 'I');
show(F_BGCOLOR, type != 'L'); show(F_BGCOLOR, type != 'L');
show(F_TXCOLOR, is_text); show(F_TXCOLOR, is_text);

View File

@ -110,7 +110,7 @@ bool TKlarkKent_mask::on_field_event(TOperable_field& o, TField_event e, long jo
if (e == fe_button) if (e == fe_button)
{ {
TFilename path; TFilename path;
if (select_custom_file(path, "rep")) if (select_custom_file(path, "rep", "C"))
{ {
o.set(path); o.set(path);
e = fe_modify; e = fe_modify;