Patch level : 12.0 1198
Files correlati : f90.exe f90300a.msk f90300b.msk Commento: Modificato il tracciato di F9docs e il programma di documenti cartacei
This commit is contained in:
parent
802c39e23e
commit
0a8e6dbf36
@ -1,3 +1,3 @@
|
||||
181
|
||||
0
|
||||
$docf9|3|6|132|0|Associazione doc cartacei / mov per f9|||
|
||||
$docf9|0|0|133|0|Assoc.doc cartacei rev.charge mov per f9|||
|
||||
|
@ -1,10 +1,11 @@
|
||||
181
|
||||
4
|
||||
5
|
||||
NUMREG|3|7|0|Numero di registrazione associato
|
||||
NRIG|2|1|0|Progressivo file
|
||||
FILENAME|1|100|0|Nome del file (senza indirizzo)
|
||||
LOADDATE|5|8|0|Data caricamento
|
||||
USER|1|16|0|Utente che ha caricato il file
|
||||
3
|
||||
NUMREG|
|
||||
FILENAME|
|
||||
NUMREG+NRIG|
|
||||
FILENAME|X
|
||||
FILENAME+NUMREG|X
|
||||
|
@ -22,8 +22,6 @@ class TImport_msk : public TAutomask
|
||||
{
|
||||
friend class TGestione_doc_cartacei_f9_msk;
|
||||
|
||||
// map<TString, unique_ptr<TArray_sheet>> _annessi;
|
||||
|
||||
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
|
||||
|
||||
static bool catdocann_handler(TMask_field& field, KEY key);
|
||||
@ -45,10 +43,7 @@ bool TImport_msk::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
case F_ISANNESSO:
|
||||
if (e == fe_modify)
|
||||
{
|
||||
const bool on = o.mask().get_bool(F_ISANNESSO);
|
||||
o.mask().enable(F_CATDOCANN, on);
|
||||
}
|
||||
o.mask().enable(F_CATDOCANN, o.mask().get_bool(F_ISANNESSO));
|
||||
break;
|
||||
case F_IMPNUMREG:
|
||||
if(e == fe_modify)
|
||||
@ -62,25 +57,23 @@ bool TImport_msk::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
set(F_CATDOCANN, "");
|
||||
}
|
||||
else
|
||||
{
|
||||
message_box("Questo tipo di registrazione non corrisponde a nessuna delle categorie documentali inserite.");
|
||||
set(F_CATANNPADRE, "");
|
||||
set(F_CATDOCANN, "");
|
||||
}
|
||||
if (o.mask().get_bool(F_ISANNESSO))
|
||||
{
|
||||
message_box("Questo tipo di registrazione non corrisponde a nessuna delle categorie documentali inserite.");
|
||||
set(F_CATANNPADRE, "");
|
||||
set(F_CATDOCANN, "");
|
||||
}
|
||||
}
|
||||
default: break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TImport_msk::catdocann_handler(TMask_field& field, KEY key)
|
||||
bool TImport_msk::catdocann_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
static const char* msg_notexist = "Non esistono tipologie di annessi per questa categoria documentale.";
|
||||
static const char* msg_inspadre = "Questa registrazione non e' riconosciuta in nessuna categoria documentale.\nImpossible inserire un annesso.\n"
|
||||
"Si prega di inserire prima una cat. documentale che comprenda questo tipo di registrazione\naggiungendo anche eventuali tipologie di annessi.";
|
||||
TImport_msk& msk = (TImport_msk&)field.mask();
|
||||
TImport_msk& msk = (TImport_msk&)f.mask();
|
||||
|
||||
if (key == K_TAB && field.dirty() && field.full())
|
||||
if (f.running_check(key) && f.full())
|
||||
{
|
||||
if (msk.get(F_CATANNPADRE).full())
|
||||
{
|
||||
@ -92,23 +85,17 @@ bool TImport_msk::catdocann_handler(TMask_field& field, KEY key)
|
||||
bool ok = false;
|
||||
FOR_EACH_ARRAY_ITEM(names_ann, nr, ann)
|
||||
{
|
||||
if (field.get() == (*(TToken_string*)ann).get(0))
|
||||
if (f.get() == (*(TToken_string*)ann).get(0))
|
||||
ok = true;
|
||||
}
|
||||
if (!ok)
|
||||
{
|
||||
msk.error_box("La categoria inserita e' inesistente");
|
||||
field.set("");
|
||||
}
|
||||
return f.error_box("La categoria inserita e' inesistente");
|
||||
}
|
||||
else
|
||||
warning_box(msg_notexist);
|
||||
f.warning_box(TR("Non esistono tipologie di annessi per questa categoria documentale."));
|
||||
}
|
||||
else
|
||||
{
|
||||
warning_box(msg_inspadre);
|
||||
field.set("");
|
||||
}
|
||||
f.warning_box(TR("Questa registrazione non e' riconosciuta in nessuna categoria documentale.\nImpossible inserire un annesso.\nSi prega di inserire prima una cat. documentale che comprenda questo tipo di registrazione\naggiungendo anche eventuali tipologie di annessi."));
|
||||
}
|
||||
if (key == K_F9)
|
||||
{
|
||||
@ -117,7 +104,7 @@ bool TImport_msk::catdocann_handler(TMask_field& field, KEY key)
|
||||
if (catdoc_padre.full())
|
||||
{
|
||||
TCategorie_doc cd;
|
||||
TArray_sheet * annessi = cd.get_sheet_ann(msk.get(F_CATANNPADRE));
|
||||
TArray_sheet * annessi = cd.get_sheet_ann(catdoc_padre);
|
||||
|
||||
if (annessi && annessi->items() > 0)
|
||||
{
|
||||
@ -131,55 +118,53 @@ bool TImport_msk::catdocann_handler(TMask_field& field, KEY key)
|
||||
if (ann->opcee() != "RC")
|
||||
msk.set(F_CATDOCANN, ann->catdoc());
|
||||
else
|
||||
warning_box("Impossibile importare un annesso cartaceo per un prospetto integrativo per Reverse Charge.");
|
||||
f.warning_box("Impossibile importare un annesso cartaceo per un prospetto integrativo per Reverse Charge.");
|
||||
}
|
||||
else
|
||||
warning_box("Errore nell'acquisire la categoria annesso");
|
||||
f.warning_box("Errore nell'acquisire la categoria annesso");
|
||||
}
|
||||
}
|
||||
else
|
||||
warning_box(msg_notexist);
|
||||
f.warning_box(TR("Non esistono tipologie di annessi per questa categoria documentale."));
|
||||
}
|
||||
else
|
||||
warning_box(msg_inspadre);
|
||||
f.warning_box(TR("Questa registrazione non e' riconosciuta in nessuna categoria documentale.\nImpossible inserire un annesso.\nSi prega di inserire prima una cat. documentale che comprenda questo tipo di registrazione\naggiungendo anche eventuali tipologie di annessi."));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TImport_msk::catannpadre_handler(TMask_field& field, KEY key)
|
||||
bool TImport_msk::catannpadre_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
TCategorie_doc cd;
|
||||
TImport_msk& msk = (TImport_msk&)field.mask();
|
||||
TImport_msk& msk = (TImport_msk&)f.mask();
|
||||
|
||||
if (key == K_TAB && field.dirty() && field.full())
|
||||
if (f.running_check(key) && f.full())
|
||||
{
|
||||
TString_array * name_cats = cd.get_name_catdocs();
|
||||
|
||||
const bool ok = name_cats->find(field.get()) >= 0;
|
||||
const bool ok = name_cats->find(f.get()) >= 0;
|
||||
|
||||
if (!ok)
|
||||
{
|
||||
msk.error_box("La categoria inserita e' inesistente");
|
||||
field.set("");
|
||||
}
|
||||
return f.error_box("La categoria inserita e' inesistente");
|
||||
}
|
||||
if (key == K_F9)
|
||||
{
|
||||
field.set(select_catdoc());
|
||||
msk.set(F_CATDOCANN, "");
|
||||
f.set(select_catdoc());
|
||||
msk.reset(F_CATDOCANN);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TImport_msk::ok_handler(TMask_field& field, KEY key)
|
||||
bool TImport_msk::ok_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
field.mask().send_key(K_ENTER, DLG_OK);
|
||||
f.mask().send_key(K_ENTER, DLG_OK);
|
||||
return true;
|
||||
}
|
||||
|
||||
const char* TImport_msk::select_catdoc()
|
||||
{
|
||||
TArray_sheet * catdocs = TCategorie_doc().get_sheet_catdocs();
|
||||
|
||||
if (catdocs->run() == K_ENTER)
|
||||
return catdocs->row().get(0);
|
||||
return "";
|
||||
@ -201,36 +186,14 @@ TImport_msk::TImport_msk(): TAutomask("f90300b")
|
||||
TMask::set_handler(F_CATDOCANN, catdocann_handler);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// TGestione_doc_cartacei_f9_msk
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class TGestione_doc_cartacei_f9_msk : public TAutomask
|
||||
{
|
||||
/* struct doc_cart_t
|
||||
{
|
||||
TString filename;
|
||||
TString loaddate;
|
||||
TString numreg;
|
||||
TString user;
|
||||
};
|
||||
struct ann_cart_t
|
||||
{
|
||||
TString numreg;
|
||||
TString filename;
|
||||
TString catdocpad;
|
||||
TString catdocann;
|
||||
TString loaddate;
|
||||
TString user;
|
||||
}; */
|
||||
const TString& _addr_cart; // Indirizzo cartella doc. cartacei F9
|
||||
// TMask * _config_msk;
|
||||
TString_array _extensions;
|
||||
// TAssoc_array _list_file; // doc_cart_t
|
||||
// TAssoc_array _list_ann; // ann_cart_t
|
||||
|
||||
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
|
||||
|
||||
@ -258,7 +221,7 @@ public:
|
||||
|
||||
bool TGestione_doc_cartacei_f9_msk::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
if(e == se_query_add || e == se_query_del || e == se_query_modify)
|
||||
if (e == se_query_add || e == se_query_del || e == se_query_modify) // porco cane
|
||||
return false;
|
||||
|
||||
switch (o.dlg())
|
||||
@ -294,7 +257,7 @@ void TGestione_doc_cartacei_f9_msk::check_addr_cart()
|
||||
const TFilename f(_addr_cart);
|
||||
if (f.full() && !f.exist())
|
||||
{
|
||||
warning_box("Cartella documenti cartacei non trovata.\nSalvare nuovamente le impostazioni.");
|
||||
warning_box(TR("Cartella documenti cartacei non trovata.\nSalvare nuovamente le impostazioni."));
|
||||
open_config_win();
|
||||
}
|
||||
}
|
||||
@ -322,7 +285,9 @@ void TGestione_doc_cartacei_f9_msk::check_deleted()
|
||||
bool TGestione_doc_cartacei_f9_msk::check_file_exist(const TString& file) const
|
||||
{
|
||||
TFilename path(_addr_cart);
|
||||
path.slash_terminate() << file;
|
||||
|
||||
path = path.make_absolute_path();
|
||||
path.add(file);
|
||||
return path.exist();
|
||||
}
|
||||
|
||||
@ -396,8 +361,7 @@ void TGestione_doc_cartacei_f9_msk::edit_ann()
|
||||
{
|
||||
f9ann.put(F9A_CATDOCPAD, win.get(F_CATANNPADRE));
|
||||
f9ann.put(F9A_CATDOCANN, win.get(F_CATDOCANN));
|
||||
f9ann.write();
|
||||
f9ann.rewrite();
|
||||
f9ann.write_rewrite();
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -405,8 +369,7 @@ void TGestione_doc_cartacei_f9_msk::edit_ann()
|
||||
f9ann.put(F9A_NUMREG, win.get(F_IMPNUMREG));
|
||||
f9ann.put(F9A_CATDOCPAD, win.get(F_CATANNPADRE));
|
||||
f9ann.put(F9A_CATDOCANN, win.get(F_CATDOCANN));
|
||||
f9ann.write();
|
||||
f9ann.rewrite();
|
||||
f9ann.write_rewrite();
|
||||
}
|
||||
message_box("Annesso modificato!");
|
||||
}
|
||||
@ -422,7 +385,10 @@ void TGestione_doc_cartacei_f9_msk::edit_file()
|
||||
TLocalisamfile f9docs(LF_F9DOCS);
|
||||
const char* numreg = row.get(2);
|
||||
const char* filename = row.get(1);
|
||||
int nrig = row.get_int(3);
|
||||
|
||||
f9docs.put(F9C_NUMREG, numreg);
|
||||
f9docs.put(F9C_NUMREG, nrig);
|
||||
f9docs.read();
|
||||
win.set_fields(TF9_doccart::get_full_path_file_cartaceo(filename), numreg);
|
||||
|
||||
@ -432,6 +398,7 @@ void TGestione_doc_cartacei_f9_msk::edit_file()
|
||||
{
|
||||
f9docs.remove();
|
||||
f9docs.put(F9C_NUMREG, win.get(F_IMPNUMREG));
|
||||
f9docs.put(F9C_NRIG, win.get(F_IMPNUMREG));
|
||||
f9docs.write();
|
||||
f9docs.rewrite();
|
||||
message_box("Documento modificato!");
|
||||
@ -524,12 +491,24 @@ void TGestione_doc_cartacei_f9_msk::fill_docs()
|
||||
const TRectype & mov = cache().get(LF_MOV, numreg);
|
||||
const bool not_exist = !check_file_exist(namefile);
|
||||
|
||||
if (files.get_int(F9C_NRIG) == 0)
|
||||
{
|
||||
TRectype rec(files.curr());
|
||||
|
||||
if (rec.remove() == NOERR)
|
||||
{
|
||||
files.put(F9C_NRIG, 1);
|
||||
files.write();
|
||||
}
|
||||
}
|
||||
|
||||
if (not_exist)
|
||||
file_err.add(namefile, numreg);
|
||||
|
||||
const int row = sf.set_row_cell(F_FILENAME, namefile);
|
||||
|
||||
sf.set_row_cell(F_NUMREG, numreg, row);
|
||||
sf.set_row_cell(F_NRIG, files.get_int(F9C_NRIG), row);
|
||||
sf.set_row_cell(F_DATAMOV, mov.get_date(MOV_DATAREG), row);
|
||||
sf.set_row_cell(F_CAUS, mov.get(MOV_CODCAUS), row);
|
||||
|
||||
@ -687,21 +666,21 @@ void TGestione_doc_cartacei_f9_msk::open_import_win()
|
||||
{
|
||||
if (load_file(f, numreg, is_annesso, catannpadre, catdocann))
|
||||
{
|
||||
message_box("File caricato.");
|
||||
message_box(TR("File caricato."));
|
||||
fill();
|
||||
}
|
||||
}
|
||||
else
|
||||
warning_box("Se il documento e' un annesso, si prega di inserire le\ninformazioni per la categoria documentale dell'annesso.");
|
||||
warning_box(TR("Se il documento e' un annesso, si prega di inserire le\ninformazioni per la categoria documentale dell'annesso."));
|
||||
}
|
||||
else
|
||||
warning_box("Si prega di inserire il numero di registrazione.");
|
||||
warning_box(TR("Si prega di inserire il numero di registrazione."));
|
||||
}
|
||||
else
|
||||
warning_box("Questo file e' in un formato non accettato.");
|
||||
warning_box(TR("Questo file e' in un formato non accettato."));
|
||||
}
|
||||
else
|
||||
warning_box("Si prega di inserire il nome del file.");
|
||||
warning_box(TR("Si prega di inserire il nome del file."));
|
||||
}
|
||||
fill();
|
||||
}
|
||||
@ -737,9 +716,6 @@ TGestione_doc_cartacei_f9_msk::TGestione_doc_cartacei_f9_msk(): TAutomask("f9030
|
||||
fill();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// TGestione_doc_cartacei_f9_app
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
@ -749,14 +725,12 @@ class TGestione_doc_cartacei_f9_app : public TSkeleton_application
|
||||
void main_loop() override
|
||||
{
|
||||
TGestione_doc_cartacei_f9_msk msk;
|
||||
|
||||
while (msk.run() == K_ENTER)
|
||||
{ }
|
||||
{}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
int f90300(const int argc, char* argv[])
|
||||
{
|
||||
TGestione_doc_cartacei_f9_app app;
|
||||
|
@ -10,13 +10,14 @@
|
||||
#define F_SEL 101
|
||||
#define F_FILENAME 102
|
||||
#define F_NUMREG 103
|
||||
#define F_DATAMOV 104
|
||||
#define F_CAUS 105
|
||||
#define F_NUMDOC 106
|
||||
#define F_NPROTOCOL 107
|
||||
#define F_DESCRMOV 108
|
||||
#define F_DATACARIC 109
|
||||
#define F_INFO 110
|
||||
#define F_NRIG 104
|
||||
#define F_DATAMOV 105
|
||||
#define F_CAUS 106
|
||||
#define F_NUMDOC 107
|
||||
#define F_NPROTOCOL 108
|
||||
#define F_DESCRMOV 109
|
||||
#define F_DATACARIC 110
|
||||
#define F_INFO 111
|
||||
|
||||
// Sheet S_ANNESSI
|
||||
|
||||
|
@ -71,6 +71,7 @@ BEGIN
|
||||
ITEM ""
|
||||
ITEM "Nome File@25"
|
||||
ITEM "Movimento\nContabile N.@7"
|
||||
ITEM "Progressivo"
|
||||
ITEM "Data\nMovimento@10"
|
||||
ITEM "Causale@7"
|
||||
ITEM "Num. Doc.@7"
|
||||
@ -100,12 +101,9 @@ BEGIN
|
||||
ITEM "Data\nCaricamento@10"
|
||||
ITEM "Info (Errori)@25"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
ENDMASK
|
||||
|
||||
|
||||
|
||||
PAGE "DOC CARTACEO" -1 -1 78 13
|
||||
|
||||
BOOLEAN F_SEL
|
||||
@ -140,6 +138,11 @@ BEGIN
|
||||
FLAG "U"
|
||||
END
|
||||
|
||||
NUMBER F_NRIG 1
|
||||
BEGIN
|
||||
PROMPT 32 3 "Progressivo"
|
||||
END
|
||||
|
||||
DATE F_DATAMOV
|
||||
BEGIN
|
||||
PROMPT 0 4 "Data movimento"
|
||||
|
@ -1,6 +1,7 @@
|
||||
#define F_IMPADDRGROUP 101
|
||||
#define F_IMPADDRESS 102
|
||||
#define F_IMPNUMREG 103
|
||||
#define F_ISANNESSO 104
|
||||
#define F_CATANNPADRE 105
|
||||
#define F_CATDOCANN 106
|
||||
#define F_IMPNRIG 104
|
||||
#define F_ISANNESSO 105
|
||||
#define F_CATANNPADRE 106
|
||||
#define F_CATDOCANN 107
|
||||
|
@ -36,6 +36,13 @@ BEGIN
|
||||
FLAG "U"
|
||||
END
|
||||
|
||||
NUMBER F_IMPNRIG 1
|
||||
BEGIN
|
||||
PROMPT 34 3 "Progressivo"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
|
||||
BOOLEAN F_ISANNESSO
|
||||
BEGIN
|
||||
PROMPT 2 4 "Annesso"
|
||||
|
Loading…
x
Reference in New Issue
Block a user