campo-sirio/ha/halib.h
guy a5aeb839e4 Patch level : 10 ha
Files correlati     :
Ricompilazione Demo : [ ]
Commento            : avanzamento lavori


git-svn-id: svn://10.65.10.50/branches/R_10_00@21312 c028cbd2-c16b-5b4b-a496-9718f37d4682
2010-12-15 14:16:07 +00:00

223 lines
5.5 KiB
C++
Executable File

#ifndef __TEXTSET_H
#include <textset.h>
#endif __TEXTSET_H
#ifndef __VELIB_H
#include "../ve/velib.h"
#endif
#include "../mg/rmovmag.h"
#include "../pr/agenti.h"
#include "../ve/condv.h"
#include "../ve/rcondv.h"
//definizioni delle righe dei contratti premio Hardy (da includere nei .cpp)
#define HARDY_TIPORIGA_MERCE "H01"
#define HARDY_TIPORIGA_SOMMA "H02"
//ridefinizione dei campi per rendere chiare le elaborazioni
//legenda per il sagace programmatore:
//RC = riga contratto standard, tipo 1, merce
//RCA = riga contratto anticipo, tipo 2, spese (1 per ogni contratto anticipo)
// 1 = riga tipo 1, merce
// 2 = riga tipo 2, spese
// segue il vero significato del campo (vero... verosimile, che è meglio!)
#define RC_1_PREMIO RDOC_QTAGG1
#define RC_1_NSCARICO RDOC_QTAGG2
#define RC_1_BONUS RDOC_QTAGG5
#define RCA_2_ANTICIPATO RDOC_PREZZO
#define RCA_2_RESO_STORICO RDOC_QTAGG5
#define RCA_2_RESO_CORRENTE RDOC_QTAGG3
class TContratto_premi : public TDocumento
{
static TString4 _tipo_ant, _tipo_post, _tipo_rifa;
public:
char tipo_contratto() const;
TContratto_premi(char provv, int anno, const char* codnum, long ndoc);
TContratto_premi(const TRectype& rec_doc);
};
/////////////////////////////////////////////////////////////
// Recordset specifici per i dati da trasferire
/////////////////////////////////////////////////////////////
//classe generica per poter aggiungere pedissequamente i campi seguendo le tracce sulla documentazione
//tipologie di campo secondo il ricevente
#define T_N "N"
#define T_2N "2N"
#define T_Nv2N "N,2N"
#define T_Nv3N "N,3N"
#define T_2Nv2N "2N,2N"
#define T_X "X"
#define T_NS "NS"
//------------------------------------------------------------
// Hardy_recordset: serve per l'OUTPUT
//------------------------------------------------------------
class THardy_recordset : public TAS400_recordset
{
protected:
//esportazione
void add_field(const char* name, const char* tipo, int pos, int len);
void insert_field(const char* name, const char* tipo, int pos, int len);
void add_eol_field();
//importazione
void add_trc_field(const char* tr, const char* name, const char* tipo, int pos, int len);
public:
THardy_recordset(const int rec_length);
};
//Agenti
//-------
class TEsporta_agenti_recordset : public THardy_recordset
{
public:
TEsporta_agenti_recordset(int rec_length = 77);
};
//Clienti (clifo + cfven)
//-----------------------
class TEsporta_clienti_recordset : public THardy_recordset
{
public:
void set_fatt(const char* fld_name, const TVariant& value, const bool is_fatt);
TEsporta_clienti_recordset(int rec_length = 307);
};
//..e variazioni clienti!
class TEsporta_clientiVAR_recordset : public TEsporta_clienti_recordset
{
public:
TEsporta_clientiVAR_recordset();
};
//Sospesi ()
//-----------------------
class TEsporta_sospesi_recordset : public THardy_recordset
{
public:
TEsporta_sospesi_recordset(int rec_length = 69);
};
//..e variazioni sospesi!
class TEsporta_sospesiVAR_recordset : public TEsporta_sospesi_recordset
{
public:
TEsporta_sospesiVAR_recordset();
};
//Listini (condv + rcondv)
//------------------------
class TEsporta_listini_recordset : public THardy_recordset
{
public:
TEsporta_listini_recordset(int rec_length = 38);
};
//..e variazioni listini
class TEsporta_listiniVAR_recordset : public TEsporta_listini_recordset
{
public:
TEsporta_listiniVAR_recordset();
};
//Contratti (Particolari) (condv + rcondv)
//----------------------------------------
class TEsporta_contratti_recordset : public THardy_recordset
{
public:
TEsporta_contratti_recordset(int rec_length = 51);
};
//Offerte (Promo) (condv + rcondv)
//----------------------------------------
class TEsporta_offerte_recordset : public THardy_recordset
{
public:
TEsporta_offerte_recordset(int rec_length = 24);
};
//Prodotti (anamag + umart)
//-------------------------
class TEsporta_prodotti_recordset : public THardy_recordset
{
public:
TEsporta_prodotti_recordset(int rec_length = 65);
};
//..e variazioni prodotti
class TEsporta_prodottiVAR_recordset : public TEsporta_prodotti_recordset
{
public:
TEsporta_prodottiVAR_recordset();
};
//Linee
//-----
class TEsporta_linee_recordset : public THardy_recordset
{
public:
TEsporta_linee_recordset(int rec_length = 53);
};
//Carico (rdoc di carico)
//-----------------------
class TEsporta_carico_recordset : public THardy_recordset
{
public:
TEsporta_carico_recordset(int rec_length = 27);
};
//Decodart ()
//----------------
class TEsporta_decodart_recordset : public THardy_recordset
{
public:
TEsporta_decodart_recordset(int rec_length = 19);
};
//Barcode ()
//---------------
class TEsporta_barcode_recordset : public THardy_recordset
{
public:
TEsporta_barcode_recordset(int rec_length = 27);
};
//Attrezzature ()
//----------------
class TEsporta_attrezzature_recordset : public THardy_recordset
{
public:
TEsporta_attrezzature_recordset(int rec_length = 71);
};
//Pagamenti ()
//-----------------
class TEsporta_pagamenti_recordset : public THardy_recordset
{
public:
TEsporta_pagamenti_recordset(int rec_length = 27);
};
//----------------------------------------------------------
//metodi di utility
//----------------------------------------------------------
real hd_find_sconto(const TString& str_sconto);
const TString& hd_find_codag(long codcf); // Da cliente campo ad agente Hardy ("007")
const TString& hd_format_date8(const TDate& data);
const TString& hd_format_date6(const TDate& data);
long hd_key2cli(const TString& key);
long hd_key2forn(const TString& key);