Patch level :
Files correlati : Ricompilazione Demo : [ ] Commento : git-svn-id: svn://10.65.10.50/branches/R_10_00@21086 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
a519f17133
commit
763df4c407
238
ha/hacnv100.cpp
238
ha/hacnv100.cpp
@ -9,6 +9,9 @@
|
|||||||
#include <reputils.h>
|
#include <reputils.h>
|
||||||
#include <tabutil.h>
|
#include <tabutil.h>
|
||||||
|
|
||||||
|
#include <pconti.h>
|
||||||
|
#include <clifo.h>
|
||||||
|
|
||||||
const char* const APPNAME = TR("Importazione anagrafiche HARDY");
|
const char* const APPNAME = TR("Importazione anagrafiche HARDY");
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
@ -387,6 +390,24 @@ void THardy_transfer::aggiorna_record(TRectype& rec, const TString_array& lista_
|
|||||||
}
|
}
|
||||||
else if (str == "FISSO")
|
else if (str == "FISSO")
|
||||||
valore = elabora.get(); // valore fisso indicato in configurazione
|
valore = elabora.get(); // valore fisso indicato in configurazione
|
||||||
|
else if (str == "TRADUCI")
|
||||||
|
{
|
||||||
|
const TString80 campo = elabora.get();
|
||||||
|
const TString80 contenuto = get_str(campo);
|
||||||
|
TConfig& ini = config();
|
||||||
|
valore = ini.get(contenuto,campo);
|
||||||
|
}
|
||||||
|
if (str == "_STREXPR") // formato _STREXPR, espressione
|
||||||
|
{
|
||||||
|
TExpression expr(campo_orig.after(','), _strexpr);
|
||||||
|
for (int v = 0; v < expr.numvar(); v++)
|
||||||
|
{
|
||||||
|
const char* varname = expr.varname(v);
|
||||||
|
expr.setvar(v, get_str(varname));
|
||||||
|
}
|
||||||
|
valore = expr.as_string();
|
||||||
|
valore.trim();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
valore = get_str(campo_orig);
|
valore = get_str(campo_orig);
|
||||||
@ -458,7 +479,7 @@ bool THardy_catmerc::trasferisci()
|
|||||||
TConfig& ini = config();
|
TConfig& ini = config();
|
||||||
TString_array lista_campi;
|
TString_array lista_campi;
|
||||||
ini.list_variables(lista_campi, true, "GMC", true);
|
ini.list_variables(lista_campi, true, "GMC", true);
|
||||||
TTable table("%GMC");
|
TTable table("GMC");
|
||||||
TRectype& rec = table.curr();
|
TRectype& rec = table.curr();
|
||||||
THardy_iterator hi(this);
|
THardy_iterator hi(this);
|
||||||
while (++hi)
|
while (++hi)
|
||||||
@ -672,6 +693,204 @@ bool THardy_art::trasferisci()
|
|||||||
return write_enabled();
|
return write_enabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////
|
||||||
|
// THardy_conti
|
||||||
|
///////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
bool THardy_pcon::trasferisci()
|
||||||
|
{
|
||||||
|
if (trasferisci_gruppi())
|
||||||
|
if (trasferisci_conti())
|
||||||
|
return trasferisci_sottoconti();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool THardy_pcon::trasferisci_gruppi()
|
||||||
|
{
|
||||||
|
TString query =
|
||||||
|
"SELECT * "
|
||||||
|
"FROM dbo.Mastri "
|
||||||
|
"WHERE Livello=2";
|
||||||
|
|
||||||
|
TRecordset& recset = create_recordset(query);
|
||||||
|
TConfig& ini = config();
|
||||||
|
|
||||||
|
TString_array lista_campi;
|
||||||
|
ini.list_variables(lista_campi, true, "MASTRI", true);
|
||||||
|
|
||||||
|
TSystemisamfile pcon(LF_PCON);
|
||||||
|
pcon.open(_lock);
|
||||||
|
TRectype& rec = pcon.curr();
|
||||||
|
THardy_iterator hi(this);
|
||||||
|
while (++hi)
|
||||||
|
{
|
||||||
|
// costruisco la chiave gr.co.sc
|
||||||
|
const TString16 key = get_str("IdMastro");
|
||||||
|
const TString& gruppo = key.mid(0,2);
|
||||||
|
rec.zero();
|
||||||
|
rec.put(PCN_GRUPPO, gruppo);
|
||||||
|
aggiorna_record(rec, lista_campi);
|
||||||
|
test_write(pcon);
|
||||||
|
}
|
||||||
|
pcon.close();
|
||||||
|
return write_enabled();
|
||||||
|
}
|
||||||
|
long THardy_clienti::get_codcf(const TString &key)
|
||||||
|
{
|
||||||
|
long codcf = 0;
|
||||||
|
const char first = key[0];
|
||||||
|
const long cod_hardy = atoi(key.mid(2,6));
|
||||||
|
switch (first)
|
||||||
|
{
|
||||||
|
case 'H':
|
||||||
|
{
|
||||||
|
codcf = 130000+cod_hardy;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'P':
|
||||||
|
{
|
||||||
|
codcf = 140000+cod_hardy;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case '0':
|
||||||
|
{
|
||||||
|
const char second = key[1];
|
||||||
|
if (second == '1')
|
||||||
|
codcf = 120000+cod_hardy;
|
||||||
|
else if (second == '0')
|
||||||
|
{
|
||||||
|
const char third = key[2];
|
||||||
|
if (third == '4')
|
||||||
|
codcf = 110000+cod_hardy;
|
||||||
|
else if (third == '3')
|
||||||
|
codcf = 100000+cod_hardy;
|
||||||
|
else
|
||||||
|
codcf = cod_hardy;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
codcf = cod_hardy;
|
||||||
|
}
|
||||||
|
return codcf;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool THardy_clienti::trasferisci()
|
||||||
|
{
|
||||||
|
TString query =
|
||||||
|
"SELECT * "
|
||||||
|
"FROM dbo.Clienti ";
|
||||||
|
|
||||||
|
TRecordset& recset = create_recordset(query);
|
||||||
|
TConfig& ini = config();
|
||||||
|
|
||||||
|
TString_array lista_campi;
|
||||||
|
ini.list_variables(lista_campi, true, "CLIENTI", true);
|
||||||
|
|
||||||
|
TSystemisamfile clienti(LF_CLIFO);
|
||||||
|
clienti.open(_lock);
|
||||||
|
TRectype& rec = clienti.curr();
|
||||||
|
THardy_iterator hi(this);
|
||||||
|
while (++hi)
|
||||||
|
{
|
||||||
|
// costruisco la chiave
|
||||||
|
const TString16 key = get_str("IdConto");
|
||||||
|
long codcf = get_codcf(key);
|
||||||
|
rec.zero();
|
||||||
|
rec.put(CLI_TIPOCF, "C");
|
||||||
|
rec.put(CLI_CODCF, codcf);
|
||||||
|
aggiorna_record(rec, lista_campi);
|
||||||
|
test_write(clienti);
|
||||||
|
}
|
||||||
|
clienti.close();
|
||||||
|
return write_enabled();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool THardy_pcon::trasferisci_conti()
|
||||||
|
{
|
||||||
|
TString query =
|
||||||
|
"SELECT * "
|
||||||
|
"FROM dbo.Mastri "
|
||||||
|
"WHERE Livello=1";
|
||||||
|
|
||||||
|
TRecordset& recset = create_recordset(query);
|
||||||
|
TConfig& ini = config();
|
||||||
|
|
||||||
|
TString_array lista_campi_pcon;
|
||||||
|
ini.list_variables(lista_campi_pcon, true, "MASTRI", true);
|
||||||
|
const TString& esclusi = ini.get("PCON", "PARAMETRI");
|
||||||
|
|
||||||
|
TSystemisamfile pcon(LF_PCON);
|
||||||
|
pcon.open(_lock);
|
||||||
|
TRectype& rec_pcon = pcon.curr();
|
||||||
|
THardy_iterator hi(this);
|
||||||
|
while (++hi)
|
||||||
|
{
|
||||||
|
// costruisco la chiave gr.co
|
||||||
|
const TString16 key = get_str("IdMastro");
|
||||||
|
const int gr = atoi(key.mid(0,2));
|
||||||
|
int co = atoi(key.mid(2,2));
|
||||||
|
const int so = atoi(key.mid(4,3));
|
||||||
|
if ((gr != 0) && (co != 0))
|
||||||
|
{
|
||||||
|
if (esclusi.find(key.mid(0,2))>=0)
|
||||||
|
co = co*10+so;
|
||||||
|
rec_pcon.zero();
|
||||||
|
rec_pcon.put(PCN_GRUPPO, gr);
|
||||||
|
rec_pcon.put(PCN_CONTO, co);
|
||||||
|
aggiorna_record(rec_pcon, lista_campi_pcon);
|
||||||
|
test_write(pcon);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pcon.close();
|
||||||
|
return write_enabled();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool THardy_pcon::trasferisci_sottoconti()
|
||||||
|
{
|
||||||
|
TString query =
|
||||||
|
"SELECT * "
|
||||||
|
"FROM dbo.Conti ";
|
||||||
|
|
||||||
|
TRecordset& recset = create_recordset(query);
|
||||||
|
TConfig& ini = config();
|
||||||
|
|
||||||
|
TString_array lista_campi_pcon, lista_cf;
|
||||||
|
ini.list_variables(lista_campi_pcon, true, "CONTI", true);
|
||||||
|
const TString& esclusi = ini.get("PCON", "PARAMETRI");
|
||||||
|
|
||||||
|
TSystemisamfile pcon(LF_PCON);
|
||||||
|
pcon.open(_lock);
|
||||||
|
TRectype& rec_pcon = pcon.curr();
|
||||||
|
THardy_iterator hi(this);
|
||||||
|
while (++hi)
|
||||||
|
{
|
||||||
|
// costruisco la chiave gr.co.sc
|
||||||
|
const TString16 key = get_str("IdConto");
|
||||||
|
const int gr = atoi(key.mid(1,2));
|
||||||
|
const int co = atoi(key.mid(3,2));
|
||||||
|
const int so = atoi(key.mid(5,3));
|
||||||
|
|
||||||
|
rec_pcon.zero();
|
||||||
|
rec_pcon.put(PCN_GRUPPO, gr);
|
||||||
|
|
||||||
|
if ((gr != 0) && (co != 0) && (so!= 0))
|
||||||
|
{
|
||||||
|
if (esclusi.find(key.mid(1,2))>=0)
|
||||||
|
rec_pcon.put(PCN_CONTO, co*10+so);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rec_pcon.put(PCN_CONTO, co);
|
||||||
|
rec_pcon.put(PCN_SOTTOCONTO, so);
|
||||||
|
}
|
||||||
|
aggiorna_record(rec_pcon, lista_campi_pcon);
|
||||||
|
test_write(pcon);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pcon.close();
|
||||||
|
return write_enabled();
|
||||||
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// TImportazioneHardy_mask
|
// TImportazioneHardy_mask
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
@ -795,6 +1014,22 @@ void TImportazioneHardy_mask::trasferisci()
|
|||||||
book.add(log);
|
book.add(log);
|
||||||
rep_to_print = true;
|
rep_to_print = true;
|
||||||
}
|
}
|
||||||
|
if (go_on && get_bool(F_PCON))
|
||||||
|
{
|
||||||
|
THardy_pcon pc;
|
||||||
|
pc.init(TR("Piano dei conti"), query_header, log);
|
||||||
|
go_on = pc.trasferisci();
|
||||||
|
book.add(log);
|
||||||
|
rep_to_print = true;
|
||||||
|
}
|
||||||
|
if (go_on && get_bool(F_CLI))
|
||||||
|
{
|
||||||
|
THardy_clienti pc;
|
||||||
|
pc.init(TR("Clienti"), query_header, log);
|
||||||
|
go_on = pc.trasferisci();
|
||||||
|
book.add(log);
|
||||||
|
rep_to_print = true;
|
||||||
|
}
|
||||||
|
|
||||||
if (rep_to_print && book.pages() > 0)
|
if (rep_to_print && book.pages() > 0)
|
||||||
book.preview();
|
book.preview();
|
||||||
@ -822,7 +1057,6 @@ TImportazioneHardy_mask::TImportazioneHardy_mask() : TAutomask("hacnv100a")
|
|||||||
TImportazioneHardy_mask::~TImportazioneHardy_mask()
|
TImportazioneHardy_mask::~TImportazioneHardy_mask()
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// TImportazioneHardy
|
// TImportazioneHardy
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
|
@ -184,8 +184,20 @@ public:
|
|||||||
virtual bool trasferisci();
|
virtual bool trasferisci();
|
||||||
};
|
};
|
||||||
|
|
||||||
class THardy_conti : public THardy_transfer
|
class THardy_pcon : public THardy_transfer
|
||||||
{
|
{
|
||||||
|
protected:
|
||||||
|
bool trasferisci_gruppi();
|
||||||
|
bool trasferisci_conti();
|
||||||
|
bool trasferisci_sottoconti();
|
||||||
|
public:
|
||||||
|
virtual bool trasferisci();
|
||||||
|
};
|
||||||
|
|
||||||
|
class THardy_clienti : public THardy_transfer
|
||||||
|
{
|
||||||
|
protected:
|
||||||
|
long get_codcf(const TString& key);
|
||||||
public:
|
public:
|
||||||
virtual bool trasferisci();
|
virtual bool trasferisci();
|
||||||
};
|
};
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
[CPG]
|
[CPG]
|
||||||
CODTAB = IdPagamento
|
CODTAB = IdPagamento
|
||||||
S0 = DsPagamento
|
S0 = DsPagamento
|
||||||
S1=
|
S1 = _TRADUCI,FlTipoScadenza
|
||||||
S3 =
|
S3 =
|
||||||
S4=IdTipoMovimento
|
S4 = _TRADUCI,IdTipoMovimento
|
||||||
S5 =
|
S5 =
|
||||||
I0 =
|
I0 =
|
||||||
I1 =
|
I1 =
|
||||||
@ -13,12 +13,21 @@ I3=
|
|||||||
B0 =
|
B0 =
|
||||||
B1 =
|
B1 =
|
||||||
|
|
||||||
|
//Conversione IdTipoMovimento
|
||||||
[IdTipoMovimento]
|
[IdTipoMovimento]
|
||||||
BO = 9
|
BO = 9
|
||||||
RB = 3
|
RB = 3
|
||||||
RD = 1
|
RD = 1
|
||||||
RI = 8
|
RI = 8
|
||||||
|
|
||||||
|
//Conversione FlTipoScadenza
|
||||||
|
[FlTipoScadenza]
|
||||||
|
0 = F
|
||||||
|
1 = M
|
||||||
|
2 = I
|
||||||
|
3 = I
|
||||||
|
4 = I
|
||||||
|
|
||||||
// tabella codici IVA = AliquoteIVA
|
// tabella codici IVA = AliquoteIVA
|
||||||
[IVA]
|
[IVA]
|
||||||
CODTAB = IdIva
|
CODTAB = IdIva
|
||||||
@ -42,6 +51,7 @@ B2=
|
|||||||
B3 =
|
B3 =
|
||||||
B4 =
|
B4 =
|
||||||
|
|
||||||
|
//conversione per campo
|
||||||
[RComunicazioneIvaVen]
|
[RComunicazioneIvaVen]
|
||||||
1=CD11
|
1=CD11
|
||||||
2=CD12
|
2=CD12
|
||||||
@ -94,14 +104,27 @@ CODART=IdProdotto
|
|||||||
NRIGA = _FISSO,1
|
NRIGA = _FISSO,1
|
||||||
UM = IdUM1
|
UM = IdUM1
|
||||||
|
|
||||||
[CLIFO]
|
[MASTRI]
|
||||||
RAGSOC = _STREXPR,LEFT(TradeName1+" "+TradeName2; 50)
|
DESCR = DsMastro
|
||||||
INDCF = Address
|
|
||||||
|
[CONTI]
|
||||||
|
DESCR = RagioneSociale
|
||||||
|
|
||||||
|
[FlTipoMastro]
|
||||||
|
1 = C
|
||||||
|
5 = F
|
||||||
|
|
||||||
|
[PARAMETRI]
|
||||||
|
PCON=04|05
|
||||||
|
|
||||||
|
[CLIENTI]
|
||||||
|
RAGSOC = RagioneSociale
|
||||||
|
INDCF = Indirizzo
|
||||||
CIVCF =
|
CIVCF =
|
||||||
LOCALITACF =
|
LOCALITACF =
|
||||||
STATOCF = _TAB,%TPS,State,S6
|
STATOCF = _TAB,%TPS,IdIso,S6
|
||||||
COMCF =
|
COMCF =
|
||||||
CAPCF = ZipCode
|
CAPCF = CAP
|
||||||
COFI = CodiceFiscale
|
COFI = CodiceFiscale
|
||||||
STATOPAIV =
|
STATOPAIV =
|
||||||
PAIV = PartitaIVA
|
PAIV = PartitaIVA
|
||||||
@ -116,23 +139,23 @@ SOTTOCRIC =
|
|||||||
TIPOAPER =
|
TIPOAPER =
|
||||||
CODANAGPER =
|
CODANAGPER =
|
||||||
PTEL =
|
PTEL =
|
||||||
TEL = TelNumber
|
TEL = Telefono1
|
||||||
PTEL2 =
|
PTEL2 =
|
||||||
TEL2 =
|
TEL2 = Telefono2
|
||||||
PTEL3 =
|
PTEL3 =
|
||||||
TEL3 =
|
TEL3 = TelCellulare
|
||||||
PFAX =
|
PFAX =
|
||||||
FAX = FaxNumber
|
FAX = TelFax
|
||||||
PTELEX =
|
PTELEX =
|
||||||
TELEX =
|
TELEX =
|
||||||
MAIL = EMailAddress
|
MAIL = EMail
|
||||||
DATANASC =
|
DATANASC =
|
||||||
STATONASC =
|
STATONASC =
|
||||||
COMNASC =
|
COMNASC =
|
||||||
CODSTAT =
|
CODSTAT =
|
||||||
CODABI = ABICode
|
CODABI =
|
||||||
CODCAB = CABCode
|
CODCAB =
|
||||||
NUMCC = CC
|
NUMCC =
|
||||||
IBAN =
|
IBAN =
|
||||||
OCCAS =
|
OCCAS =
|
||||||
STATO =
|
STATO =
|
||||||
@ -144,7 +167,7 @@ RICALT =
|
|||||||
OGGETTI =
|
OGGETTI =
|
||||||
SOSPESO =
|
SOSPESO =
|
||||||
DIRTY =
|
DIRTY =
|
||||||
REFERENTE = Reference
|
REFERENTE = Referente
|
||||||
VALINTRA =
|
VALINTRA =
|
||||||
|
|
||||||
[CFVEN]
|
[CFVEN]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user