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
{
TAssoc_array _tri, _tip; // Associazioni tabella tipi riga documento e tipi documento
TBankitalia _bankitalia;
TAssoc_array _testate;
@ -130,8 +131,8 @@ public:
void import_condv(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_docven(const TFilename& name, TBrowsefile_field& bf);
void import_rdocven(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, const bool stat = FALSE);
};
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_CODCF, codcf);
int err = clifo.read();
if (err == NOERR)
{
//if (err == NOERR)
//{
file.add_field(curr, "TIPOCF", tipocf);
}
//}
switch(tipo_record)
{
@ -583,6 +584,8 @@ void TTrasfer36::import_clifor(const TFilename& name, TBrowsefile_field& bf)
machedata(file, curr, "DATA REVOCA RID");
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);
if (err != NOERR)
{
@ -595,13 +598,15 @@ void TTrasfer36::import_clifor(const TFilename& name, TBrowsefile_field& bf)
}
break;
case 5:
if (err != NOERR)
if (err == NOERR)
{
machedata(file, curr, "DATA INVIO ULTIMO ESTRATTO CONTO");
machedata(file, curr, "DATA INVIO ULTIMO SOLLECITO");
permille(file, curr, "FIDO");
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);
if (err != NOERR)
{
@ -709,6 +714,10 @@ void TTrasfer36::import_anaart(const TFilename& name, TBrowsefile_field& bf)
umart.put("FC", r);
um = file.get_field(curr,"TERZA UNITA DI MISURA");
}
if (um.empty()) // L'unita' di misura deve essere presente
break;
umart.put("UM", um);
if (umart.write() != NOERR)
err = umart.rewrite();
@ -1172,12 +1181,13 @@ void TTrasfer36::import_rigmag(const TFilename& name, TBrowsefile_field& bf)
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;
msg = "Importazione documenti di vendita";
TString msg, str, td;
msg = stat ? "Importazione statistiche di vendita" : "Importazione documenti di vendita";
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();
long valid = 0;
@ -1203,6 +1213,9 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
if (stato_record == 'A')
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.insert("19", 0);
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);
mettilavirgola(file, curr, "CAMBIO", 18, 5);
machedata(file, curr, "DATAINSC");
str = file.get_field(curr, "CODICE BANCA");
if (str.not_empty())
// Controlla nella cache se il tipo documento PRASSI ha una corrispondenza in EuroCAMPO
str = file.get_field(curr, "TIPO DOCUMENTO");
if (_tip.objptr(str) != NULL)
td = (TString&)_tip[str];
else
td = "";
if (td.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);
}
m.set(100, str);
m.run();
td = m.get(101);
_tip.add(str, td);
}
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");
if (str.not_empty())
{
@ -1256,17 +1300,8 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
}
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
docven.curr().put("PROVV", "P"); // Tutto provvisorio in DEBUG
#else
@ -1301,12 +1336,13 @@ void TTrasfer36::import_docven(const TFilename& name, TBrowsefile_field& bf)
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;
msg = "Importazione righe documenti di vendita";
TString msg, str, tr;
msg = stat ? "Importazione righe statistiche di vendita" : "Importazione righe documenti di vendita";
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;
@ -1331,6 +1367,9 @@ void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf)
if (curr.type() == "A1" || curr.type()[0] > 'B')
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];
if (stato_record == 'A')
continue;
@ -1375,15 +1414,13 @@ void TTrasfer36::import_rdocven(const TFilename& name, TBrowsefile_field& bf)
testate++;
}
if (curr.type()[0] == 'B')
if (curr.type()[0] == 'B' || stat)
{
str = file.get_field(curr, "CODMAG");
str << file.get_field(curr, "CODDEP");
file.add_field(curr, "CODMAG", str);
mettilavirgola(file, curr, "QTAEVASA", 11, 3);
mettilavirgola(file, curr, "QTA", 11, 3);
mettilavirgola(file, curr, "PREZZO", 11, 2);
str.cut(0);
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())
file.add_field(curr, "SCONTO", str);
mettilavirgola(file, curr, "PERCPROVV", 5, 2);
mettilavirgola(file, curr, "TARA", 7, 2);
mettilavirgola(file, curr, "PNETTO", 7, 2);
mettilavirgola(file, curr, "PERCPROV", 5, 2);
str = file.get_field(curr, "CODMAGC");
str << file.get_field(curr, "CODDEPC");
file.add_field(curr, "CODMAGC", str);
if (!stat)
{
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("ANNO", doc.get("ANNO"));
rdoc.put("CODNUM", doc.get("CODNUM"));
@ -1475,7 +1545,7 @@ void TTrasfer36::main_loop()
{
vw.destroy_lines();
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);
if (fld.enabled() && !fld.empty())
@ -1492,6 +1562,8 @@ void TTrasfer36::main_loop()
case 106: import_condv(name, bf); break;
case 107: import_docven(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;
}
}

View File

@ -58,7 +58,7 @@ END
BOOLEAN 204
BEGIN
PROMPT 1 4 "Ana.Mag."
PROMPT 1 4 "Mov.Mag."
MESSAGE FALSE DISABLE,104
MESSAGE TRUE ENABLE,104
END
@ -109,9 +109,26 @@ BEGIN
PROMPT 37 6 "Rig.Ven. "
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
BEGIN
PROMPT 0 7 ""
PROMPT 0 8 ""
FLAGS "R"
END

View File

@ -12,13 +12,13 @@ END
NUMBER 100 1
BEGIN
PROMPT 1 3 "Cod. lingua "
PROMPT 1 4 "Cod. lingua "
FLAGS "D"
END
STRING 101 1
BEGIN
PROMPT 1 4 "Cod. Lingua EuroCAMPO "
PROMPT 1 5 "Cod. Lingua EuroCAMPO "
USE %LNG
INPUT CODTAB 101
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]
TYPEPOS = 1
TYPELEN = 1
RECORDSIZE = 300
[RECORD 0]
LENGTH(0) = 1

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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