Patch level : 2.0 496
Files correlati : mg4.exe mg4200.msk mg4200a.frm Ricompilazione Demo : [ ] Commento : GF20041 Eseguendo la stampa dell'inventario con la spunta stampa totali livelli di giacenza dal 1° al 1°livello (colore) il 2° livello sarebbe la taglia mi segnala due righe di giacenza per il colore rosso di 100 e 200 pezzi qundo invece mi aspettavo un'unica riga per 400 pz. (invio dati sui quali si può esegure la verifica) git-svn-id: svn://10.65.10.50/trunk@11235 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
2613e57dd1
commit
99c4035bb0
@ -19,14 +19,12 @@ TCursor* TForm_inventario::cursor() const
|
||||
|
||||
bool TForm_inventario::validate(TForm_item &cf, TToken_string &s)
|
||||
{
|
||||
const TString code(s.get(0)); // prende il primo parametro, il codice del messaggio
|
||||
TString subcode;
|
||||
const TString80 code = s.get(0); // prende il primo parametro, il codice del messaggio
|
||||
|
||||
if (code=="_USER")
|
||||
{
|
||||
TLocalisamfile & magfile=relation()->lfile(LF_MAG);
|
||||
TRectype & magrec=magfile.curr();
|
||||
subcode=s.get();
|
||||
const TRectype& magrec=relation()->curr(LF_MAG);
|
||||
const TString subcode=s.get();
|
||||
if (subcode=="GIAC")
|
||||
{
|
||||
real v=curr_art().giacenza_corretta(magrec, FALSE,_valcomp);
|
||||
@ -84,7 +82,7 @@ bool TForm_inventario::validate(TForm_item &cf, TToken_string &s)
|
||||
|
||||
TArticolo_giacenza_loadable &TForm_inventario::curr_art()
|
||||
{
|
||||
TString80 newcode(relation()->lfile(LF_ANAMAG).curr().get(ANAMAG_CODART));
|
||||
const TString80 newcode(relation()->curr(LF_ANAMAG).get(ANAMAG_CODART));
|
||||
if (_curr_art==NULL || newcode != _curr_art->codice())
|
||||
{
|
||||
if (_curr_art) delete _curr_art;
|
||||
@ -141,13 +139,13 @@ bool TForm_inventario::valorizzazione(TForm_item &cf, TTipo_valorizz t)
|
||||
v=curr_art().costo_standard(annoes);
|
||||
}
|
||||
if (t==valorizz_costmediopond) {
|
||||
TString codmag(magrec.get(MAG_CODMAG));codmag.left(3);
|
||||
const TString livello(magrec.get(MAG_LIVELLO));
|
||||
const TString4 codmag = magrec.get(MAG_CODMAG).left(3);
|
||||
const TString80 livello(magrec.get(MAG_LIVELLO));
|
||||
v=curr_art().costo_mediopond(annoes,codmag,livello);
|
||||
}
|
||||
if (t==valorizz_costmedio) {
|
||||
TString codmag(magrec.get(MAG_CODMAG));codmag.left(3);
|
||||
const TString livello(magrec.get(MAG_LIVELLO));
|
||||
const TString4 codmag = magrec.get(MAG_CODMAG).left(3);
|
||||
const TString80 livello(magrec.get(MAG_LIVELLO));
|
||||
v=curr_art().costo_medio(annoes,codmag,livello);
|
||||
}
|
||||
// arrotonda le valorizzazioni a costo unitario
|
||||
@ -156,23 +154,23 @@ bool TForm_inventario::valorizzazione(TForm_item &cf, TTipo_valorizz t)
|
||||
v = _currency->get_num();
|
||||
|
||||
if (t==valorizz_LIFO) {
|
||||
TString codmag(magrec.get(MAG_CODMAG));codmag.left(3);
|
||||
const TString livello(magrec.get(MAG_LIVELLO));
|
||||
const TString4 codmag = magrec.get(MAG_CODMAG).left(3);
|
||||
const TString80 livello(magrec.get(MAG_LIVELLO));
|
||||
v=curr_art().LIFO(annoes,codmag,livello, FALSE,_valcomp);
|
||||
}
|
||||
if (t==valorizz_FIFO) {
|
||||
TString codmag(magrec.get(MAG_CODMAG));codmag.left(3);
|
||||
const TString livello(magrec.get(MAG_LIVELLO));
|
||||
const TString4 codmag = magrec.get(MAG_CODMAG).left(3);
|
||||
const TString80 livello(magrec.get(MAG_LIVELLO));
|
||||
v=curr_art().FIFO(annoes,codmag,livello, FALSE,_valcomp);
|
||||
}
|
||||
if (t==valorizz_LIFOa) {
|
||||
TString codmag(magrec.get(MAG_CODMAG));codmag.left(3);
|
||||
const TString livello(magrec.get(MAG_LIVELLO));
|
||||
const TString80 livello(magrec.get(MAG_LIVELLO));
|
||||
v=curr_art().LIFO_annuale(annoes,codmag,livello, FALSE,_valcomp);
|
||||
}
|
||||
if (t==valorizz_FIFOa) {
|
||||
TString codmag(magrec.get(MAG_CODMAG));codmag.left(3);
|
||||
const TString livello(magrec.get(MAG_LIVELLO));
|
||||
const TString4 codmag = magrec.get(MAG_CODMAG).left(3);
|
||||
const TString80 livello(magrec.get(MAG_LIVELLO));
|
||||
v=curr_art().FIFO_annuale(annoes,codmag,livello, FALSE,_valcomp);
|
||||
}
|
||||
const real giac_corretta = curr_art().giacenza_corretta(magrec, FALSE,_valcomp);
|
||||
@ -683,14 +681,14 @@ void TStampa_inventario::setprint_permagazzini()
|
||||
// ORDINAMENTO
|
||||
void TStampa_inventario::setprint_perarticoli()
|
||||
{
|
||||
char subordine=*_mask->get(F_ORDINEART);
|
||||
char subordine=_mask->get(F_ORDINEART)[0];
|
||||
TRectype darec(LF_MAG),arec(LF_MAG);
|
||||
TString cfilter, espr1, espr2;
|
||||
_cur = _form->cursor();
|
||||
// setta il filtro sul cursore
|
||||
if (*_mask->get(F_FILTRO)=='N')
|
||||
if (_mask->get(F_FILTRO)[0]=='N')
|
||||
cfilter << "(STR(GIAC!=\"0\"))&&" ;
|
||||
if (*_mask->get(F_FILTRO)=='+')
|
||||
if (_mask->get(F_FILTRO)[0]=='+')
|
||||
cfilter << "(STR(GIAC>\"0\"))&&" ;
|
||||
if (cfilter.not_empty())
|
||||
cfilter.rtrim(2);
|
||||
@ -990,10 +988,9 @@ void TStampa_inventario::main_loop()
|
||||
const bool b = _mask->get_bool(F_ALLADATA);
|
||||
const bool r = *_mask->get(F_REALE_GIAC)=='R';
|
||||
|
||||
|
||||
if (*_mask->get(F_ORDINE)=='A')
|
||||
if (_mask->get(F_ORDINE)[0]=='A')
|
||||
{
|
||||
if (*_mask->get(F_FILTRO)=='T') // tutti gli articoli
|
||||
if (_mask->get(F_FILTRO)[0]=='T') // tutti gli articoli
|
||||
{
|
||||
_form = new TForm_inventario("mg4200aa", "");
|
||||
if (b && !calcola_giacenze(FALSE))
|
||||
|
@ -1,4 +1,19 @@
|
||||
#include "mg4200.h"
|
||||
|
||||
TOOLBAR "Toolbar" 0 -3 0 3
|
||||
|
||||
BUTTON DLG_PRINT 10 2
|
||||
BEGIN
|
||||
PROMPT -12 -11 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 10 2
|
||||
BEGIN
|
||||
PROMPT -22 -11 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Stampa inventario" -1 -1 78 20
|
||||
|
||||
LISTBOX F_ORDINE 10
|
||||
@ -10,7 +25,6 @@ BEGIN
|
||||
MESSAGE " ",F_FILTRO|SHOW,F_TOTALIDEPOSITI|HIDE,F_TOTALIMAGAZZINI|HIDE,F_DETTAGLIOMAG
|
||||
END
|
||||
|
||||
|
||||
LISTBOX F_ORDINEART 20
|
||||
BEGIN
|
||||
FLAGS "G"
|
||||
@ -471,16 +485,6 @@ BEGIN
|
||||
GROUP G_LISTINO
|
||||
END
|
||||
|
||||
|
||||
BUTTON DLG_OK 10 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 ""
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 10 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
@ -11,18 +11,17 @@ END
|
||||
|
||||
DESCRIPTION
|
||||
BEGIN
|
||||
47->* "Anagrafica articoli"
|
||||
109->* "Archivio Giacenze"
|
||||
MAG->* "Tabella magazzini"
|
||||
49->* "Unità di misura articoli"
|
||||
47->* "Anagrafica articoli"
|
||||
109->* "Archivio Giacenze"
|
||||
MAG->* "Tabella magazzini"
|
||||
49->* "Unità di misura articoli"
|
||||
END
|
||||
|
||||
GENERAL
|
||||
BEGIN
|
||||
OFFSET 0 1
|
||||
OFFSET 0 1
|
||||
END
|
||||
|
||||
|
||||
SECTION GRAPHIC
|
||||
BEGIN
|
||||
END
|
||||
@ -39,7 +38,7 @@ END
|
||||
STRINGA 2 10
|
||||
BEGIN
|
||||
KEY "Data"
|
||||
PROMPT 120 1 "Data "
|
||||
PROMPT 110 1 "Data "
|
||||
MESSAGE _TODAY
|
||||
END
|
||||
|
||||
@ -53,7 +52,7 @@ END
|
||||
NUMERO 4 32
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 45 2 "Stampa inventario esercizio "
|
||||
PROMPT 45 2 "@bStampa inventario esercizio "
|
||||
MESSAGE _ANNO
|
||||
END
|
||||
|
||||
|
@ -358,11 +358,20 @@ bool TForm_stampemg::setdettaglio(bool show, int fromlivart,int livart,int froml
|
||||
for (i=fromlivgiac;i<=tolivgiac ; i++) {
|
||||
if (livart==0)
|
||||
{
|
||||
TString sname=("GRUPPI_LIVGIAC");
|
||||
sname << i;
|
||||
TString80 sname;
|
||||
sname << "GRUPPI_LIVGIAC" << i;
|
||||
TForm_subsection &s=(TForm_subsection &)find_field('B',odd_page,sname);
|
||||
TString cond(s.condition());
|
||||
cond << "+LIVELLO[" << livelli_giacenza().packed_length(i-1)+1 << "," << livelli_giacenza().packed_length(i) <<']';
|
||||
|
||||
// ATTENZIONE, WARNING, ACHTUNG: Libera interpretazione
|
||||
// cond finiva per essere CODART+CODART+LIVELLO+LIVELLO[1.6]+LIVELLO[7,8]
|
||||
// cond ora vale "giustamente" CODART+LIVELLO[1,8]
|
||||
|
||||
// TString cond(s.condition()); // Augusto Mode
|
||||
// cond << "+LIVELLO[" << livelli_giacenza().packed_length(i-1)+1 << "," << livelli_giacenza().packed_length(i) <<']';
|
||||
|
||||
TString cond = "CODART"; // Guy Mode
|
||||
cond << "+LIVELLO[1," << livelli_giacenza().packed_length(i) <<']';
|
||||
|
||||
s.setcondition(cond,_strexpr);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user