Merge branch 'R_10_00' of http://10.65.20.33/CAMPO/campo into R_10_00

This commit is contained in:
AlexBonazzi 2019-09-12 16:02:05 +02:00
commit 9a16345c3e
18 changed files with 1744 additions and 345 deletions

View File

@ -189,11 +189,16 @@
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\src\f9\f90.h" />
<ClInclude Include="..\src\f9\f90100.h" />
<ClInclude Include="..\src\f9\f90100a.h" />
<ClInclude Include="..\src\f9\f90100b.h" />
<ClInclude Include="..\src\f9\f90100c.h" />
<ClInclude Include="..\src\f9\f901tab.h" />
</ItemGroup>
<ItemGroup>
<MskCompiler Include="..\src\f9\f90100a.uml" />
<MskCompiler Include="..\src\f9\f90100b.uml" />
<MskCompiler Include="..\src\f9\f90100c.uml" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View File

@ -30,6 +30,15 @@
<ClInclude Include="..\src\f9\f901tab.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="..\src\f9\f90100c.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="..\src\f9\f90100b.h">
<Filter>Headers</Filter>
</ClInclude>
<ClInclude Include="..\src\f9\f90100.h">
<Filter>Headers</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\f9\f90.cpp">
@ -43,5 +52,11 @@
<MskCompiler Include="..\src\f9\f90100a.uml">
<Filter>Masks</Filter>
</MskCompiler>
<MskCompiler Include="..\src\f9\f90100c.uml">
<Filter>Masks</Filter>
</MskCompiler>
<MskCompiler Include="..\src\f9\f90100b.uml">
<Filter>Masks</Filter>
</MskCompiler>
</ItemGroup>
</Project>

View File

@ -1,3 +1,3 @@
23
0
$mov|||574|0|Movimenti di prima nota|NMOV||
$mov|96160|96160|586|0|Movimenti di prima nota|NMOV||

View File

@ -1,5 +1,5 @@
23
62
63
ANNOES|9|4|0|Codice esercizio
NUMREG|3|7|0|Numero di operazione
DATAREG|5|8|0|Data operazione
@ -62,6 +62,7 @@ TFDATA|5|8|0|Data ultimo invio Trasferimento Fatture
IVALIQ|8|1|0|Iva per cassa liquidata completamente
KEYFPPRO|1|80|0|Chiavi dell'FPPRO [KEYPRGINVIO;KEYHEADERFATT;KEYBODYFATT]
MOVCOLL|3|7|0|Movimento collegato
ELABF9|1|12|0|archiviato , data , esclusione
4
NUMREG|
DATAREG+NUMREG|X

View File

@ -1,6 +1,5 @@
#include "f1lib.h"
#include "config.h"
#include "modaut.h"
#include "cg2103.h"
#include "cg2102.h"
#include "execp.h"
@ -27,45 +26,34 @@ bool TFppro::check_reg(TToken_string& keys, int numreg)
return get_numreg(keys) == numreg;
}
// todo: da mettere apposto fa ancora schifo
bool TFppro::guess_the_doc(const TLocalisamfile& mov)
{
// Prendo il fornitore del mov per controllare la p.iva
TLocalisamfile clifo(LF_CLIFO);
clifo.put(CLI_TIPOCF, "F");
const TString& codforn = mov.get(MOV_CODCF);
clifo.put(CLI_CODCF, codforn);
clifo.read();
TString cli_statopiva, cli_piva;
cli_statopiva << clifo.get(CLI_STATOPAIV);
cli_piva << clifo.get(CLI_PAIV);
const real tot = mov.get_real(MOV_TOTDOC) + mov.get_real(MOV_RITFIS) + mov.get_real(MOV_RITSOC);
// Controllo datadoc - numdoc - totdoc - p.iva
TString query;
query << "SELECT PQ_KEYPRGINVIO AS KEYPRGINVIO, PQ_KEYHEADERFATT AS KEYHEADERFATT, PQ_KEYBODYFATT AS KEYBODYFATT, P7_DATA AS DATA,\n" <<
"\tP7_NUMERO AS NUMDOC, PQ_IMPTOTDOC AS IMPTOTDOC, P2_FISCIVAPAESE AS STATOPIVA, P2_FISCIVACOD AS PIVA FROM PAA2700F\n" <<
"JOIN PAA0700F ON PQ_KEYPRGINVIO = P7_KEYPRGINVIO AND PQ_KEYHEADERFATT = P7_KEYHEADERFATT AND PQ_KEYBODYFATT = P7_KEYBODYFATT\n" <<
"JOIN PAA0200F ON PQ_KEYPRGINVIO = P2_KEYPRGINVIO AND PQ_KEYHEADERFATT = P2_KEYHEADERFATT AND PQ_KEYBODYFATT = P2_KEYBODYFATT\n";
_db->sq_set_exec(query, false);
"JOIN PAA0200F ON PQ_KEYPRGINVIO = P2_KEYPRGINVIO AND PQ_KEYHEADERFATT = P2_KEYHEADERFATT AND PQ_KEYBODYFATT = P2_KEYBODYFATT\n" <<
"WHERE P7_DATA = '" << mov.get_date(MOV_DATADOC).date2ansi() << "' AND \n" <<
"(P7_NUMERO = '" << mov.get(MOV_NUMDOC) << "' OR P7_NUMERO = '" << mov.get(MOV_NUMDOCEXT) << "') AND \n" <<
(cli_statopiva.full()? TString("P2_FISCIVAPAESE = '") << cli_statopiva << "' AND P2_FISCIVACOD = '" << cli_piva << "'": TString("P2_FISCIVACOD = '") << cli_piva << "'") << " AND \n" <<
"PQ_IMPTOTDOC = '" << tot << "'";
for(bool f = _db->sq_next(); f; f = _db->sq_next())
if (_db->sq_set_exec(query) && _db->sq_items() == 1)
{
const keys_s keys = { _db->sq_get("KEYPRGINVIO"), _db->sq_get("KEYHEADERFATT"), _db->sq_get("KEYBODYFATT") };
const TDate data = _db->sq_get_date("DATA");
const TString numdoc = _db->sq_get("NUMDOC");
const real imptotdoc(_db->sq_get("IMPTOTDOC"));
const TString4 statopiva = _db->sq_get("STATOPIVA");
const TString piva = _db->sq_get("PIVA");
// Prendo il fornitore del mov per controllare la p.iva
TLocalisamfile clifo(LF_CLIFO);
clifo.put(CLI_TIPOCF, "F");
const TString& codforn = mov.get(MOV_CODCF);
clifo.put(CLI_CODCF, codforn);
clifo.read();
TString cli_statopiva, cli_piva;
cli_statopiva << clifo.get(CLI_STATOPAIV);
cli_piva << clifo.get(CLI_PAIV);
bool ok = data == mov.get_date(MOV_DATAREG);
ok = ok && numdoc == mov.get(MOV_NUMDOC) || numdoc == mov.get(MOV_NUMDOCEXT);
ok = ok && imptotdoc == real(mov.get(MOV_TOTDOC));
ok = ok && cli_statopiva.full() && statopiva == cli_statopiva && piva == cli_piva || !cli_statopiva.full() && piva == cli_piva;
if (ok)
{
_keys = keys;
return true;
}
_keys = { _db->sq_get("KEYPRGINVIO"), _db->sq_get("KEYHEADERFATT"), _db->sq_get("KEYBODYFATT") };
return true;
}
return false;
@ -138,17 +126,18 @@ TFppro& TFppro::set_keys(TToken_string& keys)
{
if(keys.items() == 3)
{
_keys.prginvio = keys.get(0);
_keys.headerfatt = keys.get(1);
_keys.bodyfatt = keys.get(2);
_is_set = false;
_keys_setted = true;
_keys.prginvio = keys.get(0);
_keys.headerfatt = keys.get(1);
_keys.bodyfatt = keys.get(2);
_is_set = false;
_keys_setted = true;
}
_keys_setted = false;
else
_keys_setted = false;
return *this;
}
TFppro& TFppro::set_keys(keys_s keys)
TFppro& TFppro::set_keys(const keys_s& keys)
{
if(*keys.prginvio != 0 && *keys.headerfatt != 0 && *keys.bodyfatt != 0)
{
@ -163,7 +152,7 @@ TFppro& TFppro::set_keys(keys_s keys)
bool TFppro::associa_mov(const int numreg) const
{
bool ok = false;
bool ok;
TLocalisamfile mov(LF_MOV);
mov.put(MOV_NUMREG, numreg);
if ((ok = mov.read() == NOERR))
@ -186,6 +175,51 @@ bool TFppro::associa_mov(const int numreg) const
return ok;
}
const char* TFppro::get_tipoprot() const
{
TString query;
static TString tipo;
query << "SELECT PZ_TIPOPROT AS TIPOPROT FROM FPPRO00F\r\n" << where_str();
_db->sq_set_exec(query);
return tipo.cut(0) = _db->sq_get("TIPOPROT");
}
const char* TFppro::get_numprot() const
{
TString query;
static TString num;
query << "SELECT PZ_NUMPROT AS NUMPROT FROM FPPRO00F\r\n" << where_str();
_db->sq_set_exec(query);
return num.cut(0) = _db->sq_get("NUMPROT");
}
const char* TFppro::get_annoprot() const
{
TString query;
static TString anno;
query << "SELECT PZ_ANNOPROT AS ANNOPROT FROM FPPRO00F\r\n" << where_str();
_db->sq_set_exec(query);
return anno.cut(0) = _db->sq_get("ANNOPROT");
}
const char* TFppro::get_dataoraric() const
{
TString query;
static TString data;
query << "SELECT PZ_DATAORARIC AS DATAORARIC FROM FPPRO00F\r\n" << where_str();
_db->sq_set_exec(query);
return data.cut(0) << _db->sq_get_date("DATAORARIC").date2ansi();
}
const char* TFppro::get_tipodoc() const
{
TString query;
static TString tipodoc;
query << "SELECT PZ_TIPODOC AS TIPODOC FROM FPPRO00F\r\n" << where_str();
_db->sq_set_exec(query);
return tipodoc.cut(0) << _db->sq_get("TIPODOC");
}
TDate TFppro::get_data_first_doc() const
{
TString query;
@ -229,7 +263,7 @@ const char* TFppro::where_str() const
return str;
}
TFppro::TFppro() : _keys({ "\0", "\0", "\0" }), _guess(false), _keys_setted(false), _is_set(false)
TFppro::TFppro() : _keys({ "\0", "\0", "\0" }), _keys_setted(false), _is_set(false)
{
_db = new SSimple_query();
const bool ok = set_connection(*_db);
@ -241,6 +275,12 @@ TFppro::TFppro() : _keys({ "\0", "\0", "\0" }), _guess(false), _keys_setted(fals
// TProtocollo
//////////////////////////////////////////////////////////
prot_s TProtocollo::get_prot()
{
const prot_s prot = { _tipoprot, _progres, _year };
return prot;
}
TString& TProtocollo::prot_in(const int year, const char* tipoprot, const char* progres)
{
static TString protocollo;
@ -251,7 +291,7 @@ TString& TProtocollo::prot_in(const int year, const char* tipoprot, const char*
return protocollo;
}
void TProtocollo::set(const TProtocollo prot)
void TProtocollo::set(const TProtocollo& prot)
{
_year = prot._year;
_tipoprot = prot._tipoprot;
@ -430,7 +470,7 @@ bool TF1_log::show_log()
{
_log->preview();
delete _log;
_log = NULL;
_log = nullptr;
}
return true;
}

View File

@ -24,6 +24,13 @@ enum err_cont
no_err = 1
};
typedef struct _prot_s
{
const char* tipo;
const char* num;
int anno;
} prot_s;
class TFppro : public TObject
{
struct keys_s
@ -31,11 +38,9 @@ class TFppro : public TObject
TString prginvio;
TString headerfatt;
TString bodyfatt;
};
private:
} _keys;
SSimple_query* _db;
keys_s _keys;
bool _guess;
bool _keys_setted;
bool _is_set;
TString _fppro_query;
@ -60,9 +65,14 @@ public:
// Setters
bool set_query();
TFppro& set_keys(TToken_string& keys);
TFppro& set_keys(keys_s keys);
TFppro& set_keys(const keys_s& keys);
bool associa_mov(int numreg) const;
const char* get_tipoprot() const;
const char* get_numprot() const;
const char* get_annoprot() const;
const char* get_dataoraric() const;
const char* get_tipodoc() const;
TFppro();
TFppro(TToken_string& keys) : TFppro() { set_keys(keys); }
@ -70,20 +80,23 @@ public:
class TProtocollo : TObject
{
int _year{};
TString _tipoprot;
TString _progres;
int _year{};
public:
TProtocollo() = default;
TProtocollo(const int year, const char* tipoprot, const char* progres): _year(year), _tipoprot(tipoprot), _progres(progres) { }
TProtocollo(const int year, const char* tipoprot, const char* progres) : _tipoprot(tipoprot), _progres(progres), _year(year) { }
void set(TProtocollo prot);
void set(const TProtocollo& prot);
void sset(const char* prot);
TString& get_prot() const;
int get_year() const { return _year; }
TString& get_tipoprot() { return _tipoprot; }
TString& get_progres() { return _progres; }
TString& get_prot() const;
prot_s get_prot();
int get_year() const { return _year; }
TString& get_tipoprot() { return _tipoprot; }
TString& get_progres() { return _progres; }
static TString& prot_in(int year, const char* tipoprot, const char* progres);

File diff suppressed because it is too large Load Diff

183
src/f9/f90100.h Normal file
View File

@ -0,0 +1,183 @@
#pragma once
#include "applicat.h"
#include "f90100a.h"
#include <automask.h>
#define PAR_MOD "F9"
#define AMBIENTE_F9 "CODSOC" // Codice ambiente (codsoc)
#define ADDRCART_F9 "ADDDOC" // Indirizzo documenti cartacei
TDate today(TODAY);
enum state_fppro
{
correct = 1,
reg_with_err = -1,
not_fa = -10, // Non e' fattura acquisti
guessed = 100,
no_guessed = 0
};
struct drd
{
TString cod_soc;
TString id_estr;
bool flag_prov{ true };
TString descr;
char tipo_doc{ 'A' };
TDate dal;
TDate al;
TString user;
TString timestamp;
TString4 stato_estr{ "01" };
TString addr_cart;
};
SSimple_query& db();
class TEstrai_mask : public TMask
{
TString _descr;
void enable_fields(bool en = true);
static bool estrai_handler(TMask_field& f, unsigned short key);
static bool enable_handler(TMask_field& f, unsigned short key);
static bool dataini_handler(TMask_field& f, unsigned short key);
static bool dataend_handler(TMask_field& f, unsigned short key);
public:
TString& get_descr() { return _descr; }
TEstrai_mask();
};
class TEstrai_mask;
class TMonitor_mask;
class TControllo_mask;
class TF9_app : public TSkeleton_application
{
//friend class TEstrai_mask;
friend class TMonitor_mask;
friend class TControllo_mask;
drd _head;
TEstrai_mask* _estr_msk;
TMonitor_mask* _msk;
//TControllo_mask* _controllo_msk;
vector<TToken_string> _movs;
vector<TToken_string> _esclusi; // Vettore con i movimenti esclusi
TToken_string _mov_escl;
int _tot_movs;
TString _ambiente; // Codice ambiente (codsoc)
TString _addr_doc; // Indirizzo documenti cartacei
int _last_estr_p;
int _last_estr_d;
char _tipodoc_escl;
char _flagprov_escl;
static const char* traduci_stato(const TString& cod);
state_fppro check_fppro(int numreg) const;
const char* prepara_movimenti(TipoIVA tipo);
const char* prepara_movimenti_escl(TipoIVA tipo, int numreg, TString& err) const;
static bool is_doc_xml(const TLocalisamfile& mov);
static bool check_periodo_def(const drd& head);
static TString& drd_attr();
TString& drd_tovalues() const;
TString next_estr_today(char tipo) const;
bool esporta();
bool new_extr() const;
TDate get_dataini() const { return _estr_msk->get_date(ES_DATAINI); }
TDate get_dataend() const { return _estr_msk->get_date(ES_DATAEND); }
char get_tipodoc() const { return _estr_msk->get(ES_TIPODOC)[0]; }
char get_tipodoc_escl() const { return _tipodoc_escl; }
TipoIVA get_tipoiva() const { return get_tipodoc() == 'V' ? iva_vendite : iva_acquisti; }
TipoIVA get_tipoiva_escl() const { return get_tipodoc_escl() == 'V' ? iva_vendite : iva_acquisti; }
TString& get_descr() const { return _estr_msk->get_descr(); }
bool is_provviso() const { return _estr_msk->get(ES_FLAGPROV)[0] == 'P'; }
void fill();
void load();
public:
const TString& get_ambiente() const { return _ambiente; };
const TString& get_addr_doc() const { return _addr_doc; };
void set_ambiente(const char* cod) { _ambiente.cut(0) << cod; };
void set_addr_doc(const char* add) { _addr_doc.cut(0) << add; };
void run_estr_msk() const { _estr_msk->run(); }
static TMask& descr_msk();
// Estrazione esclusi
static bool select_escl_notify(TSheet_field& s, int row, KEY key);
static bool controllo_escl_handler(TMask_field& field, KEY key);
static bool year_handler(TMask_field& field, KEY key);
void open_esclusi();
void edit_wa() const;
int estrai(); // Estrazione per pacchetti "normali"
int estrai_single(TToken_string& row, char flagprov, char tipodoc); // Estrazione singole per esclusi
bool estrazione_iva(bool escluso = false); // Estrazione dati IVA sia per pacch. normali che per esclusi
void segna_in_errore() const;
static const char* categoria_doc();
static const char* caus_sos(const TLocalisamfile& mov, TipoIVA acquisti);
static bool is_autofattura(const TLocalisamfile& mov);
void main_loop() override;
TF9_app() : _estr_msk(nullptr), _msk(nullptr), _mov_escl("", '|'), _tot_movs(0), _ambiente(""), _addr_doc(""), _last_estr_p(0), _last_estr_d(0),
_tipodoc_escl('A'), _flagprov_escl('P') { }
};
TF9_app& app();
class TMonitor_mask : public TAutomask
{
vector<TToken_string> _fppro;
static bool save_conf_handler(TMask_field& f, unsigned short key);
static void controllo_errori();
// Riempie sheet per visualizzare le estrazioni
bool on_key(KEY key) override;
static void open_win_estr();
void open_win_conf() const;
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
public:
void disable_controllo_err();
TMonitor_mask() : TAutomask("f90100a")
{
disable(DLG_FINDREC);
}
};
class TControllo_mask : public TAutomask
{
char _ordin;
char _verso;
int _selected_mov;
bool _sel_esclusi;
bool _esclusi;
void fill() const;
void fill_fppro_sheet() const;
TMask& get_win_order();
void open_win_order();
TToken_string* selected_mov();
TToken_string* selected_fat() const;
// Gestisce la selezione multipla negli sheet di controllo movimenti
void selfatt(TOperable_field& o, long jolly) const;
void conferma_esclusi() const;
void associa();
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
public:
TControllo_mask(bool esclusi = false);
};

View File

@ -1,29 +1,35 @@
// Sheet Pacchetti gia' elaborati
#define S_ELAB 201
#define F_TEXT 202
#define S_ELAB 201
#define F_TEXT 202
#define B_SHOWESCL 203
#define F_ARCH_B 101
#define F_IDESTR 102
#define F_DATAESTR 103
#define F_PROV_B 104
#define F_TIPODOC 105
#define F_DATADAL 106
#define F_DATAAL 107
#define F_USER 108
#define F_STATESTR 109
#define F_DESCR_E 110
// Campi del vettore _movs
#define F_SEL 101
#define F_NUMREG 102
#define F_DATAREG 103
#define F_DATADOC 104
#define F_CODCAUS 105
#define F_MESELIQ 106
#define F_NUMDOC 107
#define F_PROTIVA 108
#define F_DESCR 109
#define F_ARCH_B 101
#define F_IDESTR 102
#define F_DATAESTR 103
#define F_PROV_B 104
#define F_TIPODOC 105
#define F_DATADAL 106
#define F_DATAAL 107
#define F_USER 108
#define F_STATESTR 109
#define F_DESCR_E 110
// Campi del vettore _movs per promemoria
#define F_SEL 101
#define F_NUMREG 102
#define F_DATAREG 103
#define F_DATADOC 104
#define F_CODCAUS 105
#define F_MESELIQ 106
#define F_NUMDOC 107
#define F_IMPTOTDOC 108
#define F_FORN 109
#define F_RAGSOC 110
#define F_PROTIVA 111
#define F_DESCR 112
#define F_ESCLUDI 113
#define F_ESCLUSO 114
#define F_DESCRERR 115
// Campi maschera finestra runtime estrazione
#define ES_DATAINI 501
@ -34,11 +40,17 @@
#define ES_FLAGGROUP 506
#define ES_TIPOGROUP 507
//
// Campi maschera configurazione
#define CF_CODGROUP 501
#define CF_CODSOC 502
#define CF_ADDRGROUP 503
#define CF_ADDRDOC 504
// Campi maschera descrizione estrazione
#define DES_TEXT 501
#define DES_GROUP 502
// Campi maschera esclusi
#define ESC_BESTR 501
#define ESC_BEXIT 502
#define ESC_SSHEE 503

View File

@ -10,23 +10,42 @@ END
BUTTON DLG_ELABORA 2 2
BEGIN
PROMPT 1 1 "Estrazione"
PROMPT 1 2 "Estrazione"
PICTURE TOOL_ELABORA
FLAGS ""
END
BUTTON DLG_CONFIG 2 2
BEGIN
PROMPT 1 1 "Configurazione"
PROMPT 1 3 "Configurazione"
PICTURE TOOL_CONFIG
FLAGS ""
END
BUTTON DLG_FINDREC 2 2
BEGIN
PROMPT 1 1 "Controllo Estr."
PROMPT 1 4 "Controllo Estr."
PICTURE TOOL_PERMISSIONS
FLAGS ""
FLAGS "D"
END
BUTTON DLG_RECALC
BEGIN
PROMPT 1 5 "Ricarica"
PICTURE TOOL_CONVERT
FLAS ""
END
BUTTON DLG_NULL 2 2
BEGIN
PROMPT 1 8 ""
PICTURE 0
END
BUTTON B_SHOWESCL 2 2
BEGIN
PROMPT 1 8 "Mostra esclusi"
PICTURE TOOL_PERMISSIONS
END
#include <helpbar.h>
@ -50,14 +69,12 @@ BEGIN
ITEM "dal@8"
ITEM "al@8"
ITEM "Utente@8"
ITEM "Stato estrazione@11"
ITEM "Stato estrazione@22"
ITEM "Descrizione@50"
END
ENDPAGE
ENDMASK
PAGE "Pacchetti" -1 -1 78 13
BOOLEAN F_ARCH_B
@ -114,7 +131,7 @@ BEGIN
FLAGS "D"
END
STRING F_STATESTR 16
STRING F_STATESTR 33
BEGIN
PROMPT 1 1 ""
FLAGS "D"
@ -136,21 +153,5 @@ BEGIN
MESSAGE EXIT,K_QUIT
PICTURE TOOL_QUIT
END
ENPAGE
ENDMASK
PAGE "Elenco di controllo" -1 -1 78 13
SPREADSHEET S_ELAB 60 10
BEGIN
PROMPT 0 2 "Movimenti da controllare"
ITEM " "
ITEM "DATA "
ITEM "NDOCS "
ITEM "PERIOD_DA"
ITEM "PERIOD_A "
END
ENDPAGE
ENDMASK

42
src/f9/f90100b.h Normal file
View File

@ -0,0 +1,42 @@
// Maschera controllo errori in comune con monitor e esclusi
// Sheet Pacchetti gia' elaborati
#define B_ORDER 201
#define B_ASSOC 202
#define B_SELESCL 203
#define B_ESCL 204
// Sheet movimenti da controllare
#define S_CONTROLLO 205
#define S_FPPRO 206
// Cambi maschera ordinamento sheet FPPRO
#define F_ORDER 301
#define F_VERSO 302
#define F_CSEL 101
#define F_CNUMREG 102
#define F_CDATAREG 103
#define F_CDATADOC 104
#define F_CCODCAUS 105
#define F_CMESELIQ 106
#define F_CNUMDOC 107
#define F_CIMPTOTDOC 108
#define F_CFORN 109
#define F_CRAGSOC 110
#define F_CPROTIVA 111
#define F_CDESCR 112
#define F_CESCLUDI 113
#define F_CESCLUSO 114
#define F_CDESCRERR 115
// Sheet fatture FPPRO da associare
#define F_FSEL 101
#define F_FTIPODOC 102
#define F_FDATA 103
#define F_FNUMDOC 104
#define F_FIMPTOTDOC 105
#define F_FFORNITORE 106
#define F_FRAGSOC 107
#define F_FSTATOPIVA 108
#define F_FPIVA 109
#define F_FPROKEYS 110

263
src/f9/f90100b.uml Normal file
View File

@ -0,0 +1,263 @@
#include "f90100b.h"
TOOLBAR "topbar" 0 0 0 2
BUTTON B_ORDER 2 2
BEGIN
PROMPT 1 5 "Ordinamento"
PICTURE TOOL_PERMISSIONS
FLAGS ""
END
BUTTON B_ASSOC 2 2
BEGIN
PROMPT 1 6 "Associa mov."
PICTURE TOOL_PERMISSIONS
FLAGS ""
END
BUTTON B_SELESCL 2 2
BEGIN
PROMPT 1 8 "Sel. esclusi"
PICTURE TOOL_PERMISSIONS
FLAGS ""
END
BUTTON B_ESCL 2 2
BEGIN
PROMPT 1 7 "Conf. esclusi"
PICTURE TOOL_PERMISSIONS
FLAGS ""
END
BUTTON DLG_NULL 2 2
BEGIN
PROMPT 1 8 ""
PICTURE 0
END
#include <helpbar.h>
ENDPAGE
PAGE "Elenco di controllo" -1 -1 78 13
SPREADSHEET S_CONTROLLO -1 10
BEGIN
PROMPT 0 0 "Movimenti da controllare"
ITEM " "
ITEM "NUMREG@8"
ITEM "DATAREG@8"
ITEM "DATADOC@8"
ITEM "CODCAUS@8"
ITEM "MESELIQ@8"
ITEM "NUMDOC@8"
ITEM "IMPTOTDOC@8"
ITEM "FORNITORE@8"
ITEM "RAGSOC@8"
ITEM "PROTIVA@8"
ITEM "DESCR@8"
ITEM "ESCLUDI@4"
ITEM "ESCLUSO@5"
ITEM "DESCR ERR"
END
SPREADSHEET S_FPPRO -1 -1
BEGIN
PROMPT 0 11 "Movimenti da controllare"
ITEM " "
ITEM "TIPODOC"
ITEM "DATA@8"
ITEM "NUMDOC@12"
ITEM "IMPTOTDOC@9"
ITEM "FORNITORE@6"
ITEM "RAGSOC@20"
ITEM "STATOPIVA"
ITEM "PIVA@8"
ITEM "@1"
END
ENDPAGE
ENDMASK
PAGE "Controllo" -1 -1 78 13
BOOLEAN F_CSEL
BEGIN
PROMPT 1 1 ""
END
NUMERIC F_CNUMREG 7
BEGIN
PROMPT 1 1 ""
END
DATA F_CDATAREG
BEGIN
PROMPT 1 1 ""
END
DATA F_CDATADOC
BEGIN
PROMPT 1 1 ""
END
STRING F_CCODCAUS 3
BEGIN
PROMPT 1 1 ""
END
NUMERIC F_CMESELIQ 2
BEGIN
PROMPT 1 1 ""
END
STRING F_CNUMDOC 50
BEGIN
PROMPT 1 1 ""
END
NUMERIC F_CIMPTOTDOC 15 2
BEGIN
PROMPT 1 1 ""
END
NUMERIC F_CFORN 6
BEGIN
PROMPT 1 1 ""
END
STRING F_CRAGSOC 80
BEGIN
PROMPT 1 1 ""
END
NUMERIC F_CPROTIVA 6
BEGIN
PROMPT 1 1 ""
END
STRING F_CDESCR 50
BEGIN
PROMPT 1 1 ""
END
LIST F_CESCLUDI 2
BEGIN
PROMPT 41 2 "Escludi"
ITEM "N|NO"
ITEM "Y|SI"
END
BOLEAN F_CESCLUSO
BEGIN
PROMPT 1 1 "ESCLUSO"
FLAG "D"
END
STRING F_CDESCRERR 110
BEGIN
PROMPT 1 1 "DESCRIZIONE ERRORE"
FLAG "D"
END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_NULL 2 2
BEGIN
PROMPT -1 0 ""
PICTURE 0
END
BUTTON DLG_QUIT 2 2
BEGIN
PROMPT 3 1 "Fine"
MESSAGE EXIT,K_QUIT
PICTURE TOOL_QUIT
END
ENPAGE
ENDMASK
PAGE "Passive" -1 -1 78 13
BOOLEAN F_FSEL
BEGIN
PROMPT 1 1 ""
END
STRING F_FTIPODOC 4
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
DATA F_FDATA
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
STRING F_FNUMDOC 20
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
NUMERIC F_FIMPTOTDOC 15 2
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
NUMERIC F_FFORNITORE 6
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
STRING F_FRAGSOC 80
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
STRING F_FSTATOPIVA 2
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
STRING F_FPIVA 15
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
STRING F_FPROKEYS 80
BEGIN
PROMPT 1 1 " "
FLAGS "D"
END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_NULL 2 2
BEGIN
PROMPT -1 0 ""
PICTURE 0
END
BUTTON DLG_QUIT 2 2
BEGIN
PROMPT 3 1 "Fine"
MESSAGE EXIT,K_QUIT
PICTURE TOOL_QUIT
END
ENPAGE
ENDMASK

16
src/f9/f90100c.h Normal file
View File

@ -0,0 +1,16 @@
#define S_ESCL 201
#define F_ETEXT 202
// Elenco movimenti esclusi
#define F_SEL 101
#define F_NUMREG 102
#define F_DATAREG 103
#define F_DATADOC 104
#define F_CODCAUS 105
#define F_MESELIQ 106
#define F_NUMDOC 107
#define F_IMPTOTDOC 108
#define F_FORN 109
#define F_RAGSOC 110
#define F_PROTIVA 111
#define F_DESCR 112

145
src/f9/f90100c.uml Normal file
View File

@ -0,0 +1,145 @@
#include "f90100c.h"
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_OK 2 2
BEGIN
PROMPT 1 1 "Estrai"
PICTURE TOOL_ELABORA
END
BUTTON DLG_NULL 2
BEGIN
PROMPT 1 2 ""
PICTURE 0
END
BUTTON DLG_FINDREC 2 2
BEGIN
PROMPT 1 4 "Controllo Estr."
PICTURE TOOL_PERMISSIONS
FLAGS ""
END
#include <helpbar.h>
ENDPAGE
PAGE "Esclusi" 0 2 0 0
TEXT F_ETEXT
BEGIN
PROMPT 0 0 "@BMovimenti esclusi dalle precedenti estrazioni:"
END
SPREADSHEET S_ESCL -1 10
BEGIN
PROMPT 0 1 "Movimenti da controllare"
ITEM " "
ITEM "NUMREG@8"
ITEM "DATAREG@8"
ITEM "DATADOC@8"
ITEM "CODCAUS@8"
ITEM "MESELIQ@8"
ITEM "NUMDOC@8"
ITEM "IMPTOTDOC@8"
ITEM "FORNITORE@8"
ITEM "RAGSOC@8"
ITEM "PROTIVA@8"
ITEM "DESCR@8"
END
ENDPAGE
ENDMASK
PAGE "Mov Esclusi" -1 -1 78 13
BOOLEAN F_SEL
BEGIN
PROMPT 1 1 ""
END
NUMERIC F_NUMREG 7
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
DATA F_DATAREG
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
DATA F_DATADOC
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
STRING F_CODCAUS 3
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
NUMERIC F_MESELIQ 2
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
STRING F_NUMDOC 50
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
NUMERIC F_IMPTOTDOC 15 2
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
NUMERIC F_FORN 6
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
STRING F_RAGSOC 80
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
NUMERIC F_PROTIVA 6
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
STRING F_DESCR 50
BEGIN
PROMPT 1 1 ""
FLAGS "D"
END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_NULL 2 2
BEGIN
PROMPT -1 0 ""
PICTURE 0
END
BUTTON DLG_QUIT 2 2
BEGIN
PROMPT 3 1 "Fine"
MESSAGE EXIT,K_QUIT
PICTURE TOOL_QUIT
END
ENPAGE
ENDMASK

View File

@ -1,40 +0,0 @@
#include "f90101.h"
TF9_fp& f9_db()
{
static TF9_fp* f9 = nullptr;
if (f9 == nullptr)
{
f9 = new TF9_fp();
}
return *f9;
}
TF9_fp::f9_tab TF9_fp::name2tab(TString& name)
{
if (name == "F9DRD00K")
return f9_drd;
if(name == "F9DRT00K")
return f9_drt;
if(name == "F9IVA00K")
return f9_iva;
return f9_drd;
}
const char* TF9_fp::tab2name(f9_tab tab)
{
if (tab == f9_drd)
return "F9DRD00K";
if (tab == f9_drt)
return "F9DRT00K";
if (tab == f9_iva)
return "F9IVA00K";
return "F9DRD00K";
}
void TF9_fp::set_tab(f9_tab tab)
{
_tab = tab;
}

View File

@ -1,37 +0,0 @@
#ifndef _F90101H_
#define _F90101H_
#include "object.h"
#include "strings.h"
#include "f901tab.h"
class TF9_fp : public TObject
{
enum f9_tab
{
f9_drd, // Driver estrazione giornale iva
f9_drt, // Driver categorie documentali
f9_iva // File documenti estratti dal giornale iva
};
f9_tab _tab;
TToken_string* _f9_drd; //F9RCSOC
public:
static f9_tab name2tab(TString& name);
static const char* tab2name(f9_tab tab);
void set_tab(f9_tab tab);
void set_codsoc(TString& codsoc);
TF9_fp() : _tab(f9_drd) { _f9_drd = new TToken_string("", '|'); }
};
TF9_fp& f9_db();
#endif

View File

@ -1,98 +1,98 @@
#pragma once
#define F9_WA "F9WA00K"
#define F9_DRD "F9DRD00K"
#define F9_IVA "F9IVA00K"
#define F9_DRT "F9DRT00K"
#define F9_WA "F9WA00K"
#define F9_DRD "F9DRD00K"
#define F9_IVA "F9IVA00K"
#define F9_DRT "F9DRT00K"
// FILE DRD : DRIVER ESTRAZIONE GIORNALE IVA
#define DRD_CODSOC "F9RCSOC" // A(10) [K]
#define DRD_ID_EST "F9RIDES" // A(18) [K]
#define DRD_FLAG_PD "F9RFPDE" // A(1) [K] - { P | D } - Flag provvisorio/definitivo
#define DRD_DESC "F9RDDES" // A(256) - Descrizione estrazione
#define DRD_TIPODOC "F9RFTDC" // A(1) - { A | V | C } - Tipi documenti (A=Acquisti, V=Vendite, C=Corrispettivo)
#define DRD_DATADA "F9RUESD" // D - Data estrazione da
#define DRD_DATAA "F9RUESA" // D - Data estrazione a
#define DRD_UTENTE "F9RUTEE" // A(10) - Utente estrazione
#define DRD_TIME "F9RUHES" // T - Data e ora estrazione
#define DRD_STATO "F9RIDAS" // A(2) - { 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 } - Stato estrazione documenti
#define DRD_CODSOC "F9RCSOC" // A(10) [K]
#define DRD_ID_EST "F9RIDES" // A(18) [K]
#define DRD_FLAG_PD "F9RFPDE" // A(1) [K] - { P | D } - Flag provvisorio/definitivo
#define DRD_DESC "F9RDDES" // A(256) - Descrizione estrazione
#define DRD_TIPODOC "F9RFTDC" // A(1) - { A | V | C } - Tipi documenti (A=Acquisti, V=Vendite, C=Corrispettivo)
#define DRD_DATADA "F9RUESD" // D - Data estrazione da
#define DRD_DATAA "F9RUESA" // D - Data estrazione a
#define DRD_UTENTE "F9RUTEE" // A(10) - Utente estrazione
#define DRD_TIME "F9RUHES" // T - Data e ora estrazione
#define DRD_STATO "F9RIDAS" // A(2) - { 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 } - Stato estrazione documenti
// Stati /////////////////
#define IN_DIAGN "01" // 01 = in diagnostica
#define D_GEST_ERR "02" // 02 = errore diagnostica gestionale
#define D_GEST_OK "03" // 03 = diagnostica gestionale ok,
#define WA_CONTROL "04" // 04 = in controllo webapp,
#define D_WA_ERR "05" // 05 = errore diagnostica webapp,
#define D_WA_OK "06" // 06 = diagnostica webapp ok (se provvisorio si ferma qui)
#define ELAB_SOS "07" // 07 = elaborazione presso sostitutiva
#define D_ERR_SOS "08" // 08 = errore diagnostica sostitutiva
#define ELAB_COMPL "09" // 09 = Pacchetto archiviazione acquisito
#define IN_DIAGN "01" // 01 = in diagnostica
#define D_GEST_ERR "02" // 02 = errore diagnostica gestionale
#define D_GEST_OK "03" // 03 = diagnostica gestionale ok,
#define WA_CONTROL "04" // 04 = in controllo webapp,
#define D_WA_ERR "05" // 05 = errore diagnostica webapp,
#define D_WA_OK "06" // 06 = diagnostica webapp ok (se provvisorio si ferma qui)
#define ELAB_SOS "07" // 07 = elaborazione presso sostitutiva
#define D_ERR_SOS "08" // 08 = errore diagnostica sostitutiva
#define ELAB_COMPL "09" // 09 = Pacchetto archiviazione acquisito
//////////////////////////
#define DRD_PERC "F9RPCDC" // A(256) - Perc. copia doc. cartacei WA
#define DRD_PERC "F9RPCDC" // A(256) - Perc. copia doc. cartacei WA
// FILE IVA : DOCUMENTI ESTRATTI DAL GIORNALE IVA
#define IVA_CODSOC "F9ICSOC" // A(10) [K] - Codice società
#define IVA_IDLAN "F9IIDLA" // A(18) [K] - ID UNIVOCO DI LANCIO
#define IVA_FLAG_PD "F9IFPDE" // A(1) [K] - Flag Provvisorio / Definitivo
#define IVA_ANNOES "F9IAFES" // A(4) - Anno Fiscale / Esercizio
#define IVA_GIVA "F9IGIVA" // A(1) - { A | V | C } - GG.iva vendite / acq (A=Acquisti, V=Vendite, C=Corrispettivo)
#define IVA_TIPOG "F9ITPGI" // A(10) [K] - Tipo giornale
#define IVA_DOCXML "F9IDXML" // A(1) - { S | N } - Documento xml (S=Si, N=No)
#define IVA_TIPOCF "F9ITCFO" // A(1) - { C | F } - Tipo cliente / fornitore (C=Cliente, F=Fornitore)
#define IVA_CODCF "F9ICCFO" // A(10) - Codice cliente / fornitore (In caso di autofattura mettere fornitore originale)
#define IVA_RAGSOC "F9IDRSO" // A(60) - Ragione sociale
#define IVA_IDFISC "F9IIDFI" // A(30) - {Codice ISO + { PIVA (x ita) | CF (x est)}} ID fiscale
#define IVA_PIVA "F9IPIVA" // A(28) - Partiva Iva
#define IVA_CODFIS "F9ICFIS" // A(16) - Codice fiscale
#define IVA_CATDOC "F9ICADO" // A(10) - Categoria documento
#define IVA_CAUSSOS "F9ICSOS" // A(6) - Causale per sostitutiva(da tabella f9drt) (tipo documento fattura (TD01,TD02,TD03 ecc))
#define IVA_NUMDOC "F9INDOC" // A(20) - Numero Documento
#define IVA_DATADOC "F9IUDOC" // D - Data Documento
#define IVA_SELIVA "F9ISIVA" // A(10) [K] - sezionale iva
#define IVA_TIPOREG "F9ICREG" // A(6) [K] - Tipo registrazione
#define IVA_NPROT "F9INPRI" // A(20) [K] - n.protocollo iva
#define IVA_DATPROT "F9IUPRI" // D [K] - data protocollo iva
#define IVA_FORNOR "F9IFOOA" // A(10) - fornitore originale fattura
#define IVA_REGOR "F9ITROT" // A(6) - tipo registrazione originale(TR)
#define IVA_NUMOR "F9INRRO" // A(20) - n.registrazione originale
#define IVA_DATAOR "F9IURGO" // D - data registrazione originale
#define IVA_CLASDOC "F9ICLDF" // A(10) - classe documentale FTV (in base al tipo documento da F9DRT00K)
#define IVA_NOMF1 "F9INMF1" // A(100) - nome file DOC (Nome fattura cartacea)
#define IVA_CLASAN1 "F9ICLDN" // A(10) - classe documentale(annesso 1) (in base al tipo documento da F9DRA00K)
#define IVA_NOMF2 "F9INMF2" // A(100) - nome file 1
#define IVA_CLASAN2 "F9ICLDA" // A(10) - classe documentale(annesso 2)
#define IVA_NOMF3 "F9INMF3" // A(100) - nome file 2 (Nome documento (senza percorso))
#define IVA_CLASAN4 "F9ICLD4" // A(10) - classe documentale(annesso 3)
#define IVA_NOMF4 "F9INMF4" // A(100) - nome file 3
#define IVA_CLASAN5 "F9ICLD5" // A(10) - classe documentale(annesso 4)
#define IVA_NOMF5 "F9INMF5" // A(100) - nome file 4
#define IVA_CLASAN6 "F9ICLD6" // A(10) - classe documentale(annesso 5)
#define IVA_NOMF6 "F9INMF6" // A(100) - nome file 5
#define IVA_CLASAN7 "F9ICLD7" // A(10) - classe documentale(annesso 6)
#define IVA_NOMF7 "F9INMF7" // A(100) - nome file 6
#define IVA_CLASAN8 "F9ICLD8" // A(10) - classe documentale(annesso 7)
#define IVA_NOMF8 "F9INMF8" // A(100) - nome file 7
#define IVA_CLASAN9 "F9ICLD9" // A(10) - classe documentale(annesso 8)
#define IVA_NOMF9 "F9INMF9" // A(100) - nome file 8
#define IVA_CLASA10 "F9ICL10" // A(10) - classe documentale(annesso 9)
#define IVA_NOMF10 "F9INM10" // A(100) - nome file 9
#define IVA_USERELA "F9IUTEE" // A(10) - Utente elaborazione
#define IVA_TIMEELA "F9IUHEL" // D - Data e ora elaborazione
#define IVA_TIMEWEB "F9IUHEW" // D - Data e ora elaborazione WEBAPP
#define IVA_DESCDOC "F9IDDES" // A(30) - Descrizione documento
#define IVA_TIPPROT "F9ITPRT" // A(2) - Tipo protocollo ricezione
#define IVA_NUMPROT "F9IAPRT" // I(4) - Numero protocollo ricezione
#define IVA_ANNPROT "F9INPRT" // I(10) - Anno protocollo ricezione
#define IVA_TIMERIC "F9IURIC" // D - Data/ora ricezione fattura
#define IVA_CODSOC "F9ICSOC" // A(10) [K] - Codice società
#define IVA_IDLAN "F9IIDLA" // A(18) [K] - ID UNIVOCO DI LANCIO
#define IVA_FLAG_PD "F9IFPDE" // A(1) [K] - Flag Provvisorio / Definitivo
#define IVA_ANNOES "F9IAFES" // A(4) - Anno Fiscale / Esercizio
#define IVA_GIVA "F9IGIVA" // A(1) - { A | V | C } - GG.iva vendite / acq (A=Acquisti, V=Vendite, C=Corrispettivo)
#define IVA_TIPOG "F9ITPGI" // A(10) [K] - Tipo giornale
#define IVA_DOCXML "F9IDXML" // A(1) - { S | N } - Documento xml (S=Si, N=No)
#define IVA_TIPOCF "F9ITCFO" // A(1) - { C | F } - Tipo cliente / fornitore (C=Cliente, F=Fornitore)
#define IVA_CODCF "F9ICCFO" // A(10) - Codice cliente / fornitore (In caso di is_autofattura mettere fornitore originale)
#define IVA_RAGSOC "F9IDRSO" // A(60) - Ragione sociale
#define IVA_IDFISC "F9IIDFI" // A(30) - {Codice ISO + { PIVA (x ita) | CF (x est)}} ID fiscale
#define IVA_PIVA "F9IPIVA" // A(28) - Partiva Iva
#define IVA_CODFIS "F9ICFIS" // A(16) - Codice fiscale
#define IVA_CATDOC "F9ICADO" // A(10) - Categoria documento
#define IVA_CAUSSOS "F9ICSOS" // A(6) - Causale per sostitutiva(da tabella f9drt) (tipo documento fattura (TD01,TD02,TD03 ecc))
#define IVA_NUMDOC "F9INDOC" // A(20) - Numero Documento
#define IVA_DATADOC "F9IUDOC" // D - Data Documento
#define IVA_SEZIVA "F9ISIVA" // A(10) [K] - sezionale iva
#define IVA_TIPOREG "F9ICREG" // A(6) [K] - Tipo registrazione
#define IVA_NPROT "F9INPRI" // A(20) [K] - n.protocollo iva
#define IVA_DATPROT "F9IUPRI" // D [K] - data protocollo iva
#define IVA_FORNOR "F9IFOOA" // A(10) - fornitore originale fattura
#define IVA_REGOR "F9ITROT" // A(6) - tipo registrazione originale(TR)
#define IVA_NUMOR "F9INRRO" // A(20) - n.registrazione originale
#define IVA_DATAOR "F9IURGO" // D - data registrazione originale
#define IVA_CLASDOC "F9ICLDF" // A(10) - classe documentale FTV (in base al tipo documento da F9DRT00K)
#define IVA_NOMF1 "F9INMF1" // A(100) - nome file DOC (Nome fattura cartacea)
#define IVA_CLASAN1 "F9ICLDN" // A(10) - classe documentale(annesso 1) (in base al tipo documento da F9DRA00K)
#define IVA_NOMF2 "F9INMF2" // A(100) - nome file 1
#define IVA_CLASAN2 "F9ICLDA" // A(10) - classe documentale(annesso 2)
#define IVA_NOMF3 "F9INMF3" // A(100) - nome file 2 (Nome documento (senza percorso))
#define IVA_CLASAN4 "F9ICLD4" // A(10) - classe documentale(annesso 3)
#define IVA_NOMF4 "F9INMF4" // A(100) - nome file 3
#define IVA_CLASAN5 "F9ICLD5" // A(10) - classe documentale(annesso 4)
#define IVA_NOMF5 "F9INMF5" // A(100) - nome file 4
#define IVA_CLASAN6 "F9ICLD6" // A(10) - classe documentale(annesso 5)
#define IVA_NOMF6 "F9INMF6" // A(100) - nome file 5
#define IVA_CLASAN7 "F9ICLD7" // A(10) - classe documentale(annesso 6)
#define IVA_NOMF7 "F9INMF7" // A(100) - nome file 6
#define IVA_CLASAN8 "F9ICLD8" // A(10) - classe documentale(annesso 7)
#define IVA_NOMF8 "F9INMF8" // A(100) - nome file 7
#define IVA_CLASAN9 "F9ICLD9" // A(10) - classe documentale(annesso 8)
#define IVA_NOMF9 "F9INMF9" // A(100) - nome file 8
#define IVA_CLASA10 "F9ICL10" // A(10) - classe documentale(annesso 9)
#define IVA_NOMF10 "F9INM10" // A(100) - nome file 9
#define IVA_USERELA "F9IUTEE" // A(10) - Utente elaborazione
#define IVA_TIMEELA "F9IUHEL" // D - Data e ora elaborazione
#define IVA_TIMEWEB "F9IUHEW" // D - Data e ora elaborazione WEBAPP
#define IVA_DESCDOC "F9IDDES" // A(30) - Descrizione documento
#define IVA_TIPPROT "F9ITPRT" // A(2) - Tipo protocollo ricezione
#define IVA_NUMPROT "F9IAPRT" // I(4) - Numero protocollo ricezione
#define IVA_ANNPROT "F9INPRT" // I(10) - Anno protocollo ricezione
#define IVA_TIMERIC "F9IURIC" // D - Data/ora ricezione fattura
// FILE DRT : TABELLA CATEGORIE DOCUMENTALI
#define DRT_CODSOC "F9TCSOC" // A(10) [K] - COD.SOCIETÀ
#define DRT_CATDOC "F9TCADO" // A(10) [K] - Categoria documento
#define DRT_DESCR "F9TDES" // A(30) - Descrizione documento
#define DRT_CLASSO "F9TCLDC" // A(10) - classe documentale sostitutiva
#define DRT_CAUSSO "F9TCSOS" // A(6) - causale per sostitutiva(TD01…)
#define DRT_CAUSCON "F9TCAU" // A(6) - causale contabile
#define DRT_TIPOCAU "F9TTCAU" // A(6) - tipo causale contabile
#define DRT_TIMOMOV "F9TTMOV" // A(6) - tipo movimento contabile
#define DRT_OPCEE "F9TFCEE" // A(6) - operatore CEE
#define DRT_CODSOC "F9TCSOC" // A(10) [K] - COD.SOCIETÀ
#define DRT_CATDOC "F9TCADO" // A(10) [K] - Categoria documento
#define DRT_DESCR "F9TDES" // A(30) - Descrizione documento
#define DRT_CLASSO "F9TCLDC" // A(10) - classe documentale sostitutiva
#define DRT_CAUSSO "F9TCSOS" // A(6) - causale per sostitutiva(TD01…)
#define DRT_CAUSCON "F9TCAU" // A(6) - causale contabile
#define DRT_TIPOCAU "F9TTCAU" // A(6) - tipo causale contabile
#define DRT_TIMOMOV "F9TTMOV" // A(6) - tipo movimento contabile
#define DRT_OPCEE "F9TFCEE" // A(6) - operatore CEE

View File

@ -58,8 +58,8 @@
#define MOV_TNUMREG "TNUMREG"
#define MOV_IVALIQ "IVALIQ"
#define MOV_KEYFPPRO "KEYFPPRO"
#define MOV_DATAELABF9 "DATAELABF9"
#define MOV_MOVCOLL "MOVCOLL"
#define MOV_ELABF9 "ELABF9"
#define NUMREG_PROVVISORIO 999999L