Patch level : 10.0
Files correlati : ps1001300a.msk ps1001.exe Ricompilazione Demo : [ ] Commento : Migliorata gestione abilitazione bottoni di salvataggio e modifica git-svn-id: svn://10.65.10.50/trunk@20424 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
6ffa82ad5d
commit
28bc6659d7
@ -9,10 +9,8 @@ int main(int argc, char** argv)
|
|||||||
{
|
{
|
||||||
case 0: ps1001100(argc, argv); break; //Importazione movimento di analitica da righe in *.csv (DINAMICA)
|
case 0: ps1001100(argc, argv); break; //Importazione movimento di analitica da righe in *.csv (DINAMICA)
|
||||||
case 1: ps1001200(argc, argv); break; //Importazione di N movimenti analitici di preventivo in *.csv (CRPA e DINAMICA)
|
case 1: ps1001200(argc, argv); break; //Importazione di N movimenti analitici di preventivo in *.csv (CRPA e DINAMICA)
|
||||||
case 2: ps1001300(argc,argv); break; //Gestione budget (CRPA e DINAMICA)
|
case 2: ps1001300(argc, argv); break; //Gestione budget (CRPA e DINAMICA)
|
||||||
default:
|
default: ps1001100(argc, argv); break;
|
||||||
ps1001100(argc, argv); break;
|
|
||||||
}
|
}
|
||||||
exit(0);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
@ -456,7 +456,7 @@ void TBudget_Import::elabora_input(const TFilename& file, TLog_report& log)
|
|||||||
//..e gli elementi sono array con le righe del file di input (con la stessa key ma fase\conto etc. diversi)
|
//..e gli elementi sono array con le righe del file di input (con la stessa key ma fase\conto etc. diversi)
|
||||||
while (_trasfile->read(curr) == NOERR)
|
while (_trasfile->read(curr) == NOERR)
|
||||||
{
|
{
|
||||||
pi.setstatus(_trasfile->read_file()->tellg());
|
pi.setstatus((size_t)_trasfile->read_file()->tellg());
|
||||||
|
|
||||||
codcms = curr.get(0);
|
codcms = curr.get(0);
|
||||||
codcms.replace('_', '/');
|
codcms.replace('_', '/');
|
||||||
|
123
ps/ps1001300.cpp
123
ps/ps1001300.cpp
@ -3,7 +3,6 @@
|
|||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <defmask.h>
|
#include <defmask.h>
|
||||||
#include <progind.h>
|
#include <progind.h>
|
||||||
#include <recarray.h>
|
|
||||||
#include <textset.h>
|
#include <textset.h>
|
||||||
|
|
||||||
#include "../ca/calib01.h"
|
#include "../ca/calib01.h"
|
||||||
@ -19,7 +18,7 @@
|
|||||||
// Metodi static di ordinamento
|
// Metodi static di ordinamento
|
||||||
///////////////////////////////////
|
///////////////////////////////////
|
||||||
//ordina per numreg/numrig (long+int) oppure per numreg/datacomp/autofcomp/datafcomp
|
//ordina per numreg/numrig (long+int) oppure per numreg/datacomp/autofcomp/datafcomp
|
||||||
static int compare_by_numrig(TSheet_field & s, int r1, int r2)
|
static int compare_by_numrig(TSheet_field& s, int r1, int r2)
|
||||||
{
|
{
|
||||||
TToken_string& s1 = s.row(r1);
|
TToken_string& s1 = s.row(r1);
|
||||||
TToken_string& s2 = s.row(r2);
|
TToken_string& s2 = s.row(r2);
|
||||||
@ -30,7 +29,6 @@ static int compare_by_numrig(TSheet_field & s, int r1, int r2)
|
|||||||
const long b21 = s2.get_long(numreg_pos);
|
const long b21 = s2.get_long(numreg_pos);
|
||||||
int cmp = b11 - b21;
|
int cmp = b11 - b21;
|
||||||
|
|
||||||
|
|
||||||
if (cmp == 0)
|
if (cmp == 0)
|
||||||
{
|
{
|
||||||
if (b11 > 0) //..poi il numrig
|
if (b11 > 0) //..poi il numrig
|
||||||
@ -102,6 +100,7 @@ class TVariazione_budget_mask : public TAutomask
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||||
|
void set_status(bool edit);
|
||||||
|
|
||||||
int load(); //(costruttore e on_field) carica i dati per riempire lo sheet
|
int load(); //(costruttore e on_field) carica i dati per riempire lo sheet
|
||||||
|
|
||||||
@ -127,11 +126,11 @@ public:
|
|||||||
~TVariazione_budget_mask();
|
~TVariazione_budget_mask();
|
||||||
};
|
};
|
||||||
|
|
||||||
TVariazione_budget_mask::TVariazione_budget_mask() :TAutomask ("ps1001300a")
|
TVariazione_budget_mask::TVariazione_budget_mask() : TAutomask ("ps1001300a")
|
||||||
{
|
{
|
||||||
//carica la causale che trova nel ditta.ini
|
//carica la causale che trova nel ditta.ini
|
||||||
TConfig ditta_ini(CONFIG_DITTA, "ps1001");
|
TConfig ditta_ini(CONFIG_DITTA, "ps1001");
|
||||||
set(F_CODCAUS, ditta_ini.get("CodCaus"));
|
set(F_CODCAUS, ditta_ini.get("CodCaus"), 0x3);
|
||||||
|
|
||||||
//setta le posizioni dei campi dello sheet
|
//setta le posizioni dei campi dello sheet
|
||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
@ -163,7 +162,7 @@ TVariazione_budget_mask::~TVariazione_budget_mask()
|
|||||||
void TVariazione_budget_mask::build_key(int i, TToken_string& key)
|
void TVariazione_budget_mask::build_key(int i, TToken_string& key)
|
||||||
{
|
{
|
||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
TToken_string curr_riga = sf_righe.row(i);
|
TToken_string& curr_riga = sf_righe.row(i);
|
||||||
//chiave della riga sorella originale
|
//chiave della riga sorella originale
|
||||||
key.cut(0);
|
key.cut(0);
|
||||||
key.add(curr_riga.get(_pos_cdc));
|
key.add(curr_riga.get(_pos_cdc));
|
||||||
@ -175,7 +174,7 @@ void TVariazione_budget_mask::build_key(int i, TToken_string& key)
|
|||||||
void TVariazione_budget_mask::build_key_by_numreg(int i, TToken_string& key)
|
void TVariazione_budget_mask::build_key_by_numreg(int i, TToken_string& key)
|
||||||
{
|
{
|
||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
TToken_string curr_riga = sf_righe.row(i);
|
TToken_string& curr_riga = sf_righe.row(i);
|
||||||
//chiave della riga sorella originale
|
//chiave della riga sorella originale
|
||||||
key.cut(0);
|
key.cut(0);
|
||||||
key.add(curr_riga.get(_pos_numreg));
|
key.add(curr_riga.get(_pos_numreg));
|
||||||
@ -237,30 +236,49 @@ int TVariazione_budget_mask::find_sister_rows(const int curr_sister, int& first_
|
|||||||
void TVariazione_budget_mask::sistema_date_cms(TDate& datainicms, TDate& datafinecms)
|
void TVariazione_budget_mask::sistema_date_cms(TDate& datainicms, TDate& datafinecms)
|
||||||
{
|
{
|
||||||
datainicms = get_date(F_DATAINICMS);
|
datainicms = get_date(F_DATAINICMS);
|
||||||
|
const bool pro = get_bool(F_PROROGATA);
|
||||||
|
if (pro)
|
||||||
datafinecms = get_date(F_DATAPRORCMS);
|
datafinecms = get_date(F_DATAPRORCMS);
|
||||||
if (!datafinecms.ok())
|
if (!pro || !datafinecms.ok())
|
||||||
datafinecms = get_date(F_DATAFINECMS);
|
datafinecms = get_date(F_DATAFINECMS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TVariazione_budget_mask::set_status(bool edit)
|
||||||
|
{
|
||||||
|
enable(-3, edit);
|
||||||
|
enable(DLG_CANCEL, edit);
|
||||||
|
enable(DLG_QUIT, !edit);
|
||||||
|
|
||||||
|
enable(F_CODCMS, !edit);
|
||||||
|
enable(F_DESCRIZ, !edit);
|
||||||
|
|
||||||
|
xvtil_statbar_set(edit ? TR("Modifica") : TR("Selezione"));
|
||||||
|
}
|
||||||
|
|
||||||
bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||||
{
|
{
|
||||||
switch (o.dlg())
|
switch (o.dlg())
|
||||||
{
|
{
|
||||||
//maschera
|
//maschera
|
||||||
case F_CODCMS:
|
case F_CODCMS:
|
||||||
|
if (e == fe_init)
|
||||||
|
set_status(false);
|
||||||
if (e == fe_modify)
|
if (e == fe_modify)
|
||||||
{
|
set_status(!o.empty() && load() > 0);
|
||||||
bool e = load() == 0;
|
|
||||||
o.enable(e);
|
|
||||||
enable(F_DESCRIZ, e);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case F_DATAINICMS:
|
case F_DATAINICMS:
|
||||||
case F_DATAFINECMS:
|
case F_DATAFINECMS:
|
||||||
_dirty = true;
|
_dirty = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//sheet
|
//sheet
|
||||||
|
case F_RIGHE:
|
||||||
|
switch (e)
|
||||||
|
{
|
||||||
|
case se_query_add: return field(DLG_CANCEL).enabled();
|
||||||
|
case se_query_del: return false;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case S_CHECK:
|
case S_CHECK:
|
||||||
if (e == fe_modify)
|
if (e == fe_modify)
|
||||||
{
|
{
|
||||||
@ -282,13 +300,12 @@ bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
const TDate datacomp = o.get();
|
const TDate datacomp = o.get();
|
||||||
if (datacomp < datainicms || (datafinecms.ok() && datacomp > datafinecms))
|
if (datacomp < datainicms || (datafinecms.ok() && datacomp > datafinecms))
|
||||||
return error_box("La data competenza deve rientrare nella durata della commessa!");
|
return error_box("La data competenza deve rientrare nella durata della commessa!");
|
||||||
}
|
|
||||||
_dirty = true;
|
_dirty = true;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case S_DATAFCOMP:
|
case S_DATAFCOMP:
|
||||||
if (e == fe_modify)
|
if (e == fe_modify)
|
||||||
{
|
{
|
||||||
|
|
||||||
const TDate datafcomp = o.get();
|
const TDate datafcomp = o.get();
|
||||||
if (datafcomp.ok())
|
if (datafcomp.ok())
|
||||||
{
|
{
|
||||||
@ -313,7 +330,6 @@ bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
_dirty = true;
|
_dirty = true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case S_SO:
|
case S_SO:
|
||||||
if (e == fe_init)
|
if (e == fe_init)
|
||||||
{
|
{
|
||||||
@ -354,24 +370,20 @@ bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
case DLG_CANCEL:
|
case DLG_CANCEL:
|
||||||
if (e == fe_button && jolly == 0) //jolly serve per specificare che è il DLG_CANCEL della maschera principale
|
if (e == fe_button && jolly == 0) //jolly serve per specificare che è il DLG_CANCEL della maschera principale
|
||||||
{
|
{
|
||||||
if (_dirty)
|
if (_dirty && yesno_box("Salvare le modifiche effettuate?"))
|
||||||
{
|
{
|
||||||
if (yesno_box("Salvare le modifiche effettuate?"))
|
//attenzione! se la save non riesce si deve fermare senza resettare le modifiche!
|
||||||
if (!save()) //attenzione! se la save non riesce si deve fermare senza resettare le modifiche!
|
if (!check_fields() || !save())
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
enable(F_CODCMS);
|
|
||||||
enable(F_DESCRIZ);
|
|
||||||
sfield(F_RIGHE).destroy();
|
sfield(F_RIGHE).destroy();
|
||||||
|
set_status(false);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case DLG_CHECKALL:
|
case DLG_CHECKALL:
|
||||||
if (e == fe_button)
|
if (e == fe_button)
|
||||||
{
|
|
||||||
check_all(!one_checked());
|
check_all(!one_checked());
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case DLG_TODATAINI:
|
case DLG_TODATAINI:
|
||||||
if (e == fe_button)
|
if (e == fe_button)
|
||||||
@ -380,7 +392,7 @@ bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
FOR_EACH_SHEET_ROW(sf_righe, i, riga) if (riga->get_char(0) > ' ') //solo le righe checked!!
|
FOR_EACH_SHEET_ROW(sf_righe, i, riga) if (riga->get_char(0) > ' ') //solo le righe checked!!
|
||||||
riga->add(datainicms, _pos_datacomp);
|
riga->add(datainicms, _pos_datacomp);
|
||||||
|
_dirty = true;
|
||||||
sf_righe.force_update();
|
sf_righe.force_update();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -393,7 +405,7 @@ bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
FOR_EACH_SHEET_ROW(sf_righe, i, riga) if (riga->get_char(0) > ' ') //solo le righe checked!!
|
FOR_EACH_SHEET_ROW(sf_righe, i, riga) if (riga->get_char(0) > ' ') //solo le righe checked!!
|
||||||
riga->add(datafinecms, _pos_datafcomp);
|
riga->add(datafinecms, _pos_datafcomp);
|
||||||
|
_dirty = true;
|
||||||
sf_righe.force_update();
|
sf_righe.force_update();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -456,16 +468,13 @@ bool TVariazione_budget_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
//al termine deve aggiornare la colonna con i preventivi
|
//al termine deve aggiornare la colonna con i preventivi
|
||||||
aggiorna_saldi_preventivi(sf_righe, i);
|
aggiorna_saldi_preventivi(sf_righe, i);
|
||||||
}
|
}
|
||||||
|
|
||||||
sf_righe.force_update();
|
|
||||||
_dirty = true;
|
_dirty = true;
|
||||||
|
sf_righe.force_update();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case DLG_SAVEREC:
|
case DLG_SAVEREC:
|
||||||
if (e == fe_button && check_fields())
|
if (e == fe_button && check_fields())
|
||||||
{
|
save();
|
||||||
const bool saved = save();
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -484,10 +493,10 @@ bool TVariazione_budget_mask::save_commessa()
|
|||||||
int err = commesse.read(_isequal, _lock);
|
int err = commesse.read(_isequal, _lock);
|
||||||
if (err == NOERR)
|
if (err == NOERR)
|
||||||
{
|
{
|
||||||
commesse.put(COMMESSE_DATAINIZIO, get_date(F_DATAINICMS));
|
commesse.put(COMMESSE_DATAINIZIO, get(F_DATAINICMS));
|
||||||
commesse.put(COMMESSE_DATAFINE, get_date(F_DATAFINECMS));
|
commesse.put(COMMESSE_DATAFINE, get(F_DATAFINECMS));
|
||||||
commesse.put(COMMESSE_PROROGA, get_bool(F_PROROGATA));
|
commesse.put(COMMESSE_PROROGA, get_bool(F_PROROGATA));
|
||||||
commesse.put(COMMESSE_DATAPROR, get_date(F_DATAPRORCMS));
|
commesse.put(COMMESSE_DATAPROR, get(F_DATAPRORCMS));
|
||||||
//solo la rewrite perchè la commessa ovviamente esiste già
|
//solo la rewrite perchè la commessa ovviamente esiste già
|
||||||
err = commesse.rewrite();
|
err = commesse.rewrite();
|
||||||
}
|
}
|
||||||
@ -658,10 +667,8 @@ bool TVariazione_budget_mask::save_sheet()
|
|||||||
FOR_EACH_SHEET_ROW(sf_righe, r, riga)
|
FOR_EACH_SHEET_ROW(sf_righe, r, riga)
|
||||||
{
|
{
|
||||||
const long numreg = sf_righe.row(r).get_long(_pos_numreg);
|
const long numreg = sf_righe.row(r).get_long(_pos_numreg);
|
||||||
|
|
||||||
if (numreg > 0)
|
if (numreg > 0)
|
||||||
r = modifica_movana(numreg, sf_righe, r);
|
r = modifica_movana(numreg, sf_righe, r);
|
||||||
|
|
||||||
} //FOR_EACH_SHEET_ROW(...
|
} //FOR_EACH_SHEET_ROW(...
|
||||||
|
|
||||||
//riordina lo sheet per chiave numreg; in questo modo le righe senza numreg vanno all'inizio e vengono..
|
//riordina lo sheet per chiave numreg; in questo modo le righe senza numreg vanno all'inizio e vengono..
|
||||||
@ -679,11 +686,10 @@ bool TVariazione_budget_mask::save_sheet()
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
n = crea_movana(sf_righe, n);
|
n = crea_movana(sf_righe, n);
|
||||||
|
|
||||||
} //FOR_EACH_SHEET_ROW(sf_righe,n...
|
} //FOR_EACH_SHEET_ROW(sf_righe,n...
|
||||||
|
|
||||||
//le righe vanno rimesse in ordine di chiave cdc/fase/conto
|
//le righe vanno rimesse in ordine di chiave cdc/fase/conto
|
||||||
load();
|
set_status(load() > 0);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -705,7 +711,6 @@ bool TVariazione_budget_mask::save()
|
|||||||
bool TVariazione_budget_mask::one_checked() const
|
bool TVariazione_budget_mask::one_checked() const
|
||||||
{
|
{
|
||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
|
|
||||||
FOR_EACH_SHEET_ROW(sf_righe, i, riga)
|
FOR_EACH_SHEET_ROW(sf_righe, i, riga)
|
||||||
{
|
{
|
||||||
if (riga->get_char(0) > ' ')
|
if (riga->get_char(0) > ' ')
|
||||||
@ -762,11 +767,11 @@ int TVariazione_budget_mask::load()
|
|||||||
query << "TO CODCMS=#CODCMS\n";
|
query << "TO CODCMS=#CODCMS\n";
|
||||||
//instanzio un TISAM_recordset sulle rmovana
|
//instanzio un TISAM_recordset sulle rmovana
|
||||||
TISAM_recordset rmovana(query);
|
TISAM_recordset rmovana(query);
|
||||||
const TString cms = get(F_CODCMS);
|
const TString& cms = get(F_CODCMS);
|
||||||
rmovana.set_var("#CODCMS", cms);
|
rmovana.set_var("#CODCMS", cms);
|
||||||
|
|
||||||
const long rmovana_items = rmovana.items();
|
const long rmovana_items = rmovana.items();
|
||||||
TProgind pi(rmovana_items, "Generazione righe in corso...", true, true);
|
TProgind pi(rmovana_items, TR("Caricamento righe..."), true, true);
|
||||||
|
|
||||||
//recupero sheet e realtiva mashera di riga
|
//recupero sheet e realtiva mashera di riga
|
||||||
TSheet_field& sf_righe = sfield(F_RIGHE);
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
@ -842,11 +847,9 @@ int TVariazione_budget_mask::load()
|
|||||||
{
|
{
|
||||||
//solo le righe a saldo preventivo nullo vanno considerate
|
//solo le righe a saldo preventivo nullo vanno considerate
|
||||||
const TString& str_saldo_prev = riga->get(_pos_prev);
|
const TString& str_saldo_prev = riga->get(_pos_prev);
|
||||||
if (str_saldo_prev == "")
|
if (str_saldo_prev.blank())
|
||||||
{
|
|
||||||
aggiorna_saldi_preventivi(sf_righe, i);
|
aggiorna_saldi_preventivi(sf_righe, i);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
//e poi aggiorna il video!
|
//e poi aggiorna il video!
|
||||||
sf_righe.force_update();
|
sf_righe.force_update();
|
||||||
@ -862,38 +865,16 @@ int TVariazione_budget_mask::load()
|
|||||||
///////////////////////////////////////
|
///////////////////////////////////////
|
||||||
class TVariazione_budget : public TSkeleton_application
|
class TVariazione_budget : public TSkeleton_application
|
||||||
{
|
{
|
||||||
virtual bool check_autorization() const { return false; }
|
|
||||||
virtual const char * extra_modules() const { return "ca"; }
|
|
||||||
|
|
||||||
TVariazione_budget_mask* _msk;
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
virtual bool check_autorization() const { return false; }
|
||||||
public:
|
virtual const char* extra_modules() const { return "ca"; }
|
||||||
virtual bool create();
|
|
||||||
virtual bool destroy();
|
|
||||||
virtual void main_loop();
|
virtual void main_loop();
|
||||||
|
|
||||||
TVariazione_budget() {};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
bool TVariazione_budget::create()
|
|
||||||
{
|
|
||||||
_msk = new TVariazione_budget_mask();
|
|
||||||
return TSkeleton_application::create();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool TVariazione_budget::destroy()
|
|
||||||
{
|
|
||||||
delete _msk;
|
|
||||||
return TApplication::destroy();
|
|
||||||
}
|
|
||||||
|
|
||||||
void TVariazione_budget::main_loop()
|
void TVariazione_budget::main_loop()
|
||||||
{
|
{
|
||||||
KEY tasto;
|
TVariazione_budget_mask msk;
|
||||||
tasto = _msk->run();
|
msk.run();
|
||||||
}
|
}
|
||||||
|
|
||||||
int ps1001300 (int argc, char* argv[])
|
int ps1001300 (int argc, char* argv[])
|
||||||
|
@ -6,6 +6,7 @@ BUTTON DLG_SAVEREC 2 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 1 "~Salva"
|
PROMPT 1 1 "~Salva"
|
||||||
PICTURE TOOL_SAVEREC
|
PICTURE TOOL_SAVEREC
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_NULL 4 2
|
BUTTON DLG_NULL 4 2
|
||||||
@ -18,6 +19,7 @@ BUTTON DLG_CHECKALL 2 2
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 3 1 "~Tutti"
|
PROMPT 3 1 "~Tutti"
|
||||||
PICTURE TOOL_MULTISEL
|
PICTURE TOOL_MULTISEL
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_NULL
|
BUTTON DLG_NULL
|
||||||
@ -30,24 +32,21 @@ BUTTON DLG_TODATAINI
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 5 1 "All.~Ini"
|
PROMPT 5 1 "All.~Ini"
|
||||||
PICTURE TOOL_TODATAINI
|
PICTURE TOOL_TODATAINI
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_TODATAFIN
|
BUTTON DLG_TODATAFIN
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 6 1 "All.~Fin"
|
PROMPT 6 1 "All.~Fin"
|
||||||
PICTURE TOOL_TODATAFIN
|
PICTURE TOOL_TODATAFIN
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_TOMATURATO
|
BUTTON DLG_TOMATURATO
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 7 1 "All.~Mat"
|
PROMPT 7 1 "All.~Mat"
|
||||||
PICTURE TOOL_TOCALC
|
PICTURE TOOL_TOCALC
|
||||||
END
|
GROUP 3
|
||||||
|
|
||||||
BUTTON DLG_NULL
|
|
||||||
BEGIN
|
|
||||||
PROMPT 8 1 ""
|
|
||||||
PICTURE 0
|
|
||||||
END
|
END
|
||||||
|
|
||||||
#include <cancelbar.h>
|
#include <cancelbar.h>
|
||||||
@ -91,24 +90,28 @@ END
|
|||||||
DATE F_DATAINICMS
|
DATE F_DATAINICMS
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 2 "Inizio "
|
PROMPT 1 2 "Inizio "
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
DATE F_DATAFINECMS
|
DATE F_DATAFINECMS
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 22 2 "Fine "
|
PROMPT 22 2 "Fine "
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
BOOL F_PROROGATA
|
BOOL F_PROROGATA
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 43 2 "Prorogata"
|
PROMPT 43 2 "Prorogata"
|
||||||
MESSAGE FALSE CLEAR,F_DATAPRORCMS
|
MESSAGE FALSE HIDE,F_DATAPRORCMS
|
||||||
MESSAGE TRUE ENABLE,F_DATAPRORCMS
|
MESSAGE TRUE SHOW,F_DATAPRORCMS
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
DATE F_DATAPRORCMS
|
DATE F_DATAPRORCMS
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 57 2 "Proroga "
|
PROMPT 57 2 "Proroga "
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 78 3
|
GROUPBOX DLG_NULL 78 3
|
||||||
@ -126,7 +129,7 @@ END
|
|||||||
STRINGA F_CODCAUS 3
|
STRINGA F_CODCAUS 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 24 5 "Causale "
|
PROMPT 24 5 "Causale "
|
||||||
USE LF_CAUSALI SELECT MOVIND!=''
|
USE LF_CAUSALI SELECT MOVIND!=""
|
||||||
INPUT CODCAUS F_CODCAUS
|
INPUT CODCAUS F_CODCAUS
|
||||||
DISPLAY "Codice" CODCAUS
|
DISPLAY "Codice" CODCAUS
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
@ -147,9 +150,9 @@ BEGIN
|
|||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 7 "@bRighe movimenti di budget"
|
PROMPT -11 7 "@bRighe movimenti di budget"
|
||||||
END
|
END
|
||||||
|
|
||||||
SPREADSHEET F_RIGHE
|
SPREADSHEET F_RIGHE
|
||||||
@ -177,52 +180,52 @@ ENDPAGE
|
|||||||
|
|
||||||
PAGE "Istruzioni " 0 2 0 0
|
PAGE "Istruzioni " 0 2 0 0
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 1 "_ Le date della commessa possono essere modificate."
|
PROMPT 1 1 "_ Le date della commessa possono essere modificate."
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 2 "_ I pulsanti All.Ini, All.Fin, All.Mat hanno effetto solo sulle righe il cui primo campo è spuntato"
|
PROMPT 1 2 "_ I pulsanti All.Ini, All.Fin, All.Mat hanno effetto solo sulle righe il cui primo campo è spuntato"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 3 "_ All.Ini (Allinea all'Inizio) allinea le date di competenza alla data inizio commessa"
|
PROMPT 1 3 "_ All.Ini (Allinea all'Inizio) allinea le date di competenza alla data inizio commessa"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 4 "_ All.Fin (Allinea alla Fine) allinea le date di fine competenza alla data fine commessa"
|
PROMPT 1 4 "_ All.Fin (Allinea alla Fine) allinea le date di fine competenza alla data fine commessa"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 5 "_ All.Mat (Allinea al Maturato) modifica gli importi in modo da portare il Preventivo al valore del Maturato"
|
PROMPT 1 5 "_ All.Mat (Allinea al Maturato) modifica gli importi in modo da portare il Preventivo al valore del Maturato"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 6 "_ E' possibile modificare manualmente gli importi sulle righe, il Preventivo viene ricalcolato di conseguenza"
|
PROMPT 1 6 "_ E' possibile modificare manualmente gli importi sulle righe, il Preventivo viene ricalcolato di conseguenza"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 7 "_ In fase di registrazione vengono eliminate le righe ad importo nullo (azzerare quindi l'importo se si"
|
PROMPT 1 7 "_ In fase di registrazione vengono eliminate le righe ad importo nullo (azzerare quindi l'importo se si"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 8 " desidera rimuovere una riga)."
|
PROMPT 1 8 " desidera rimuovere una riga)."
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 9 "_ In fase di registrazione le nuove righe vengono assegnate a nuovi movimenti analitici preventivi"
|
PROMPT 1 9 "_ In fase di registrazione le nuove righe vengono assegnate a nuovi movimenti analitici preventivi"
|
||||||
END
|
END
|
||||||
|
|
||||||
TEXT -1
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 10 "_ Il pulsante Tutti spunta le righe, una per ogni chiave Sede/Fase/Conto"
|
PROMPT 1 10 "_ Il pulsante Tutti spunta le righe, una per ogni chiave Sede/Fase/Conto"
|
||||||
END
|
END
|
||||||
|
Loading…
x
Reference in New Issue
Block a user