Patch level : 10.0

Files correlati     : lv2.exe
Ricompilazione Demo : [ ]
Commento            :
Corretta gestione variabili globali di report


git-svn-id: svn://10.65.10.50/trunk@18018 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2009-01-13 11:24:23 +00:00
parent 7f911b078b
commit d3491a2b2e
2 changed files with 29 additions and 31 deletions

View File

@ -7,11 +7,11 @@ int main(int argc, char** argv)
const int r = (argc > 1) ? argv[1][1] - '0' : 0;
switch (r)
{
case 0: lv2100(argc, argv); break; //generazione automatica del planning
case 1: lv2200(argc, argv); break; //manipolazione e stampa del planning
case 2: lv2300(argc, argv); break; //Stampa Giri Giornaliero/Settimanale
case 3: lv2400(argc, argv); break; //generazione automatica bolle di consegna
case 4: lv2600(argc, argv); break; //acquisizione bolle di rientro
case 0: lv2100(argc, argv); break; //generazione automatica del planning
case 1: lv2200(argc, argv); break; //manipolazione e stampa del planning
case 2: lv2300(argc, argv); break; //Stampa Giri Giornaliero/Settimanale
case 3: lv2400(argc, argv); break; //generazione automatica bolle di consegna
case 4: lv2600(argc, argv); break; //acquisizione bolle di rientro
default: lv2100(argc, argv); break; //generazione automatica del planning
}
return 0;

View File

@ -1,7 +1,8 @@
#include <Textset.h>
#include <Applicat.h>
#include <Automask.h>
#include <Reprint.h>
#include <applicat.h>
#include <automask.h>
#include <textset.h>
#include <reprint.h>
#include "lv0.h"
#include "lv2300a.h"
@ -15,13 +16,13 @@ public:
//ordine fermata e eventualmente l'ora
struct TPassaggio: public TObject
{
long _codcf;
int _ordfer;
int _ora;
TString _iter;
TPassaggio():_codcf(0),_ordfer(0),_ora(0),_iter("") {}
TPassaggio(long codcf, int ordfer, int ora, TString iter):_codcf(codcf),_ordfer(ordfer),_ora(ora),_iter(iter) {}
TString4 _iter;
TPassaggio() :_codcf(0),_ordfer(0),_ora(0) {}
TPassaggio(long codcf, int ordfer, int ora, const TString& iter) :_codcf(codcf),_ordfer(ordfer),_ora(ora),_iter(iter) {}
};
class TPassaggi: public TArray
@ -60,13 +61,9 @@ void TPassaggi::add(TPassaggio* p)
break;
if(h._ordfer>p->_ordfer)
{
last=guess-1;
}
else
{
first=guess+1;
}
}
TArray::insert(p,guess);
_count++;
@ -156,10 +153,10 @@ void TItinerari::add(long i,int g,long codcf, int ordfer, int ora, TString iter)
}
TSettimana& TItinerari::settimana(long codIti)
{
TSettimana* a = (TSettimana* ) objptr(codIti);
TSettimana* a = (TSettimana*)objptr(codIti);
if(a==NULL)
{
a = new TSettimana();
a = new TSettimana;
TArray::add(a,codIti);
}
return *a;
@ -194,7 +191,7 @@ protected:
void elabora(const TMask& mask) const;
};
void TGiri_app:: elabora(const TMask& mask)const
void TGiri_app::elabora(const TMask& mask) const
{
TISAM_recordset giri("USE LVRCONSPLAN KEY 2\n"
"SELECT (BETWEEN(CODITI,#FROM_CODITI,#TO_CODITI))"
@ -259,8 +256,13 @@ void TGiri_app:: elabora(const TMask& mask)const
}
}
//carica tuute le variabili del report.
r.mask2report(mask);
// riporta tutte le variabili del report.
const TString_array& vars = giri.variables();
FOR_EACH_ARRAY_ROW(vars, v, var)
{
const char* varname = var->get(0);
giri_set->set_var(varname, giri.get_var(varname), true);
}
TReport_book b;
bool ok = b.add(r);// Richiede parametri di stampa in base alla maschera omonima
@ -278,26 +280,22 @@ void TGiri_app::main_loop()
TGiri_mask m;
while(m.run()==K_ENTER)
{
//Stampa Giro Settimanale
if(m.get(F_CHOICE)=="S")
{
elabora(m);
elabora(m); //Stampa Giro Settimanale
}
//Stampa Giro Giornaliero
else
{
TGiri_report r(false);
//carica tuute le variabili del report.
r.mask2report(m);
TGiri_report r(false); //Stampa Giro Giornaliero
TReport_book b;
bool ok = b.add(r); // Richiede parametri di stampa in base alla maschera omonima
if (ok)
if(b.pages() >0)
{
if (b.pages() > 0)
b.print_or_preview(); // Stampa effettivamente
else
warning_box (TR("Nessun record estratto per i parametri inseriti"));
}
}
}
}