Patch level : 10.0 patch ???

Files correlati     : cilib
Ricompilazione Demo : [ ]
Commento            :
Aggiunta la classe che gestisce la stringa chiave delle tabelle di modulo ROA e DRA
Aggiunta la classe per leggere i record di DRA
Modificata la classe per leggere i record di ROA


git-svn-id: svn://10.65.10.50/trunk@20640 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2010-06-30 14:36:03 +00:00
parent b7744a2a88
commit 27071b7f22
2 changed files with 125 additions and 104 deletions

View File

@ -504,114 +504,105 @@ TAlmanac_mask::TAlmanac_mask(const char* name)
set_handlers();
}
////////////////////////////
//// TRISOATT_KEY ////
////////////////////////////
//TIPO: metodo che restituisce il tipo (<R>isorsa o <A>ttrezzatura)
const char TRisoatt_key::tipo() const
{
return left(1)[0];
}
//COD: metodo che restituisce il codice della risorsa op dell'attrezzatura
const TString& TRisoatt_key::cod() const
{
return mid(1, 16);
}
//ANNO: metodo che restituisce l'anno a cui fa riferimento la risorsa o l'attrezzatura
const int TRisoatt_key::anno() const
{
return atoi(mid(17, 4));
}
//MESE: metodo che restituisce il mese a cui fa riferimento la risorsa o l'attrezzatura
const TString& TRisoatt_key::mese() const
{
return mid(21, 2);
}
//TPORA: metodo che restituisce il tipo dell'ora a cui fa riferimento la risorsa o l'attrezzatura
const TString& TRisoatt_key::tpora() const
{
return right(2);
}
TRisoatt_key::TRisoatt_key(const char* roakey)
{
set(roakey);
}
////////////////////////
//// TRISORSA ////
//// TRISOATT ////
////////////////////////
//CHIAVE: metodo che restituisce la chiave della tabella di modulo
const TString& TRisorsa::chiave() const
const TString& TRisoatt::chiave() const
{
return get("CODTAB");
}
//TIPO: metodo che restituisce il tipo (<R>isorsa o <A>ttrezzatura)
const char TRisorsa::tipo() const
{
return chiave().left(1)[0];
}
//COD: metodo che restituisce il codice della risorsa op dell'attrezzatura
const TString& TRisorsa::cod() const
{
return chiave().mid(1, 16);
}
//ANNO: metodo che restituisce l'anno a cui fa riferimento la risorsa o l'attrezzatura
const int TRisorsa::anno() const
{
return atoi(chiave().mid(17, 4));
}
//MESE: metodo che restituisce il mese a cui fa riferimento la risorsa o l'attrezzatura
const TString& TRisorsa::mese() const
{
return chiave().mid(21, 2);
}
//TPORA: metodo che restituisce il tipo dell'ora a cui fa riferimento la risorsa o l'attrezzatura
const TString& TRisorsa::tpora() const
{
return chiave().right(2);
}
//DESCR: metodo che restituisce la descrizione contenuta nella tabella di modulo
const TString& TRisorsa::descr() const
const TString& TRisoatt::descr() const
{
return get("S0");
}
//VALUNI: metodo che restituisce il valore unitario contenuto nella tabella di modulo
const real TRisorsa::valuni() const
const real TRisoatt::valuni() const
{
return get_real("R1");
}
void TRisorsa::set_chiave(const char* chiave)
{
put("CODTAB", chiave);
}
void TRisorsa::set_chiave(const char tipo, const char* codice, const int anno, const char* mese, const char* tpora)
{
TString16 cod = codice;
cod.left_just(16);
TString80 chiave;
chiave << tipo << cod << anno << mese << tpora;
set_chiave(chiave);
}
void TRisorsa::set_valuni(const real& valuni)
{
put("R1", valuni);
}
//costruttore
TRisorsa::TRisorsa(const char* chiave)
: TRectype(LF_TABMOD)
{
TModule_table tab("&ROA");
set_chiave(chiave);
if (read(tab) != NOERR)
{
tab.zero();
//set_chiave(chiave);
}
*this = tab.curr();
}
TRisorsa::TRisorsa(const char tipo, const char* codice, const int anno, const char* mese, const char* tpora)
: TRectype(LF_TABMOD)
{
TModule_table tab("&ROA");
set_chiave(tipo, codice, anno, mese, tpora);
if (read(tab) != NOERR)
{
tab.zero();
//set_chiave(tipo, codice, anno, mese, tpora);
}
*this = tab.curr();
}
TRisorsa::TRisorsa(const TRectype& r)
TRisoatt::TRisoatt(const TRectype& r)
: TRectype(r)
{
CHECK(r.num() == LF_TABMOD, "Tipo record errato");
}
TRisorsa::TRisorsa()
: TRectype(LF_TABMOD)
/////////////////////////////
//// TDISP_RISOATT ////
/////////////////////////////
//CHIAVE: metodo che restituisce la chiave della tabella di modulo
const TString& TDisp_risoatt::chiave() const
{
TModule_table tab("&ROA");
*this = tab.curr();
return get("CODTAB");
}
//DESCR: metodo che restituisce la descrizione contenuta nella tabella di modulo
const TString& TDisp_risoatt::descr() const
{
return get("S0");
}
//VALUNI: metodo che restituisce il valore unitario contenuto nella tabella di modulo
const int TDisp_risoatt::ore_prev() const
{
return get_int("I0");
}
//VALUNI: metodo che restituisce il valore unitario contenuto nella tabella di modulo
const int TDisp_risoatt::ore_cons() const
{
return get_int("I1");
}
//costruttore
TDisp_risoatt::TDisp_risoatt(const TRectype& r)
: TRectype(r)
{
CHECK(r.num() == LF_TABMOD, "Tipo record errato");
}

View File

@ -145,36 +145,66 @@ public:
};
////////////////////////
//// TRISORSA ////
////////////////////////
////////////////////////////
//// TRISOATT_KEY ////
////////////////////////////
//Classe TRisorsa
class TRisorsa : public TRectype
//Classe TRisoatt_key
class TRisoatt_key : public TString80
{
public:
TRisorsa & operator =(const TRisorsa& ris) { return *this; }
TRisoatt_key & operator =(const TRisoatt_key& roakey) { return *this; }
const TString& chiave() const;
const char tipo() const;
const TString& cod() const;
const int anno() const;
const TString& mese() const;
const TString& tpora() const;
const TString& descr() const;
const real valuni() const;
void set_chiave(const char* chiave);
void set_chiave(const char tipo, const char* codice, const int anno, const char* mese, const char* tpora);
void set_valuni(const real& valuni);
//costruttore
TRisorsa(const char* chiave);
TRisorsa(const char tipo, const char* codice, const int anno, const char* mese, const char* tpora);
TRisorsa(const TRectype& r);
TRisorsa();
virtual ~TRisorsa() {}
TRisoatt_key(const char* roakey);
};
////////////////////////
//// TRISOATT ////
////////////////////////
//Classe TRisoatt
class TRisoatt : public TRectype
{
public:
TRisoatt & operator =(const TRisoatt& ris) { return *this; }
const TString& chiave() const;
const TString& descr() const;
const real valuni() const;
//costruttore
TRisoatt(const TRectype& r);
virtual ~TRisoatt() {}
};
////////////////////////
//// TRISOATT ////
////////////////////////
//Classe TRisoatt
class TDisp_risoatt : public TRectype
{
public:
TDisp_risoatt & operator =(const TDisp_risoatt& ris) { return *this; }
const TString& chiave() const;
const TString& descr() const;
const int ore_prev() const;
const int ore_cons() const;
//costruttore
TDisp_risoatt(const TRectype& r);
virtual ~TDisp_risoatt() {}
};
#endif