Patch level : 10.0 592
Files correlati : lv2.exe Ricompilazione Demo : [ ] Commento : Corretto valore convenzionale per articolo git-svn-id: svn://10.65.10.50/trunk@20031 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
9507373884
commit
516de017a4
@ -693,15 +693,15 @@ void TFatturazione_lavanderie::post_process(TLista_documenti& doc_out, TLista_do
|
|||||||
if (arts.objptr(codart) == NULL)
|
if (arts.objptr(codart) == NULL)
|
||||||
{
|
{
|
||||||
const TString4 tipodot = rcont.get(LVRCONDV_NOLCIC);
|
const TString4 tipodot = rcont.get(LVRCONDV_NOLCIC);
|
||||||
TArticolo_lavanderie& artlav = cached_article_laundry(codart, 'C', clifo, use_indsp ? indsped : 0);
|
TArticolo_lavanderie& art = cached_article_laundry(codart, 'C', clifo, use_indsp ? indsped : 0);
|
||||||
//estraggo il record corrispondente su LF_CLIFOGIAC
|
//estraggo il record corrispondente su LF_CLIFOGIAC
|
||||||
const TRecmag_lavanderie& reclav = artlav.find_rec(annoes);
|
const TRecmag_lavanderie& rec = art.find_rec(annoes);
|
||||||
//se lo trovo e se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale
|
//se lo trovo e se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale
|
||||||
//dalle giacenze articolo per cliente, altrimenti leggo la dotazione odierna
|
//dalle giacenze articolo per cliente, altrimenti leggo la dotazione odierna
|
||||||
if (tipodot == "I")
|
if (tipodot == "I")
|
||||||
dot = reclav.get_real("DOTIN");
|
dot = rec.get_real("DOTIN");
|
||||||
else
|
else
|
||||||
dot = reclav.get_real("DOTOD");
|
dot = rec.get_real("DOTOD");
|
||||||
const real impconv = dot * rcont.get_real(LVRCONDV_VALCONV) * rcont.get_real(LVRCONDV_FORFPERCL) / CENTO;
|
const real impconv = dot * rcont.get_real(LVRCONDV_VALCONV) * rcont.get_real(LVRCONDV_FORFPERCL) / CENTO;
|
||||||
impconvtot += impconv;
|
impconvtot += impconv;
|
||||||
arts.add(codart, codart);
|
arts.add(codart, codart);
|
||||||
@ -729,6 +729,7 @@ void TFatturazione_lavanderie::post_process(TLista_documenti& doc_out, TLista_do
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
rout.put(RDOC_DESCR, "Valore convenzionale");
|
||||||
rout.put(RDOC_QTA, UNO);
|
rout.put(RDOC_QTA, UNO);
|
||||||
rout.put(RDOC_PREZZO, impconvtot);
|
rout.put(RDOC_PREZZO, impconvtot);
|
||||||
for (int k = doc.physical_rows(); k > i; k--)
|
for (int k = doc.physical_rows(); k > i; k--)
|
||||||
|
28
lv/lvlib.cpp
28
lv/lvlib.cpp
@ -562,6 +562,33 @@ const TString & TArticolo_lavanderie::get_str(const char* fieldname) const
|
|||||||
return EMPTY_STRING;
|
return EMPTY_STRING;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TArticolo_lavanderie::set_tipocf(char tipocf)
|
||||||
|
{
|
||||||
|
if (_tipocf != tipocf)
|
||||||
|
{
|
||||||
|
_tipocf = tipocf;
|
||||||
|
remove_body(LF_CLIFOGIAC);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void TArticolo_lavanderie::set_codcf(long codcf)
|
||||||
|
{
|
||||||
|
if (_codcf != codcf)
|
||||||
|
{
|
||||||
|
_codcf = codcf;
|
||||||
|
remove_body(LF_CLIFOGIAC);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void TArticolo_lavanderie::set_indsped(int indsped)
|
||||||
|
{
|
||||||
|
if (_indsped != indsped)
|
||||||
|
{
|
||||||
|
_indsped = indsped;
|
||||||
|
remove_body(LF_CLIFOGIAC);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void TArticolo_lavanderie::set_body_key(TRectype & rowrec)
|
void TArticolo_lavanderie::set_body_key(TRectype & rowrec)
|
||||||
{
|
{
|
||||||
const int logicnum = rowrec.num();
|
const int logicnum = rowrec.num();
|
||||||
@ -716,6 +743,7 @@ TArticolo_lavanderie & cached_article_laundry(const char * codart, const char ti
|
|||||||
{
|
{
|
||||||
HIDDEN TCache_articoli_lavanderie __cache_articoli_lavanderie;
|
HIDDEN TCache_articoli_lavanderie __cache_articoli_lavanderie;
|
||||||
|
|
||||||
|
|
||||||
TArticolo_lavanderie & art = __cache_articoli_lavanderie.lav(codart);
|
TArticolo_lavanderie & art = __cache_articoli_lavanderie.lav(codart);
|
||||||
|
|
||||||
art.set_tipocf(tipocf);
|
art.set_tipocf(tipocf);
|
||||||
|
@ -129,9 +129,9 @@ public:
|
|||||||
TRecord_array & clifomag(int annoes) const;
|
TRecord_array & clifomag(int annoes) const;
|
||||||
TRecord_array & clifomag(const char * annoes) const { return clifomag(atoi(annoes));}
|
TRecord_array & clifomag(const char * annoes) const { return clifomag(atoi(annoes));}
|
||||||
|
|
||||||
void set_tipocf(char tipocf) { _tipocf = tipocf;}
|
void set_tipocf(char tipocf);
|
||||||
void set_codcf(long codcf) { _codcf = codcf;}
|
void set_codcf(long codcf);
|
||||||
void set_indsped(int indsped) { _indsped = indsped;}
|
void set_indsped(int indsped);
|
||||||
|
|
||||||
const TRecmag_lavanderie & find_rec(int annoes) const;
|
const TRecmag_lavanderie & find_rec(int annoes) const;
|
||||||
const TRecmag_lavanderie & find_rec(const char * annoes) const { return find_rec(atoi(annoes)); }
|
const TRecmag_lavanderie & find_rec(const char * annoes) const { return find_rec(atoi(annoes)); }
|
||||||
|
@ -1265,15 +1265,14 @@ int TDocumento::write_rewrite(TBaseisamfile & f, bool re) const
|
|||||||
const TRectype & caulav = cache().get("&LVCAU", codcauslav);
|
const TRectype & caulav = cache().get("&LVCAU", codcauslav);
|
||||||
if (!caulav.empty())
|
if (!caulav.empty())
|
||||||
{
|
{
|
||||||
if (!qta.is_zero())
|
if (!qta.is_zero() && (j > 1))
|
||||||
{
|
{
|
||||||
const TString & causcons = caulav.get("S2");
|
const TString & causcons = caulav.get("S2");
|
||||||
|
|
||||||
CHECK(j > 1, "Wrong row number");
|
if (causcons.full())
|
||||||
if (causcons.full())
|
mov[LF_RMOVMAG][j - 1].put(RMOVMAG_CODCAUS, causcons);
|
||||||
mov[LF_RMOVMAG][j - 1].put(RMOVMAG_CODCAUS, causcons);
|
else
|
||||||
else
|
mov.destroy_row(--j, true);
|
||||||
mov.destroy_row(--j, true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const real qtarit = r.get(RDOC_QTAGG1);
|
const real qtarit = r.get(RDOC_QTAGG1);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user