Inventario in giacenza, colonne valorizz, ecc

git-svn-id: svn://10.65.10.50/trunk@4608 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
augusto 1997-06-12 14:55:12 +00:00
parent 4dee12777a
commit c403b2a41b
5 changed files with 154 additions and 50 deletions

View File

@ -20,11 +20,14 @@ class TForm_inventario : public TForm_stampemg
int colonne;
TConfig *conf_ditta;
TArticolo_giacenza * _curr_art;
TString16 _codlist,_catven;
TString16 _codlist,_catven; // codici listino e cat vendita
bool _giaceff, // flag inventario di giacenza
_valcomp; // flag valorizzzione finiti o componenti
TTipo_valorizz _valorizz_scelte[MAX_VAL_COLUMNS]; // valorizzazioni delle varie colonne
TArticolo_giacenza &curr_art();
TTipo_valorizz _valorizz_scelte[MAX_VAL_COLUMNS];
public:
void set_codlistino(const char * codcm,const char * cod);
void set_parametri(const char * codcm,const char * cod,bool giaceff, bool valcomp);
bool valorizzazione(TForm_item &cf, TTipo_valorizz t);
bool validate(TForm_item &cf, TToken_string &s);
void add_colval(int tipo);
@ -42,7 +45,16 @@ bool TForm_inventario::validate(TForm_item &cf, TToken_string &s)
TString16 annoes(magrec.get(MAG_ANNOES));
subcode=s.get();
if (subcode=="GIAC") {
cf.set("135");
real v=magrec.get_real(MAG_GIAC);
if (!_giaceff) {
v +=magrec.get_real(MAG_ACL);
v -=magrec.get_real(MAG_INCL);
if (_valcomp)
v -=magrec.get_real(MAG_PRODCOMP);
else
v +=magrec.get_real(MAG_PRODFIN);
}
cf.set(v.string());
}
if (subcode=="VAL1") {
valorizzazione(cf,_valorizz_scelte[0]);
@ -62,8 +74,26 @@ bool TForm_inventario::validate(TForm_item &cf, TToken_string &s)
if (subcode=="VAL6" && colonne >=6) {
valorizzazione(cf,_valorizz_scelte[5]);
}
if (subcode=="NAMEVAL1") {
cf.set(Nome_valorizz[_valorizz_scelte[0]]);
}
if (subcode=="NAMEVAL2"&& colonne >=2) {
cf.set(Nome_valorizz[_valorizz_scelte[1]]);
}
if (subcode=="NAMEVAL3" && colonne >=3) {
cf.set(Nome_valorizz[_valorizz_scelte[2]]);
}
if (subcode=="NAMEVAL4" && colonne >=4) {
cf.set(Nome_valorizz[_valorizz_scelte[3]]);
}
if (subcode=="NAMEVAL5"&& colonne >=5) {
cf.set(Nome_valorizz[_valorizz_scelte[4]]);
}
if (subcode=="NAMEVAL6" && colonne >=6) {
cf.set(Nome_valorizz[_valorizz_scelte[5]]);
}
if (subcode=="LINEATOTALI") {
TString l(39*colonne+12,'-');
TString l(29*colonne+12,'-');
cf.set(l);
}
}
@ -73,7 +103,7 @@ bool TForm_inventario::validate(TForm_item &cf, TToken_string &s)
TArticolo_giacenza &TForm_inventario::curr_art()
{
TRectype & magrec=relation()->lfile(LF_MAG).curr();
if (_curr_art==NULL || _curr_art->codice()!=magrec.get(MAG_CODART) ) {
if (_curr_art==NULL || magrec.get(MAG_CODART)!=_curr_art->codice() ) {
if (_curr_art) delete _curr_art;
_curr_art=new TArticolo_giacenza(magrec.get(MAG_CODART));
}
@ -138,31 +168,40 @@ bool TForm_inventario::valorizzazione(TForm_item &cf, TTipo_valorizz t)
cf.set(curr_art().costo_standard(annoes).string());
}
if (t==valorizz_costmedio) {
cf.set(curr_art().costo_standard(annoes).string());
const TString codmag(magrec.get(MAG_CODMAG));
const TString livello(magrec.get(MAG_LIVELLO));
cf.set(curr_art().costo_medio(annoes,codmag,livello).string());
}
if (t==valorizz_LIFO) {
cf.set(curr_art().LIFO(annoes,magrec.get(MAG_CODMAG),magrec.get(MAG_LIVELLO)).string());
const TString codmag(magrec.get(MAG_CODMAG));
const TString livello(magrec.get(MAG_LIVELLO));
cf.set(curr_art().LIFO(annoes,codmag,livello, _giaceff,_valcomp).string());
}
if (t==valorizz_FIFO) {
cf.set(curr_art().FIFO(annoes,magrec.get(MAG_CODMAG),magrec.get(MAG_LIVELLO)).string());
const TString codmag(magrec.get(MAG_CODMAG));
const TString livello(magrec.get(MAG_LIVELLO));
cf.set(curr_art().FIFO(annoes,codmag,livello, _giaceff,_valcomp).string());
}
if (t==valorizz_LIFOa) {
cf.set(curr_art().LIFO_annuale(annoes,magrec.get(MAG_CODMAG),magrec.get(MAG_LIVELLO)).string());
const TString codmag(magrec.get(MAG_CODMAG));
const TString livello(magrec.get(MAG_LIVELLO));
cf.set(curr_art().LIFO_annuale(annoes,codmag,livello, _giaceff,_valcomp).string());
}
if (t==valorizz_FIFOa) {
cf.set(curr_art().FIFO_annuale(annoes,magrec.get(MAG_CODMAG),magrec.get(MAG_LIVELLO)).string());
const TString codmag(magrec.get(MAG_CODMAG));
const TString livello(magrec.get(MAG_LIVELLO));
cf.set(curr_art().FIFO_annuale(annoes,codmag,livello, _giaceff,_valcomp).string());
}
return TRUE;
}
void TForm_inventario::set_codlistino(const char * codcatv,const char * codlist)
void TForm_inventario::set_parametri(const char * codcatv,const char * codlist,bool giaceff, bool valcomp)
{
_catven=codcatv;
_codlist=codlist;
_giaceff=giaceff;
_valcomp=valcomp;
}
TForm_inventario::TForm_inventario(const char *name,const char *code) :
@ -317,9 +356,15 @@ bool TStampa_inventario::user_create()
{
_mask = new TStampainv_mask();
_files = new TArray();
// aggiunge i files per usare i tracciati record
_files->add(new TLocalisamfile(LF_ANAMAG));
_files->add(new TLocalisamfile(LF_UMART));
_files->add(new TLocalisamfile(LF_DESLIN));
_files->add(new TLocalisamfile(LF_CODCORR));
_files->add(new TLocalisamfile(LF_MAG));
_files->add(new TLocalisamfile(LF_STOMAG));
_files->add(new TLocalisamfile(LF_MOVMAG));
_files->add(new TLocalisamfile(LF_RMOVMAG));
return TRUE;
}
@ -441,7 +486,11 @@ bool TStampa_inventario::set_print(int i)
_form->add_colval(_mask->get_int(F_VAL4));
_form->add_colval(_mask->get_int(F_VAL5));
_form->add_colval(_mask->get_int(F_VAL6));
_form->set_codlistino(_mask->get(F_CATVENLISTINO),_mask->get(F_CODLISTINO));
_form->set_parametri(_mask->get(F_CATVENLISTINO),
_mask->get(F_CODLISTINO),
*_mask->get(F_REALE_GIAC)=='G',
*_mask->get(F_FIN_COMP)=='C'
);
_form->print();
delete _form;

View File

@ -41,6 +41,7 @@
#define F_VAL4 154
#define F_VAL5 155
#define F_VAL6 156
#define F_FIN_COMP 157
#define G_CATMER 1
#define G_CODART 2

View File

@ -4,7 +4,7 @@ PAGE "Stampa inventario" -1 -1 78 20
LISTBOX F_ORDINE 10
BEGIN
PROMPT 2 1 "Ordinamento "
PROMPT 2 1 "Ordinamento "
ITEM "A|articoli"
MESSAGE ENABLE,F_ORDINEART
MESSAGE SHOW,F_TOTALIMAGAZZINI|SHOW,F_TOTALIDEPOSITI|"X",F_DETTAGLIOMAG|"X",F_DETTAGLIODEP|HIDE,F_DETTAGLIODEP|HIDE,F_DETTAGLIOMAG
@ -26,10 +26,25 @@ BEGIN
MESSAGE SHOW,G_CATMER@|ENABLE,G_CODART@|HIDE,G_DESART@
END
LIST F_REALE_GIAC 12
BEGIN
PROMPT 2 2 "Inventario "
ITEM "G|di giacenza"
ITEM "R|reale"
HELP "reale =(giac+ACL-INCL+PROD)"
END
LIST F_FIN_COMP 26
BEGIN
PROMPT 2 3 "Valorizzo solo "
ITEM "F|i finiti in produzione"
ITEM "C|i componenti in produzione"
END
NUMBER F_ANNOES 4
BEGIN
FLAGS "A"
PROMPT 2 2 "Codice es. "
PROMPT 42 2 "Codice es. "
USE ESC
INPUT CODTAB F_ANNOES
DISPLAY "Esercizio" CODTAB
@ -38,12 +53,6 @@ BEGIN
OUTPUT F_ANNOES CODTAB
ADD NONE
END
LIST F_REALE_GIAC 26
BEGIN
PROMPT 34 2 "Inventario "
ITEM "G|di giacenza"
ITEM "R|reale (giac+ACL-INCL+PROD)"
END
STRING F_DAART 20
BEGIN
@ -234,7 +243,7 @@ END
LIST F_VAL1 20
BEGIN
PROMPT 2 11 "Valorizzazione colonna 1 "
PROMPT 2 12 "Valorizz. 1 "
ITEM "1|Ultimo costo"
ITEM "2|Media ultimi costi"
ITEM "3|Prezzo di listino"
@ -247,7 +256,7 @@ BEGIN
END
LIST F_VAL2 20
BEGIN
PROMPT 2 12 "Valorizzazione colonna 2 "
PROMPT 42 12 "Valorizz. 2 "
ITEM "|"
ITEM "1|Ultimo costo"
ITEM "2|Media ultimi costi"
@ -261,7 +270,7 @@ BEGIN
END
LIST F_VAL3 20
BEGIN
PROMPT 2 13 "Valorizzazione colonna 3 "
PROMPT 2 13 "Valorizz. 3 "
ITEM "|"
ITEM "1|Ultimo costo"
ITEM "2|Media ultimi costi"
@ -275,7 +284,7 @@ BEGIN
END
LIST F_VAL4 20
BEGIN
PROMPT 2 14 "Valorizzazione colonna 4 "
PROMPT 42 13 "Valorizz. 4 "
ITEM "|"
ITEM "1|Ultimo costo"
ITEM "2|Media ultimi costi"
@ -289,7 +298,7 @@ BEGIN
END
LIST F_VAL5 20
BEGIN
PROMPT 2 15 "Valorizzazione colonna 5 "
PROMPT 2 14 "Valorizz. 5 "
ITEM "|"
ITEM "1|Ultimo costo"
ITEM "2|Media ultimi costi"
@ -303,7 +312,7 @@ BEGIN
END
LIST F_VAL6 20
BEGIN
PROMPT 2 16 "Valorizzazione colonna 6 "
PROMPT 42 14 "Valorizz. 6 "
ITEM "|"
ITEM "1|Ultimo costo"
ITEM "2|Media ultimi costi"
@ -318,7 +327,7 @@ END
STRING F_CATVENLISTINO 2
BEGIN
FLAGS "U"
PROMPT 32 17 "Cat. ven. "
PROMPT 2 17 "Listino: cat. ven. "
USE CVE
INPUT CODTAB F_CATVENLISTINO
DISPLAY "Cat." CODTAB
@ -331,7 +340,7 @@ END
STRING F_CODLISTINO 3
BEGIN
FLAGS "U"
PROMPT 52 17 "Codice listino "
PROMPT 42 17 "codice "
USE LF_CONDV
INPUT TIPO "L"
INPUT COD F_CODLISTINO

View File

@ -25,7 +25,7 @@ BEGIN
FINALE 133
END
SECTION HEADER ODD 5
SECTION HEADER ODD 6
STRINGA 1 40 1
BEGIN
@ -77,100 +77,144 @@ END
ITEM "6|six"
END
STRINGA 1 28
BEGIN
KEY "H1"
PROMPT 72 4 ""
MESSAGE _USER,NAMEVAL1
END
STRINGA 1 28
BEGIN
KEY "H1"
PROMPT 101 4 ""
MESSAGE _USER,NAMEVAL2
GROUP FG_COL2
END
STRINGA 1 28
BEGIN
KEY "H1"
PROMPT 130 4 ""
MESSAGE _USER,NAMEVAL3
GROUP FG_COL3
END
STRINGA 1 28
BEGIN
KEY "H1"
PROMPT 159 4 ""
MESSAGE _USER,NAMEVAL4
GROUP FG_COL4
END
STRINGA 1 28
BEGIN
KEY "H1"
PROMPT 188 4 ""
MESSAGE _USER,NAMEVAL5
GROUP FG_COL5
END
STRINGA 1 28
BEGIN
KEY "H1"
PROMPT 217 4 ""
MESSAGE _USER,NAMEVAL6
GROUP FG_COL6
END
STRINGA 6 20
BEGIN
KEY "H1"
PROMPT 2 4 "Codice"
PROMPT 2 5 "Codice"
END
STRINGA 7 40
BEGIN
KEY "H1"
PROMPT 24 4 "Descrizione"
PROMPT 24 5 "Descrizione"
END
STRINGA 7 40
BEGIN
KEY "H1"
PROMPT 45 4 "UM"
PROMPT 45 5 "UM"
END
STRINGA 8 12
BEGIN
KEY "H1"
PROMPT 55 4 "Giacenza"
PROMPT 55 5 "Giacenza"
END
STRINGA 8 12
BEGIN
KEY "H1"
PROMPT 71 4 "Valore"
PROMPT 71 5 "Valore"
END
STRINGA 9 12
BEGIN
KEY "H1"
PROMPT 84 4 "Val.unitario"
PROMPT 84 5 "Val.unitario"
GROUP FG_COL2
END
STRINGA 9 12
BEGIN
KEY "H1"
PROMPT 100 4 "Valore"
PROMPT 100 5 "Valore"
GROUP FG_COL2
END
STRINGA 10 12
BEGIN
KEY "H1"
PROMPT 113 4 "Val.unitario"
PROMPT 113 5 "Val.unitario"
GROUP FG_COL2
END
STRINGA 10 12
BEGIN
KEY "H1"
PROMPT 129 4 "Valore"
PROMPT 129 5 "Valore"
GROUP FG_COL3
END
STRINGA 11 12
BEGIN
KEY "H1"
PROMPT 142 4 "Val.unitario"
PROMPT 142 5 "Val.unitario"
GROUP FG_COL3
END
STRINGA 12 12
BEGIN
KEY "H1"
PROMPT 158 4 "Valore"
PROMPT 158 5 "Valore"
GROUP FG_COL4
END
STRINGA 13 12
BEGIN
KEY "H1"
PROMPT 171 4 "Val.unitario"
PROMPT 171 5 "Val.unitario"
GROUP FG_COL4
END
STRINGA 14 12
BEGIN
KEY "H1"
PROMPT 187 4 "Valore"
PROMPT 187 5 "Valore"
GROUP FG_COL5
END
STRINGA 15 12
BEGIN
KEY "H1"
PROMPT 200 4 "Val.unitario"
PROMPT 200 5 "Val.unitario"
GROUP FG_COL5
END
STRINGA 14 12
BEGIN
KEY "H1"
PROMPT 216 4 "Valore"
PROMPT 216 5 "Valore"
GROUP FG_COL6
END
STRINGA 15 12
BEGIN
KEY "H1"
PROMPT 229 4 "Val.unitario"
PROMPT 229 5 "Val.unitario"
GROUP FG_COL6
END
STRINGA 17 146
BEGIN
KEY "Separatore (iniziale)"
PROMPT 1 5 "------------------------------------------------------------------------------------------------------------------------------------------------------"
PROMPT 1 6 "------------------------------------------------------------------------------------------------------------------------------------------------------"
END
END

View File

@ -103,6 +103,7 @@ END
BEGIN
KEY "H1"
PROMPT 84 4 "Val.unitario"
GROUP FG_COL2
END
STRINGA 9 12
BEGIN