diff --git a/src/mg/mglib.h b/src/mg/mglib.h index 1922498a6..521289bae 100755 --- a/src/mg/mglib.h +++ b/src/mg/mglib.h @@ -263,8 +263,8 @@ public: void put_ultimo_costo(const real& costo, const TDate& data); void put_costo_standard(const real& costo); - real giacenza_anno(const char* codmag, const char* livello, int anno) const; - real scorta_minima(const char* codmag, const char* livello, int anno=0, bool liv_riordino=FALSE) const; + real giacenza_anno(const char* codmag, const char* livello, int anno, bool giac_eff = false) const; + real scorta_minima(const char* codmag, const char* livello, int anno=0, bool liv_riordino = false) const; long lead_time(const char* codmag, const char* livello, int anno=0) const; TArticolo_giacenza(const char* codice = NULL); diff --git a/src/mg/mglib02.cpp b/src/mg/mglib02.cpp index f7c21571c..706d6fba4 100755 --- a/src/mg/mglib02.cpp +++ b/src/mg/mglib02.cpp @@ -1482,7 +1482,7 @@ real TArticolo_giacenza::giacenza_corretta(const TRectype& rec, bool giac_eff, b return giacenza; } -real TArticolo_giacenza::giacenza_anno(const char* codmag, const char* livello, int anno) const +real TArticolo_giacenza::giacenza_anno(const char* codmag, const char* livello, int anno, bool giac_eff) const { TString4 annoes; if (anno > 0) @@ -1494,8 +1494,14 @@ real TArticolo_giacenza::giacenza_anno(const char* codmag, const char* livello, i = find_mag(annoes, codmag, livello, i)) { const TRectype& rec = rmag.row(i); + if (!rec.get(MAG_CODMAG).empty()) giac += rec.get_real(MAG_GIAC); + if (giac_eff) + { + giac -= rec.get_real(MAG_INCL); + giac += rec.get_real(MAG_ACL); + } } return giac; }