Patch level :10.0

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
nuovo cliente in upload


git-svn-id: svn://10.65.10.50/branches/R_10_00@21555 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2011-02-01 13:51:55 +00:00
parent 8ce29efe91
commit ab2bb0bef6

View File

@ -342,16 +342,12 @@ void TUpload2Campo::check_magazzino(const TString& codmag_age, TLog_report& log)
}
}
//SU non è un tipo record di qualche utilità
void TUpload2Campo::elabora_SU(THardy_upload_recordset& recset, TLog_report& log)
{
const TString& cod_term = recset.get("CodiceTerminale").as_string();
const TString& cod_age = recset.get(AGE_CODAGE).as_string();
const TString& descr_age = recset.get(AGE_RAGSOC).as_string();
TString msg;
msg << "Scartati dati agente " << cod_term << " " << descr_age;
log.log(0, msg);
}
//elabora clienti e loro variazioni; viene comunque eseguita per prima perchè i record VC vengono messi all'inizio
void TUpload2Campo::elabora_VC(THardy_upload_recordset& recset, TLog_report& log)
{
//dati dal recordset di upload
@ -382,6 +378,11 @@ void TUpload2Campo::elabora_VC(THardy_upload_recordset& recset, TLog_report& log
file_clifo.put(CLI_TIPOCF, 'C');
file_clifo.put(CLI_CODCF, codcf);
file_clifo.write();
//aggiunge il cliente nuovo ricodificato all'array dei nuovi clienti in modo da ricordarsi chi era..
//..quando loritroverà nei record di tipo TF,RF,SI
const TString& str_new_codcf = recset.get("CodiceCliente").as_string();
_nuovi_clienti.add(str_new_codcf, real(codcf));
}
//il cliente, se non nuovo, deve esistere!
@ -642,7 +643,19 @@ void TUpload2Campo::elabora_TF(THardy_upload_recordset& recset, TLog_report& log
//2d) cliente e campi collegati via cli2doc()
doc.put(DOC_TIPOCF, "C");
const long codcf = recset.get(DOC_CODCF).as_int();
//se il cliente è nuovo, ovvero aggiunto in un record di tipo VC precedentemente letto,..
//..deve stabilire quale è il suo codcf campesco già determinato
long codcf = 0L;
const TString& str_codcf = recset.get(DOC_CODCF).as_string();
if (str_codcf.find('*' >= 0))
{
const real* ptr = (const real*)_nuovi_clienti.objptr(str_codcf);
codcf = ptr ? ptr->integer() : 0L;
}
else
codcf = atol(str_codcf);
TToken_string key_clifo;
key_clifo.add("C");
key_clifo.add(codcf);