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 "svstat.h"
|
||||
#include "..\mg\anamag.h"
|
||||
#include "..\pr\agenti.h"
|
||||
#include "..\ve\clifor.h"
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// Funzioni di utilita' comune
|
||||
@ -532,15 +529,7 @@ TStats_agg::TStats_agg() : _ditta(-1)
|
||||
// Record del file 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(): TVariable_rectype(LF_SVRIEP)
|
||||
{}
|
||||
|
||||
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
|
||||
///////////////////////////////////////////////////////////
|
||||
#define RWCACHE_SIZE 10
|
||||
#define RWCACHE_SIZE 100
|
||||
|
||||
// funzione di default: prende una chiave a caso chiave
|
||||
const TString & TRWrecord_cache::getkey2discard()
|
||||
|
@ -96,13 +96,8 @@ public:
|
||||
|
||||
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:
|
||||
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 void put_str(const char* fieldname, const char* val);
|
||||
@ -110,6 +105,7 @@ public:
|
||||
virtual ~TSVriep_record();
|
||||
};
|
||||
|
||||
const TString& get_partname(const char *lev_code) ;
|
||||
|
||||
class TRWrecord_cache : public TRecord_cache
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user