campo-sirio/src/f9/f90300.cpp

697 lines
20 KiB
C++
Raw Normal View History

#include "f90.h"
#include <Windows.h>
#include <set>
#include <map>
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
#include "annessif9.h"
#include "applicat.h"
#include "automask.h"
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
#include "docf9.h"
#include "sheet.h"
#include "urldefid.h"
#include "utility.h"
#include "mov.h"
#include "isam.h"
#include "f9lib01.h"
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
#include "f90300a.h"
#include "f90300b.h"
#define TABMOD_CARTDIR "S0"
///////////////////////////////////////////////////////////////////////////////
// TImport_msk
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
class TImport_msk : public TAutomask
{
friend class TGestione_doc_cartacei_f9_msk;
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
std::shared_ptr<TArray_sheet> _catdocs;
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);
static bool catannpadre_handler(TMask_field& field, KEY key);
static bool ok_handler(TMask_field& field, KEY key);
const char* select_catdoc();
public:
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TImport_msk();
};
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
bool TImport_msk::on_field_event(TOperable_field& o, TField_event e, long jolly)
{
switch (o.dlg())
{
case F_ISANNESSO:
if (e == fe_modify)
{
const bool on = o.mask().get_bool(F_ISANNESSO);
o.mask().enable(F_CATANNPADRE, on);
o.mask().enable(F_CATDOCANN, on);
}
default: break;
}
return true;
}
bool TImport_msk::catdocann_handler(TMask_field& field, KEY key)
{
static const char* msg_notexist = "Non esistono tipologie di annessi per questa categoria documentale.";
static const char* msg_inspadre = "Inserire prima la cat. doc. padre.";
TImport_msk& msk = (TImport_msk&)field.mask();
if (key == K_TAB && field.dirty() && field.full())
{
if (msk.get(F_CATANNPADRE).full())
{
const TString_array names_ann = categorie_doc().get_array_ann(msk.get(F_CATANNPADRE));
if (names_ann.items() > 0)
{
bool ok = false;
FOR_EACH_ARRAY_ITEM(names_ann, nr, ann)
{
if (field.get() == (*(TToken_string*)ann).get(0))
ok = true;
}
if (!ok)
{
msk.error_box("La categoria inserita e' inesistente");
field.set("");
}
}
else
warning_box(msg_notexist);
}
else
{
warning_box(msg_inspadre);
field.set("");
}
}
if (key == K_F9)
{
if (msk.get(F_CATANNPADRE).full())
{
TArray_sheet* annessi = categorie_doc().get_sheet_ann(msk.get(F_CATANNPADRE)).get();
if (annessi && annessi->items() > 0)
{
if (annessi->run() == K_ENTER)
msk.set(F_CATDOCANN, annessi->row(annessi->selected()).get(0));
}
else
warning_box(msg_notexist);
}
else
warning_box(msg_inspadre);
}
return true;
}
bool TImport_msk::catannpadre_handler(TMask_field& field, KEY key)
{
TImport_msk& msk = (TImport_msk&)field.mask();
if (key == K_TAB && field.dirty() && field.full())
{
std::set<TString>& name_cats = categorie_doc().get_name_catdocs();
const bool ok = name_cats.find(field.get()) != name_cats.end();
if (!ok)
{
msk.error_box("La categoria inserita e' inesistente");
field.set("");
}
}
if (key == K_F9)
{
field.set(msk.select_catdoc());
msk.set(F_CATDOCANN, "");
}
return true;
}
bool TImport_msk::ok_handler(TMask_field& field, KEY key)
{
field.mask().send_key(K_ENTER, DLG_OK);
return true;
}
const char* TImport_msk::select_catdoc()
{
if(_catdocs == nullptr)
_catdocs = categorie_doc().get_sheet_catdocs();
if (_catdocs->run() == K_ENTER)
return _catdocs->row().get(0);
return "";
}
TImport_msk::TImport_msk(): TAutomask("f90300b")
{
TMask::set_handler(F_CATANNPADRE, catannpadre_handler);
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;
};
const TString& _addr_cart; // Indirizzo cartella doc. cartacei F9
std::unique_ptr<std::set<TString>> _extensions; // todo: controllare che con TString funzioni l'ordinamento, quindi la find
std::unique_ptr<TImport_msk> _import_msk;
std::map<TString, doc_cart_t> _list_file;
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
void check_addr_cart() const;
static void check_deleted();
bool check_file_exist(const TString& file) const;
void delete_file();
void fill();
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
void fill_annessi() const;
void fill_docs();
static TToken_string& get_valid_extensions();
void load_extensions();
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
bool load_file(const TFilename& file, const TString& numreg, bool is_annesso, const TString& catannpadre, const TString& catdocann);
void open_config_win() const;
void open_import_win();
static void remove_file_from_f9cart(const std::set<TString>& files);
bool verify_extension(const TFilename& file);
public:
TGestione_doc_cartacei_f9_msk();
};
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)
return false;
switch (o.dlg())
{
case B_IMPORT:
if (e == fe_button)
open_import_win();
break;
case B_DELETE:
if (e == fe_button)
delete_file();
break;
case B_CONFIG:
if (e == fe_button)
open_config_win();
default: break;
}
return true;
}
void TGestione_doc_cartacei_f9_msk::check_addr_cart() const
{
const TFilename f(_addr_cart);
if (f.full() && !f.exist())
{
warning_box("Cartella documenti cartacei non trovata.\nSalvare nuovamente le impostazioni.");
open_config_win();
}
}
void TGestione_doc_cartacei_f9_msk::check_deleted()
{
// Controllo che non ci siano file nella cartella eliminati da piu' di un mese, altrimenti li elimino
TString_array result;
TFilename s; s << TFilename(F9CONF.get_addr_cart()).slash_terminate() << "eliminati\\";
if (s.exist())
{
list_files(s, result);
FOR_EACH_ARRAY_ITEM(result, nr, file)
{
const char* deletedfile = *(TString*)(file);
HANDLE h_file = CreateFile(deletedfile, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
FILETIME last_access_time;
SYSTEMTIME time;
bool flag = false;
if (h_file != INVALID_HANDLE_VALUE)
{
if (GetFileTime(h_file, NULL, &last_access_time, NULL))
{
FileTimeToSystemTime(&last_access_time, &time);
TDate today = TDate(TODAY);
if (time.wMonth < (unsigned short)today.month() - 1 ||
time.wMonth == (unsigned short)today.month() - 1 && time.wDay <= (unsigned short)today.day())
{
flag = true;
CloseHandle(h_file);
DeleteFile(deletedfile);
}
}
}
if (!flag)
CloseHandle(h_file);
}
}
}
bool TGestione_doc_cartacei_f9_msk::check_file_exist(const TString& file) const
{
TFilename path(_addr_cart);
path.slash_terminate() << file;
return path.exist();
}
void TGestione_doc_cartacei_f9_msk::delete_file()
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
int p = curr_page();
TSheet_field& sf = p == 0 ? sfield(S_IMPORTED) : sfield(S_ANNESSI);
FOR_EACH_SHEET_ROW(sf, nr, row)
{
if (row->starts_with("X"))
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TLocalisamfile f9cart(LF_F9DOCS);
TLocalisamfile f9annessi(LF_F9ANNESSI);
const char* filename = row->get(cid2index(F_FILENAME));
const char* numreg = row->get(p == 0 ? cid2index(F_NUMREG) : cid2index(F_ANUMREG));
if (p == 0)
{
f9cart.put(F9C_FILENAME, filename);
f9cart.put(F9C_NUMREG, numreg);
f9cart.read();
}
else
{
f9annessi.put(F9A_NUMREG, numreg);
f9annessi.put(F9A_FILENAME, filename);
f9annessi.read();
}
TFilename filecart(F9CONF.get_addr_cart());
filecart.slash_terminate();
TFilename deleted(filecart);
filecart << filename;
deleted << "eliminati" << SLASH;
if (!deleted.exist())
make_dir(deleted);
deleted << filename;
if (deleted.exist())
DeleteFile(deleted);
if (!MoveFile(filecart, deleted))
warning_box(TString("Attenzione:") << " non e' stato possibile rimuovere questo file: " << filecart);
else
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
{
if (p == 0)
f9cart.remove();
else
f9annessi.remove();
}
}
}
fill();
}
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
void TGestione_doc_cartacei_f9_msk::fill()
{
fill_docs();
fill_annessi();
}
void TGestione_doc_cartacei_f9_msk::fill_annessi() const
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TLocalisamfile ann(LF_F9ANNESSI);
if(ann.first() == NOERR)
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TLocalisamfile mov(LF_MOV);
TSheet_field& sf = sfield(S_ANNESSI);
sf.hide();
sf.destroy();
do
{
TToken_string& row = sf.row(-1);
const TString& numreg = ann.get(F9A_NUMREG);
mov.put(MOV_NUMREG, numreg);
mov.read();
row.add(ann.get(F9A_FILENAME), 1); // ITEM "Nome File@25"
row.add(ann.get(F9A_CATDOCPAD)); // ITEM "Categoria di\nappartenenza@7"
row.add(ann.get(F9A_CATDOCANN)); // ITEM "Classe doc.\nannesso@7"
row.add(numreg); // ITEM "Movimento\nContabile N.@7"
row.add(mov.get(MOV_DATAREG)); // ITEM "Data\nMovimento@10"
row.add(mov.get(MOV_CODCAUS)); // ITEM "Causale@7"
row.add(mov.get(MOV_NUMDOC)); // ITEM "Num. Doc.@7"
row.add(TString(mov.get(MOV_REG)) << "/" << mov.get(MOV_PROTIVA)); // ITEM "Reg./Prot. IVA@10"
row.add(mov.get(MOV_DESCR)); // ITEM "Descrizione@20"
row.add(ann.get(F9A_LOADDATE)); // ITEM "Data\nCaricamento@10"
// todo: row.add("") // ITEM "Info (Errori)@25"
} while (ann.next() == NOERR);
sf.force_update();
sf.show();
}
}
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
void TGestione_doc_cartacei_f9_msk::fill_docs()
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TLocalisamfile files(LF_F9DOCS);
TLocalisamfile mov(LF_MOV);
TSheet_field& sf = sfield(S_IMPORTED);
sf.hide();
sf.destroy();
_list_file.clear();
std::set<TString> file_err;
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if (files.first() == NOERR)
{
do
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
const TString& namefile = files.get(F9C_FILENAME);
const bool not_exist = !check_file_exist(namefile);
if (not_exist)
file_err.insert(namefile);
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
const TString& numreg = files.get(F9C_NUMREG);
TString datamov, caus, numdoc, nprot, descrmov;
mov.zero();
mov.put(MOV_NUMREG, numreg);
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if (mov.read() == NOERR)
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
datamov = mov.get(MOV_DATAREG);
caus = mov.get(MOV_CODCAUS);
numdoc = mov.get(MOV_NUMDOCEXT);
if (numdoc.empty()) numdoc = mov.get(MOV_NUMDOC);
nprot << mov.get(MOV_REG) << "/" << mov.get(MOV_PROTIVA);
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
descrmov = mov.get(MOV_DESCR);
}
TToken_string& r = sf.row(-1);
r.add(" ", 0); // F_SEL
r.add(namefile); // F_FILENAME
r.add(numreg); // F_NUMREG
r.add(datamov); // F_DATAMOV
r.add(caus); // F_CAUS
r.add(numdoc); // F_NUMDOC
r.add(nprot); // F_NPROTOCOL
r.add(descrmov); // F_DESCRMOV
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
r.add(files.get(F9C_LOADDATE)); // F_DATACARIC
r.add(not_exist ? "IL FILE NON E' PRESENTE IN ARCHIVIO." : ""); // F_INFO
_list_file.insert({ namefile, { namefile, files.get(F9C_LOADDATE), numreg, files.get(F9C_USER) } });
} while (files.next() == NOERR);
sf.force_update();
}
sf.show();
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if (!file_err.empty())
{
int count = 0;
const bool m = (int)file_err.size() == 1;
const char p = m ? 'o' : 'i';
TString msg; msg << (int)file_err.size() << " file non " << (m ? "e'" : "sono") << " stat" << p <<
" trovat" << p << ".\nSi prega di rimuoverl" << p << " dall'elenco\n\nFile non trovat" << p << ":";
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
for (auto it = file_err.begin(); it != file_err.end(); ++it)
{
if (count++ == 10)
{
msg << "\n" << "...";
break;
}
msg << "\n" << *it << " [Num. Reg.: " << _list_file.find(*it)->second.numreg << "]";
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
}
#ifndef DBG
const bool del = warning_box(msg);
#else
if (yesno_box(msg))
{
remove_file_from_f9cart(file_err);
fill();
}
#endif
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
}
}
TToken_string& TGestione_doc_cartacei_f9_msk::get_valid_extensions()
{
static TToken_string ext(F9CONF.get_estensioni(), ',');
if (ext.items() == 0)
{
ext = ".pdf, .doc, .docx, .xls, .xlsx, .jpg, .jpeg, .png";
F9CONF.set_estensioni(ext);
}
ext.replace(" ", "");
return ext;
}
void TGestione_doc_cartacei_f9_msk::load_extensions()
{
if (_extensions == nullptr)
{
_extensions = std::make_unique<std::set<TString>>();
TToken_string& ext = get_valid_extensions();
for (int i = 0; i < ext.items(); ++i)
{
TString e = ext.get(i);
if (!e.empty())
{
if (e.starts_with("."))
e.ltrim(1);
_extensions->insert(e);
}
}
}
}
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
bool TGestione_doc_cartacei_f9_msk::load_file(const TFilename& file, const TString& numreg, const bool is_annesso,
const TString& catannpadre, const TString& catdocann)
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TString numreg_old;
bool annesso;
TF9_doccart f9cart;
TLocalisamfile f9docs(LF_F9DOCS);
TLocalisamfile f9annessi(LF_F9ANNESSI);
if(f9cart.doc_already_exists(file, numreg_old, annesso))
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
warning_box("Attenzione: esiste gia' un %s con questo nome associato al num. di registrazione %s", annesso ? "annesso" : "documento", (const char*)numreg_old);
return false;
}
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if(!is_annesso)
{
TFilename doc;
if (f9cart.mov2doc(numreg, doc) && !doc.empty())
{
warning_box("Attenzione: la registrazione num. %s ha gia' un documento associato: %s.\n"
"Se si tratta di un annesso inserire le informazioni per la cat. documentale.", (const char*)numreg, (const char*)doc);
return false;
}
f9docs.zero();
f9docs.put(F9C_FILENAME, file.name());
f9docs.put(F9C_NUMREG, numreg);
f9docs.put(F9C_LOADDATE, TDate(TODAY));
f9docs.put(F9C_USER, user());
}
else
{
f9annessi.zero();
f9annessi.put(F9A_NUMREG, numreg);
f9annessi.put(F9A_FILENAME, file.name());
f9annessi.put(F9A_CATDOCPAD, catannpadre);
f9annessi.put(F9A_CATDOCANN, catdocann);
f9annessi.put(F9C_LOADDATE, TDate(TODAY));
f9annessi.put(F9C_USER, user());
}
TFilename fdestin = F9CONF.get_addr_cart();
const TString filename = file.name();
fdestin << filename;
const bool ok = CopyFile(file, fdestin, true);
if (!ok)
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if (fdestin.exist())
warning_box("Errore nel copiare il file nella cartella di destinazione.\nEsiste gia' un file con questo nome.");
else
warning_box("Errore nel copiare il file nella cartella di destinazione. Ritentare.");
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
f9docs.zero();
return false;
}
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if (!is_annesso)
{
f9docs.write();
f9docs.rewrite();
}
else
{
f9annessi.write();
f9annessi.rewrite();
}
return true;
}
void TGestione_doc_cartacei_f9_msk::open_config_win() const
{
static std::unique_ptr<TMask> msk;
if(msk == nullptr)
{
msk = std::make_unique<TMask>("Configurazione", 1, 78, 14);
msk->add_button_tool(DLG_OK, "Conferma", TOOL_OK);
msk->add_button_tool(DLG_NULL, "", 0);
msk->add_button_tool(DLG_QUIT, "Esci", TOOL_QUIT);
msk->add_groupbox(DLG_NULL, 0, "", 1, 0, 76, 4, "");
msk->add_static (DLG_NULL, 0, "@BInserire estensioni file riconosciute, separate da virgola.", 2, 1);
msk->add_string (101, 0, "Estensioni:", 2, 2, 255, "", 60);
msk->add_groupbox(DLG_NULL, 0, "@BCartella documenti cartacei", 1, 4, 76, 4);
msk->add_static (DLG_NULL, 0, "@BInserire nome cartella, all'interno della area dati della ditta", 2, 5);
msk->add_string (102, 0, "", 2, 6, 64, "", 30);
msk->set(101, F9CONF.get_estensioni());
TString s = F9CONF.get_addr_cart();
s.rtrim(1);
s.ltrim(s.rfind('\\') + 1);
msk->set(102, s);
}
while (true)
{
if (msk->run() != K_ENTER)
{
if (msk->get(102).empty())
{
warning_box("Si prega di inserire il nome della cartella per i documenti cartacei.");
continue;
}
break;
}
F9CONF.set_estensioni(msk->get(101));
TString dir = msk->get(102);
if (dir.empty())
{
if(yesno_box("Nome cartella vuoto.\nCreare cartella con nome 'Cartacei_F9'?"))
msk->set(102, dir = "Cartacei_F9");
else continue;
}
TFilename path(prefix().get_studio());
path.slash_terminate() << dir;
path.slash_terminate();
if (!path.exist())
{
if (dir == "Cartacei_F9" || yesno_box("Il percorso indicato e' inesistente.\nCreare la cartella con questo nome?"))
{
if (!make_dir(path))
{
warning_box("Impossibile creare il percorso specificato.");
continue;
}
}
else continue;
}
F9CONF.set_addr_cart(path);
break;
}
}
void TGestione_doc_cartacei_f9_msk::open_import_win()
{
if(_import_msk == nullptr)
_import_msk = make_unique<TImport_msk>();
while(_import_msk->run() == K_ENTER)
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
const TString& file = _import_msk->get(F_IMPADDRESS);
const TString& numreg = _import_msk->get(F_IMPNUMREG);
const bool is_annesso = _import_msk->get_bool(F_ISANNESSO);
const TString& catannpadre = _import_msk->get(F_CATANNPADRE);
const TString& catdocann = _import_msk->get(F_CATDOCANN);
if (!file.empty())
{
TFilename f(file);
if (verify_extension(f))
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
if(!numreg.empty())
{
if (!is_annesso || catannpadre.full() && catdocann.full())
{
if (load_file(f, numreg, is_annesso, catannpadre, catdocann))
message_box("File caricato.");
}
else
warning_box("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.");
}
else
warning_box("Questo file e' in un formato non accettato.");
}
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
else
warning_box("Si prega di inserire il nome del file.");
}
fill();
}
void TGestione_doc_cartacei_f9_msk::remove_file_from_f9cart(const std::set<TString>& files)
{
Patch level : 12.0 964 Files correlati : ba0.exe f90.exe f90100d.msk f90200a.msk f90300a.msk f90300b.msk f181.dir f181.trr f181.des f183.dir f183.trr f183.des Commento : - Aggiunto tabella (f183) per gli annessi - Corretto costruzione codice identificativo (idfiscale) - Aggiunta barra progresso salvataggio informazioni strazione - Aggiunto controllo per movimenti di sola iva esclusi a priori dalle estrazioni - Aggiunto caricamento per i movimenti del nomefile per cartacei - Aggiunto caricamento per i movimenti degli annessi - Se estrazione iva fallisce aggiorna stato estrazione in errore diag. gest. - Migliorata notevolmente leggibilita' codice per costruzione query inserimento record IVA con una simil-prepared-statement - Aggiunta esportazione annessi in IVA - Modificata esportazione errore db movimento se data documento e' 0 mette 0001-01-01 altrimenti va in errore l'inserimento del record e non viene scritto. - Implementate funzioni per leggere direttamente dalle categorie documentali e annessi con la costruzione immediata di sheet da visualizzare - Corrette tutte le causali che ora richiedono l'anno. - Implementate classi per la gestione dei file cartacei (doc e annessi) - Corretta apertura maschera apri estr. e scrittura sheet delle due pagine - Corretta visualizzazione ragione sociale negli sheet: prendeva info cliente da un campo sbagliato e visualizzava una ragsoc sbagliata. - Corretta eliminazione estrazione per la tabella F9ERROR - Aggiunta associazione annessi per ogni catdoc - Aggiunta pagina annessi in gestione file cartacei - Aggiunta importazione file per annessi selezionando cat padre e cat annesso
2020-05-25 11:53:18 +02:00
TLocalisamfile f9cart(LF_F9DOCS);
for(auto it = files.begin(); it != files.end(); ++it)
{
f9cart.zero();
f9cart.put(F9C_FILENAME, *it);
f9cart.read();
f9cart.remove();
}
}
bool TGestione_doc_cartacei_f9_msk::verify_extension(const TFilename& file)
{
load_extensions();
return _extensions->find(file.ext()) != _extensions->end();
}
TGestione_doc_cartacei_f9_msk::TGestione_doc_cartacei_f9_msk(): TAutomask("f90300a"), _addr_cart(F9CONF.get_addr_cart())
{
if (_addr_cart.empty())
{
message_box("Inserire nome cartella documenti cartacei.");
open_config_win();
}
else
check_addr_cart();
check_deleted();
fill();
}
///////////////////////////////////////////////////////////////////////////////
// TGestione_doc_cartacei_f9_app
///////////////////////////////////////////////////////////////////////////////
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;
app.run(argc, argv, "Gestione documenti cartacei");
return 0;
}