Allungato campo numero di registrazione da 5 a 7 caratteri in maschera cg2100p.uml

Reso più efficiente record array di righe partita: ora non contuene più sempre 10000 elementi per lo più nulli

git-svn-id: svn://10.65.10.50/branches/R_10_00@22710 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-07-19 12:28:04 +00:00
parent 781a2244dc
commit f72e3cbb07
3 changed files with 30 additions and 5 deletions

View File

@ -140,7 +140,7 @@ BEGIN
ITEM "Descrizione@20"
ITEM "Importo@16"
ITEM "Importo Valuta@16"
ITEM "Num. op. "
ITEM "Num. op."
ITEM "Data op.@10"
ITEM "Num. doc."
ITEM "Prot. IVA"
@ -239,7 +239,7 @@ BEGIN
PROMPT 41 2 "Data documento "
END
NUMBER 108 5
NUMBER 108 7
BEGIN
PROMPT 1 3 "Numero operaz. "
END

View File

@ -1077,6 +1077,23 @@ TImporto TRiga_partite::calcola_pagato_al(bool valuta,const TDate& al, const TDa
return pagato;
}
///////////////////////////////////////////////////////////
// TRiga_partite_array
///////////////////////////////////////////////////////////
// Filtra le righe saldo per non creare array di 9999 elementi nulli!
int TRiga_partite_array::add_row(TRectype* row)
{
if (row == NULL)
return -1;
if (row->get_int(PART_NRIGA) >= TPartita::UNASSIGNED)
{
delete row;
return -1;
}
return TRecord_array::add_row(row);
}
///////////////////////////////////////////////////////////
// TPartita
///////////////////////////////////////////////////////////
@ -1086,11 +1103,11 @@ char TPartita::_for_align = ' ';
bool TPartita::_diffcam_always = false;
TPartita::TPartita(const TBill& clifo, int anno, const char* num)
: _part(LF_PARTITE, PART_NRIGA), _unassigned(LF_PAGSCA, PAGSCA_NRIGP), _align(' ')
: _unassigned(LF_PAGSCA, PAGSCA_NRIGP), _align(' ')
{ read(clifo, anno, num); }
TPartita::TPartita(const TRectype& r)
: _part(LF_PARTITE, PART_NRIGA), _unassigned(LF_PAGSCA, PAGSCA_NRIGP), _align(' ')
: _unassigned(LF_PAGSCA, PAGSCA_NRIGP), _align(' ')
{
TBill clifo; clifo.get(r);
if (clifo.gruppo() == 0 && r.num() == LF_PARTITE)

View File

@ -212,13 +212,21 @@ public:
class TPartite_array;
class TRiga_partite_array : public TRecord_array
{
protected:
virtual int add_row(TRectype* row); // Filtra le righe saldo!
public:
TRiga_partite_array() : TRecord_array(LF_PARTITE, PART_NRIGA) {}
};
class TPartita : public TSortable
{
TBill _conto;
int _anno;
TString16 _num;
TRecord_array _part;
TRiga_partite_array _part;
TRecord_array _unassigned;
char _align; // current _num alignment