Patch level : 10.0
Files correlati : fe0.exe fetbcon.msk Ricompilazione Demo : [ ] Commento : Aggiunto controllo per evitare loop nella gerarchia dei contratti git-svn-id: svn://10.65.10.50/branches/R_10_00@22547 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
e2adc60990
commit
b9356d7447
@ -201,14 +201,19 @@ int TContratto::modalita_pagamento() const
|
||||
|
||||
const TString& TContratto::codice_base() const
|
||||
{
|
||||
TString80 c = codice();
|
||||
TString80 p = codice_padre();
|
||||
while (p.full())
|
||||
TString80 c = codice(), p = codice_padre();
|
||||
if (p.full())
|
||||
{
|
||||
c = p;
|
||||
TString80 key = chiave().left(7);
|
||||
key << p;
|
||||
p = cache().get("&CON", key, "S1");
|
||||
TAssoc_array antiloop;
|
||||
antiloop.add(c);
|
||||
while (p.full() && !antiloop.is_key(p)) // Verifico loop assurdo
|
||||
{
|
||||
c = p;
|
||||
antiloop.add(c);
|
||||
TString80 key = chiave().left(7);
|
||||
key << p;
|
||||
p = cache().get("&CON", key, "S1");
|
||||
}
|
||||
}
|
||||
return get_tmp_string() = c;
|
||||
}
|
||||
@ -398,11 +403,6 @@ TExclusion_mode TDati_rilevanti_array::add(const TRectype& alleg, bool send_all,
|
||||
if (!send_all && ignora != em_incluso)
|
||||
return ignora;
|
||||
|
||||
#ifdef DBG
|
||||
if (alleg.get_long(ALL_CODCF) == 36)
|
||||
int cazzone = 1;
|
||||
#endif
|
||||
|
||||
// Creo un nuovo record
|
||||
_data.add(alleg);
|
||||
return em_incluso;
|
||||
@ -468,13 +468,13 @@ void TDati_rilevanti_array::add(TArray& fatture, TArray& note, bool send_all, TL
|
||||
}
|
||||
|
||||
// Aggiunge fatture
|
||||
FOR_EACH_ARRAY_ITEM(fatture, f, pfatt)
|
||||
FOR_EACH_ARRAY_ITEM(fatture, nf, pfatt)
|
||||
{
|
||||
const TRectype& fatt = *(const TRectype*)pfatt;
|
||||
add(fatt, send_all, log);
|
||||
}
|
||||
// Aggiunge note
|
||||
FOR_EACH_ARRAY_ITEM(note, n, pnot)
|
||||
FOR_EACH_ARRAY_ITEM(note, nn, pnot)
|
||||
{
|
||||
const TRectype& nota = *(const TRectype*)pnot;
|
||||
add(nota, send_all, log);
|
||||
|
@ -101,6 +101,8 @@ BEGIN
|
||||
OUTPUT F_CON_PADRE CODTAB[8,]
|
||||
//OUTPUT F_CON_DESPADRE S0
|
||||
CHECKTYPE NORMAL
|
||||
STR_EXPR #F_CON_PADRE!=#F_CON_CONTRATTO
|
||||
WARNING "Il codice del contratto principale deve essere diverso!"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
|
Loading…
x
Reference in New Issue
Block a user