Patch level : 10.0 814
Files correlati : ve0.exe ve6.exe Ricompilazione Demo : [ ] Commento : Bug 0001703: Fatturazione Bolle (ve6) Nella gestione dei riferimenti in testa non viene scritto il flagh descrizione lunga per cui non si vedono i riferimenti delle bolla dalla seconda in poi (seganalato da Servizi informatici (SIPAG)) Bug 0001702: Documenti interattivi (ve0) Agguingere una elaborazione al tipodocumento in modo da poter effettuare delle operazioni all' atto della registrazione. (HABA) Per utilizzarla correttamente chi la configura deve configurarei stati dell elaborazione perche' venga chiamata quand serve. Modificata anche la lettura dell stato attivo per le provvigioni, da verificare ka genreazioe dell provvigioni. git-svn-id: svn://10.65.10.50/branches/R_10_00@20959 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
816a3eb456
commit
d8bb68b774
@ -402,9 +402,10 @@ void TMotore_application::do_elab( TDocumento& doc ) // C 90
|
||||
default :
|
||||
break;
|
||||
}
|
||||
TToken_string tipi;
|
||||
TToken_string stati;
|
||||
|
||||
el->stati_validi(stati);
|
||||
el->tipi_stati_iniziali(tipi, stati);
|
||||
if (stati.find(doc.stato()) >= 0)
|
||||
{
|
||||
TDocumento newdoc(doc.get_char(DOC_PROVV), doc.get_int(DOC_ANNO), el->codice_numerazione_finale(), 0L);
|
||||
|
@ -74,8 +74,7 @@ void TFatturazione_bolle_app::process_by_cli(const TMask& m)
|
||||
TElaborazione * e = elab(m.get(F_CODICE_ELAB));
|
||||
TElaborazione & eld = *e;
|
||||
TToken_string tipidoc(24), statidoc(10);
|
||||
eld.tipi_validi(tipidoc);
|
||||
eld.stati_validi(statidoc);
|
||||
eld.tipi_stati_iniziali(tipidoc, statidoc);
|
||||
|
||||
TTipo_documento t(eld.tipo_iniziale(0));
|
||||
char tipocf(t.tipocf());
|
||||
@ -127,8 +126,7 @@ void TFatturazione_bolle_app::process_by_ragsoc(const TMask& m)
|
||||
TElaborazione * e = elab(m.get(F_CODICE_ELAB));
|
||||
TElaborazione & eld = *e;
|
||||
TToken_string tipidoc(24), statidoc(10);
|
||||
eld.tipi_validi(tipidoc);
|
||||
eld.stati_validi(statidoc);
|
||||
eld.tipi_stati_iniziali(tipidoc, statidoc);
|
||||
|
||||
TTipo_documento t(eld.tipo_iniziale(0));
|
||||
char tipocf(t.tipocf());
|
||||
@ -182,8 +180,7 @@ void TFatturazione_bolle_app::process_by_doc(const TMask& m)
|
||||
TElaborazione * e = elab(m.get(F_CODICE_ELAB));
|
||||
TElaborazione & eld = *e;
|
||||
TToken_string tipidoc(24), statidoc(10);
|
||||
eld.tipi_validi(tipidoc);
|
||||
eld.stati_validi(statidoc);
|
||||
eld.tipi_stati_iniziali(tipidoc, statidoc);
|
||||
|
||||
TTipo_documento t(eld.tipo_iniziale(0));
|
||||
char tipocf(t.tipocf());
|
||||
@ -240,8 +237,7 @@ void TFatturazione_bolle_app::process_by_fatt(const TMask& m)
|
||||
TElaborazione* e = elab(m.get(F_CODICE_ELAB));
|
||||
TElaborazione& eld = *e;
|
||||
TToken_string tipidoc(24), statidoc(10);
|
||||
eld.tipi_validi(tipidoc);
|
||||
eld.stati_validi(statidoc);
|
||||
eld.tipi_stati_iniziali(tipidoc, statidoc);
|
||||
|
||||
const TTipo_documento t(eld.tipo_iniziale(0));
|
||||
const char tipocffatt = t.tipocf() == 'C' ? 'F' : 'C';
|
||||
|
@ -463,35 +463,30 @@ int TElaborazione::read(const char* cod)
|
||||
return ok;
|
||||
}
|
||||
|
||||
void TElaborazione::tipi_validi(TToken_string& tipi) const
|
||||
void TElaborazione::tipi_stati_iniziali(TToken_string& tipi, TToken_string& stati) const
|
||||
{
|
||||
tipi.cut(0);
|
||||
TString4 t;
|
||||
for (int i = 0; i < TElaborazione::_max_tipi_doc_elab; i++)
|
||||
{
|
||||
t = tipo_iniziale(i);
|
||||
if (t.full())
|
||||
tipi.add(t);
|
||||
}
|
||||
CHECK(!tipi.empty_items(), "Nessun tipo documento valido");
|
||||
}
|
||||
|
||||
void TElaborazione::stati_validi(TToken_string& stati) const
|
||||
{
|
||||
tipi.cut(0);
|
||||
stati.cut(0);
|
||||
for (int i = 0; i < TElaborazione::_max_tipi_doc_elab; i++)
|
||||
{
|
||||
t = tipo_iniziale(i);
|
||||
const char s = stato_iniziale(i);
|
||||
if (s != '\0' && s != ' ')
|
||||
stati.add(s);
|
||||
|
||||
if (t.blank() && s == '\0')
|
||||
break;
|
||||
else
|
||||
if (s == '\0')
|
||||
break;
|
||||
}
|
||||
if (t.full() || s > ' ')
|
||||
{
|
||||
tipi.add(t);
|
||||
stati.add(s);
|
||||
}
|
||||
}
|
||||
CHECK(!tipi.empty_items(), "Nessun tipo documento valido");
|
||||
CHECK(!stati.empty_items(), "Nessuno stato documento valido");
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// TElaborazione_esterna
|
||||
///////////////////////////////////////////////////////////
|
||||
|
@ -165,8 +165,7 @@ public:
|
||||
const TString& descrizione() const { return get("S0"); }
|
||||
const TTipo_elaborazione tipo() const { return (TTipo_elaborazione) get_int("I0"); }
|
||||
|
||||
virtual void tipi_validi(TToken_string& tipi) const;
|
||||
virtual void stati_validi(TToken_string& stati) const;
|
||||
virtual void tipi_stati_iniziali(TToken_string& tipi, TToken_string& stati) const;
|
||||
|
||||
|
||||
bool doc_uguale(int u) const { return get("S1").mid(u, 1) == "X"; }
|
||||
|
Loading…
x
Reference in New Issue
Block a user