Variabili di Tmagazzini, TEsercizi_contabili e unità di misura in private

e aggiunti metodi di acesso public


git-svn-id: svn://10.65.10.50/trunk@5095 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
augusto 1997-08-22 09:27:37 +00:00
parent 2a2be1f919
commit 043926ad37

View File

@ -18,6 +18,10 @@ class TMask_anamag: public TMask {
int last_annogiac; int last_annogiac;
int last_annosto; int last_annosto;
TString16 _um_principale;
TMagazzini _magazzini;
TEsercizi_contabili _esercizi_contabili;
static bool handle_codice(TMask_field &, KEY); // handler del campo codice articolo static bool handle_codice(TMask_field &, KEY); // handler del campo codice articolo
static bool handle_livart(TMask_field &, KEY); // handler dei campi codice articolo (livelli) static bool handle_livart(TMask_field &, KEY); // handler dei campi codice articolo (livelli)
static bool handle_anno(TMask_field &, KEY); // handler del campo anno delle giacenze static bool handle_anno(TMask_field &, KEY); // handler del campo anno delle giacenze
@ -47,9 +51,9 @@ class TMask_anamag: public TMask {
public: public:
void ricalcola_giacenze(); void ricalcola_giacenze();
TString16 um_principale; TString16 &um_principale() {return _um_principale;}
TMagazzini magazzini; TMagazzini & magazzini() {return _magazzini;}
TEsercizi_contabili esercizi_contabili; TEsercizi_contabili &esercizi_contabili() {return _esercizi_contabili;}
TMask_anamag(TRelation * rel,bool mg_autorized); TMask_anamag(TRelation * rel,bool mg_autorized);
virtual ~TMask_anamag(); virtual ~TMask_anamag();
@ -98,7 +102,7 @@ TMask_anamag::TMask_anamag(TRelation * rel,bool mg_autorized) : TMask("ve2400")
// ABILITAZIONI PARAMETRICHE // ABILITAZIONI PARAMETRICHE
// Abilita la pagina delle giacenze // Abilita la pagina delle giacenze
if (mg_autorized && magazzini.gestmag()) if (mg_autorized && magazzini().gestmag())
{ {
enable_page(3,TRUE); enable_page(3,TRUE);
enable_page(4,TRUE); enable_page(4,TRUE);
@ -116,7 +120,7 @@ TMask_anamag::TMask_anamag(TRelation * rel,bool mg_autorized) : TMask("ve2400")
fld_giac.sheet_mask().field(F_NDIST).enable(FALSE); fld_giac.sheet_mask().field(F_NDIST).enable(FALSE);
} }
// abilita la gestione delle ubicazioni (manuale/su tabella) // abilita la gestione delle ubicazioni (manuale/su tabella)
if (magazzini.gestubi_man()) { if (magazzini().gestubi_man()) {
fld_giac.sheet_mask().field(F_UBICAZ).show(FALSE); fld_giac.sheet_mask().field(F_UBICAZ).show(FALSE);
fld_giac.sheet_mask().field(F_UBICAZD).show(FALSE); fld_giac.sheet_mask().field(F_UBICAZD).show(FALSE);
fld_giac.sheet_mask().field(F_UBICAZ2).show(TRUE); fld_giac.sheet_mask().field(F_UBICAZ2).show(TRUE);
@ -126,9 +130,9 @@ TMask_anamag::TMask_anamag(TRelation * rel,bool mg_autorized) : TMask("ve2400")
fld_giac.sheet_mask().field(F_UBICAZ2).show(FALSE); fld_giac.sheet_mask().field(F_UBICAZ2).show(FALSE);
} }
// abilita la gestione del monomagazzino // abilita la gestione del monomagazzino
fld_giac.sheet_mask().field(F_DESMAG).enable(magazzini.gestmultimag()); fld_giac.sheet_mask().field(F_DESMAG).enable(magazzini().gestmultimag());
fld_giac.enable_column(fld_giac.cid2index(F_CODMAG),magazzini.gestmultimag()); fld_giac.enable_column(fld_giac.cid2index(F_CODMAG),magazzini().gestmultimag());
fld_stomag.enable_column(fld_stomag.cid2index(F_STOCODMAG),magazzini.gestmultimag()); fld_stomag.enable_column(fld_stomag.cid2index(F_STOCODMAG),magazzini().gestmultimag());
} else { } else {
enable_page(4,FALSE); enable_page(4,FALSE);
@ -289,7 +293,7 @@ bool TMask_anamag::handle_anno(TMask_field &fld, KEY k)
if (mask.get(F_ANNO).empty() ) if (mask.get(F_ANNO).empty() )
{ {
mask.set(F_ANNORIF, mask.esercizi_contabili.last()) ; mask.set(F_ANNORIF, mask.esercizi_contabili().last()) ;
mask.set(F_ANNO, mask.get(F_ANNORIF)); mask.set(F_ANNO, mask.get(F_ANNORIF));
} }
if (mask.last_annogiac>0 && mask.last_annogiac!=fld.mask().get_int(F_ANNO)) { if (mask.last_annogiac>0 && mask.last_annogiac!=fld.mask().get_int(F_ANNO)) {
@ -319,14 +323,14 @@ bool TMask_anamag::handle_stoanno(TMask_field &fld, KEY k)
{ {
TSheet_field &fld_stomag= (TSheet_field &)fld.mask().field(F_SHEETSTOMAG); TSheet_field &fld_stomag= (TSheet_field &)fld.mask().field(F_SHEETSTOMAG);
if (mask.get_int(F_STOANNO) >=mask.esercizi_contabili.last()) if (mask.get_int(F_STOANNO) >=mask.esercizi_contabili().last())
{ {
fld.error_box("Impossibile dare la composizione delle rimanenze per l'ultimo anno"); fld.error_box("Impossibile dare la composizione delle rimanenze per l'ultimo anno");
mask.reset(F_STOANNO); mask.reset(F_STOANNO);
} }
if (mask.get(F_STOANNO).empty() ) if (mask.get(F_STOANNO).empty() )
{ {
mask.set(F_STOANNORIF, max(mask.esercizi_contabili.first(),mask.esercizi_contabili.pred(mask.get_int(F_ANNORIF))) ); mask.set(F_STOANNORIF, max(mask.esercizi_contabili().first(),mask.esercizi_contabili().pred(mask.get_int(F_ANNORIF))) );
mask.set(F_STOANNO, mask.get(F_STOANNORIF)); mask.set(F_STOANNO, mask.get(F_STOANNORIF));
} }
if ( fld.focusdirty() && mask.last_annosto>0 && mask.last_annosto!=fld.mask().get_int(F_STOANNO)) if ( fld.focusdirty() && mask.last_annosto>0 && mask.last_annosto!=fld.mask().get_int(F_STOANNO))
@ -378,19 +382,19 @@ bool TMask_anamag::handle_sheet_um(TMask_field &fld, KEY k)
return error_box("Le unità di misura devono essere diverse tra loro"); return error_box("Le unità di misura devono essere diverse tra loro");
} }
} }
if (!m.um_principale.blank() && m.um_principale!=f.cell(0,f.cid2index(FS_CODUM))) { if (!m.um_principale().blank() && m.um_principale()!=f.cell(0,f.cid2index(FS_CODUM))) {
for (int i= 0; i<f.items(); i++) for (int i= 0; i<f.items(); i++)
{ {
if (m.um_principale==f.cell(i,f.cid2index(FS_CODUM))) if (m.um_principale()==f.cell(i,f.cid2index(FS_CODUM)))
break; break;
} }
if (i>=f.items()) { if (i>=f.items()) {
return error_box("L'unità di misura '%s' deve essere presente in tabella",(const char *)m.um_principale); return error_box("L'unità di misura '%s' deve essere presente in tabella",(const char *)m.um_principale());
} }
} }
} else if (k==K_TAB) { } else if (k==K_TAB) {
} else if (k==K_SPACE) { } else if (k==K_SPACE) {
m.um_principale=f.cell(0,f.cid2index(FS_CODUM)); m.um_principale()=f.cell(0,f.cid2index(FS_CODUM));
} }
return TRUE; return TRUE;
@ -517,12 +521,12 @@ int TMask_anamag::add_totali_storico(TString & codmag)
real totq,totval; real totq,totval;
TLocalisamfile mag(LF_MAG); TLocalisamfile mag(LF_MAG);
mag.setkey(2); mag.setkey(2);
mag.put(MAG_ANNOES,esercizi_contabili.next(get_int(F_STOANNORIF))); mag.put(MAG_ANNOES,esercizi_contabili().next(get_int(F_STOANNORIF)));
//mag.put(MAG_CODART,get(F_CODART)); //mag.put(MAG_CODART,get(F_CODART));
mag.put(MAG_CODMAG,codmag); mag.put(MAG_CODMAG,codmag);
mag.read(); mag.read();
while (!mag.eof() while (!mag.eof()
&& esercizi_contabili.next(get_int(F_STOANNORIF))==mag.get_int(MAG_ANNOES) && esercizi_contabili().next(get_int(F_STOANNORIF))==mag.get_int(MAG_ANNOES)
&& strncmp((const char *)codmag,mag.get(MAG_CODMAG),3)==0) && strncmp((const char *)codmag,mag.get(MAG_CODMAG),3)==0)
{ {
if (get(F_CODART)==mag.get(MAG_CODART)) if (get(F_CODART)==mag.get(MAG_CODART))
@ -654,10 +658,10 @@ bool TMask_anamag::notify_sheet_giac(TSheet_field &f, int i, KEY k)
case (K_TAB): // modifica case (K_TAB): // modifica
if (*f.cell(i,f.cid2index(F_CODMAG))==' ') if (*f.cell(i,f.cid2index(F_CODMAG))==' ')
{ {
if (m.magazzini.standardmag().not_empty()) if (m.magazzini().standardmag().not_empty())
{ {
f.row(i).add(m.magazzini.standardmag(),f.cid2index(F_CODMAG)); f.row(i).add(m.magazzini().standardmag(),f.cid2index(F_CODMAG));
f.row(i).add(m.magazzini.standarddep(),f.cid2index(F_CODDEP)); f.row(i).add(m.magazzini().standarddep(),f.cid2index(F_CODDEP));
} }
} }
break; break;
@ -726,9 +730,9 @@ bool TMask_anamag::notify_sheet_sto(TSheet_field &s, int r, KEY k)
break; break;
case (K_INS): // richiesta di inserimento case (K_INS): // richiesta di inserimento
if (m.magazzini.standardmag().not_empty()) if (m.magazzini().standardmag().not_empty())
{ {
s.row(r).add(m.magazzini.standardmag(),s.cid2index(F_STOCODMAG)); s.row(r).add(m.magazzini().standardmag(),s.cid2index(F_STOCODMAG));
} }
break; break;
@ -862,7 +866,7 @@ bool TMask_anamag::handle_sheet_um_um(TMask_field &fld, KEY k)
x = 1.00; x = 1.00;
m.set(FS_FCUM, x); // il risultato viene scritto nel campo del fattore di conversione m.set(FS_FCUM, x); // il risultato viene scritto nel campo del fattore di conversione
} else { } else {
TString & um_p=((TMask_anamag &)f->mask()).um_principale; TString & um_p=((TMask_anamag &)f->mask()).um_principale();
if (um_p.blank()) { if (um_p.blank()) {
f->mask().set(F_UMPRINCIPALE,curr_um); f->mask().set(F_UMPRINCIPALE,curr_um);
f->mask().set(F_UMPRINCIPALE2,curr_um); f->mask().set(F_UMPRINCIPALE2,curr_um);
@ -945,10 +949,10 @@ void TMask_anamag::ricalcola_giacenze()
{ {
real fc(1.0); real fc(1.0);
TSheet_field & f=(TSheet_field &)field(F_SHEETUM); TSheet_field & f=(TSheet_field &)field(F_SHEETUM);
if (!um_principale.blank() && um_principale!=f.cell(0,f.cid2index(FS_CODUM))) { if (!um_principale().blank() && um_principale()!=f.cell(0,f.cid2index(FS_CODUM))) {
for (int i= 0; i<f.items(); i++) for (int i= 0; i<f.items(); i++)
{ {
if (um_principale==f.cell(i,f.cid2index(FS_CODUM))) if (um_principale()==f.cell(i,f.cid2index(FS_CODUM)))
break; break;
} }
fc=f.cell(i,f.cid2index(FS_FCUM)); fc=f.cell(i,f.cid2index(FS_FCUM));
@ -956,7 +960,7 @@ void TMask_anamag::ricalcola_giacenze()
if (fc != 1.0) if (fc != 1.0)
{ {
TLocalisamfile mag(LF_MAG),stomag(LF_STOMAG); TLocalisamfile mag(LF_MAG),stomag(LF_STOMAG);
int annoes=esercizi_contabili.first(); int annoes=esercizi_contabili().first();
do { do {
mag.zero(); mag.zero();
mag.put(MAG_ANNOES,annoes); mag.put(MAG_ANNOES,annoes);
@ -1006,7 +1010,7 @@ void TMask_anamag::ricalcola_giacenze()
stomag.rewrite(); stomag.rewrite();
stomag.next(); stomag.next();
} }
} while (annoes=esercizi_contabili.next(annoes)); } while (annoes=esercizi_contabili().next(annoes));
} }
return; return;
} }