Metodi per la gestione delle parti di codice spostati da SVriep_record all'applicazione di stampa
git-svn-id: svn://10.65.10.50/trunk@5269 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
ea61de8dbe
commit
d34c51a9af
107
sv/svlib01.cpp
107
sv/svlib01.cpp
@ -6,9 +6,6 @@
|
|||||||
|
|
||||||
#include "svriep.h"
|
#include "svriep.h"
|
||||||
#include "svstat.h"
|
#include "svstat.h"
|
||||||
#include "..\mg\anamag.h"
|
|
||||||
#include "..\pr\agenti.h"
|
|
||||||
#include "..\ve\clifor.h"
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// Funzioni di utilita' comune
|
// Funzioni di utilita' comune
|
||||||
@ -532,15 +529,7 @@ TStats_agg::TStats_agg() : _ditta(-1)
|
|||||||
// Record del file svriep
|
// Record del file svriep
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
|
|
||||||
TSVriep_record:: TSVriep_record(): TVariable_rectype(LF_SVRIEP),
|
TSVriep_record:: TSVriep_record(): TVariable_rectype(LF_SVRIEP)
|
||||||
_anamag(LF_ANAMAG),
|
|
||||||
_clifor(LF_CLIFO),
|
|
||||||
_agenti(LF_AGENTI),
|
|
||||||
_magazz(LF_MAG),
|
|
||||||
_tipodoc("%NUM"),
|
|
||||||
_catven("CVE"),
|
|
||||||
_zone("ZON"),
|
|
||||||
_ums("%UMS")
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
TSVriep_record::~TSVriep_record()
|
TSVriep_record::~TSVriep_record()
|
||||||
@ -603,102 +592,10 @@ void TSVriep_record::put_str(const char* fieldname, const char* val)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const TString& TSVriep_record::get_part(const char *lev_code) const
|
|
||||||
{
|
|
||||||
static TString park(' ',25);
|
|
||||||
|
|
||||||
int lev_code_num=atoi(lev_code+1);
|
|
||||||
switch (*lev_code)
|
|
||||||
{
|
|
||||||
case 'D': // tipo documento
|
|
||||||
return get(SVR_TIPODOC);
|
|
||||||
case 'A': // articolo
|
|
||||||
if (lev_code_num==0)
|
|
||||||
{
|
|
||||||
park=get(SVR_CODART);
|
|
||||||
return park.rpad(25);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
park =_liv_art.unpack_grpcode(get(SVR_CODART),lev_code_num);
|
|
||||||
return park.rpad(_liv_art.code_length(lev_code_num));
|
|
||||||
}
|
|
||||||
case 'L': // liv giac
|
|
||||||
CHECK(lev_code_num>0,"I livelli di giacenza sono utilizzabili solo singolarmente");
|
|
||||||
park = _liv_giac.unpack_grpcode(get(SVR_GIAC),lev_code_num);
|
|
||||||
return park.rpad(_liv_giac.code_length(lev_code_num));
|
|
||||||
case 'V': // cat. vendita
|
|
||||||
park=get(SVR_CATVEN);
|
|
||||||
return park.rpad(3);
|
|
||||||
case 'C': // cliente / fornitore
|
|
||||||
park.format("%c%6d",get_char(SVR_TIPOCF),get_int(SVR_CODCF));
|
|
||||||
return park;
|
|
||||||
case 'G': // agente
|
|
||||||
park.format("%5d",get_int(SVR_CODAG));
|
|
||||||
return park;
|
|
||||||
case 'M': // mag
|
|
||||||
park=get(SVR_MAG);
|
|
||||||
return park.rpad(3);
|
|
||||||
case 'Z': // zona
|
|
||||||
park=get(SVR_ZONA);
|
|
||||||
return park.rpad(3);
|
|
||||||
case 'U': // unità di misura
|
|
||||||
park=get(SVR_UMQTA);
|
|
||||||
return park.rpad(3);
|
|
||||||
default:
|
|
||||||
fatal_box("ai chent recognaiz the code of the key part!");
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const TString& TSVriep_record::get_descrpart(const char *lev_code)
|
|
||||||
{
|
|
||||||
int lev_code_num=atoi(lev_code+1);
|
|
||||||
switch (*lev_code)
|
|
||||||
{
|
|
||||||
case 'D': // tipo documento
|
|
||||||
return _tipodoc.get(get(SVR_TIPODOC)).get("S0");
|
|
||||||
case 'A': // articolo
|
|
||||||
if (lev_code_num==0 || lev_code_num== _liv_art.last_level())
|
|
||||||
{
|
|
||||||
return _anamag.get(get(SVR_CODART)).get(ANAMAG_DESCR);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return _liv_art.group_descr(get(SVR_CODART),lev_code_num);
|
|
||||||
}
|
|
||||||
case 'L': // liv giac
|
|
||||||
CHECK(lev_code_num>0,"I livelli di giacenza sono utilizzabili solo singolarmente");
|
|
||||||
//return _liv_giac.group_descr(unpack_grpcode(get(SVR_GIAC),lev_code_num),lev_code_num);
|
|
||||||
case 'V': // cat. vendita
|
|
||||||
return _catven.get(get(SVR_CATVEN)).get("S0");
|
|
||||||
case 'C': // cliente
|
|
||||||
{
|
|
||||||
TToken_string cod;
|
|
||||||
cod.add(get_char(SVR_TIPOCF));
|
|
||||||
cod.add(get_int(SVR_CODCF));
|
|
||||||
return _clifor.get(cod).get(CLI_RAGSOC);
|
|
||||||
}
|
|
||||||
case 'G': // agente
|
|
||||||
return _agenti.get(get(SVR_CODAG)).get(AGE_RAGSOC);
|
|
||||||
case 'M': // mag
|
|
||||||
return _magazz.get(get(SVR_MAG)).get("S0");
|
|
||||||
case 'Z': // zona
|
|
||||||
return _zone.get(get(SVR_ZONA)).get("S0");
|
|
||||||
case 'U': // Unità di misura
|
|
||||||
return _ums.get(get(SVR_UMQTA)).get("S0");
|
|
||||||
default:
|
|
||||||
fatal_box("ai chent recognaiz the code of the key part!");
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// Cache
|
// Cache
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
#define RWCACHE_SIZE 10
|
#define RWCACHE_SIZE 100
|
||||||
|
|
||||||
// funzione di default: prende una chiave a caso chiave
|
// funzione di default: prende una chiave a caso chiave
|
||||||
const TString & TRWrecord_cache::getkey2discard()
|
const TString & TRWrecord_cache::getkey2discard()
|
||||||
|
@ -96,13 +96,8 @@ public:
|
|||||||
|
|
||||||
class TSVriep_record : public TVariable_rectype
|
class TSVriep_record : public TVariable_rectype
|
||||||
{
|
{
|
||||||
TCodart_livelli _liv_art;
|
|
||||||
TCodgiac_livelli _liv_giac;
|
|
||||||
TRecord_cache _anamag,_clifor,_agenti,_magazz,_tipodoc,_catven,_zone,_ums;
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
const TString& get_part(const char *lev_code) const;
|
|
||||||
const TString& get_descrpart(const char *lev_code);
|
|
||||||
|
|
||||||
virtual const TString & get_str(const char* fieldname) const;
|
virtual const TString & get_str(const char* fieldname) const;
|
||||||
virtual void put_str(const char* fieldname, const char* val);
|
virtual void put_str(const char* fieldname, const char* val);
|
||||||
@ -110,6 +105,7 @@ public:
|
|||||||
virtual ~TSVriep_record();
|
virtual ~TSVriep_record();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const TString& get_partname(const char *lev_code) ;
|
||||||
|
|
||||||
class TRWrecord_cache : public TRecord_cache
|
class TRWrecord_cache : public TRecord_cache
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user