Patch level :10.0 410

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
fatto funzionare il daconto aconto nella stampa bilancio analitico (stampa probabilmente usata 2 volte nella storia e solo da HK)


git-svn-id: svn://10.65.10.50/trunk@19192 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2009-08-06 09:13:29 +00:00
parent 2112dfe99d
commit c0e5b29823
2 changed files with 37 additions and 12 deletions

View File

@ -500,6 +500,7 @@ class TRecordset_sezioni_contrapposte : public TRecordset
TDate _da_data, _a_data; TDate _da_data, _a_data;
word _tipimov; word _tipimov;
bool _movimentati, _nonnulli; bool _movimentati, _nonnulli;
TString _daconto, _aconto;
TArray _attivita, _passivita, _costi, _ricavi; // Elenco di saldi contrapposti TArray _attivita, _passivita, _costi, _ricavi; // Elenco di saldi contrapposti
TRecnotype _pos; TRecnotype _pos;
@ -528,7 +529,8 @@ public:
virtual const TVariant& get(const char* field) const; virtual const TVariant& get(const char* field) const;
void set_filter(char piano, const char* costo, const char* commessa, const char* fase, void set_filter(char piano, const char* costo, const char* commessa, const char* fase,
const TDate& dal, const TDate& al, word tipimov, bool movimentati, bool nonnulli); const TDate& dal, const TDate& al, word tipimov, bool movimentati, bool nonnulli,
const TString& daconto, const TString& aconto);
char tipo_piano() const { return _tipo_piano; } char tipo_piano() const { return _tipo_piano; }
TRecordset_sezioni_contrapposte(char tipo_piano) : _tipo_piano(tipo_piano) { } TRecordset_sezioni_contrapposte(char tipo_piano) : _tipo_piano(tipo_piano) { }
}; };
@ -550,10 +552,9 @@ bool TRecordset_sezioni_contrapposte::move_to(TRecnotype pos)
return _pos < items(); return _pos < items();
} }
void TRecordset_sezioni_contrapposte::set_filter(char piano, const char* costo, void TRecordset_sezioni_contrapposte::set_filter(char piano, const char* costo, const char* commessa, const char* fase,
const char* commessa, const char* fase, const TDate& dal, const TDate& al, word tipimov, bool movimentati,
const TDate& dal, const TDate& al, bool nonnulli, const TString& daconto, const TString& aconto)
word tipimov, bool movimentati, bool nonnulli)
{ {
_tipo_piano = piano; _tipo_piano = piano;
@ -561,13 +562,16 @@ void TRecordset_sezioni_contrapposte::set_filter(char piano, const char* costo,
_a_data = al; _a_data = al;
_tipimov = tipimov; _tipimov = tipimov;
_movimentati = false; // movimentati; _movimentati = movimentati;
_nonnulli = false; // nonnulli; _nonnulli = nonnulli;
_filter.reset(); _filter.reset();
_filter.set_costo(costo); _filter.set_costo(costo);
_filter.set_commessa(commessa); _filter.set_commessa(commessa);
_filter.set_fase(fase); _filter.set_fase(fase);
_daconto = daconto;
_aconto = aconto;
} }
TArray& TRecordset_sezioni_contrapposte::conti(int indbil) TArray& TRecordset_sezioni_contrapposte::conti(int indbil)
@ -685,7 +689,20 @@ void TRecordset_sezioni_contrapposte::requery()
// Crea recordset del piano dei conti appropriato // Crea recordset del piano dei conti appropriato
TString query = "USE PCON"; TString query = "USE PCON";
if (_tipo_piano == 'A') if (_tipo_piano == 'A')
{
query << "ANA"; query << "ANA";
if (_daconto.full())
query << "\nFROM CODCONTO=" << _daconto;
if (_aconto.full())
query << "\nTO CODCONTO=" << _aconto;
}
else //piano 'C' (cazzuto)
{
if (_daconto.full())
query << "\nFROM GRUPPO=" << _daconto.left(3) << " CONTO=" << _daconto.mid(3,3) << " SOTTOCONTO=" << _daconto.mid(6,6);
if (_aconto.full())
query << "\nTO GRUPPO=" << _aconto.left(3) << " CONTO=" << _aconto.mid(3,3) << " SOTTOCONTO=" << _aconto.mid(6,6);
}
TISAM_recordset pconana(query); TISAM_recordset pconana(query);
TProgind pi(pconana.items(), TR("Elaborazione conti"), true, true); TProgind pi(pconana.items(), TR("Elaborazione conti"), true, true);
@ -931,8 +948,18 @@ void TReport_bilancio_sezioni_contrapposte::set_filter(const TMask& m, int row)
const TString80 commessa = curr.get(RMOVANA_CODCMS); const TString80 commessa = curr.get(RMOVANA_CODCMS);
const TString16 fase = curr.get(RMOVANA_CODFASE); const TString16 fase = curr.get(RMOVANA_CODFASE);
//c'e' un range di conti da considerare?
const short dlg_da = tipo == 'C' ? F_PDC1_INI : F_PAN1_INI;
const short dlg_al = tipo == 'C' ? F_PDC1_FIN : F_PAN1_FIN;
TString daconto, aconto;
for (int i = 0; i < 4 && m.id2pos(dlg_da+i) > 0; i++)
{
daconto << m.get(dlg_da+i);
aconto << m.get(dlg_al+i);
}
TRecordset_sezioni_contrapposte* recset = new TRecordset_sezioni_contrapposte(tipo); TRecordset_sezioni_contrapposte* recset = new TRecordset_sezioni_contrapposte(tipo);
recset->set_filter(tipo, costo, commessa, fase, dal, al, tipimov, movimentati, nonnulli); recset->set_filter(tipo, costo, commessa, fase, dal, al, tipimov, movimentati, nonnulli, daconto, aconto);
TAnal_report::set_recordset(recset); TAnal_report::set_recordset(recset);
}; };

View File

@ -73,9 +73,7 @@ RADIOBUTTON F_BILANCIO 1 28
BEGIN BEGIN
PROMPT 2 4 "@bBilancio" PROMPT 2 4 "@bBilancio"
ITEM "C|A sezioni contrapposte" ITEM "C|A sezioni contrapposte"
MESSAGE CLEAR,4@|ENABLE,3@
ITEM "V|Di verifica" ITEM "V|Di verifica"
MESSAGE ENABLE,4@|CLEAR,3@
END END
LIST F_TIPOSTAMPA 11 LIST F_TIPOSTAMPA 11