Patch level :10.0 244
Files correlati : Ricompilazione Demo : [ ] Commento :sistemata stampa dei movimenti di analitica; aggiunto ordinamento per numreg (che esisteva solo in via teorica) e sistemato ordinamento per data (che andava statisticamente). Riporto da 5.0 git-svn-id: svn://10.65.10.50/trunk@18299 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
0490cc240f
commit
3680024c6d
@ -138,7 +138,7 @@ TPrint_movimenti_ca_mask::TPrint_movimenti_ca_mask()
|
|||||||
|
|
||||||
class TPrint_movimenti_ca_recordset : public TISAM_recordset
|
class TPrint_movimenti_ca_recordset : public TISAM_recordset
|
||||||
{
|
{
|
||||||
int _anno;
|
int _anno, _tipoord;
|
||||||
TDate _dadata, _adata;
|
TDate _dadata, _adata;
|
||||||
char _tipomov;
|
char _tipomov;
|
||||||
long _danumreg, _anumreg;
|
long _danumreg, _anumreg;
|
||||||
@ -164,11 +164,26 @@ bool TPrint_movimenti_ca_recordset::valid_record(const TRelation& rel) const
|
|||||||
//prima controlla la testata...
|
//prima controlla la testata...
|
||||||
const TRectype& mov = rel.curr(LF_MOVANA);
|
const TRectype& mov = rel.curr(LF_MOVANA);
|
||||||
|
|
||||||
const char* datefld = _anno > 0 ? MOVANA_DATACOMP : MOVANA_DATAREG;
|
switch (_tipoord)
|
||||||
const TDate data = mov.get(datefld);
|
{
|
||||||
if (data < _dadata || (_adata.ok() && data > _adata))
|
case 1: //controllo sul numreg
|
||||||
return false;
|
{
|
||||||
|
const long numreg = mov.get_long(MOVANA_NUMREG);
|
||||||
|
if (numreg < _danumreg || ( _anumreg >= _danumreg && numreg > _anumreg ))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 2: //controllo sulle date
|
||||||
|
{
|
||||||
|
const char* datefld = _anno > 0 ? MOVANA_DATACOMP : MOVANA_DATAREG;
|
||||||
|
const TDate data = mov.get(datefld);
|
||||||
|
if (data < _dadata || ( _adata.ok() && data > _adata ))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
const TString& codcaus = mov.get(MOVANA_CODCAUS);
|
const TString& codcaus = mov.get(MOVANA_CODCAUS);
|
||||||
if (codcaus < _dacaus || (_acaus.not_empty() && codcaus > _acaus))
|
if (codcaus < _dacaus || (_acaus.not_empty() && codcaus > _acaus))
|
||||||
return false;
|
return false;
|
||||||
@ -232,9 +247,22 @@ void TPrint_movimenti_ca_recordset::set_filter(const TPrint_movimenti_ca_mask& m
|
|||||||
_codfas = rel.curr().get(RMOVANA_CODFASE);
|
_codfas = rel.curr().get(RMOVANA_CODFASE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_tipoord = msk.get_int(F_TIPOSTAMPA);
|
||||||
|
|
||||||
|
//stabilisce il tipo di data di ordinamento del recordset
|
||||||
|
_anno = msk.get_int(F_ANNO);
|
||||||
|
|
||||||
|
if (_anno > 0)
|
||||||
|
set_var("#DATAORD", MOVANA_DATACOMP, true);
|
||||||
|
else
|
||||||
|
set_var("#DATAORD", MOVANA_DATAREG, true);
|
||||||
|
|
||||||
_dadata = msk.get_date(F_DATAINI);
|
_dadata = msk.get_date(F_DATAINI);
|
||||||
_adata = msk.get_date(F_DATAFIN);
|
_adata = msk.get_date(F_DATAFIN);
|
||||||
|
|
||||||
|
_danumreg = msk.get_long(F_NUMEROINI);
|
||||||
|
_anumreg = msk.get_long(F_NUMEROFIN);
|
||||||
|
|
||||||
_dacaus = msk.get(F_CAUSALEINI);
|
_dacaus = msk.get(F_CAUSALEINI);
|
||||||
_acaus = msk.get(F_CAUSALEFIN);
|
_acaus = msk.get(F_CAUSALEFIN);
|
||||||
|
|
||||||
@ -248,8 +276,9 @@ void TPrint_movimenti_ca_recordset::set_filter(const TPrint_movimenti_ca_mask& m
|
|||||||
////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////
|
||||||
class TPrint_movimenti_ca_rep : public TAnal_report
|
class TPrint_movimenti_ca_rep : public TAnal_report
|
||||||
{
|
{
|
||||||
int _anno;
|
int _anno, _tipoord;
|
||||||
TDate _dadata, _adata;
|
TDate _dadata, _adata;
|
||||||
|
long _danumreg, _anumreg;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual bool set_recordset(const TString& sql);
|
virtual bool set_recordset(const TString& sql);
|
||||||
@ -276,6 +305,16 @@ bool TPrint_movimenti_ca_rep::get_usr_val(const TString& name, TVariant& var) co
|
|||||||
var.set(_adata);
|
var.set(_adata);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
if (name == "#DANUMREG")
|
||||||
|
{
|
||||||
|
var.set(_danumreg);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (name == "#ANUMREG")
|
||||||
|
{
|
||||||
|
var.set(_anumreg);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
return TAnal_report::get_usr_val(name, var);
|
return TAnal_report::get_usr_val(name, var);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -288,8 +327,11 @@ bool TPrint_movimenti_ca_rep::set_recordset(const TString& sql)
|
|||||||
void TPrint_movimenti_ca_rep::set_filter(const TPrint_movimenti_ca_mask& msk, int cms_row)
|
void TPrint_movimenti_ca_rep::set_filter(const TPrint_movimenti_ca_mask& msk, int cms_row)
|
||||||
{
|
{
|
||||||
_anno = msk.get_int(F_ANNO);
|
_anno = msk.get_int(F_ANNO);
|
||||||
|
_tipoord = msk.get_int(F_TIPOSTAMPA);
|
||||||
_dadata = msk.get_date(F_DATAINI);
|
_dadata = msk.get_date(F_DATAINI);
|
||||||
_adata = msk.get_date(F_DATAFIN);
|
_adata = msk.get_date(F_DATAFIN);
|
||||||
|
_danumreg = msk.get_long(F_NUMEROINI);
|
||||||
|
_anumreg = msk.get_long(F_NUMEROFIN);
|
||||||
TPrint_movimenti_ca_recordset* rs = (TPrint_movimenti_ca_recordset*)recordset();
|
TPrint_movimenti_ca_recordset* rs = (TPrint_movimenti_ca_recordset*)recordset();
|
||||||
rs->set_filter(msk, cms_row);
|
rs->set_filter(msk, cms_row);
|
||||||
}
|
}
|
||||||
|
@ -94,7 +94,7 @@ END
|
|||||||
NUMBER F_NUMEROINI 7
|
NUMBER F_NUMEROINI 7
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 16 6 "Stampa mov. dal numero "
|
PROMPT 16 6 "Stampa mov. dal numero "
|
||||||
USE LF_MOV KEY 1
|
USE LF_MOVANA KEY 1
|
||||||
INPUT NUMREG F_NUMEROINI
|
INPUT NUMREG F_NUMEROINI
|
||||||
DISPLAY "Numero@7" NUMREG
|
DISPLAY "Numero@7" NUMREG
|
||||||
DISPLAY "Data@10" DATAREG
|
DISPLAY "Data@10" DATAREG
|
||||||
@ -111,7 +111,7 @@ BEGIN
|
|||||||
COPY USE F_NUMEROINI
|
COPY USE F_NUMEROINI
|
||||||
INPUT NUMREG F_NUMEROFIN
|
INPUT NUMREG F_NUMEROFIN
|
||||||
COPY DISPLAY F_NUMEROINI
|
COPY DISPLAY F_NUMEROINI
|
||||||
FLAGS "R"
|
OUTPUT F_NUMEROFIN NUMREG
|
||||||
NUM_EXPR ((#F_NUMEROFIN==0)||(#F_NUMEROFIN>=#F_NUMEROINI))
|
NUM_EXPR ((#F_NUMEROFIN==0)||(#F_NUMEROFIN>=#F_NUMEROINI))
|
||||||
WARNING "Limite superiore errato"
|
WARNING "Limite superiore errato"
|
||||||
GROUP 2
|
GROUP 2
|
||||||
@ -120,7 +120,7 @@ END
|
|||||||
STRING F_CAUSALEINI 3
|
STRING F_CAUSALEINI 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 8 "Stampa dalla causale "
|
PROMPT 1 8 "Stampa dalla causale "
|
||||||
USE LF_CAUSALI KEY 1
|
USE LF_CAUSALI SELECT MOVIND!=''
|
||||||
INPUT CODCAUS F_CAUSALEINI
|
INPUT CODCAUS F_CAUSALEINI
|
||||||
DISPLAY "Codice causale" CODCAUS
|
DISPLAY "Codice causale" CODCAUS
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<report libraries="ve1300" name="ca3100a" lpi="8" class="ca3100b">
|
<report libraries="ve1300" name="ca3100a" lpi="8" class="ca3100b">
|
||||||
<description>Movimenti CA per numero registrazione</description>
|
<description>Movimenti CA per numero registrazione</description>
|
||||||
<font face="Courier New" size="8" />
|
<font face="Courier New" size="8" />
|
||||||
@ -20,6 +20,16 @@ THEN
|
|||||||
<field x="157" type="Numero" align="right" width="3" pattern="1">
|
<field x="157" type="Numero" align="right" width="3" pattern="1">
|
||||||
<source>#REPORT.PAGE</source>
|
<source>#REPORT.PAGE</source>
|
||||||
</field>
|
</field>
|
||||||
|
<field x="10" y="1.25" type="Testo" width="12" pattern="1" text="Dal numero" />
|
||||||
|
<field x="22" y="1.25" type="Numero" width="12" pattern="1">
|
||||||
|
<font face="Courier New" bold="1" size="8" />
|
||||||
|
<source>#DANUMREG</source>
|
||||||
|
</field>
|
||||||
|
<field x="40" y="1.25" type="Testo" width="12" pattern="1" text="Al numero" />
|
||||||
|
<field x="52" y="1.25" type="Numero" width="12" pattern="1">
|
||||||
|
<font face="Courier New" bold="1" size="8" />
|
||||||
|
<source>#ANUMREG</source>
|
||||||
|
</field>
|
||||||
<field border="2" x="1" y="2.5" type="Linea" width="161" height="0" pattern="1" />
|
<field border="2" x="1" y="2.5" type="Linea" width="161" height="0" pattern="1" />
|
||||||
<field x="1.5" y="3" type="Testo" align="center" width="7" pattern="1" text="N.Reg." />
|
<field x="1.5" y="3" type="Testo" align="center" width="7" pattern="1" text="N.Reg." />
|
||||||
<field x="33.5" y="3" type="Testo" align="center" width="10" pattern="1" text="Data Doc." />
|
<field x="33.5" y="3" type="Testo" align="center" width="10" pattern="1" text="Data Doc." />
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<report libraries="ve1300" name="ca3100b" lpi="8" class="ca3100b">
|
<report libraries="ve1300" name="ca3100b" lpi="8" class="ca3100b">
|
||||||
<description>Movimenti CA per data</description>
|
<description>Movimenti CA per data</description>
|
||||||
<font face="Courier New" size="8" />
|
<font face="Courier New" size="8" />
|
||||||
@ -194,7 +194,8 @@ MESSAGE ADD,F2.132</postscript>
|
|||||||
</section>
|
</section>
|
||||||
<section type="Foot" level="3" />
|
<section type="Foot" level="3" />
|
||||||
<sql>USE RMOVANA
|
<sql>USE RMOVANA
|
||||||
JOIN MOVANA INTO NUMREG==NUMREG</sql>
|
JOIN MOVANA INTO NUMREG==NUMREG
|
||||||
|
BY MOVANA-E;#DATAORD</sql>
|
||||||
<prescript description="PRESCRIPT">: SCAMBIA_CAMPI ( F1 F2 -- )
|
<prescript description="PRESCRIPT">: SCAMBIA_CAMPI ( F1 F2 -- )
|
||||||
VARIABLE _X1 \ coordinate del campo F1
|
VARIABLE _X1 \ coordinate del campo F1
|
||||||
VARIABLE _Y1
|
VARIABLE _Y1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user