Patch level :10.0

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :aggiunta la possibilità di scegliere se includere o meno i documenti nella stampa bilancio di commessa e corretto errore sulla query dei docs stessi (segnalazioni dell'amato fuhrer del 29/05/09)


git-svn-id: svn://10.65.10.50/trunk@18968 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2009-05-29 15:14:40 +00:00
parent 962492b999
commit 920bf7f880
4 changed files with 52 additions and 22 deletions

View File

@ -6,7 +6,7 @@ ENDPAGE
PAGE "Stampa bilancio commessa" 0 2 0 0
GROUPBOX DLG_NULL 76 4
GROUPBOX DLG_NULL 76 5
BEGIN
PROMPT 0 1 ""
END
@ -38,25 +38,30 @@ END
BOOLEAN F_VITAINTERA
BEGIN
PROMPT 1 3 "Inclusi esercizi successivi (vita intera)"
PROMPT 1 3 "Includere esercizi successivi (vita intera)"
MESSAGE FALSE ENABLE,F_FINE_ES
MESSAGE TRUE CLEAR,F_FINE_ES
END
BOOLEAN F_INCLUDE_DOCUMENTI
BEGIN
PROMPT 1 4 "Includere documenti non contabilizzati (di tipo ordine)"
END
DATE F_DATASTAMPA
BEGIN
PROMPT 2 5 "Data stampa "
PROMPT 2 6 "Data stampa "
FLAGS "A"
END
GROUPBOX DLG_NULL 76 8
GROUPBOX DLG_NULL 76 7
BEGIN
PROMPT 0 6 "@bParametri"
PROMPT 0 7 "@bParametri"
END
LISTBOX F_TIPOSTAMPA 1 30
BEGIN
PROMPT 1 7 "Stampa "
PROMPT 1 8 "Stampa "
ITEM "0|Normale"
MESSAGE CLEAR,F_FASE|CLEAR,F_CDC
ITEM "1|Dettaglia per Fase"
@ -73,12 +78,12 @@ END
STRING F_FASE 10
BEGIN
PROMPT 2 8 "Fase "
PROMPT 2 9 "Fase "
END
STRING F_CDC 20
BEGIN
PROMPT 2 9 "CdC "
PROMPT 2 10 "CdC "
USE LF_CDC
INPUT CODCOSTO F_CDC
DISPLAY "Codice centro di costo" CODCOSTO
@ -99,7 +104,7 @@ END
BOOLEAN F_TIPODETR
BEGIN
PROMPT 1 10 "Utilizzare consuntivi per le detrazioni "
PROMPT 1 11 "Utilizzare consuntivi per le detrazioni "
END
GROUPBOX F_PRE0 76 5
@ -133,7 +138,7 @@ PAGE "Istruzioni" 0 2 0 0
GROUPBOX DLG_NULL 78 9
BEGIN
PROMPT 1 1 "@bUtilizzo campi dalla/alla data ed esercizio"
PROMPT 1 1 "@bUtilizzo campi data Inizio/Fine ed esercizio"
END
TEXT -1
@ -171,6 +176,21 @@ BEGIN
PROMPT 1 8 " a quello selezionato."
END
GROUPBOX DLG_NULL 78 9
BEGIN
PROMPT 1 10 "@bUtilizzo Parametri"
END
TEXT -1
BEGIN
PROMPT 1 11 "3) Includere documenti equivale a considerare nel calcolo anche i documenti"
END
TEXT -1
BEGIN
PROMPT 1 12 " non contabilizzati di tipo ordine con data inclusa nell'intervallo selezionato"
END
ENDPAGE
ENDMASK

View File

@ -1298,6 +1298,8 @@ void TPrint_saldana_recordset::parse_rmovana(TAssoc_array* cms, const TDate& dat
}
}
break;
default:
break;
}
query << "JOIN MOVANA INTO NUMREG==NUMREG\nFROM DATACOMP=#MINDATACOMP\nTO DATACOMP=#DATACALCOLO";
@ -1351,7 +1353,8 @@ int TPrint_saldana_recordset::numerazioni_ordini(TString_array& num_ordini, TStr
for (bool ok = num_recset.move_first(); ok; ok = num_recset.move_next()) //giro sui vari tipi numerazione
{
const TString4 codtab = num_recset.get("CODTAB").as_string();
const TCodice_numerazione& numerazione = cached_numerazione(codtab);
const TCodice_numerazione numerazione(codtab);
for (int t = numerazione.ntipi_doc() - 1; t >= 0; t--)
{
const TString& tipo_doc = numerazione.tipo_doc(t);
@ -1392,33 +1395,35 @@ void TPrint_saldana_recordset::parse_rdoc(TAssoc_array* cms, const TDate& datain
case 1:
case 4:
if (_fase.full())
query << "&&(FASCMS=\"" << _fase << "\")\n";
query << "&&(FASCMS=\"" << _fase << "\")";
break;
case 2:
case 8:
if (_cdc.full())
query << "&&(CODCOSTO=\"" << _cdc << "\")\n";
query << "&&(CODCOSTO=\"" << _cdc << "\")";
break;
case 3:
if (_fase.full() || _cdc.full())
{
if (_fase.full() && _cdc.full())
query << "&&(FASCMS=\"" << _fase << "\")&&(CODCOSTO=\"" << _cdc << "\")\n";
query << "&&(FASCMS=\"" << _fase << "\")&&(CODCOSTO=\"" << _cdc << "\")";
else
{
if (_fase.full())
query << "&&(FASCMS=\"" << _fase << "\")\n";
query << "&&(FASCMS=\"" << _fase << "\")";
else
query << "&&(CODCOSTO=\"" << _cdc << "\")\n";
query << "&&(CODCOSTO=\"" << _cdc << "\")";
}
}
break;
default:
break;
}
query << "JOIN DOC INTO PROVV=='D' ANNO==ANNO CODNUM==CODNUM\nFROM PROVV='D' ANNO=#ANNO CODNUM=#CODNUM\nTO PROVV='D' ANNO=#ANNO CODNUM=#CODNUM";
query << "\nJOIN DOC INTO PROVV=='D' ANNO==ANNO CODNUM==CODNUM\nFROM PROVV='D' ANNO=#ANNO CODNUM=#CODNUM\nTO PROVV='D' ANNO=#ANNO CODNUM=#CODNUM";
TISAM_recordset recset(query);
recset.set_var("#ANNO", (long)_datacalcolo.year());
recset.set_var("#CODNUM", codnum);
recset.set_var("#CODNUM", TVariant(codnum));
recset.set_var("#DATAINIES", datainiesc);
recset.set_var("#DATACALCOLO", _datacalcolo);
@ -1474,8 +1479,8 @@ void TPrint_saldana_recordset::parse_rdoc(TAssoc_array* cms, const TDate& datain
if (!rigadoc.is_evasa())
{
//trasforma tutte le righe a valore, assegnando al prezzo il valore del residuo
const real valore = rigadoc.valore(true);
const real residuo = rigadoc.valore(false);
const real valore = rigadoc.valore(true, AUTO_DECIMALS);
const real residuo = rigadoc.valore(false, AUTO_DECIMALS);
//ovviamente questo è vero se il residuo è inferiore al valore; se fosse uguale sarebbe riga ancora da evadere,..
//..se fosse maggiore sarebbe riga del cazzo
if (residuo < valore)
@ -1544,6 +1549,8 @@ void TPrint_saldana_recordset::create_lines_to_print(const TString& query)
parse_rmovana(cms, datainiesc, datafinesc);
// 2_b) calcolo dei saldi da documenti non ancora contabilizzati e quindi senza movana e saldana
// si fa solo se l'utente Adolfo lo ha deciso sulla maschera
if (_include_documenti)
parse_rdoc(cms, datainiesc, datafinesc);
} //if((_datacalcolo<datafinesc...
} //if(_tipo==8)...
@ -1782,6 +1789,7 @@ void TPrint_saldana_recordset::set_filter(const TMask& msk, const TString& curr_
{
_tipostima = msk.get(F_TIPOSTIMA)[0];
_vitaintera = msk.get_bool(F_VITAINTERA);
_include_documenti = msk.get_bool(F_INCLUDE_DOCUMENTI);
_depth = msk.get_int(F_DEPTH);
_tipodetr = msk.get_bool(F_TIPODETR);
_tipostampa = msk.get_int(F_TIPOSTAMPA);

View File

@ -71,6 +71,7 @@ class TPrint_saldana_recordset : public TRecordset
int _depth;
int _tipostampa;
bool _vitaintera;
bool _include_documenti;
bool _tipodetr;
bool _forza_maturato;
char _tipostima;

View File

@ -16,6 +16,7 @@
#define F_TIPOSTAMPA 113
#define F_TIPODETR 114
#define F_FORZA_MATURATO 115
#define F_INCLUDE_DOCUMENTI 116
/* campi per la generazione automatica
#define F_FASE1 112