Patch level : 10.0 740
Files correlati : mg3.exe Ricompilazione Demo : [ ] Commento : 0001632: 002497 - Pharmatex - stampa schede di magazzino Con installata la patch 736, chiedo la stampa scheda dell'articolo 120504H, suddivisa per magazzino e fino al livello di giacenza, alla voce saldo precedente mi riporta 0, se scelgo di stampare al livello dell'articolo invece mi riporta un saldo precedente (corretto) di 39200. git-svn-id: svn://10.65.10.50/trunk@20456 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
77c98bdf2a
commit
c9aa12f2b3
@ -277,10 +277,9 @@ bool TForm_schedemag::validate(TForm_item &cf, TToken_string &s)
|
||||
valore = "";
|
||||
if (!_magazzino_chiuso) // mag precedente non chiuso, mancano i saldi di apertura
|
||||
{
|
||||
TString80 codart; _saldo_key.get(0, codart);
|
||||
TString16 livello; _saldo_key.get(1, livello);
|
||||
TString8 codmag; _saldo_key.get(2, codmag);
|
||||
|
||||
TString80 codart; _saldo_key.get(0, codart); codart.rtrim();
|
||||
TString16 livello; _saldo_key.get(1, livello); livello.rtrim();
|
||||
TString8 codmag; _saldo_key.get(2, codmag); codmag.rtrim();
|
||||
if (_tolivart > 0 && _tolivart < livelli_articolo().last_level())
|
||||
{
|
||||
codart.cut(livelli_articolo().code_length(_tolivart));
|
||||
@ -297,10 +296,12 @@ bool TForm_schedemag::validate(TForm_item &cf, TToken_string &s)
|
||||
livello.cut(0);
|
||||
}
|
||||
|
||||
TString query, region;
|
||||
query << "USE " << LF_MAG;
|
||||
TString region;
|
||||
region << MAG_ANNOES << '=' << _anno_prec;
|
||||
region << ' ' << MAG_CODART << '=' << codart;
|
||||
|
||||
TString query;
|
||||
query << "USE " << LF_MAG;
|
||||
query << "\nFROM " << region;
|
||||
query << "\nTO " << region;
|
||||
if (_tolivart <= 0 || _tolivart >= livelli_articolo().last_level())
|
||||
@ -312,8 +313,22 @@ bool TForm_schedemag::validate(TForm_item &cf, TToken_string &s)
|
||||
{
|
||||
if (_sudd_mag && magprec.get(MAG_CODMAG).as_string() != codmag)
|
||||
continue; // Escludo magazzini indesiderati
|
||||
if (livello.not_empty() && !magprec.get(MAG_LIVELLO).as_string().starts_with(livello))
|
||||
continue; // Escludo livelli di giacenza non corrispondenti
|
||||
|
||||
if (_tolivgiac > 0) // Stampa per livello di giacenza
|
||||
{
|
||||
const TString& cl = magprec.get(MAG_LIVELLO).as_string();
|
||||
if (_tolivgiac >= livelli_giacenza().last_level())
|
||||
{
|
||||
if (cl != livello)
|
||||
continue; // Escludi livelli non corrispondenti
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!cl.starts_with(livello))
|
||||
continue; // Escludi sotto livelli non corrispondenti
|
||||
}
|
||||
}
|
||||
|
||||
const real saldoprec = magprec.get(nomecampo_scheda()).as_real();
|
||||
currsaldo += saldoprec; // Sommo il saldo precedente al campo corrente
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user