Patch level : 10.0 555

Files correlati     : lv0.exe
Ricompilazione Demo : [ ]

Stampa elenco clienti per articolo con consegnato mese


git-svn-id: svn://10.65.10.50/trunk@19811 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2009-12-18 10:53:33 +00:00
parent a7822008b0
commit af1d2958f8
6 changed files with 80 additions and 15 deletions

View File

@ -33,7 +33,7 @@ void TStampa_tabelle_lv::main_loop()
rep.ext("rep");
}
TReport_lv r;
TLV_report r;
bool ok = r.load(rep); // Controlla l'effettiva esistenza del report
while (ok)
{

View File

@ -9,4 +9,5 @@
#define F_PREZZO_DA 207
#define F_PREZZO_A 208
#define F_ZONA 209
#define F_DESZONA 210
#define F_DESZONA 210
#define F_ANNO 211

View File

@ -41,13 +41,13 @@
<field x="63" y="6" type="Testo" width="9" pattern="1" text="Minimo">
<font face="Courier New" bold="1" size="10" />
</field>
<field x="75" y="6" type="Testo" width="12" pattern="1" text="Dot.Odierna">
<field x="75.5" y="6" type="Testo" width="12" pattern="1" text="Dot.Odierna">
<font face="Courier New" bold="1" size="10" />
</field>
<field x="92" y="6" type="Testo" width="9" pattern="1" text="Mese">
<field x="98.5" y="6" type="Testo" width="4" pattern="1" text="Mese">
<font face="Courier New" bold="1" size="10" />
</field>
<field x="107" y="6" type="Testo" width="5" pattern="1" text="Anno">
<field x="114" y="6" type="Testo" width="5" pattern="1" text="Anno">
<font face="Courier New" bold="1" size="10" />
</field>
<field border="2" y="7" type="Linea" width="120" height="0" pattern="1" />
@ -56,27 +56,35 @@
<section type="Body" />
<section type="Body" level="1" height="1">
<field x="2" type="Numero" align="right" width="6" pattern="1">
<source>169.CODCF</source>
<source>CODCF</source>
</field>
<field x="9.5" type="Stringa" width="30" pattern="1">
<source>1000@.RAGSOC</source>
<source>20.RAGSOC</source>
</field>
<field x="42" type="Numero" align="right" width="18" pattern="1" hide_zero="1" text="#########,@@">
<source>169.PREZZO</source>
<source>PREZZO</source>
</field>
<field x="64.5" type="Numero" align="right" width="4" pattern="1" hide_zero="1">
<source>169.MINCIC</source>
<source>MINCIC</source>
</field>
<field x="71.5" type="Numero" align="right" width="15" pattern="1" hide_zero="1">
<source>169.DOTIN</source>
<source>166.DOTIN</source>
</field>
<field x="88" type="Numero" align="right" width="15" pattern="1" hide_zero="1">
<source>166.CONSMESE</source>
</field>
<field x="104" type="Numero" align="right" width="15" pattern="1" hide_zero="1">
<source>166.CONSANNO</source>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<sql>USE 169 KEY 1
SELECT (CODART==#F_CODART_TO)&#26;&#26;(BETWEEN(17.CODZONA,#F_ZONA_FROM,#F_ZONA_FROM))&#26;&#26;(STR(BETWEEN(PREZZO,#F_PREZZO_FROM,#F_PREZZO_TO)))
JOIN 20 TO 169 ALIAS 1000 INTO TIPOCF=="C" CODCF==CODCF
JOIN 17 TO 169 ALIAS 2000 INTO TIPOCF=="C" CODCF==CODCF
JOIN 20 TO 169 INTO TIPOCF=="C" CODCF==CODCF
JOIN 17 TO 169 INTO TIPOCF=="C" CODCF==CODCF
JOIN 168 INTO CODCF==CODCF CODCONT==CODCONT
JOIN 166 INTO ANNOES==#ANNOES TIPOCF=="C" CODCF==CODCF INDSPED=="" CODART==CODART
FROM CODCF=#F_CODCF_FROM
TO CODCF=#F_CODCF_TO</sql>
</report>

View File

@ -147,6 +147,12 @@ BEGIN
OUTPUT F_DESZONA S0
END
NUMBER F_ANNO 4
BEGIN
PROMPT 2 19 "Anno "
FIELD #ANNOES
FLAGS "ADH"
END
ENDPAGE
ENDMASK

View File

@ -320,6 +320,17 @@ TLaundry_contract::TLaundry_contract(const long codcf, const long indsped, const
// TRecmag_lavanderie
///////////////////////////////////////////////////////////
int TRecmag_lavanderie::read(TBaseisamfile& f, word op, word lockop)
{
_update_time = 0L;
return TVariable_rectype::read(f, op, lockop);
}
int TRecmag_lavanderie::readat(TBaseisamfile& f, TRecnotype nrec, word lockop)
{
_update_time = 0L;
return TVariable_rectype::readat(f, nrec, lockop);
}
void TRecmag_lavanderie::update()
{
if (_update_time > 0L)
@ -354,7 +365,8 @@ void TRecmag_lavanderie::update()
TISAM_recordset recmag(query);
for (bool ok=recmag.move_first(); ok; ok=recmag.move_next())
_consmese = ZERO;
for (bool ok=recmag.move_first(); ok; ok=recmag.move_next())
{
const TDate datareg = recmag.get(MOVMAG_DATAREG).as_date();
TString queryrmag="USE RMOVMAG\n";
@ -1509,7 +1521,7 @@ TGiac_per_cli::TGiac_per_cli()
_year = 0;
_indsped = 0;
}
bool TReport_lv::get_usr_val(const TString& name, TVariant& var) const
bool TLV_report::get_usr_val(const TString& name, TVariant& var) const
{
if (name == "#NEXTCONS")
{
@ -1530,3 +1542,28 @@ bool TReport_lv::get_usr_val(const TString& name, TVariant& var) const
return TReport::get_usr_val(name, var);
}
TCursor* TLV_recordset::cursor() const
{
bool to_create = !valid_cursor();
TCursor * c = TISAM_recordset::cursor();
if (to_create && c != NULL)
{
TLocalisamfile & clifogiac = relation()->lfile(LF_CLIFOGIAC);
clifogiac.set_curr(new TRecmag_lavanderie);
}
return c;
}
bool TLV_report::set_recordset(const TString& sql)
{
if (sql.starts_with("US", true))
{
TLV_recordset* rex = new TLV_recordset(sql);
TReport::set_recordset(rex);
return rex != NULL;
}
return TReport::set_recordset(sql);
}

View File

@ -66,6 +66,9 @@ protected:
void update();
public:
virtual int read(TBaseisamfile& f, word op = _isequal, word lockop = _nolock);
virtual int readat(TBaseisamfile& f, TRecnotype nrec, word lockop = _nolock);
virtual int name2index(const char* fieldname) const;
virtual TFieldtypes type(const char* fieldname) const;
virtual int length(const char* fieldname) const;
@ -359,9 +362,19 @@ public:
TGiac_per_cli(); //costruttore
};
class TReport_lv : public TReport
class TLV_recordset : public TISAM_recordset
{
public:
virtual TCursor* cursor() const;
TLV_recordset(const char* use) : TISAM_recordset(use) {}
virtual ~TLV_recordset() {}
};
class TLV_report : public TReport
{
protected:
virtual bool set_recordset(const TString& sql);
virtual bool get_usr_val(const TString& name, TVariant& var) const;
};