Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :

Stampa cartellini Tetractis


git-svn-id: svn://10.65.10.50/branches/R_10_00@22219 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2011-06-06 19:20:29 +00:00
parent c1b5d15f8e
commit fef96a1388

View File

@ -270,8 +270,10 @@ const char * TPrecedenza::key_carrello(int num) const
TPrecedenza::TPrecedenza(const char * codart, int anno, char provv, const char * codnum, long ndoc, int idriga, int nrow, real & qta, real & pacchi, char tipocf, long codcf) :
_codart(codart), _anno(anno), _provv(provv), _codnum(codnum), _ndoc(ndoc), _idriga(idriga), _nrow(nrow), _qta(qta), _pacchi(pacchi), _tipocf(tipocf), _codcf(codcf)
{
TString key; key << tipocf << codcf; // verificare
TString8 key; key << tipocf << codcf; // verificare
const bool separa_articoli = cache().get("&LV020", key).get_bool(ARTSEP);
const bool sacchi = cache().get("&LV020", key, TPIMBALLO) == "S";
_tipoart = separa_articoli ? atoi(cache().get("&LV047", codart, TPARTICOLO)) : 0;
if (__contract == NULL)
@ -284,7 +286,7 @@ TPrecedenza::TPrecedenza(const char * codart, int anno, char provv, const char *
_prec = 0;
_prec = rec.get_int(LVRCONDV_PRECEDENZA);
if (_prec == 0)
_prec = atoi(cache().get("&LV047", _codart, PRECEDENZA));
_prec = sacchi ? 10 : atoi(cache().get("&LV047", _codart, PRECEDENZA));
}
const char * TPrecedenza::contr_field_max() const
@ -460,7 +462,7 @@ void TPrecedenza::prec2rec(TRectype & rec) const
void TPrecedenza::print_on(ostream& out) const
{
out << _tipoart << _prec << ';' << _codart << ';' << _anno << ';' << _provv << ';' << _codnum << ';' << _ndoc << ';' << _idriga << ';' << _nrow << ';' << _qta << ';' << _pacchi << ';' << _tipocf << ';' << _codcf;
out << _tipoart << ';' << _prec << ';' << _codart << ';' << _anno << ';' << _provv << ';' << _codnum << ';' << _ndoc << ';' << _idriga << ';' << _nrow << ';' << _qta << ';' << _pacchi << ';' << _tipocf << ';' << _codcf;
}
int sort_prec(const TObject** o1, const TObject** o2)
@ -507,7 +509,7 @@ void TCrea_cartellini::crea_precedenze(ofstream & outfile, TArray & precs)
precs.sort(sort_prec);
const int prec_nrows = precs.items();
outfile << "Precedenze\nPrecedenza;Articolo;Anno;;Numerazione;Numero;ID Riga;Numero riga;Quantità;Pacchi;Cliente\n";
outfile << "Precedenze\nTipo;Precedenza;Articolo;Anno;;Numerazione;Numero;ID Riga;Numero riga;Quantità;Pacchi;Cliente\n";
for (int r = 0; r < prec_nrows; r++)
outfile << precs[r] << '\n';
}
@ -634,12 +636,15 @@ void TCrea_cartellini::riempi_normale(TArray & carrelli, TArray & precs, int lev
}
while (p.pacchi() > pacchi)
{
TCarrello * c = ncarrello < ncarrelli ? (TCarrello *) carrelli.objptr(ncarrello) : new TCarrello(p.key_carrello(ncarrello + 1));
ncarrello++;
c->destroy_rows();
carrelli.add(c);
TCarrello * c = (TCarrello *) carrelli.objptr(ncarrello++);
if (c == NULL)
{
c = new TCarrello(p.key_carrello(ncarrello));
carrelli.add(c);
c->destroy_rows();
}
TRectype & rec = c->row(c->rows() + 1, true);
p.prec2rec(rec);
@ -650,10 +655,14 @@ void TCrea_cartellini::riempi_normale(TArray & carrelli, TArray & precs, int lev
p.pacchi() -= pacchi;
}
TCarrello * c = ncarrello < ncarrelli ? (TCarrello *) carrelli.objptr(ncarrello) : new TCarrello(p.key_carrello(ncarrello + 1));
c->destroy_rows();
carrelli.add(c);
TCarrello * c = (TCarrello *) carrelli.objptr(ncarrello++);
if (c == NULL)
{
c = new TCarrello(p.key_carrello(ncarrello));
carrelli.add(c);
c->destroy_rows();
}
TRectype & rec = c->row(c->rows() + 1, true);
@ -754,14 +763,16 @@ void TCrea_cartellini::crea_carrelli(TArray & precs)
riempi_resti(carrelli, precs);
}
for (int c = 0; c < carrelli.items(); c++)
_contnum = carrelli.items();
for (int c = 0; c < _contnum; c++)
{
TCarrello & carrello = (TCarrello &) carrelli[c];
carrello.write(true);
}
for (int c = carrelli.items() + 1 ; ; c++)
for (int c = _contnum + 1 ; ; c++)
{
TCarrello carrello(((TPrecedenza &) precs[0]).key_carrello(c));
@ -775,7 +786,6 @@ void TCrea_cartellini::crea_carrelli(TArray & precs)
else
break;
}
_contnum = carrelli.items();
}
void TCrea_cartellini::stampa()