Patch level : 2.0 600
Files correlati : cm0.exe cm0100a.frm Ricompilazione Demo : [ ] Commento : Corretta stampa conti per commessa: ora stampa la sezione D/A degli importi e d ei realtivi totali. git-svn-id: svn://10.65.10.50/trunk@11487 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
762355c267
commit
6c568d83a0
@ -110,7 +110,7 @@ bool TContixcdc_mask::on_field_event(TOperable_field& o, TField_event e, long jo
|
||||
case F_DATAINI:
|
||||
if (e == fe_modify || e == fe_close)
|
||||
{
|
||||
TDate dataini(field(F_DATAINI).get());
|
||||
TDate dataini(get(F_DATAINI));
|
||||
if (dataini.ok())
|
||||
{
|
||||
TDate datainies = cache().get("ESC", field(F_ANNO).get(), "D0");
|
||||
@ -122,7 +122,7 @@ bool TContixcdc_mask::on_field_event(TOperable_field& o, TField_event e, long jo
|
||||
case F_DATAFIN:
|
||||
if (e == fe_modify || fe_close)
|
||||
{
|
||||
TDate datafin(field(F_DATAFIN).get());
|
||||
TDate datafin(get(F_DATAFIN));
|
||||
if (datafin.ok())
|
||||
{
|
||||
TDate datafines = cache().get("ESC", field(F_ANNO).get(), "D1");
|
||||
@ -186,12 +186,13 @@ protected:
|
||||
void print_footer_fsc();
|
||||
void print_header_fsc();
|
||||
void set_intestazione();
|
||||
void fill_importo(const TImporto& imp, short id_imp, short id_sez);
|
||||
void fill_body(const TTotali& tot); //riempie il campo body con tutti i totali
|
||||
void print_body(); //stampa effettivamente il body
|
||||
void set_field(int id, const real& val); //mette in un campo del body odd un valore numerico
|
||||
void set_field(int id, const char* val); //mette in un campo del body odd una stringa
|
||||
void print_specialsection(char s, pagetype pos); // stampa una sezione qualunque (
|
||||
void aggiorna_totali(const TImporto importo, const TDate data);
|
||||
void aggiorna_totali(const TImporto& importo, const TDate& data);
|
||||
|
||||
public:
|
||||
TContixCdc() {}
|
||||
@ -354,17 +355,36 @@ void TContixCdc::set_field(int id, const char* val)
|
||||
_form->find_field('B', odd_page, id).set(val);
|
||||
}
|
||||
|
||||
void TContixCdc::fill_importo(const TImporto& importo, short id_imp, short id_sez)
|
||||
{
|
||||
if (!importo.is_zero())
|
||||
{
|
||||
TImporto imp(importo);
|
||||
imp.normalize();
|
||||
set_field(id_imp, imp.valore());
|
||||
char sez[2] = { imp.sezione(), '\0' };
|
||||
set_field(id_sez, sez);
|
||||
}
|
||||
else
|
||||
{
|
||||
set_field(id_imp, "");
|
||||
set_field(id_sez, "");
|
||||
}
|
||||
}
|
||||
|
||||
void TContixCdc::fill_body(const TTotali& tot)
|
||||
{
|
||||
// riempie il body odd, contenente i totali; lo fa chiamando la set_field per ogni campo
|
||||
set_field(FR_PROGPREC, tot._tot_progprec.valore());
|
||||
set_field(FR_PERIODO, tot._tot_periodo.valore());
|
||||
real tempval1 = tot._tot_progprec.valore()+tot._tot_periodo.valore();
|
||||
set_field(FR_PROG, tempval1);
|
||||
set_field(FR_SALDOATT, tot._tot_saldoatt.valore());
|
||||
fill_importo(tot._tot_progprec, FR_PROGPREC, FR_SEGNO_PROGPREC);
|
||||
fill_importo(tot._tot_periodo, FR_PERIODO, FR_SEGNO_PERIODO);
|
||||
|
||||
TImporto tempval = tot._tot_progprec; tempval += tot._tot_periodo;
|
||||
fill_importo(tempval, FR_PROG, FR_SEGNO_PROG);
|
||||
|
||||
fill_importo(tot._tot_saldoatt, FR_SALDOATT, FR_SEGNO_SALDOATT);
|
||||
}
|
||||
|
||||
void TContixCdc::aggiorna_totali(const TImporto importo, const TDate data)
|
||||
void TContixCdc::aggiorna_totali(const TImporto& importo, const TDate& data)
|
||||
{
|
||||
if (data < _dataini)
|
||||
_t_sottoc._tot_progprec+=importo;
|
||||
@ -425,8 +445,6 @@ void TContixCdc::main_loop()
|
||||
if (dacdc.empty() && acdc.empty())
|
||||
filtro << " && " << "(CODCMS!=\"\")";
|
||||
TRectype darec(LF_RMOV), arec(LF_RMOV);
|
||||
darec.zero();
|
||||
arec.zero();
|
||||
darec.put(RMV_GRUPPO, _mask->get_int(F_GRUPPOINI));
|
||||
darec.put(RMV_CONTO, _mask->get_int(F_CONTOINI));
|
||||
darec.put(RMV_SOTTOCONTO, _mask->get_long(F_SOTTOCINI));
|
||||
@ -474,7 +492,7 @@ void TContixCdc::main_loop()
|
||||
_currgruppo = rmovrec.get_int(RMV_GRUPPO);
|
||||
_currconto = rmovrec.get_int(RMV_CONTO);
|
||||
TDate datareg = rmovrec.get_date(RMV_DATAREG);
|
||||
TImporto importo(rmovrec.get_char(RMV_SEZIONE), rmovrec.get_real(RMV_IMPORTO));
|
||||
const TImporto importo(rmovrec.get_char(RMV_SEZIONE), rmovrec.get_real(RMV_IMPORTO));
|
||||
if ((_oldcms != _currcms) || (_oldfsc != _currfsc) || (_oldgruppo != _currgruppo) || (_oldconto != _currconto) || (_oldsottoc != _currsottoc))
|
||||
{
|
||||
print_sottoc();
|
||||
|
@ -21,3 +21,8 @@
|
||||
#define FR_PERIODO 36
|
||||
#define FR_PROG 37
|
||||
#define FR_SALDOATT 38
|
||||
|
||||
#define FR_SEGNO_PROGPREC 45
|
||||
#define FR_SEGNO_PERIODO 46
|
||||
#define FR_SEGNO_PROG 47
|
||||
#define FR_SEGNO_SALDOATT 48
|
||||
|
@ -36,7 +36,7 @@ END
|
||||
NUMERO 4 7
|
||||
BEGIN
|
||||
KEY "Nr. pagina"
|
||||
PROMPT 120 1 "Pagina "
|
||||
PROMPT 120 1 "Pag. "
|
||||
MESSAGE _PAGENO
|
||||
END
|
||||
|
||||
@ -96,49 +96,49 @@ SECTION HEADER ODD 5
|
||||
STRINGA -1
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 1 2 "------------------------------------------------------------------------------------------------------------------------------------"
|
||||
PROMPT 1 1 "____________________________________________________________________________________________________________________________________"
|
||||
END
|
||||
|
||||
STRINGA FR_CMS 20
|
||||
BEGIN
|
||||
KEY "Codice commessa"
|
||||
PROMPT 1 3 "@bCDC/Commessa "
|
||||
PROMPT 1 2 "@bCDC/Commessa "
|
||||
END
|
||||
|
||||
STRINGA FR_D_CMS 50
|
||||
BEGIN
|
||||
KEY "Descrizione commessa"
|
||||
PROMPT 35 3 "@b"
|
||||
PROMPT 35 2 "@b"
|
||||
END
|
||||
|
||||
STRINGA -1
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 70 4 " Progr. prec."
|
||||
PROMPT 68 3 "Progr. prec."
|
||||
END
|
||||
|
||||
STRINGA -1
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 85 4 " Tot. periodo"
|
||||
PROMPT 85 3 "Tot. periodo"
|
||||
END
|
||||
|
||||
STRINGA -1
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 100 4 " Tot. progr."
|
||||
PROMPT 103 3 "Tot. progr."
|
||||
END
|
||||
|
||||
STRINGA -1
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 115 4 " Saldo attuale"
|
||||
PROMPT 118 3 "Saldo attuale"
|
||||
END
|
||||
|
||||
STRINGA -1
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 1 5 "------------------------------------------------------------------------------------------------------------------------------------"
|
||||
PROMPT 1 4 "____________________________________________________________________________________________________________________________________"
|
||||
END
|
||||
|
||||
END // section header odd
|
||||
@ -166,52 +166,71 @@ SECTION BODY ODD 1
|
||||
NUMERO FR_GRUPPO 3
|
||||
BEGIN
|
||||
KEY "Gruppo"
|
||||
PROMPT 5 1 ""
|
||||
PROMPT 1 1 ""
|
||||
END
|
||||
|
||||
NUMERO FR_CONTO 3
|
||||
BEGIN
|
||||
KEY "Conto"
|
||||
PROMPT 9 1 ""
|
||||
PROMPT 5 1 ""
|
||||
END
|
||||
|
||||
NUMERO FR_SOTTOC 6
|
||||
BEGIN
|
||||
KEY "Gruppo/Conto/Sottoconto"
|
||||
PROMPT 13 1 ""
|
||||
PROMPT 9 1 ""
|
||||
END
|
||||
|
||||
|
||||
STRINGA FR_D_SOTTOC 48
|
||||
STRINGA FR_D_SOTTOC 47
|
||||
BEGIN
|
||||
KEY "Descrizione sottoconto"
|
||||
PROMPT 20 1 ""
|
||||
KEY "Descrizione sottoconto"
|
||||
PROMPT 16 1 ""
|
||||
END
|
||||
|
||||
VALUTA FR_PROGPREC 14
|
||||
BEGIN
|
||||
PROMPT 70 1 ""
|
||||
PICTURE "."
|
||||
PROMPT 66 1 ""
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
STRINGA FR_SEGNO_PROGPREC 1
|
||||
BEGIN
|
||||
PROMPT 81 1 ""
|
||||
END
|
||||
|
||||
VALUTA FR_PERIODO 14
|
||||
BEGIN
|
||||
PROMPT 85 1 ""
|
||||
PICTURE "."
|
||||
PROMPT 83 1 ""
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
STRINGA FR_SEGNO_PERIODO 1
|
||||
BEGIN
|
||||
PROMPT 98 1 ""
|
||||
END
|
||||
|
||||
VALUTA FR_PROG 14
|
||||
BEGIN
|
||||
PROMPT 100 1 ""
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
VALUTA FR_SALDOATT 14
|
||||
STRINGA FR_SEGNO_PROG 1
|
||||
BEGIN
|
||||
PROMPT 115 1 ""
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
VALUTA FR_SALDOATT 14
|
||||
BEGIN
|
||||
PROMPT 117 1 ""
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
STRINGA FR_SEGNO_SALDOATT 1
|
||||
BEGIN
|
||||
PROMPT 132 1 ""
|
||||
END
|
||||
|
||||
END // section body
|
||||
|
||||
END // form
|
||||
|
@ -170,7 +170,7 @@ BEGIN
|
||||
OUTPUT F_CONTOINI CONTO
|
||||
OUTPUT F_SOTTOCINI SOTTOCONTO
|
||||
OUTPUT F_DESCRINI DESCR
|
||||
CHECKTYPE NORMAL
|
||||
CHECKTYPE SEARCH
|
||||
ADD RUN cg0 -0
|
||||
END
|
||||
|
||||
@ -225,7 +225,7 @@ BEGIN
|
||||
OUTPUT F_CONTOFIN CONTO
|
||||
OUTPUT F_SOTTOCFIN SOTTOCONTO
|
||||
OUTPUT F_DESCRFIN DESCR
|
||||
CHECKTYPE NORMAL
|
||||
CHECKTYPE SEARCH
|
||||
WARNING "Sottoconto inesistente o mancante"
|
||||
ADD RUN cg0 -0
|
||||
END
|
||||
|
Loading…
x
Reference in New Issue
Block a user