Patch level :4.0 606
Files correlati :ca3.exe Ricompilazione Demo : [ ] Commento :effettuato il sort in ordine alfabetico delle commesse e delle fasi nella stampa bilancio di commessa git-svn-id: svn://10.65.10.50/trunk@14844 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
a0e8995ee5
commit
2432323f6f
@ -301,6 +301,38 @@ TAssoc_array& TPrint_bilancio_cms_recordset::get_row(TAssoc_array& cms, const ch
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int righe_compare(const TObject** o1, const TObject** o2)
|
||||||
|
{
|
||||||
|
TAssoc_array& a1 = *(TAssoc_array*)*o1;
|
||||||
|
TAssoc_array& a2 = *(TAssoc_array*)*o2;
|
||||||
|
|
||||||
|
int cmp = 0;
|
||||||
|
|
||||||
|
const int l1 = atoi(*(TString*)a1.objptr("LEVEL"));
|
||||||
|
const int l2 = atoi(*(TString*)a2.objptr("LEVEL"));
|
||||||
|
cmp = l1 - l2;
|
||||||
|
if (cmp == 0)
|
||||||
|
{
|
||||||
|
const TString& c1 = *(TString*)a1.objptr("CODCMS");
|
||||||
|
const TString& c2 = *(TString*)a2.objptr("CODCMS");
|
||||||
|
cmp = c1.compare(c2);
|
||||||
|
if (cmp == 0)
|
||||||
|
{
|
||||||
|
const TString& f1 = *(TString*)a1.objptr("FASE");
|
||||||
|
const TString& f2 = *(TString*)a2.objptr("FASE");
|
||||||
|
cmp = f1.compare(f2);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
const int z1 = c1.starts_with("DETR_");
|
||||||
|
const int z2 = c2.starts_with("DETR_");
|
||||||
|
if (z1 || z2)
|
||||||
|
cmp = z1 - z2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return cmp;
|
||||||
|
}
|
||||||
|
|
||||||
void TPrint_bilancio_cms_recordset::requery()
|
void TPrint_bilancio_cms_recordset::requery()
|
||||||
{
|
{
|
||||||
@ -383,7 +415,7 @@ void TPrint_bilancio_cms_recordset::requery()
|
|||||||
const int anno = saldana.get(SALDANA_ANNO).as_int();
|
const int anno = saldana.get(SALDANA_ANNO).as_int();
|
||||||
if (anno < _anno)
|
if (anno < _anno)
|
||||||
{
|
{
|
||||||
TString cazzo_cod; cazzo_cod.format("DETR_%02d", _anno - 1);
|
TString16 cazzo_cod; cazzo_cod.format("DETR_%04d", _anno - 1);
|
||||||
TString cazzo_descr = "DETRAZIONE PER COMPETENZA ";
|
TString cazzo_descr = "DETRAZIONE PER COMPETENZA ";
|
||||||
cazzo_descr << (_anno - 1);
|
cazzo_descr << (_anno - 1);
|
||||||
TAssoc_array& riga_array = get_row(cms[indice], CMS_DEL_CAZZO, indice, cazzo_cod,
|
TAssoc_array& riga_array = get_row(cms[indice], CMS_DEL_CAZZO, indice, cazzo_cod,
|
||||||
@ -412,9 +444,10 @@ void TPrint_bilancio_cms_recordset::requery()
|
|||||||
else
|
else
|
||||||
_righe.add(obj); // Copia nella destinazione la riga corrente e la toglie dall'originale
|
_righe.add(obj); // Copia nella destinazione la riga corrente e la toglie dall'originale
|
||||||
}
|
}
|
||||||
if (cazzo_cms != NULL)
|
if (cazzo_cms != NULL)
|
||||||
_righe.add(cazzo_cms);
|
_righe.add(cazzo_cms);
|
||||||
} //for(int...
|
} //for(int...
|
||||||
|
_righe.sort(righe_compare); //sorting delle commesse
|
||||||
}
|
}
|
||||||
|
|
||||||
const TVariant& TPrint_bilancio_cms_recordset::get(unsigned int column) const
|
const TVariant& TPrint_bilancio_cms_recordset::get(unsigned int column) const
|
||||||
|
@ -269,15 +269,15 @@ bool TCRPA_report::generate_columns (TString_array& codici, TString_array& testa
|
|||||||
TReport_section& head = section('H', j);
|
TReport_section& head = section('H', j);
|
||||||
if (head.items() > 0)
|
if (head.items() > 0)
|
||||||
{
|
{
|
||||||
TString ps;
|
TString ps(256);
|
||||||
|
ps = "MESSAGE ";
|
||||||
//i campi dei totali da resettare sono tanti quante le colonne generate
|
//i campi dei totali da resettare sono tanti quante le colonne generate
|
||||||
//k=0 per includere la colonna 69!!! usata nel caso i ricavi siano solo di livello 1 (depth=1)
|
//k=0 per includere la colonna 69!!! usata nel caso i ricavi siano solo di livello 1 (depth=1)
|
||||||
for (int k = 0; k <= codici.items(); k++)
|
for (int k = 0; k <= codici.items(); k++)
|
||||||
{
|
{
|
||||||
if (ps.full())
|
if (k > 0)
|
||||||
ps << "\n";
|
ps << '|';
|
||||||
ps << "MESSAGE RESET,F";
|
ps << "RESET,F" << head.level() << '.' << (k+model_id);
|
||||||
ps << head.level() << '.' << (k+model_id);
|
|
||||||
}
|
}
|
||||||
head.set_prescript(ps);
|
head.set_prescript(ps);
|
||||||
}
|
}
|
||||||
@ -294,7 +294,9 @@ bool TCRPA_report::generate_columns (TString_array& codici, TString_array& testa
|
|||||||
else
|
else
|
||||||
offset_and_fill_columns(foot, codici, model_id);
|
offset_and_fill_columns(foot, codici, model_id);
|
||||||
}
|
}
|
||||||
|
#ifdef DBG
|
||||||
|
save("cazzone.rep");
|
||||||
|
#endif
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user