Patch level : 12.0 978

Files correlati     : f90.exe
Commento            :
- Corretta associazione MovimentoInErrore-FPPRO rimuovendo correttamente il record anche alla riapertura e corretto il reset del filtro date.
- Rimossi flag non utilizzati dalla maschera di configurazione.
- Corretta prima registrazione delle categorie doc. continuava a dare errore che erano incomplete.
- Aggiunto doppio percorso cartella cartacei WebApp in configurazione.
- Corretta copia file cartacei nella cartella cartacei WebApp.
This commit is contained in:
Simone Palacino 2020-07-15 10:30:38 +02:00
parent 6376fddbab
commit e07acf095f
5 changed files with 43 additions and 28 deletions

View File

@ -367,6 +367,7 @@ bool TMonitor_mask::save_conf_handler(TMask_field& f, KEY key)
warning_box("Codice Ambiente vuoto. Impossibile salvare i dati.");
F9CONF.set_ambiente (config_mask.get(CF_CODSOC));
F9CONF.set_addr_doc (config_mask.get(CF_ADDRDOC));
F9CONF.set_addr_doc_loc (config_mask.get(CF_ADDRDOCLOC));
F9CONF.set_has_cartexp (config_mask.get_bool(CF_CARTEXP));
config_mask.close();
@ -405,7 +406,7 @@ void TMonitor_mask::controllo_errori() const
void TMonitor_mask::delete_estr_fld(const TString& idestr)
{
static const TFilename dir = TString() << F9CONF.get_addr_doc() << SLASH << F9CONF.get_ambiente() << SLASH << idestr << SLASH;
const TFilename dir = TString() << F9CONF.get_addr_doc_loc() << SLASH << F9CONF.get_ambiente() << SLASH << idestr << SLASH;
experimental::filesystem::remove_all((const char*)dir);
}
@ -601,15 +602,17 @@ void TMonitor_mask::open_win_conf()
m->add_groupbox (CF_CODGROUP, 0, "Codice Ambiente Societa' (WEBAPP):", 1, 0, 69, 3, "");
m->add_string (CF_CODSOC, 0, "Codice ambiente", 4, 1, 10, "", 10);
m->add_groupbox (CF_ADDRGROUP, 0, "Indicare percorso documenti cartacei:", 1, 3, 69, 3, "");
m->add_string (CF_ADDRDOC, 0, "Percorso", 2, 4, 256, "", 40);
m->add_groupbox (CF_ESTRGROUP, 0, "Opzioni estrazione", 1, 6, 69, 5, "");
m->add_groupbox (CF_ADDRGROUP, 0, "Indicare percorso documenti cartacei:", 1, 3, 69, 4, "");
m->add_string (CF_ADDRDOC, 0, "Server", 2, 4, 256, "", 40);
m->add_string (CF_ADDRDOCLOC, 0, "Locale", 2, 5, 256, "", 40);
m->add_groupbox (CF_ESTRGROUP, 0, "Opzioni estrazione", 1, 7, 69, 4, "");
m->add_boolean (CF_CARTEXP, 0, "Estrai anche documenti cartacei", 2, 8);
m->set_handler(DLG_OK, save_conf_handler);
m->set(CF_CODSOC, F9CONF.get_ambiente());
m->set(CF_ADDRDOC, F9CONF.get_addr_doc());
m->set(CF_ADDRDOCLOC, F9CONF.get_addr_doc_loc());
m->set(CF_CARTEXP, F9CONF.get_has_cartexp());
}
m->run();

View File

@ -49,8 +49,9 @@
#define CF_CODSOC 502
#define CF_ADDRGROUP 503
#define CF_ADDRDOC 504
#define CF_ESTRGROUP 505
#define CF_CARTEXP 506
#define CF_ADDRDOCLOC 505
#define CF_ESTRGROUP 506
#define CF_CARTEXP 507
// Campi maschera descrizione estrazione
#define DES_TEXT 501

View File

@ -95,7 +95,8 @@ class TF9_config
// Config in f90100:
TString _ambiente; // Codice ambiente (codsoc)
TString _addr_doc; // Indirizzo documenti cartacei WebApp
TString _addr_doc; // Indirizzo documenti cartacei WebApp (Server)
TString _addr_doc_loc; // Indirizzo documenti cartacei WebApp (Locale)
bool _cartexp;
// Config in f90300:
@ -104,18 +105,18 @@ class TF9_config
TString _estensioni; // Estensioni valide per il caricamenti dei doc. cart.
public:
const TString& get_ambiente() const { return _ambiente; }
const TString& get_addr_doc() const { return _addr_doc; }
bool get_has_cartexp() const { return _cartexp; }
const TString& get_ambiente() const { return _ambiente; }
const TString& get_addr_doc() const { return _addr_doc; }
const TString& get_addr_doc_loc() const { return _addr_doc_loc; }
bool get_has_cartexp() const { return _cartexp; }
const TString& get_addr_cart() const { return _addr_cart; }
const TString& get_estensioni() const { return _estensioni; }
const TString& get_addr_cart() const { return _addr_cart; }
const TString& get_estensioni() const { return _estensioni; }
void set_ambiente(const TString& cod_amb);
void set_addr_doc(const TString& path);
void set_addr_doc_loc(const TString& path);
void set_has_cartexp(bool flag);
void set_has_checkvend(bool flag); // Inutilizzato
void set_viewmov(bool flag);
void set_addr_cart(const TString& path);
void set_estensioni(const TString& ext);
@ -140,10 +141,10 @@ public:
struct annesso
{
TString catdocpadre;
TString catdoc; // Codice cat. documentale.
TString descr; // Descrizione documento.
TString opcee; // { RV | DC } - Usato come classificazione annesso (Reverse, ann. cartaceo).
bool obblig; // Definisce se deve essere per forza presente l'annesso.
TString catdoc; // Codice cat. documentale.
TString descr; // Descrizione documento.
TString opcee; // { RV | DC } - Usato come classificazione annesso (Reverse, ann. cartaceo).
bool obblig{ false }; // Definisce se deve essere per forza presente l'annesso.
};
private:
std::vector<std::shared_ptr<classe_doc>> _rows;

View File

@ -180,9 +180,10 @@ bool TEstrazione::check_periodo_def() const
void TEstrazione::copy_file_to_webapp_fld(const movimento_t& movimento) const
{
// f9pwa + ambiente + idlancio(ID drd) + categoria_documento(drt) + nome_documento
static const TFilename base = TString() << _head.addr_cart << SLASH << _head.cod_soc << SLASH << _head.id_estr << SLASH;
TToken_string categorie;
TToken_string files;
TFilename base(F9CONF.get_addr_doc_loc());
base.add(_head.cod_soc).add(_head.id_estr).slash_terminate();
TToken_string categorie;
TToken_string files;
if(movimento.cartaceo && movimento.catdoc != nullptr)
{
@ -204,7 +205,8 @@ void TEstrazione::copy_file_to_webapp_fld(const movimento_t& movimento) const
for(int i = 0; i < files.items(); ++i)
{
TFilename file = files.get(i);
TFilename dest; dest << base << categorie.get(i) << SLASH << file.name();
TFilename dest(base);
dest.add(categorie.get(i)).add(file.name());
make_dir(dest.path());
const bool f = CopyFile(file, dest, false);
if (!f)

View File

@ -14,7 +14,8 @@
#define AMBIENTE_F9 "CODSOC" // Codice ambiente (codsoc)
#define ADDRCART_F9 "ADDRCART"
#define ADDRDOC_F9 "ADDDOC" // Indirizzo documenti cartacei
#define ADDRDOC_F9 "ADDDOC" // Indirizzo documenti cartacei Server
#define ADDRDOCLOC_F9 "ADDDOCLOC" // Indirizzo documenti cartacei Locale
#define ESTENSIONI_F9 "DOCUMENTI_EXT" //
#define CARTEXP_F9 "CARTEXP" // Flag esporta documenti cartacei
#define CHECKVEND_F9 "CHECKVEND" // Flag controlli per vendite (quando hai fatt. con Campo)
@ -34,6 +35,12 @@ void TF9_config::set_addr_doc(const TString& path)
_addr_doc = path;
}
void TF9_config::set_addr_doc_loc(const TString& path)
{
ini_set_string(CONFIG_DITTA, "F9", ADDRDOCLOC_F9, path);
_addr_doc_loc = path;
}
void TF9_config::set_has_cartexp(const bool flag)
{
ini_set_bool(CONFIG_DITTA, "F9", CARTEXP_F9, flag);
@ -54,11 +61,12 @@ void TF9_config::set_estensioni(const TString& ext)
TF9_config::TF9_config()
{
_ambiente = ini_get_string(CONFIG_DITTA, "F9", AMBIENTE_F9);
_addr_cart = ini_get_string(CONFIG_DITTA, "F9", ADDRCART_F9);
_addr_doc = ini_get_string(CONFIG_DITTA, "F9", ADDRDOC_F9);
_cartexp = ini_get_bool (CONFIG_DITTA, "F9", CARTEXP_F9);
_estensioni = ini_get_string(CONFIG_DITTA, "F9", ESTENSIONI_F9);
_ambiente = ini_get_string(CONFIG_DITTA, "F9", AMBIENTE_F9);
_addr_cart = ini_get_string(CONFIG_DITTA, "F9", ADDRCART_F9);
_addr_doc = ini_get_string(CONFIG_DITTA, "F9", ADDRDOC_F9);
_addr_doc_loc = ini_get_string(CONFIG_DITTA, "F9", ADDRDOCLOC_F9);
_cartexp = ini_get_bool (CONFIG_DITTA, "F9", CARTEXP_F9);
_estensioni = ini_get_string(CONFIG_DITTA, "F9", ESTENSIONI_F9);
}
///////////////////////////////////////////////////////////////////////////////