diff --git a/ve/f33.trr b/ve/f33.trr index 08ac8542b..28a01c039 100755 --- a/ve/f33.trr +++ b/ve/f33.trr @@ -70,5 +70,5 @@ DATAAGG|5|8|0|Data ultimo aggiornamento UTENTE|1|10|0|Utente ultimo aggiornamento 3 PROVV+ANNO+CODNUM+NDOC| -TIPOCF+CODCF+PROVV+ANNO+DATADOC+CODNUM+NDOC| -DATADOC+PROVV+ANNO+CODNUM+NDOC| +TIPOCF+CODCF+PROVV+ANNO+DATADOC+CODNUM+NDOC|X +DATADOC+PROVV+ANNO+CODNUM+NDOC|X diff --git a/ve/velib.h b/ve/velib.h index 65363936c..7cd1417d1 100755 --- a/ve/velib.h +++ b/ve/velib.h @@ -438,6 +438,7 @@ public: const TString& valuta() const { return get("CODVAL"); } const real cambio() const { return get_real("CAMBIO"); } bool tipo_valido() const { return get("TIPODOC").not_empty(); } + static const TTipo_documento& tipo(const char * tipodoc); const TTipo_documento& tipo() const; void set_tipo(const char * tipo) { head().put("TIPODOC", tipo);} void set_liv_giac_len(int liv, int len) { _liv_len[liv - 1] = len;} diff --git a/ve/velib03.cpp b/ve/velib03.cpp index 8c9fa284d..6b5ffe943 100755 --- a/ve/velib03.cpp +++ b/ve/velib03.cpp @@ -945,10 +945,9 @@ long TDocumento::get_next_key(char provv, int anno, const char* codnum) const return n; } -const TTipo_documento& TDocumento::tipo() const +const TTipo_documento& TDocumento::tipo(const char * tipodoc) { - const TString16 tipodoc(get("TIPODOC")); - CHECK(tipodoc.not_empty(), "Tipo documento nullo"); + CHECK(tipodoc && *tipodoc, "Tipo documento nullo"); TTipo_documento * o = (TTipo_documento*)_tipi.objptr(tipodoc); if (o == NULL) { @@ -958,6 +957,11 @@ const TTipo_documento& TDocumento::tipo() const return *o; } +const TTipo_documento& TDocumento::tipo() const +{ + return tipo(get("TIPODOC")); +} + bool TDocumento::raggruppabile(const TDocumento& doc, TToken_string& campi) const { bool ok = raggruppabile() && doc.raggruppabile();