42 lines
1.8 KiB
C++
Executable File
42 lines
1.8 KiB
C++
Executable File
#ifndef __RELATION_H
|
|
#include <relation.h>
|
|
#endif
|
|
#include "ef0101.h"
|
|
|
|
///////////////////////////////////////////////////////////////
|
|
// definizione dell'oggetto Distinta con la classe TDistinta //
|
|
///////////////////////////////////////////////////////////////
|
|
|
|
class TDistinta:public TObject
|
|
{
|
|
TArray _righe_dist; // array che contiene puntatori agli effetti nella distinta
|
|
public:
|
|
//ritorna un riferimento all'array degli effetti nella distinta
|
|
TArray& righe(){ return _righe_dist;}
|
|
//ritorna il numero degli effetti nella distinta (nell'array)
|
|
const int items() const{ return _righe_dist.items(); }
|
|
//elimina tutti gli effetti nella distinta (appartenti all'array)
|
|
int reset(){ return _righe_dist.destroy() == NOERR; }
|
|
// legge la distinta del tipo e numero passati
|
|
int read(const char tipo, const long numero);
|
|
// legge il record passato
|
|
int read(const TRectype& rec);
|
|
// scrive la distinta utilizzando la rewrite degli effetti
|
|
int write(bool force = FALSE, TToken_string* dati_dist = NULL);
|
|
// riscrive la distinta
|
|
int rewrite(TToken_string* dati_dist){ return write(TRUE, dati_dist); }
|
|
// rimuove la distinta del tipo e numero passati
|
|
int remove(char tipodist, long ndist);
|
|
// restituisce il tipo di distinta
|
|
const char tipodist() const { return ((TRectype&)_righe_dist[0]).get_char(EFF_TIPODIST); }
|
|
// restituisce il numero di distinta
|
|
const long ndist() const { return ((TRectype&)_righe_dist[0]).get_long(EFF_NDIST); }
|
|
// costruttore di default
|
|
TDistinta() {};
|
|
// costruttore distinta del tipo e numero passato
|
|
TDistinta(const char tipo, const long numero);
|
|
// costruttore distinta utilizzando il record passato
|
|
TDistinta(const TRectype& rec);
|
|
// distruttore di default
|
|
virtual ~TDistinta() {}
|
|
}; |