campo-sirio/ve/clifor.h

82 lines
1.9 KiB
C
Raw Normal View History

#ifndef __CLIFOR_H
#define __CLIFOR_H
#ifndef __MULTIREC_H
#include <multirec.h>
#endif
#ifndef __CLIFO_H
#include <clifo.h>
#endif
#ifndef __CFVEN_H
#include <cfven.h>
#endif
#ifndef __INDSP_H
#include <indsp.h>
#endif
#ifndef __OCCAS_H
#include <occas.h>
#endif
class TDocumento;
class TOccasionale : public TRectype
{
public:
const TString& codice() const { return get(OCC_CFPI); }
TRectype& operator = (const TRectype& r);
TOccasionale& operator = (const TOccasionale& r);
TOccasionale();
TOccasionale(const TRectype& r);
TOccasionale(const TOccasionale& r);
virtual ~TOccasionale();
};
class TCli_for : public TMultiple_rectype
{
TRecfield * _tipo;
TRecfield * _codice;
TRecfield * _ven_tipo;
TRecfield * _ven_codice;
TRectype _ven_rec;
TRectype _letint;
TDate _last_data;
bool _use_lettere;
bool _lettera_found;
protected:
virtual int write_rewrite(TBaseisamfile& f, bool re = FALSE) const;
void init();
public:
bool read_lettera(const TDate & data, bool extended = false);
bool occasionale() const { return get_bool(CLI_OCCAS); }
TRectype & vendite() const;
bool use_lettere() const { return _use_lettere;}
const TRectype & lettera() const { return _letint;}
char tipo() const { return *(const char *) (*_tipo); }
long codice() const { return (long) *_codice; }
bool ok() const { return !empty();}
virtual int read(const TRectype& rec, word op = _isequal, word lockop = _nolock);
int read(char tipo, long codice, word op = _isequal, word lockop = _nolock);
virtual int remove(TBaseisamfile& f) const;
void cli2doc(TDocumento & doc);
const TString& find_listino_al(const TDate& datadoc) const;
TCli_for(char tipo = ' ', long codice = 0L);
TCli_for(const TRectype & rec);
TCli_for(const TCli_for & c);
virtual ~TCli_for();
};
#endif