Patch level :10.0
Files correlati : Ricompilazione Demo : [ ] Commento :riporti CA da 5.0 (stampa commesse e mastrini) git-svn-id: svn://10.65.10.50/trunk@17758 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
e0d4518697
commit
6f66498571
@ -47,9 +47,21 @@ TMask_print_cms::TMask_print_cms()
|
|||||||
|
|
||||||
bool TMask_print_cms::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
bool TMask_print_cms::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||||
{
|
{
|
||||||
/* switch (o.dlg())
|
switch (o.dlg())
|
||||||
{
|
{
|
||||||
case F_DADATA:
|
case F_ANNO:
|
||||||
|
if (e == fe_modify && !o.empty())
|
||||||
|
{
|
||||||
|
TEsercizi_contabili esc;
|
||||||
|
TDate inies, fines;
|
||||||
|
if (esc.code2range(atoi(o.get()), inies, fines))
|
||||||
|
{
|
||||||
|
set(F_DADATA, inies);
|
||||||
|
set(F_ADATA, fines);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
/*case F_DADATA:
|
||||||
case F_ADATA:
|
case F_ADATA:
|
||||||
if (e == fe_close)
|
if (e == fe_close)
|
||||||
{
|
{
|
||||||
@ -62,10 +74,10 @@ bool TMask_print_cms::on_field_event(TOperable_field& o, TField_event e, long jo
|
|||||||
return error_box(TR("La data deve appartenere all'anno selezionato"));
|
return error_box(TR("La data deve appartenere all'anno selezionato"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;*/
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}*/
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -114,21 +126,37 @@ void TPrint_cms::main_loop()
|
|||||||
if (anno > 0 || dadata.ok() || adata.ok() || cdc.full())
|
if (anno > 0 || dadata.ok() || adata.ok() || cdc.full())
|
||||||
{
|
{
|
||||||
TString query;
|
TString query;
|
||||||
|
//se ANNO è specificato sono possibili i casi:
|
||||||
|
//a) vengono specificate entrambe le date limite: cms con anno=ANNO,dadata>=DATAINIZIO,adata<=DATAFINE
|
||||||
|
//b) non vengono specificate entrambe le date limite: sono le cms con anno=ANNO
|
||||||
|
//c) specificata solo dadata: cms con anno=ANNO,dadata>=DATAINIZIO,finiscono quando gli pare
|
||||||
|
//d) specificata solo adata: cms con anno=ANNO,adata<=DATAIFINE,cominciano quando gli pare
|
||||||
|
//Se si vuole indicare periodi specifici non legati al campo anno si ottengono le commesse che,nel corso della...
|
||||||
|
//...loro vita,sono interessate dalle date indicate
|
||||||
|
//e) specificando adata prende le cms che abbiano DATAINIZIO>=dadata, ovvero che comincino dopo dadata
|
||||||
|
//f) specificando dadata prende le cms che abbiano DATAFINE<=adata, ovvero che terminino entro adata
|
||||||
|
|
||||||
|
if (query.full())
|
||||||
|
query << "&&";
|
||||||
|
|
||||||
|
if (dadata.ok() || adata.ok())
|
||||||
|
{
|
||||||
|
if (dadata.ok())
|
||||||
|
query << "(NUM(ANSI(DATAINIZIO))>=" << dadata.date2ansi() << ")";
|
||||||
|
if (dadata.ok() && adata.ok())
|
||||||
|
query << "&&";
|
||||||
|
if (adata.ok())
|
||||||
|
query << "(NUM(ANSI(DATAFINE))<=" << adata.date2ansi() << ")";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
if (anno > 0)
|
if (anno > 0)
|
||||||
{
|
{
|
||||||
if (query.full()) query << "&&";
|
if (query.full())
|
||||||
|
query << "&&";
|
||||||
query << "(ANNO='" << anno << "')";
|
query << "(ANNO='" << anno << "')";
|
||||||
}
|
}
|
||||||
if (adata.ok())
|
|
||||||
{
|
|
||||||
if (query.full()) query << "&&";
|
|
||||||
query << "(NUM(ANSI(DATAINIZIO))<=" << adata.date2ansi() << ")";
|
|
||||||
}
|
|
||||||
if (dadata.ok())
|
|
||||||
{
|
|
||||||
if (query.full()) query << "&&";
|
|
||||||
query << "(NUM(ANSI(DATAFINE))>=" << dadata.date2ansi() << ")";
|
|
||||||
}
|
|
||||||
if (cdc.full())
|
if (cdc.full())
|
||||||
{
|
{
|
||||||
if (query.full()) query << "&&";
|
if (query.full()) query << "&&";
|
||||||
|
@ -1,17 +1,7 @@
|
|||||||
#include "ca1600a.h"
|
#include "ca1600a.h"
|
||||||
|
|
||||||
TOOLBAR "" 0 -2 0 2
|
TOOLBAR "topbar" 0 -2 0 2
|
||||||
|
#include <printbar.h>
|
||||||
BUTTON DLG_PRINT 10 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT -12 -11 ""
|
|
||||||
END
|
|
||||||
|
|
||||||
BUTTON DLG_QUIT 10 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT -22 -11 ""
|
|
||||||
END
|
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
PAGE "Stampa commesse" 0 0 0 -2
|
PAGE "Stampa commesse" 0 0 0 -2
|
||||||
@ -40,23 +30,19 @@ BEGIN
|
|||||||
DISPLAY "Data inizio esercizio" D0
|
DISPLAY "Data inizio esercizio" D0
|
||||||
DISPLAY "Data fine esercizio " D1
|
DISPLAY "Data fine esercizio " D1
|
||||||
OUTPUT F_ANNO CODTAB
|
OUTPUT F_ANNO CODTAB
|
||||||
OUTPUT F_DADATA D0
|
|
||||||
OUTPUT F_ADATA D1
|
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
FLAGS "RZ"
|
FLAGS "RZ"
|
||||||
MESSAGE EMPTY ENABLE,F_DADATA|ENABLE,F_ADATA
|
|
||||||
MESSAGE CLEAR,F_DADATA|CLEAR,F_ADATA
|
|
||||||
ADD NONE
|
ADD NONE
|
||||||
END
|
END
|
||||||
|
|
||||||
DATE F_DADATA
|
DATE F_DADATA
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 17 14 "Da data "
|
PROMPT 17 14 "Da data inizio "
|
||||||
END
|
END
|
||||||
|
|
||||||
DATE F_ADATA
|
DATE F_ADATA
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 40 14 "A data "
|
PROMPT 48 14 "A data fine "
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_REPORT 20
|
STRING F_REPORT 20
|
||||||
|
@ -90,6 +90,18 @@ bool TPrint_mastrini_ca_mask::on_field_event(TOperable_field& o, TField_event e,
|
|||||||
if (!test_compatible_report())
|
if (!test_compatible_report())
|
||||||
return error_box(TR("Impossibile trovare un report compatibile"));
|
return error_box(TR("Impossibile trovare un report compatibile"));
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
case F_ANNO:
|
||||||
|
if (e == fe_modify && !o.empty())
|
||||||
|
{
|
||||||
|
TEsercizi_contabili esc;
|
||||||
|
TDate inies, fines;
|
||||||
|
if (esc.code2range(atoi(o.get()), inies, fines))
|
||||||
|
{
|
||||||
|
set(F_DATAINI, inies);
|
||||||
|
set(F_DATAFIN, fines);
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case F_DATAINI:
|
case F_DATAINI:
|
||||||
case F_DATAFIN:
|
case F_DATAFIN:
|
||||||
@ -187,6 +199,17 @@ bool TPrint_mastrini_ca_recordset::valid_record(const TRelation& rel) const
|
|||||||
if ((_tipimov & tipomov_int) == 0)
|
if ((_tipimov & tipomov_int) == 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
//aggiunta 01/12/08; se non si specifica l'esercizio si DEVE tener conto della DATAREG e non della DATACOMP; quindi..
|
||||||
|
//..deve effettuare tale controllo e controllare se la datareg rientra nell'intervallo di date selezionato sulla maschera
|
||||||
|
if (_anno <= 0)
|
||||||
|
{
|
||||||
|
const TDate datareg = mov.get_date(MOVANA_DATAREG);
|
||||||
|
if (_dadata.ok() && datareg < _dadata)
|
||||||
|
return false;
|
||||||
|
if (_adata.ok() && datareg > _adata)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
//..poi le righe (devono comparire solo le righe con cdc/cms/fsc che appaiono nello sheet)
|
//..poi le righe (devono comparire solo le righe con cdc/cms/fsc che appaiono nello sheet)
|
||||||
const TRectype& rmov = rel.curr(LF_RMOVANA);
|
const TRectype& rmov = rel.curr(LF_RMOVANA);
|
||||||
|
|
||||||
@ -224,12 +247,12 @@ void TPrint_mastrini_ca_recordset::set_custom_filter(TCursor& cur) const
|
|||||||
|
|
||||||
if (_daconto.not_empty())
|
if (_daconto.not_empty())
|
||||||
darec.put(RMOVANA_CODCONTO, _daconto);
|
darec.put(RMOVANA_CODCONTO, _daconto);
|
||||||
if (_dadata.ok())
|
if (_dadata.ok() && _anno > 0)
|
||||||
darec.put(RMOVANA_DATACOMP, _dadata);
|
darec.put(RMOVANA_DATACOMP, _dadata);
|
||||||
|
|
||||||
if (_aconto.not_empty())
|
if (_aconto.not_empty())
|
||||||
arec.put(RMOVANA_CODCONTO, _aconto);
|
arec.put(RMOVANA_CODCONTO, _aconto);
|
||||||
if (_adata.ok())
|
if (_adata.ok() && _anno > 0)
|
||||||
arec.put(RMOVANA_DATACOMP, _adata);
|
arec.put(RMOVANA_DATACOMP, _adata);
|
||||||
|
|
||||||
cur.setregion(darec, arec);
|
cur.setregion(darec, arec);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user