899baaebcb
Files correlati : Ricompilazione Demo : [ ] Commento : mr0100.cpp Gestione tabelle IMP ed LNP mrplib.* Gestione calendari: lettura, scrittura, cancellazione mrtbimp.uml Tabella impianti mrtblnp.uml Tabella linee di produzione mrtblnp.h Simboli comuni alle due tabelle precedenti git-svn-id: svn://10.65.10.50/trunk@7160 c028cbd2-c16b-5b4b-a496-9718f37d4682
74 lines
1.9 KiB
C++
Executable File
74 lines
1.9 KiB
C++
Executable File
#ifndef __MRPLIB_H
|
|
#define __MRPLIB_H
|
|
|
|
#ifndef __AUTOMASK_H
|
|
#include <automask.h>
|
|
#endif
|
|
|
|
class TMRP_calendar : public TObject
|
|
{
|
|
static TString16 _days;
|
|
static TToken_string _holidays;
|
|
TAssoc_array _exc_imp, _exc_lin;
|
|
TString16 _codimp, _codlin;
|
|
|
|
protected:
|
|
void init_default();
|
|
void read_cal(const TString& key, char tipo);
|
|
int write_cal(char tipo) const;
|
|
int remove_cal(const TString& code, char tipo) const;
|
|
|
|
public:
|
|
int turni(const TDate& date, int& mini, int& maxi, bool as_is = FALSE);
|
|
|
|
int turni_min(const TDate& date)
|
|
{ int mini, maxi; turni(date, mini, maxi); return mini; }
|
|
|
|
int turni_max(const TDate& date)
|
|
{ int mini, maxi; turni(date, mini, maxi); return maxi; }
|
|
|
|
int set_turni(const TDate& date, int mini, int maxi);
|
|
|
|
int write() const;
|
|
int rewrite() const { return write(); }
|
|
int remove() const;
|
|
|
|
void declare_holiday(int g, int m);
|
|
void suppress_holiday(int g, int m);
|
|
bool is_holiday(int g, int m) const;
|
|
bool is_holiday(const TDate& date) const;
|
|
bool is_red(const TDate& date) const;
|
|
|
|
void set(const char* linea = NULL, const char* impianto = NULL);
|
|
const TString& linea() const { return _codlin; }
|
|
const TString& impianto() const { return _codimp; }
|
|
char tipo() const;
|
|
|
|
TMRP_calendar(const char* linea = NULL, const char* impianto = NULL);
|
|
virtual ~TMRP_calendar() { }
|
|
};
|
|
|
|
class TCalendar_field : public TWindowed_field
|
|
{
|
|
protected: // TWindowed_field
|
|
virtual TField_window* create_window(int x, int y, int dx, int dy,
|
|
WINDOW parent);
|
|
public:
|
|
void set_calendar(TMRP_calendar* cal, int year = 0);
|
|
|
|
TCalendar_field(TMask* m) : TWindowed_field(m) { }
|
|
virtual ~TCalendar_field() { }
|
|
};
|
|
|
|
class TCalendar_mask : public TAutomask
|
|
{
|
|
protected:
|
|
virtual TMask_field* parse_field(TScanner& scanner);
|
|
|
|
public:
|
|
TCalendar_mask(const char* name, int num = 0);
|
|
virtual ~TCalendar_mask() {};
|
|
};
|
|
|
|
#endif
|