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 <tabutil.h>
|
||||
|
||||
#include <pconti.h>
|
||||
#include <clifo.h>
|
||||
|
||||
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")
|
||||
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
|
||||
valore = get_str(campo_orig);
|
||||
@ -458,7 +479,7 @@ bool THardy_catmerc::trasferisci()
|
||||
TConfig& ini = config();
|
||||
TString_array lista_campi;
|
||||
ini.list_variables(lista_campi, true, "GMC", true);
|
||||
TTable table("%GMC");
|
||||
TTable table("GMC");
|
||||
TRectype& rec = table.curr();
|
||||
THardy_iterator hi(this);
|
||||
while (++hi)
|
||||
@ -672,6 +693,204 @@ bool THardy_art::trasferisci()
|
||||
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
|
||||
///////////////////////////////////////////////////////////
|
||||
@ -795,6 +1014,22 @@ void TImportazioneHardy_mask::trasferisci()
|
||||
book.add(log);
|
||||
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)
|
||||
book.preview();
|
||||
@ -822,7 +1057,6 @@ TImportazioneHardy_mask::TImportazioneHardy_mask() : TAutomask("hacnv100a")
|
||||
TImportazioneHardy_mask::~TImportazioneHardy_mask()
|
||||
{ }
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// TImportazioneHardy
|
||||
///////////////////////////////////////////////////////////
|
||||
|
@ -184,8 +184,20 @@ public:
|
||||
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:
|
||||
virtual bool trasferisci();
|
||||
};
|
||||
|
157
ha/hacnv100a.ini
157
ha/hacnv100a.ini
@ -1,47 +1,57 @@
|
||||
// tabella condizioni di pagamento = Pagamenti
|
||||
[CPG]
|
||||
CODTAB=IdPagamento
|
||||
S0=DsPagamento
|
||||
S1=
|
||||
S3=
|
||||
S4=IdTipoMovimento
|
||||
S5=
|
||||
I0=
|
||||
I1=
|
||||
I2=
|
||||
I3=
|
||||
B0=
|
||||
B1=
|
||||
CODTAB = IdPagamento
|
||||
S0 = DsPagamento
|
||||
S1 = _TRADUCI,FlTipoScadenza
|
||||
S3 =
|
||||
S4 = _TRADUCI,IdTipoMovimento
|
||||
S5 =
|
||||
I0 =
|
||||
I1 =
|
||||
I2 =
|
||||
I3 =
|
||||
B0 =
|
||||
B1 =
|
||||
|
||||
//Conversione IdTipoMovimento
|
||||
[IdTipoMovimento]
|
||||
BO=9
|
||||
RB=3
|
||||
RD=1
|
||||
RI=8
|
||||
BO = 9
|
||||
RB = 3
|
||||
RD = 1
|
||||
RI = 8
|
||||
|
||||
//Conversione FlTipoScadenza
|
||||
[FlTipoScadenza]
|
||||
0 = F
|
||||
1 = M
|
||||
2 = I
|
||||
3 = I
|
||||
4 = I
|
||||
|
||||
// tabella codici IVA = AliquoteIVA
|
||||
[IVA]
|
||||
CODTAB=IdIva
|
||||
S0=DsIvaEstesa
|
||||
S1=
|
||||
S2=
|
||||
S3=
|
||||
S5=
|
||||
S6=
|
||||
S7=
|
||||
S8=
|
||||
S9=
|
||||
S10=
|
||||
S11=
|
||||
I0=
|
||||
I1=
|
||||
R0=Aliquota
|
||||
B0=
|
||||
B1=
|
||||
B2=
|
||||
B3=
|
||||
B4=
|
||||
CODTAB = IdIva
|
||||
S0 = DsIvaEstesa
|
||||
S1 =
|
||||
S2 =
|
||||
S3 =
|
||||
S5 =
|
||||
S6 =
|
||||
S7 =
|
||||
S8 =
|
||||
S9 =
|
||||
S10 =
|
||||
S11 =
|
||||
I0 =
|
||||
I1 =
|
||||
R0 = Aliquota
|
||||
B0 =
|
||||
B1 =
|
||||
B2 =
|
||||
B3 =
|
||||
B4 =
|
||||
|
||||
//conversione per campo
|
||||
[RComunicazioneIvaVen]
|
||||
1=CD11
|
||||
2=CD12
|
||||
@ -56,13 +66,13 @@ B4=
|
||||
|
||||
// tabella gruppi merceologici = CategorieMerc
|
||||
[GMC]
|
||||
CODTAB=IdCategoria
|
||||
S0=DsCategoria
|
||||
CODTAB = IdCategoria
|
||||
S0 = DsCategoria
|
||||
|
||||
// tabella classi fiscali = CategorieFisc
|
||||
[ASF]
|
||||
CODTAB=IdCategoria
|
||||
S0=DsCategoria
|
||||
CODTAB = IdCategoria
|
||||
S0 = DsCategoria
|
||||
|
||||
// tabella Banche ABI = Banche
|
||||
[ABI]
|
||||
@ -72,36 +82,49 @@ S0=DsBanca
|
||||
S0=DsDocumento
|
||||
|
||||
[CAUCONT]
|
||||
CODCAUS=IdCausale
|
||||
DESCR=DsCausaleEstesa
|
||||
CODCAUS = IdCausale
|
||||
DESCR = DsCausaleEstesa
|
||||
|
||||
[CAUMAG]
|
||||
CODTAB=IdCausale
|
||||
S0=DsCausaleEstesa
|
||||
CODTAB = IdCausale
|
||||
S0 = DsCausaleEstesa
|
||||
|
||||
[UM]
|
||||
CODTAB=IdUm
|
||||
S0=DsUm
|
||||
CODTAB = IdUm
|
||||
S0 = DsUm
|
||||
|
||||
[ANAMAG]
|
||||
CODART=IdProdotto
|
||||
DESCR=DsProdotto
|
||||
CODIVA=IdIva
|
||||
GRMERC=IdCategoria
|
||||
CODART = IdProdotto
|
||||
DESCR = DsProdotto
|
||||
CODIVA = IdIva
|
||||
GRMERC = IdCategoria
|
||||
|
||||
[UMART]
|
||||
CODART=IdProdotto
|
||||
NRIGA=_FISSO,1
|
||||
UM=IdUM1
|
||||
CODART = IdProdotto
|
||||
NRIGA = _FISSO,1
|
||||
UM = IdUM1
|
||||
|
||||
[CLIFO]
|
||||
RAGSOC = _STREXPR,LEFT(TradeName1+" "+TradeName2; 50)
|
||||
INDCF = Address
|
||||
[MASTRI]
|
||||
DESCR = DsMastro
|
||||
|
||||
[CONTI]
|
||||
DESCR = RagioneSociale
|
||||
|
||||
[FlTipoMastro]
|
||||
1 = C
|
||||
5 = F
|
||||
|
||||
[PARAMETRI]
|
||||
PCON=04|05
|
||||
|
||||
[CLIENTI]
|
||||
RAGSOC = RagioneSociale
|
||||
INDCF = Indirizzo
|
||||
CIVCF =
|
||||
LOCALITACF =
|
||||
STATOCF = _TAB,%TPS,State,S6
|
||||
STATOCF = _TAB,%TPS,IdIso,S6
|
||||
COMCF =
|
||||
CAPCF = ZipCode
|
||||
CAPCF = CAP
|
||||
COFI = CodiceFiscale
|
||||
STATOPAIV =
|
||||
PAIV = PartitaIVA
|
||||
@ -116,23 +139,23 @@ SOTTOCRIC =
|
||||
TIPOAPER =
|
||||
CODANAGPER =
|
||||
PTEL =
|
||||
TEL = TelNumber
|
||||
TEL = Telefono1
|
||||
PTEL2 =
|
||||
TEL2 =
|
||||
TEL2 = Telefono2
|
||||
PTEL3 =
|
||||
TEL3 =
|
||||
TEL3 = TelCellulare
|
||||
PFAX =
|
||||
FAX = FaxNumber
|
||||
FAX = TelFax
|
||||
PTELEX =
|
||||
TELEX =
|
||||
MAIL = EMailAddress
|
||||
MAIL = EMail
|
||||
DATANASC =
|
||||
STATONASC =
|
||||
COMNASC =
|
||||
CODSTAT =
|
||||
CODABI = ABICode
|
||||
CODCAB = CABCode
|
||||
NUMCC = CC
|
||||
CODABI =
|
||||
CODCAB =
|
||||
NUMCC =
|
||||
IBAN =
|
||||
OCCAS =
|
||||
STATO =
|
||||
@ -144,7 +167,7 @@ RICALT =
|
||||
OGGETTI =
|
||||
SOSPESO =
|
||||
DIRTY =
|
||||
REFERENTE = Reference
|
||||
REFERENTE = Referente
|
||||
VALINTRA =
|
||||
|
||||
[CFVEN]
|
||||
|
Loading…
x
Reference in New Issue
Block a user