Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
Aggiunta importazione documenti statistiche di vendita.
Fissato il record size per ogni file da importare nel rispettivo .ini.
Effettuate prime correzioni in seguito al PRIMO test ATTENDIBILE
su dati "VERI".


git-svn-id: svn://10.65.10.50/trunk@7175 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
angelo 1998-09-29 16:43:27 +00:00
parent 1f594aaf70
commit 50c937ded7
15 changed files with 634 additions and 114 deletions

View File

@ -106,6 +106,7 @@ const TString* TBankitalia::codban2abicab(const char* cod)
class TTrasfer36 : public TSkeleton_application class TTrasfer36 : public TSkeleton_application
{ {
TAssoc_array _tri, _tip; // Associazioni tabella tipi riga documento e tipi documento
TBankitalia _bankitalia; TBankitalia _bankitalia;
TAssoc_array _testate; TAssoc_array _testate;
@ -130,8 +131,8 @@ public:
void import_condv(const TFilename& name, TBrowsefile_field& bf); void import_condv(const TFilename& name, TBrowsefile_field& bf);
void import_movmag(const TFilename& name, TBrowsefile_field& bf); void import_movmag(const TFilename& name, TBrowsefile_field& bf);
void import_rigmag(const TFilename& name, TBrowsefile_field& bf); void import_rigmag(const TFilename& name, TBrowsefile_field& bf);
void import_docven(const TFilename& name, TBrowsefile_field& bf); void import_docven(const TFilename& name, TBrowsefile_field& bf, const bool stat = FALSE);
void import_rdocven(const TFilename& name, TBrowsefile_field& bf); void import_rdocven(const TFilename& name, TBrowsefile_field& bf, const bool stat = FALSE);
}; };
const TString& TTrasfer36::cap2com(const TString& cap, const TString& name) const const TString& TTrasfer36::cap2com(const TString& cap, const TString& name) const
@ -512,10 +513,10 @@ void TTrasfer36::import_clifor(const TFilename& name, TBrowsefile_field& bf)
clifo.put(CLI_TIPOCF, tipocf); clifo.put(CLI_TIPOCF, tipocf);
clifo.put(CLI_CODCF, codcf); clifo.put(CLI_CODCF, codcf);
int err = clifo.read(); int err = clifo.read();
if (err == NOERR) //if (err == NOERR)
{ //{
file.add_field(curr, "TIPOCF", tipocf); file.add_field(curr, "TIPOCF", tipocf);
} //}
switch(tipo_record) switch(tipo_record)
{ {
@ -583,6 +584,8 @@ void TTrasfer36::import_clifor(const TFilename& name, TBrowsefile_field& bf)
machedata(file, curr, "DATA REVOCA RID"); machedata(file, curr, "DATA REVOCA RID");
rel.write_enable(LF_CFVEN); rel.write_enable(LF_CFVEN);
rel.lfile(LF_CFVEN).put(CLI_TIPOCF, tipocf);
rel.lfile(LF_CFVEN).put(CLI_CODCF, codcf);
const int err = file.autosave(rel, curr); const int err = file.autosave(rel, curr);
if (err != NOERR) if (err != NOERR)
{ {
@ -595,13 +598,15 @@ void TTrasfer36::import_clifor(const TFilename& name, TBrowsefile_field& bf)
} }
break; break;
case 5: case 5:
if (err != NOERR) if (err == NOERR)
{ {
machedata(file, curr, "DATA INVIO ULTIMO ESTRATTO CONTO"); machedata(file, curr, "DATA INVIO ULTIMO ESTRATTO CONTO");
machedata(file, curr, "DATA INVIO ULTIMO SOLLECITO"); machedata(file, curr, "DATA INVIO ULTIMO SOLLECITO");
permille(file, curr, "FIDO"); permille(file, curr, "FIDO");
rel.write_enable(LF_CFVEN); rel.write_enable(LF_CFVEN);
rel.lfile(LF_CFVEN).put(CLI_TIPOCF, tipocf);
rel.lfile(LF_CFVEN).put(CLI_CODCF, codcf);
const int err = file.autosave(rel, curr); const int err = file.autosave(rel, curr);
if (err != NOERR) if (err != NOERR)
{ {
@ -709,6 +714,10 @@ void TTrasfer36::import_anaart(const TFilename& name, TBrowsefile_field& bf)
umart.put("FC", r); umart.put("FC", r);
um = file.get_field(curr,"TERZA UNITA DI MISURA"); um = file.get_field(curr,"TERZA UNITA DI MISURA");
} }
if (um.empty()) // L'unita' di misura deve essere presente
break;
umart.put("UM", um); umart.put("UM", um);
if (umart.write() != NOERR) if (umart.write() != NOERR)
err = umart.rewrite(); err = umart.rewrite();
@ -1172,12 +1181,13 @@ void TTrasfer36::import_rigmag(const TFilename& name, TBrowsefile_field& bf)
bf.add_line(""); bf.add_line("");
} }
void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf) void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf, const bool stat)
{ {
TString msg, str; TString msg, str, td;
msg = "Importazione documenti di vendita"; msg = stat ? "Importazione statistiche di vendita" : "Importazione documenti di vendita";
TProgind pi(::fsize(name), msg, TRUE, TRUE); TProgind pi(::fsize(name), msg, TRUE, TRUE);
TFile_text file(name, "ibm36dv.ini"); TFile_text file(name, stat ? "ibm36st.ini" : "ibm36dv.ini");
TMask m("ibm36103");
_testate.destroy(); _testate.destroy();
long valid = 0; long valid = 0;
@ -1203,6 +1213,9 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
if (stato_record == 'A') if (stato_record == 'A')
continue; continue;
if (stat && atol(file.get_field(curr,"NUMERO RIGA")) > 0L) // Prende solo le testate delle statistiche (nr. riga == 0)
continue;
annodoc = file.get_field(curr, "ANNO DOCUMENTO"); annodoc = file.get_field(curr, "ANNO DOCUMENTO");
annodoc.insert("19", 0); annodoc.insert("19", 0);
file.add_field(curr, "ANNO DOCUMENTO", annodoc); file.add_field(curr, "ANNO DOCUMENTO", annodoc);
@ -1220,25 +1233,56 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
file.add_field(curr, "TIPOCF", str); file.add_field(curr, "TIPOCF", str);
mettilavirgola(file, curr, "CAMBIO", 18, 5); mettilavirgola(file, curr, "CAMBIO", 18, 5);
machedata(file, curr, "DATAINSC"); // Controlla nella cache se il tipo documento PRASSI ha una corrispondenza in EuroCAMPO
str = file.get_field(curr, "TIPO DOCUMENTO");
str = file.get_field(curr, "CODICE BANCA"); if (_tip.objptr(str) != NULL)
if (str.not_empty()) td = (TString&)_tip[str];
else
td = "";
if (td.empty())
{ {
const TString* bank = _bankitalia.codban2abicab(str); m.set(100, str);
if (bank) m.run();
{ td = m.get(101);
docven.curr().put("CODABIP", bank->left(5)); _tip.add(str, td);
docven.curr().put("CODCABP", bank->mid(5));
}
else
{
msg = "Ipossibile determinare l'ABI/CAB della banca di presentazione ";
msg << str << " in un documento di vendita";
bf.add_line(msg);
}
} }
file.add_field(curr, "TIPO DOCUMENTO", td);
if (!stat) // Solo se sto trasferendo doc di vendita
{
machedata(file, curr, "DATAINSC");
str = file.get_field(curr, "CODICE BANCA");
if (str.not_empty())
{
const TString* bank = _bankitalia.codban2abicab(str);
if (bank)
{
docven.curr().put("CODABIP", bank->left(5));
docven.curr().put("CODCABP", bank->mid(5));
}
else
{
msg = "Ipossibile determinare l'ABI/CAB della banca di presentazione ";
msg << str << " in un documento di vendita";
bf.add_line(msg);
}
}
machedata(file, curr, "DATADOCRIF");
machedata(file, curr, "DATAPART");
mettilavirgola(file, curr, "IMPPAGATO", 18, 2);
str = file.get_field(curr, "ACCSALDO");
str = (str == "S") ? "X" : "";
file.add_field(curr, "ACCSALDO", str);
machedata(file, curr, "DATACONS");
}
// Elaborazione comune sia per doc di stat. che vend.
str = file.get_field(curr, "SCONTO"); str = file.get_field(curr, "SCONTO");
if (str.not_empty()) if (str.not_empty())
{ {
@ -1256,17 +1300,8 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
} }
file.add_field(curr, "SCONTO", sconto); file.add_field(curr, "SCONTO", sconto);
} }
machedata(file, curr, "DATADOCRIF");
machedata(file, curr, "DATAPART");
mettilavirgola(file, curr, "IMPPAGATO", 18, 2);
str = file.get_field(curr, "ACCSALDO");
str = (str == "S") ? "X" : "";
file.add_field(curr, "ACCSALDO", str);
machedata(file, curr, "DATACONS");
#ifdef DBG #ifdef DBG
docven.curr().put("PROVV", "P"); // Tutto provvisorio in DEBUG docven.curr().put("PROVV", "P"); // Tutto provvisorio in DEBUG
#else #else
@ -1301,12 +1336,13 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
bf.add_line(""); bf.add_line("");
} }
void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf) void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf, const bool stat)
{ {
TString msg, str; TString msg, str, tr;
msg = "Importazione righe documenti di vendita"; msg = stat ? "Importazione righe statistiche di vendita" : "Importazione righe documenti di vendita";
TProgind pi(::fsize(name), msg, TRUE, TRUE); TProgind pi(::fsize(name), msg, TRUE, TRUE);
TFile_text file(name, "ibm36rdv.ini"); TFile_text file(name, stat ? "ibm36rst.ini" : "ibm36rdv.ini");
TMask m("ibm36104");
long testate = 0, righe = 0; long testate = 0, righe = 0;
@ -1331,6 +1367,9 @@ void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf)
if (curr.type() == "A1" || curr.type()[0] > 'B') if (curr.type() == "A1" || curr.type()[0] > 'B')
continue; continue;
if (stat && atol(file.get_field(curr,"NRIGA")) == 0L) // Prende solo le righe delle statistiche (nr. riga != 0)
continue;
const char stato_record = file.get_field(curr, "STATO RECORD")[0]; const char stato_record = file.get_field(curr, "STATO RECORD")[0];
if (stato_record == 'A') if (stato_record == 'A')
continue; continue;
@ -1375,15 +1414,13 @@ void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf)
testate++; testate++;
} }
if (curr.type()[0] == 'B') if (curr.type()[0] == 'B' || stat)
{ {
str = file.get_field(curr, "CODMAG"); str = file.get_field(curr, "CODMAG");
str << file.get_field(curr, "CODDEP"); str << file.get_field(curr, "CODDEP");
file.add_field(curr, "CODMAG", str); file.add_field(curr, "CODMAG", str);
mettilavirgola(file, curr, "QTAEVASA", 11, 3);
mettilavirgola(file, curr, "QTA", 11, 3); mettilavirgola(file, curr, "QTA", 11, 3);
mettilavirgola(file, curr, "PREZZO", 11, 2);
str.cut(0); str.cut(0);
for (int s = 0; s < 2; s++) for (int s = 0; s < 2; s++)
@ -1401,14 +1438,47 @@ void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf)
if (str.not_empty()) if (str.not_empty())
file.add_field(curr, "SCONTO", str); file.add_field(curr, "SCONTO", str);
mettilavirgola(file, curr, "PERCPROVV", 5, 2); mettilavirgola(file, curr, "PERCPROV", 5, 2);
mettilavirgola(file, curr, "TARA", 7, 2);
mettilavirgola(file, curr, "PNETTO", 7, 2);
str = file.get_field(curr, "CODMAGC"); if (!stat)
str << file.get_field(curr, "CODDEPC"); {
file.add_field(curr, "CODMAGC", str); mettilavirgola(file, curr, "QTAEVASA", 11, 3);
mettilavirgola(file, curr, "TARA", 7, 2);
mettilavirgola(file, curr, "PNETTO", 7, 2);
str = file.get_field(curr, "CODMAGC");
str << file.get_field(curr, "CODDEPC");
file.add_field(curr, "CODMAGC", str);
}
else
{
str = file.get_field(curr, "PREZZO IN VAL");
if (str.not_empty())
{
file.add_field(curr, "PREZZO", str);
str = file.get_field(curr,"PROVVIGIONI AG VAL");
file.add_field(curr, "IMPFISSO", str);
}
mettilavirgola(file, curr, "IMPFISSO", 9, 2);
}
mettilavirgola(file, curr, "PREZZO", 11, 2);
// Controlla nella cache se il tipo riga PRASSI ha una corrispondenza in EuroCAMPO
str = file.get_field(curr, stat ? "PROFILO RIGA" : "TIPO RIGA");
if (_tri.objptr(str) != NULL)
tr = (TString&) _tri[str];
else
tr = "";
if (tr.empty())
{
m.set(100, str);
m.run();
tr = m.get(101);
_tri.add(str, tr);
}
file.add_field(curr, stat ? "PROFILO RIGA" : "TIPO RIGA", tr);
rdoc.put("PROVV", doc.get("PROVV")); rdoc.put("PROVV", doc.get("PROVV"));
rdoc.put("ANNO", doc.get("ANNO")); rdoc.put("ANNO", doc.get("ANNO"));
rdoc.put("CODNUM", doc.get("CODNUM")); rdoc.put("CODNUM", doc.get("CODNUM"));
@ -1475,7 +1545,7 @@ void TTrasfer36::main_loop()
{ {
vw.destroy_lines(); vw.destroy_lines();
const TFilename dir = m.get(100); const TFilename dir = m.get(100);
for (short id = 101; id <= 108; id++) for (short id = 101; id <= 110; id++)
{ {
const TMask_field& fld = m.field(id); const TMask_field& fld = m.field(id);
if (fld.enabled() && !fld.empty()) if (fld.enabled() && !fld.empty())
@ -1492,6 +1562,8 @@ void TTrasfer36::main_loop()
case 106: import_condv(name, bf); break; case 106: import_condv(name, bf); break;
case 107: import_docven(name, bf); break; case 107: import_docven(name, bf); break;
case 108: import_rdocven(name, bf); break; case 108: import_rdocven(name, bf); break;
case 109: import_docven(name, bf, TRUE); break;
case 110: import_rdocven(name, bf, TRUE); break;
default : break; default : break;
} }
} }

View File

@ -58,7 +58,7 @@ END
BOOLEAN 204 BOOLEAN 204
BEGIN BEGIN
PROMPT 1 4 "Ana.Mag." PROMPT 1 4 "Mov.Mag."
MESSAGE FALSE DISABLE,104 MESSAGE FALSE DISABLE,104
MESSAGE TRUE ENABLE,104 MESSAGE TRUE ENABLE,104
END END
@ -109,9 +109,26 @@ BEGIN
PROMPT 37 6 "Rig.Ven. " PROMPT 37 6 "Rig.Ven. "
END END
BOOLEAN 208
BEGIN
PROMPT 1 7 "Stat.V. "
MESSAGE FALSE DISABLE,109|DISABLE,110
MESSAGE TRUE ENABLE,109|ENABLE,110
END
STRING 109 16
BEGIN
PROMPT 13 7 ""
END
STRING 110 16
BEGIN
PROMPT 37 7 "Rig.Stat. "
END
BROWSEFILE 300 -3 -1 BROWSEFILE 300 -3 -1
BEGIN BEGIN
PROMPT 0 7 "" PROMPT 0 8 ""
FLAGS "R" FLAGS "R"
END END

View File

@ -12,13 +12,13 @@ END
NUMBER 100 1 NUMBER 100 1
BEGIN BEGIN
PROMPT 1 3 "Cod. lingua " PROMPT 1 4 "Cod. lingua "
FLAGS "D" FLAGS "D"
END END
STRING 101 1 STRING 101 1
BEGIN BEGIN
PROMPT 1 4 "Cod. Lingua EuroCAMPO " PROMPT 1 5 "Cod. Lingua EuroCAMPO "
USE %LNG USE %LNG
INPUT CODTAB 101 INPUT CODTAB 101
DISPLAY "Codice" CODTAB DISPLAY "Codice" CODTAB

39
ibm36/ibm36103.uml Executable file
View File

@ -0,0 +1,39 @@
PAGE "Corrispondenza Tipi Documento" -1 -1 68 8
TEXT DLG_NULL
BEGIN
PROMPT 1 1 "Scegliere il tipo documento di EuroCAMPO per la"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 2 "corrispondenza in importazione dati."
END
STRING 100 2
BEGIN
PROMPT 1 4 "Tipo documento "
FLAGS "D"
END
STRING 101 4
BEGIN
PROMPT 1 5 "Tipo doc. EuroCAMPO "
USE %TIP
INPUT CODTAB 101
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT 101 CODTAB
CHECKTYPE REQUIRED
WARNING "Tipo documento errato"
END
BUTTON DLG_OK 10 2
BEGIN
PROMPT -11 -1 ""
END
ENDPAGE
ENDMASK

40
ibm36/ibm36104.uml Executable file
View File

@ -0,0 +1,40 @@
PAGE "Corrispondenza Tipi Riga" -1 -1 68 8
TEXT DLG_NULL
BEGIN
PROMPT 1 1 "Scegliere il tipo riga documento di EuroCAMPO per la"
END
TEXT DLG_NULL
BEGIN
PROMPT 1 2 "corrispondenza in importazione dati."
END
STRING 100 2
BEGIN
PROMPT 1 4 "Tipo riga documento "
FLAGS "D"
END
STRING 101 4
BEGIN
PROMPT 1 5 "Tipo riga EuroCAMPO "
USE %TRI
INPUT CODTAB 101
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
DISPLAY "Tipo" S7
OUTPUT 101 CODTAB
CHECKTYPE REQUIRED
WARNING "Tipo riga documento errato"
END
BUTTON DLG_OK 10 2
BEGIN
PROMPT -11 -1 ""
END
ENDPAGE
ENDMASK

View File

@ -1,6 +1,7 @@
[MAIN] [MAIN]
TYPEPOS = 1 TYPEPOS = 1
TYPELEN = 1 TYPELEN = 1
RECORDSIZE = 300
[RECORD 0] [RECORD 0]
LENGTH(0) = 1 LENGTH(0) = 1

View File

@ -1,6 +1,7 @@
[MAIN] [MAIN]
TYPEPOS = 1 TYPEPOS = 1
TYPELEN = 1 TYPELEN = 1
RECORDSIZE = 194
[RECORD 1] [RECORD 1]
LENGTH(0) = 1 LENGTH(0) = 1
@ -307,7 +308,7 @@ NAME(10) = CODICE DEPOSITO
NAME(11) = CODICI SPESE DA ADDEBITARE NAME(11) = CODICI SPESE DA ADDEBITARE
NAME(12) = CODICE PROFILO SOLLECITO NAME(12) = CODICE PROFILO SOLLECITO
NAME(13) = NUMERO MASSIMO SOLLECITO NAME(13) = NUMERO MASSIMO SOLLECITO
NAME(14) = DATA INVIO ESTRATTO CONTO NAME(14) = DATA INVIO ULTIMO ESTRATTO CONTO
NAME(15) = DATA INVIO ULTIMO SOLLECITO NAME(15) = DATA INVIO ULTIMO SOLLECITO
NAME(16) = FIDO NAME(16) = FIDO
NAME(17) = PERCENTUALE SCONTO RIGA NAME(17) = PERCENTUALE SCONTO RIGA
@ -336,8 +337,8 @@ POSITION(19) = 71
FIELD(1) = TIPOCF FIELD(1) = TIPOCF
FIELD(3) = CODCF FIELD(3) = CODCF
FIELD(5) = 17->GESCONTR FIELD(5) = 17->GESTCONTR
FIELD(6) = 17->CODLIS FIELD(6) = 17->CODLIST
FIELD(7) = 17->CODSCC FIELD(7) = 17->CODSCC
FIELD(8) = 17->SCONTO FIELD(8) = 17->SCONTO
FIELD(9) = 17->CODMAG FIELD(9) = 17->CODMAG
@ -347,7 +348,7 @@ FIELD(12) = 17->PROFSOLL
FIELD(13) = 17->MAXSOLL FIELD(13) = 17->MAXSOLL
FIELD(14) = 17->DATAESC FIELD(14) = 17->DATAESC
FIELD(15) = 17->DATASOLL FIELD(15) = 17->DATASOLL
FIELD(16) = 17->FIDO FIELD(16) = FIDO
[RECORD 6] [RECORD 6]
LENGTH(0) = 1 LENGTH(0) = 1

View File

@ -1,6 +1,7 @@
[MAIN] [MAIN]
TYPEPOS = 1 TYPEPOS = 1
TYPELEN = 1 TYPELEN = 1
RECORDSIZE = 139
[RECORD A] [RECORD A]
LENGTH(0) = 1 LENGTH(0) = 1

View File

@ -1,6 +1,7 @@
[MAIN] [MAIN]
TYPEPOS=0 TYPEPOS=0
TYPELEN=0 TYPELEN=0
RECORDSIZE = 288
[RECORD] [RECORD]
@ -23,7 +24,7 @@ POSITION(3) = 5
LENGTH(3) = 1 LENGTH(3) = 1
FIELD(3) = CODNUM FIELD(3) = CODNUM
NAME(4) = TIPO DOCUMENTO NAME(4) = NUMERO DOCUMENTO
POSITION(4) = 6 POSITION(4) = 6
LENGTH(4) = 6 LENGTH(4) = 6
FIELD(4) = NDOC FIELD(4) = NDOC
@ -128,7 +129,7 @@ LENGTH(25) = 2
NAME(26) = SCONTO NAME(26) = SCONTO
POSITION(26) = 129 POSITION(26) = 129
LENGTH(26) = 25 LENGTH(26) = 15
FIELD(26) = SCONTOPERC FIELD(26) = SCONTOPERC
NAME(27) = INDIRIZZO SPEDIZIONE NAME(27) = INDIRIZZO SPEDIZIONE
@ -153,7 +154,6 @@ FIELD(30) = NUMDOCRIF
NAME(31) = CODAG NAME(31) = CODAG
POSITION(31) = 162 POSITION(31) = 162
LENGTH(31) = 2 LENGTH(31) = 2
FIELD(31) = CODAG
NAME(32) = CODAGVIS NAME(32) = CODAGVIS
POSITION(32) = 164 POSITION(32) = 164
@ -230,16 +230,28 @@ LENGTH(46) = 1
FIELD(46) = ACCSALDO FIELD(46) = ACCSALDO
NAME(47) = SCONTO RIGA CLIENTE NAME(47) = SCONTO RIGA CLIENTE
POSITION(47) = 215
LENGTH(47) = 5
NAME(48) = PUNTI PROVVIGIONE NAME(48) = PUNTI PROVVIGIONE
POSITION(48) = 220
LENGTH(48) = 5
NAME(49) = NOME TESTO NAME(49) = NOME TESTO
POSITION(49) = 225
LENGTH(49) = 9
NAME(50) = IMPORTO GIORNALIERO DEL RAME NAME(50) = IMPORTO GIORNALIERO DEL RAME
POSITION(50) = 234
LENGTH(50) = 9
NAME(51) = DATA EMISSIONE DOC FORNITORE NAME(51) = DATA EMISSIONE DOC FORNITORE
POSITION(51) = 243
LENGTH(51) = 7
NAME(52) = NUMERO EMISSIONE DOC FORNITORE NAME(52) = NUMERO EMISSIONE DOC FORNITORE
POSITION(52) = 250
LENGTH(52) = 7
NAME(53) = CODCONT NAME(53) = CODCONT
POSITION(53) = 257 POSITION(53) = 257
@ -247,6 +259,8 @@ LENGTH(53) = 2
FIELD(53) = CODCONT FIELD(53) = CODCONT
NAME(54) = FORZATURA CONTROLLO FIDO NAME(54) = FORZATURA CONTROLLO FIDO
POSITION(54) = 259
LENGTH(54) = 1
NAME(55) = DATACONS NAME(55) = DATACONS
POSITION(55) = 260 POSITION(55) = 260
@ -254,6 +268,8 @@ LENGTH(55) = 6
FIELD(55) = DATACONS FIELD(55) = DATACONS
NAME(56) = FLAG ORDINE NAME(56) = FLAG ORDINE
POSITION(56) = 266
LENGTH(56) = 2
NAME(57) = DOCEVASO NAME(57) = DOCEVASO
POSITION(57) = 267 POSITION(57) = 267

View File

@ -1,6 +1,7 @@
[MAIN] [MAIN]
TYPELEN = 0 TYPELEN = 0
TYPEPOS = 0 TYPEPOS = 0
RECORDSIZE = 150
[RECORD] [RECORD]
@ -23,12 +24,20 @@ LENGTH(3) = 6
FIELD(3) = DATAREG FIELD(3) = DATAREG
NAME(4) = TIPO DOCUMENTO NAME(4) = TIPO DOCUMENTO
POSITION(4) = 15
LENGTH(4) = 2
NAME(5) = ANNO DOCUMENTO NAME(5) = ANNO DOCUMENTO
POSITION(5) = 17
LENGTH(5) = 2
NAME(6) = NUMERO DOCUMENTO NAME(6) = NUMERO DOCUMENTO
POSITION(6) = 19
LENGTH(6) = 7
NAME(7) = DATA DOCUMENTO NAME(7) = DATA DOCUMENTO
POSITION(7) = 26
LENGTH(7) = 4
NAME(8) = TIPO CODICE NAME(8) = TIPO CODICE
POSITION(8) = 30 POSITION(8) = 30
@ -41,10 +50,16 @@ LENGTH(9) = 6
FIELD(9) = CODCF FIELD(9) = CODCF
NAME(10) = CODICE VALUTA NAME(10) = CODICE VALUTA
POSITION(10) = 37
LENGTH(10) = 3
NAME(11) = CAMBIO NAME(11) = CAMBIO
POSITION(11) = 40
LENGTH(11) = 11
NAME(12) = TIPO DOUMENTO NAME(12) = TIPO DOUMENTO
POSITION(12) = 51
LENGTH(12) = 2
NAME(13) = DATA DOCUMENTO NAME(13) = DATA DOCUMENTO
POSITION(13) = 53 POSITION(13) = 53

View File

@ -1,7 +1,7 @@
[MAIN] [MAIN]
TYPEPOS=6 TYPEPOS=6
TYPELEN=2 TYPELEN=2
RECORDSIZE=352
[RECORD A1] [RECORD A1]
@ -32,12 +32,12 @@ FIELD(3) = NOTE
NAME(4) = ASPBEN1 NAME(4) = ASPBEN1
POSITION(4) = 90 POSITION(4) = 90
LENGTH(4) = 2 LENGTH(4) = 2
FIELD(4) = ASPBEN1 FIELD(4) = ASPBENI1
NAME(5) = ASPBEN2 NAME(5) = ASPBEN2
POSITION(5) = 92 POSITION(5) = 92
LENGTH(5) = 2 LENGTH(5) = 2
FIELD(5) = ASPBEN2 FIELD(5) = ASPBENI2
NAME(6) = PERCSPINC NAME(6) = PERCSPINC
POSITION(6) = 120 POSITION(6) = 120
@ -114,7 +114,7 @@ FIELD(6) = DESCR
NAME(7) = QTAEVASA NAME(7) = QTAEVASA
POSITION(7) = 129 POSITION(7) = 129
LENGTH(7) = 35 LENGTH(7) = 35
FIELD(7) = 11 FIELD(7) = QTAEVASA
NAME(8) = CODICE LOTTO NAME(8) = CODICE LOTTO
POSITION(8) = 140 POSITION(8) = 140
@ -145,10 +145,10 @@ NAME(13) = SCONTO2
POSITION(13) = 195 POSITION(13) = 195
LENGTH(13) = 5 LENGTH(13) = 5
NAME(14) = PERCPROVV NAME(14) = PERCPROV
POSITION(14) = 213 POSITION(14) = 213
LENGTH(14) = 5 LENGTH(14) = 5
FIELD(14) = PERCPROVV FIELD(14) = PERCPROV
NAME(15) = CODIVA NAME(15) = CODIVA
POSITION(15) = 227 POSITION(15) = 227
@ -246,7 +246,7 @@ FIELD(6) = DESCR
NAME(7) = QTAEVASA NAME(7) = QTAEVASA
POSITION(7) = 129 POSITION(7) = 129
LENGTH(7) = 35 LENGTH(7) = 35
FIELD(7) = 11 FIELD(7) = QTAEVASA
NAME(8) = CODICE LOTTO NAME(8) = CODICE LOTTO
POSITION(8) = 140 POSITION(8) = 140
@ -277,10 +277,10 @@ NAME(13) = SCONTO2
POSITION(13) = 195 POSITION(13) = 195
LENGTH(13) = 5 LENGTH(13) = 5
NAME(14) = PERCPROVV NAME(14) = PERCPROV
POSITION(14) = 213 POSITION(14) = 213
LENGTH(14) = 5 LENGTH(14) = 5
FIELD(14) = PERCPROVV FIELD(14) = PERCPROV
NAME(15) = CODIVA NAME(15) = CODIVA
POSITION(15) = 227 POSITION(15) = 227
@ -378,7 +378,7 @@ FIELD(6) = DESCR
NAME(7) = QTAEVASA NAME(7) = QTAEVASA
POSITION(7) = 129 POSITION(7) = 129
LENGTH(7) = 35 LENGTH(7) = 35
FIELD(7) = 11 FIELD(7) = QTAEVASA
NAME(8) = CODICE LOTTO NAME(8) = CODICE LOTTO
POSITION(8) = 140 POSITION(8) = 140
@ -409,10 +409,10 @@ NAME(13) = SCONTO2
POSITION(13) = 195 POSITION(13) = 195
LENGTH(13) = 5 LENGTH(13) = 5
NAME(14) = PERCPROVV NAME(14) = PERCPROV
POSITION(14) = 213 POSITION(14) = 213
LENGTH(14) = 5 LENGTH(14) = 5
FIELD(14) = PERCPROVV FIELD(14) = PERCPROV
NAME(15) = CODIVA NAME(15) = CODIVA
POSITION(15) = 227 POSITION(15) = 227
@ -510,7 +510,7 @@ FIELD(6) = DESCR
NAME(7) = QTAEVASA NAME(7) = QTAEVASA
POSITION(7) = 129 POSITION(7) = 129
LENGTH(7) = 35 LENGTH(7) = 35
FIELD(7) = 11 FIELD(7) = QTAEVASA
NAME(8) = CODICE LOTTO NAME(8) = CODICE LOTTO
POSITION(8) = 140 POSITION(8) = 140
@ -541,10 +541,10 @@ NAME(13) = SCONTO2
POSITION(13) = 195 POSITION(13) = 195
LENGTH(13) = 5 LENGTH(13) = 5
NAME(14) = PERCPROVV NAME(14) = PERCPROV
POSITION(14) = 213 POSITION(14) = 213
LENGTH(14) = 5 LENGTH(14) = 5
FIELD(14) = PERCPROVV FIELD(14) = PERCPROV
NAME(15) = CODIVA NAME(15) = CODIVA
POSITION(15) = 227 POSITION(15) = 227

View File

@ -1,6 +1,7 @@
[MAIN] [MAIN]
TYPEPOS = 13 TYPEPOS = 13
TYPELEN = 1 TYPELEN = 1
RECORDSIZE = 233
[RECORD 1] [RECORD 1]

192
ibm36/ibm36rst.ini Executable file
View File

@ -0,0 +1,192 @@
[MAIN]
TYPEPOS=0
TYPELEN=0
RECORDSIZE=243
[RECORD]
NAME(0) = STATO RECORD
POSITION(0) = 0
LENGTH(0) = 1
NAME(1) = ANNO DOCUMENTO
POSITION(1) = 1
LENGTH(1) = 2
FIELD(1) = ANNO
NAME(2) = NUMERO RECORD
POSITION(2) = 3
LENGTH(2) = 7
NAME(3) = NRIGA
POSITION(3) = 10
LENGTH(3) = 4
FIELD(3) = NRIGA
NAME(4) = TIPO GESTIONE
POSITION(4) = 14
LENGTH(4) = 1
NAME(5) = DATA DOCUMENTO
POSITION(5) = 15
LENGTH(5) = 4
NAME(6) = TIPOCF
POSITION(6) = 19
LENGTH(6) = 1
NAME(7) = CODCF
POSITION(7) = 20
LENGTH(7) = 6
NAME(8) = CODAGVIS
POSITION(8) = 26
LENGTH(8) = 6
NAME(9) = ZONA
POSITION(9) = 32
LENGTH(9) = 2
NAME(10) = CATVEN
POSITION(10) = 34
LENGTH(10) = 2
NAME(11) = CODMAG
POSITION(11) = 36
LENGTH(11) = 3
FIELD(11) = CODMAG
NAME(12) = CODART
POSITION(12) = 39
LENGTH(12) = 19
FIELD(12) = CODART
NAME(13) = PROFILO DOCUMENTO
POSITION(13) = 58
LENGTH(13) = 2
NAME(14) = PROFILO RIGA
POSITION(14) = 60
LENGTH(14) = 2
FIELD(14) = TIPORIGA
NAME(15) = CODDEP
POSITION(15) = 62
LENGTH(15) = 2
NAME(16) = CODICE LOTTO
POSITION(16) = 63
LENGTH(16) = 6
FIELD(16) = LIVELLO
NAME(17) = CODICE LINEA
POSITION(17) = 69
LENGTH(17) = 3
NAME(18) = CODICE CATEGORIA
POSITION(18) = 72
LENGTH(18) = 2
NAME(19) = UMQTA
POSITION(19) = 74
LENGTH(19) = 2
FIELD(19) = UMQTA
NAME(20) = QTA
POSITION(20) = 76
LENGTH(20) = 11
FIELD(20) = QTA
NAME(21) = CODIVA
POSITION(21) = 87
LENGTH(21) = 2
FIELD(21) = CODIVA
NAME(22) = VALORE RIGA
POSITION(22) = 89
LENGTH(22) = 13
NAME(23) = VALORE SU PROVV
POSITION(23) = 102
LENGTH(23) = 11
NAME(24) = PERCPROV
POSITION(24) = 113
LENGTH(24) = 5
FIELD(24) = PERCPROV
NAME(25) = IMPFISSO
POSITION(25) = 118
LENGTH(25) = 9
FIELD(25) = IMPFISSO
NAME(26) = IMPFISUN
POSITION(26) = 127
LENGTH(26) = 1
FIELD(26) = IMPFISUN
NAME(27) = VALPROVV
POSITION(27) = 128
LENGTH(27) = 11
NAME(28) = CAUSMAG
POSITION(28) = 139
LENGTH(28) = 2
FIELD(28) = CAUSMAG
NAME(29) = PROPRIETA
POSITION(29) = 141
LENGTH(29) = 1
NAME(30) = RIGA NORMALE
POSITION(30) = 142
LENGTH(30) = 2
NAME(31) = SCONTO
POSITION(31) = 144
LENGTH(31) = 5
FIELD(31) = SCONTO
NAME(32) = SCONTO2
POSITION(32) = 149
LENGTH(32) = 5
NAME(33) = PREZZO VENDITA
POSITION(33) = 154
LENGTH(33) = 9
NAME(34) = COSTO ARTICOLO
POSITION(34) = 163
LENGTH(34) = 11
NAME(35) = VALORE RIGA IN VAL
POSITION(35) = 174
LENGTH(35) = 13
NAME(36) = VALORE SU PROVV IN VAL
POSITION(36) = 187
LENGTH(36) = 11
NAME(37) = PROVVIGIONI AG VAL
POSITION(37) = 198
LENGTH(37) = 9
NAME(38) = VALORE PROVV VAL
POSITION(38) = 207
LENGTH(38) = 11
NAME(39) = CODVAL
POSITION(39) = 218
LENGTH(39) = 3
NAME(40) = PREZZO
POSITION(40) = 221
LENGTH(40) = 11
FIELD(40) = PREZZO
NAME(41) = PREZZO IN VAL
POSITION(41) = 232
LENGTH(41) = 11

128
ibm36/ibm36st.ini Executable file
View File

@ -0,0 +1,128 @@
[MAIN]
TYPEPOS=0
TYPELEN=0
RECORDSIZE=243
[RECORD]
NAME(0) = STATO RECORD
POSITION(0) = 0
LENGTH(0) = 1
NAME(1) = ANNO DOCUMENTO
POSITION(1) = 1
LENGTH(1) = 2
FIELD(1) = ANNO
NAME(2) = NUMERO RECORD
POSITION(2) = 3
LENGTH(2) = 7
NAME(3) = NUMERO RIGA
POSITION(3) = 10
LENGTH(3) = 4
NAME(4) = TIPO GESTIONE
POSITION(4) = 14
LENGTH(4) = 1
NAME(5) = DATA DOCUMENTO
POSITION(5) = 15
LENGTH(5) = 4
FIELD(5) = DATADOC
NAME(6) = TIPOCF
POSITION(6) = 19
LENGTH(6) = 1
FIELD(6) = TIPOCF
NAME(7) = CODCF
POSITION(7) = 20
LENGTH(7) = 6
FIELD(7) = CODCF
NAME(8) = CODAGVIS
POSITION(8) = 26
LENGTH(8) = 6
FIELD(8) = CODAGVIS
NAME(9) = ZONA
POSITION(9) = 32
LENGTH(9) = 2
FIELD(9) = ZONA
NAME(10) = CATVEN
POSITION(10) = 34
LENGTH(10) = 2
FIELD(10) = CATVEN
NAME(11) = PROFILO DOCUMENTO
POSITION(11) = 36
LENGTH(11) = 2
NAME(12) = NUMERAZIONE DOCUMENTO
POSITION(12) = 38
LENGTH(12) = 1
FIELD(12) = CODNUM
NAME(13) = NUMERO DOCUMENTO
POSITION(13) = 39
LENGTH(13) = 6
FIELD(13) = NDOC
NAME(14) = TIPO DOCUMENTO
POSITION(14) = 45
LENGTH(14) = 2
FIELD(14) = TIPODOC
NAME(15) = INDIRIZZO SPEDIZIONE
POSITION(15) = 47
LENGTH(15) = 3
FIELD(15) = CODINDSP
NAME(16) = CODPAG
POSITION(16) = 50
LENGTH(16) = 2
FIELD(16) = CODPAG
NAME(16) = TABELLA AGENTI
POSITION(16) = 52
LENGTH(16) = 2
NAME(17) = CODVAL
POSITION(17) = 54
LENGTH(17) = 3
FIELD(17) = CODVAL
NAME(18) = CAMBIO
POSITION(18) = 57
LENGTH(18) = 11
FIELD(18) = CAMBIO
NAME(19) = TOTALE RIGHE
POSITION(19) = 68
LENGTH(19) = 13
NAME(20) = VALORE DOCUMENTO
POSITION(20) = 81
LENGTH(20) = 13
NAME(21) = SCONTO
POSITION(21) = 94
LENGTH(21) = 15
FIELD(21) = SCONTOPERC
NAME(22) = VETTORE 1
POSITION(22) = 109
LENGTH(22) = 3
FIELD(2) = CODVETT1
NAME(19) = TOTALE RIGHE IN VALUTA
POSITION(19) = 112
LENGTH(19) = 13
NAME(20) = VALORE DOCUMENTO IN VALUTA
POSITION(20) = 125
LENGTH(20) = 13

View File

@ -1,7 +1,7 @@
[MAIN] [MAIN]
FIELDSEP = FIELDSEP =
RECORDSEP = RECORDSEP =
RECORDSIZE = RECORDSIZE = 296
SKIPLINES = 0 SKIPLINES = 0
TYPEFIELD = 1 TYPEFIELD = 1
TYPEPOS = 1 TYPEPOS = 1
@ -56,16 +56,15 @@ LENGTH(7) = 3
LENGTH(8) = 11 LENGTH(8) = 11
LENGTH(9) = 6 LENGTH(9) = 6
LENGTH(10) = 6 LENGTH(10) = 6
LENGTH(11) = 2 LENGTH(11) = 1
LENGTH(12) = 1 LENGTH(12) = 4
LENGTH(13) = 4 LENGTH(13) = 1
LENGTH(14) = 1 LENGTH(14) = 1
LENGTH(15) = 1 LENGTH(15) = 1
LENGTH(16) = 1 LENGTH(16) = 1
LENGTH(17) = 1 LENGTH(17) = 6
LENGTH(18) = 6 LENGTH(18) = 1
LENGTH(19) = 1 LENGTH(19) = 1
LENGTH(20) = 1
NAME(0) = ANNULLATO NAME(0) = ANNULLATO
NAME(1) = TIPO NAME(1) = TIPO
@ -78,16 +77,15 @@ NAME(7) = CODICE DIVISA
NAME(8) = CAMBIO NAME(8) = CAMBIO
NAME(9) = INIZIO VALIDITA NAME(9) = INIZIO VALIDITA
NAME(10) = FINE VALIDITA NAME(10) = FINE VALIDITA
NAME(11) = UNUSED NAME(11) = FLAG LORDO
NAME(12) = FLAG LORDO NAME(12) = SEQUENZA RICERCA
NAME(13) = SEQUENZA RICERCA NAME(13) = GESTIONE UM
NAME(14) = GESTIONE UM NAME(14) = GESTIONE SCAGLIONI
NAME(15) = GESTIONE SCAGLIONI NAME(15) = GESTIONE SCONTI
NAME(16) = GESTIONE SCONTI NAME(16) = TIPO GESTIONE
NAME(17) = TIPO GESTIONE NAME(17) = DATA CAMBIO
NAME(18) = DATA CAMBIO NAME(18) = VALIDITA CAMPAGNA
NAME(19) = VALIDITA CAMPAGNA NAME(19) = CONTRATTO OBBLIGATORIO
NAME(20) = CONTRATTO OBBLIGATORIO
POSITION(0) = 0 POSITION(0) = 0
POSITION(1) = 1 POSITION(1) = 1
@ -98,18 +96,17 @@ POSITION(5) = 13
POSITION(6) = 17 POSITION(6) = 17
POSITION(7) = 47 POSITION(7) = 47
POSITION(8) = 50 POSITION(8) = 50
POSITION(9) = 56 POSITION(9) = 61
POSITION(10) = 62 POSITION(10) = 67
POSITION(11) = 68 POSITION(11) = 73
POSITION(12) = 70 POSITION(12) = 74
POSITION(13) = 71 POSITION(13) = 78
POSITION(14) = 75 POSITION(14) = 79
POSITION(15) = 76 POSITION(15) = 80
POSITION(16) = 77 POSITION(16) = 81
POSITION(17) = 78 POSITION(17) = 82
POSITION(18) = 79 POSITION(18) = 88
POSITION(19) = 85 POSITION(19) = 89
POSITION(20) = 86
FIELD(1) = TIPO FIELD(1) = TIPO
FIELD(2) = TIPOCF FIELD(2) = TIPOCF
@ -120,12 +117,12 @@ FIELD(7) = CODVAL
FIELD(8) = CAMBIO FIELD(8) = CAMBIO
FIELD(9) = VALIN FIELD(9) = VALIN
FIELD(10) = VALFIN FIELD(10) = VALFIN
FIELD(13) = SEQRIC FIELD(12) = SEQRIC
FIELD(14) = GESTUM FIELD(13) = GESTUM
FIELD(15) = GESTSCAGL FIELD(14) = GESTSCAGL
FIELD(16) = GESTSCO FIELD(15) = GESTSCO
FIELD(18) = DATACAM FIELD(17) = DATACAM
FIELD(20) = OBBLIG FIELD(19) = OBBLIG
USE = 52 USE = 52
[RECORD A11] [RECORD A11]