Files correlati : ve0.exe ve0300a.ini ve0100a.msk ve0200g.msk ve1300.alx ve1.exe ve17001.rep ve17002.rep ve1700a.msk ve1700a.msk ve2.exe ve6.exe ve61000a.msk ve17001.rep ve17002.rep ve17002.rep ve17001.rep ve1700a.msk ve6b00a.msk MODIFICHE CRPA Se si mette il flag P sulla data documento della maschera di un tipo documento viene proposta l’ultima data inserita. Possibilità di impostare il numero di copie nell’inserimento/modifica di un documento. Righe documento massime 10000 Aggiunta ricerca per riferimento cliente (ricerca alternativa). Aggiunto indirizzo cliente/fornitore sulla ricerca documenti. Lista documenti avanzata (report). Aggiunte le regolarizzazioni nella contabilizzazione documenti Sistema abilitazione della data registrazione in contabilizzazione documenti Aggiunta la possibilità di usare campi del documento nella dicitura del riferimento. Gestiti i movimenti di sola iva in contabilizzazione. Riferimento per mese nelle partite. Ordinamento per documento nell’evasione ordini con un flag in configurazione Impostato il tipo CF in base al tipo documento Aggiunto il messaggio cliente alla stampa report delle vendite git-svn-id: svn://10.65.10.50/branches/R_10_00@24005 c028cbd2-c16b-5b4b-a496-9718f37d4682
139 lines
3.7 KiB
C++
Executable File
139 lines
3.7 KiB
C++
Executable File
#ifndef __VELIB07_H
|
|
#define __VELIB07_H
|
|
|
|
#ifndef __VELIB_H
|
|
#include "velib.h"
|
|
#endif
|
|
|
|
#ifndef __REPORT_H
|
|
#include <report.h>
|
|
#endif
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TMateriali_base_recordset
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TMateriali_base_recordset : public TRecordset
|
|
{
|
|
TString _query;
|
|
TArray _boom;
|
|
long _pos;
|
|
TArray _column;
|
|
bool _reverse;
|
|
long _lastrow;
|
|
TRectype * _rdist;
|
|
|
|
protected:
|
|
const TString& query_text() const { return _query; }
|
|
TArray& boom() { return _boom; }
|
|
const TArray& boom() const { return _boom; }
|
|
|
|
void set_reverse(bool r) { _reverse = r; }
|
|
bool reverse() const { return _reverse;}
|
|
|
|
public:
|
|
virtual TRecnotype items() const { return _boom.items(); }
|
|
virtual bool move_to(TRecnotype pos) { _pos = pos; _lastrow = -1; return pos < items();}
|
|
virtual TRecnotype current_row() const { return _pos; }
|
|
virtual void requery();
|
|
virtual unsigned int columns() const { return _column.items();}
|
|
virtual const TRecordset_column_info& column_info(unsigned int column) const { return (const TRecordset_column_info&) _column[column];}
|
|
virtual const TVariant& get(unsigned int column) const;
|
|
virtual const TVariant& get(const char* column_name) const;
|
|
|
|
TMateriali_base_recordset(const char* use);
|
|
virtual ~TMateriali_base_recordset(){ delete _rdist;}
|
|
};
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TScalare_recordset
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TScalare_recordset : public TMateriali_base_recordset
|
|
{
|
|
|
|
protected:
|
|
|
|
public:
|
|
virtual void requery();
|
|
|
|
TScalare_recordset(const char* use) : TMateriali_base_recordset(use) {}
|
|
virtual ~TScalare_recordset() { }
|
|
};
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TDocument_cache
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TDocument_cache : TCache
|
|
{
|
|
bool _firmval;
|
|
|
|
protected:
|
|
virtual TObject* key2obj(const char* key);
|
|
|
|
public:
|
|
void set_firmval(bool firmval = true);
|
|
TDocumento& doc(const TRectype& rec);
|
|
|
|
TDocument_cache(bool firmval = false);
|
|
virtual ~TDocument_cache();
|
|
};
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TDocument_recordset
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TDocument_recordset : public TISAM_recordset
|
|
{
|
|
TDocument_cache _cache;
|
|
|
|
protected:
|
|
virtual const TVariant& get_field(int num, const char* field) const;
|
|
|
|
public:
|
|
void set_firmval(bool firmval = true) { _cache.set_firmval(firmval);}
|
|
const TDocumento& doc(const TRectype& rec) { return _cache.doc(rec);}
|
|
|
|
TDocument_recordset(const char* use) : TISAM_recordset(use) { }
|
|
virtual ~TDocument_recordset() { }
|
|
};
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// TDocument_report
|
|
///////////////////////////////////////////////////////////
|
|
|
|
class TDocument_report : public TReport
|
|
{
|
|
size_t _first_msg;
|
|
|
|
protected:
|
|
virtual size_t get_usr_words(TString_array& words) const;
|
|
virtual bool execute_usr_word(unsigned int opcode, TVariant_stack& stack);
|
|
bool msg_cliente(TVariant_stack& stack);
|
|
bool msg_parent_doc(TVariant_stack& stack);
|
|
bool msg_parent_row(TVariant_stack& stack);
|
|
bool msg_riepilogo_iva(TVariant_stack& stack);
|
|
|
|
void output_values(const TRectype& rec, const TString& output);
|
|
void reset_values(const TString& output);
|
|
|
|
public:
|
|
virtual bool set_recordset(const TString& query);
|
|
virtual bool set_recordset(TRecordset * set) { return TReport::set_recordset(set);}
|
|
|
|
bool load(const char* name);
|
|
};
|
|
|
|
///////////////////////////////////////////////
|
|
// Metodi non appartenenti a classi
|
|
///////////////////////////////////////////////
|
|
|
|
//metodo per il calcolo del fido cliente
|
|
real calcola_fido_cliente (long codcf, const TDate& datacalc, const TDoc_key& ignore);
|
|
|
|
#endif
|
|
|