From 7d2fcdcfda644097b83fbb014a497289395f4d12 Mon Sep 17 00:00:00 2001 From: guy Date: Tue, 7 Feb 2012 15:35:25 +0000 Subject: [PATCH] Patch level : 10.0 Files correlati : ef0 Ricompilazione Demo : [ ] Commento : Migliorato caricamento distinte incomplete git-svn-id: svn://10.65.10.50/branches/R_10_00@22572 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ef/ef0100.cpp | 15 ------ ef/ef0100.h | 1 - ef/ef0100a.uml | 8 ---- ef/ef0101.h | 2 +- ef/ef0300.cpp | 2 +- ef/ef0301.cpp | 127 +++++++++++++++++++++++++++---------------------- ef/ef0301.h | 5 +- ef/ef0800.cpp | 115 +++++++++++++++++--------------------------- ef/ef0a00.cpp | 4 +- ef/ef0a00a.h | 1 - ef/ef0a00a.uml | 8 ---- ef/f31.dir | 2 +- ef/f31.trr | 3 +- 13 files changed, 121 insertions(+), 172 deletions(-) diff --git a/ef/ef0100.cpp b/ef/ef0100.cpp index cfb217ae6..b3a937d93 100755 --- a/ef/ef0100.cpp +++ b/ef/ef0100.cpp @@ -45,7 +45,6 @@ protected: bool user_destroy(); virtual TMask* get_mask(int mode) {return _msk;} virtual bool changing_mask(int mode) {return FALSE;} - void enable_controeuro(); virtual void ini2mask(TConfig& ini, TMask& m, bool query); @@ -59,17 +58,6 @@ public: // restituisce un riferimento all' applicazione inline TVariazione_effetti& app() {return (TVariazione_effetti&)main_app();} -void TVariazione_effetti::enable_controeuro() -{ - static int ce = -1; - if (ce < 0) - { - TConfig ini(CONFIG_DITTA, "ve"); - ce = ini.get_bool("CONTROEURO"); - } - _msk->enable(F_CONTROEURO, ce != 0); -} - // quando si va in query mode resetta i due campi della maschera // relativi ai totali void TVariazione_effetti::init_query_mode(TMask&) @@ -77,7 +65,6 @@ void TVariazione_effetti::init_query_mode(TMask&) _msk->reset(F_TOTIMP); _msk->reset(F_TOTIMPVAL); _msk->enable(F_TIPOCF); - enable_controeuro(); } bool TVariazione_effetti::protected_record(TRectype& rec) @@ -94,7 +81,6 @@ void TVariazione_effetti::init_insert_mode(TMask&) righe_sheet().row(0) = riga; righe_sheet().set_dirty(); _msk->enable(F_TIPOCF); - enable_controeuro(); } void TVariazione_effetti::ini2mask(TConfig& ini, TMask& m, bool query) { @@ -114,7 +100,6 @@ void TVariazione_effetti::ini2mask(TConfig& ini, TMask& m, bool query) void TVariazione_effetti::init_modify_mode(TMask& m) { m.disable(F_TIPOCF); - enable_controeuro(); m.efield(F_IBAN_STATO).validate(K_TAB); } diff --git a/ef/ef0100.h b/ef/ef0100.h index be61b387e..34f7b8a42 100755 --- a/ef/ef0100.h +++ b/ef/ef0100.h @@ -35,7 +35,6 @@ #define F_EFFCOMP 229 #define F_SHEET_EFF 230 #define F_TIPOCF 231 -#define F_CONTROEURO 232 #define F_PROG 233 #define F_CUP 234 #define F_DCUP 235 diff --git a/ef/ef0100a.uml b/ef/ef0100a.uml index 007cda29a..2954bbcf7 100755 --- a/ef/ef0100a.uml +++ b/ef/ef0100a.uml @@ -142,7 +142,6 @@ BEGIN DISPLAY "Codice" CODTAB DISPLAY "Nome@50" S0 OUTPUT F_CODVAL CODTAB - OUTPUT F_CONTROEURO B1 OUTPUT F_CAMBIO S4 CHECKTYPE NORMAL END @@ -159,7 +158,6 @@ BEGIN DISPLAY "Data@12" D0 DISPLAY "Cambio@19" S4 OUTPUT F_DATACAM D0 - OUTPUT F_CONTROEURO B1 OUTPUT F_CAMBIO S4 CHECKTYPE SEARCH GROUP 1 @@ -176,12 +174,6 @@ BEGIN GROUP 1 END -BOOLEAN F_CONTROEURO -BEGIN - PROMPT 40 8 "Controeuro " - FIELD CONTROEURO -END - BOOLEAN F_ULTRATA BEGIN PROMPT 56 8 "Ultima rata" diff --git a/ef/ef0101.h b/ef/ef0101.h index 07da3e81e..5a7781fb6 100755 --- a/ef/ef0101.h +++ b/ef/ef0101.h @@ -64,7 +64,7 @@ public: // riscrive l'effetto int rewrite(TLocalisamfile& f) { return write(f, TRUE); } // rimuove l'effetto - int remove(TLocalisamfile& f)const; + int remove(TLocalisamfile& f) const; // restituisce il numero progressivo dell'effetto estraendolo dal record long numero() const { return get_long(EFF_NPROGTR); } // restituisce il codice del cliente intestatario dell'effetto estraendolo dal record diff --git a/ef/ef0300.cpp b/ef/ef0300.cpp index 879e00a35..12f31a0df 100755 --- a/ef/ef0300.cpp +++ b/ef/ef0300.cpp @@ -272,7 +272,7 @@ int TVariazione_distinte::read(TMask& m) riga.add(TR("Varie")); } //gestisco il controllo sulla presenza o meno di una valuta - const TString16 codval(eff.get(EFF_CODVAL)); + const TString4 codval(eff.get(EFF_CODVAL)); if (i == 0) { const bool valuta = ::is_true_value(codval); diff --git a/ef/ef0301.cpp b/ef/ef0301.cpp index 67b4201dd..ce2ee0d3f 100755 --- a/ef/ef0301.cpp +++ b/ef/ef0301.cpp @@ -1,5 +1,8 @@ #include "ef0301.h" +#include +#include + /////////////////////////////////////////////////// // Definizione dei metodi della classe TDistinta // /////////////////////////////////////////////////// @@ -7,7 +10,7 @@ // costruttore distinta utilizzando il record passato TDistinta::TDistinta(const TRectype& rec, word lockop) { - read(rec,lockop); + read(rec,lockop); } // costruisce la distinta del tipo e numero passati @@ -18,31 +21,51 @@ TDistinta::TDistinta(const char tipo, const long numero, word lockop) TDistinta::~TDistinta() { - TLocalisamfile f(LF_EFFETTI); if (_righe_dist.items() > 0) // Se ha letto elementi sblocca eventualmente la prima riga - f.read((TRectype&)_righe_dist[0], _isequal,_unlock); + { + TLocalisamfile f(LF_EFFETTI); + f.read(eff(0), _isequal,_unlock); + } } +const TString& TDistinta::query(const char tipo, const long numero, const int riga) const +{ + TString& q = get_tmp_string(); + q << "USE EFFETTI KEY 4" + << "\nFROM TIPODIST=" << tipo << " NDIST=" << numero; + if (riga > 1) + q << " NRIGADIST=" << riga; + q << "\nTO TIPODIST=" << tipo << " NDIST=" << numero; + return q; +} + + // permette di leggere la distinta del tipo e numero passati int TDistinta::read(const char tipo, const long numero, word lockop) { int err = _iskeynotfound; - TLocalisamfile f(LF_EFFETTI); f.setkey(4); - if (_righe_dist.items() > 0) // Se ha letto una distinta precedente, sblocca la prima riga + if (_righe_dist.items()) // Se ha letto una distinta precedente, sblocca la prima riga { - f.read((TRectype&)_righe_dist[0],_isequal,_unlock); + TLocalisamfile f(LF_EFFETTI); f.setkey(4); + f.read(eff(0),_isequal,_unlock); _righe_dist.destroy(); // Rimuove tutte le righe precedenti } if (tipo >= ' ' && numero > 0) { - err = NOERR; - for (int i = 1; err == NOERR ; i++) + TISAM_recordset reff(query(tipo, numero)); + TLocalisamfile& f = reff.cursor()->file(); + int i = 0; + for (bool ok = reff.move_first(); ok; ok = reff.move_next()) { + const word lock = (i == 0 && lockop == _lock) ? _lock : _nolock; // Lock solo sulla prima riga + const int n = reff.get(EFF_NRIGADIST).as_int(); TEffetto* effetto = new TEffetto; - word lock = (i == 1 && lockop == _lock) ? _lock : _nolock; // Lock solo sulla prima riga - err = effetto->read(f, tipo, numero, i, lock);//legge un effetto per chiave 4 + err = effetto->read(f, tipo, numero, n, lock);//legge un effetto per chiave 4 if (err == NOERR) - _righe_dist.add(effetto); + { + i = _righe_dist.add(effetto) + 1; + effetto->put(EFF_NRIGADIST, i); + } else delete effetto; } @@ -68,42 +91,36 @@ int TDistinta::write(bool force, TToken_string* dati_dist) { int err = NOERR; //quanti effetti sono nella distinta (nell'array in memoria) - const int elem = items(); TLocalisamfile f(LF_EFFETTI); f.setkey(4); - - for (int i=0; irestart(); effetto.put(EFF_TIPODIST, dati_dist->get()); - effetto.put(EFF_NDIST, dati_dist->get()); + effetto.put(EFF_NDIST, dati_dist->get()); effetto.put(EFF_DATADIST, dati_dist->get()); - effetto.put(EFF_CODABIP, dati_dist->get()); - effetto.put(EFF_CODCABP, dati_dist->get()); - effetto.put(EFF_PROGBNP, dati_dist->get()); - - effetto.put(EFF_NRIGADIST, i+1); + effetto.put(EFF_CODABIP, dati_dist->get()); + effetto.put(EFF_CODCABP, dati_dist->get()); + effetto.put(EFF_PROGBNP, dati_dist->get()); + effetto.put(EFF_NRIGADIST, ++nriga); } + else + nriga = effetto.get_int(EFF_NRIGADIST); //riscrivo l'effetto con i dati della distinta a cui appartiene - err = effetto.rewrite(f); + err = effetto.rewrite_write(f); + if (err != NOERR) + break; } if (dati_dist) { - f.setkey(4); - f.put(EFF_TIPODIST, dati_dist->get(0)); - f.put(EFF_NDIST, dati_dist->get()); - - int i = elem; - f.put(EFF_NRIGADIST, ++i); - for (int e = f.read(); e == NOERR; e = f.read()) - { - e = f.remove(); - f.put(EFF_NRIGADIST, ++i); - } + const char td = dati_dist->get_char(0); + const long nd = dati_dist->get_long(); + remove(td, nd, nriga+1); } return err; @@ -111,24 +128,28 @@ int TDistinta::write(bool force, TToken_string* dati_dist) // rimuove la distinta (non si effettua la rimozione del record su file ma si // elimina dal file il collegamento tra gli effetti e la distinta) -int TDistinta::remove(char tipodist, long ndist) +int TDistinta::remove(char tipodist, long ndist, int nriga) { - int err; - TLocalisamfile file(LF_EFFETTI); - // scandisco tutti gli effetti della distinta (nell'array), - // cancello i dati della distinta e riscrivo gli effetti - for (int i = 0; i < items(); i++) + int err = NOERR; + + TISAM_recordset eff(query(tipodist, ndist, nriga)); + TLocalisamfile& file = eff.cursor()->file(); + for (bool ok = eff.move_first(); ok && err == NOERR; ok = eff.move_next()) { - TEffetto& effetto = (TEffetto&)_righe_dist[i]; - err = effetto.read(file, tipodist,ndist,i+1); - effetto.zero(EFF_TIPODIST); - effetto.zero(EFF_NDIST); - effetto.zero(EFF_DATADIST); - effetto.zero(EFF_NRIGADIST); - effetto.zero(EFF_CODABIP); - effetto.zero(EFF_CODCABP); - effetto.zero(EFF_PROGBNP); - err = effetto.rewrite(file); + const int i = file.get_int(EFF_NRIGADIST); + TEffetto effetto; + err = effetto.read(file, tipodist,ndist,i); + if (err == NOERR) + { + effetto.zero(EFF_TIPODIST); + effetto.zero(EFF_NDIST); + effetto.zero(EFF_DATADIST); + effetto.zero(EFF_NRIGADIST); + effetto.zero(EFF_CODABIP); + effetto.zero(EFF_CODCABP); + effetto.zero(EFF_PROGBNP); + err = effetto.rewrite(file); + } } reset();//elimino gli effetti dalla memoria resettando l'array return err; @@ -136,11 +157,5 @@ int TDistinta::remove(char tipodist, long ndist) bool TDistinta::contabilizzata() const { - bool yes = FALSE; - if (_righe_dist.items() > 0) - { - const TRectype& eff = (const TRectype&)_righe_dist[0]; - yes = eff.get_bool(EFF_EFFCONT); - } - return yes; + return _righe_dist.items() && eff(0).get_bool(EFF_EFFCONT); } diff --git a/ef/ef0301.h b/ef/ef0301.h index 2f5cab656..19b7eb7e5 100755 --- a/ef/ef0301.h +++ b/ef/ef0301.h @@ -17,6 +17,7 @@ class TDistinta : public TObject protected: TEffetto& eff(int n) { return (TEffetto&)_righe_dist[n]; } const TEffetto& eff(int n) const { return (const TEffetto&)_righe_dist[n]; } + const TString& query(const char tipo, const long numero, const int riga = 0) const; public: //ritorna un riferimento all'array degli effetti nella distinta @@ -34,7 +35,7 @@ public: //riscrive la distinta int rewrite(TToken_string* dati_dist = NULL){ return write(TRUE, dati_dist); } //rimuove la distinta del tipo e numero passati - int remove(char tipodist, long ndist); + int remove(char tipodist, long ndist, int nriga=0); //restituisce il tipo di distinta const char tipodist() const { return eff(0).get_char(EFF_TIPODIST); } //restituisce il tipo degli effetti della distinta (lienti/ornitori) @@ -51,8 +52,6 @@ public: TDate data_cam() const { return eff(0).get_date(EFF_DATACAMBIO); } //restituisce il cambio delle distinta real cambio() const { return eff(0).get_real(EFF_CAMBIO); } - //restituisce TRUE se il cambio delle distinta e' contro euro - bool contro_euro() const { return eff(0).get_bool(EFF_CONTROEURO); } //restituisce il codice abi di presentazione effetti const TString& abip()const { return eff(0).get(EFF_CODABIP); } //restituisce il codice cab di presentazione effetti diff --git a/ef/ef0800.cpp b/ef/ef0800.cpp index b4ae55fb4..551ed1c36 100755 --- a/ef/ef0800.cpp +++ b/ef/ef0800.cpp @@ -81,18 +81,7 @@ class TContabilizzazione_effetti_app : public TSkeleton_application _total_mov_val;// Same as above but in valuta TString _desc_inc, _desc_pag; // Descrizioni movimento generato TMask *_msk; // maschera di selezione dati -// TLocalisamfile *_attiv, // file delle attivita' (per far funzionare TRegistro) -// *_fcaus, // file delle causale (per far funzionare TCausale) -// *_frcaus, // file delle righe causali (per far funzionare TCausale) -// *_effetti, // file degli effetti (per TDistinta) -// *_reffetti, // file delle righe effetti (per TDistinta) -// *_cessionari, // file dei cessionari (per TDistinta) -// *_part, // file delle partite (per far funzionare TPartita) -// *_scad, // file delle scadenze (per far funzionare TPartita) -// *_pags, // file dei pagamenti (per far funzionare TPartita) -// *_clifo, // file dei clienti -// *_doc, // file dei documenti -// *_pcon; // file piano dei conti + TBill _banca, // conto di contropartita della banca _cliente, // conto di contropartita del cliente _trandiffcam; // conto di transizione per differenze cambi @@ -871,18 +860,7 @@ void TContabilizzazione_effetti_app::compile_head_mov(const TString & contsep) mov.put(MOV_CODVAL, codval); mov.put(MOV_DATACAM, _distinta->data_cam()); - real cambio = _distinta->cambio(); - const bool eurocambio = _distinta->contro_euro(); - const TExchange chg(codval, cambio, eurocambio ? _exchange_contro : _exchange_base); - if (eurocambio && mov.curr().exist(MOV_CONTROEURO)) - { - mov.put(MOV_CONTROEURO, eurocambio); - cambio = chg.get_contro_change(); - } - else - { - cambio = chg.get_base_change(); - } + const real cambio = _distinta->cambio(); mov.put(MOV_CAMBIO, cambio); } // MOV_TOTDOC e MOV_TOTDOCVAL vengono completati prima della scrittura del movimento @@ -909,17 +887,6 @@ void TContabilizzazione_effetti_app::compile_riga_partita(TRiga_partite& riga, c riga.put(PART_DATACAM,effetto.get_date(EFF_DATACAMBIO)); real cambio = effetto.get(EFF_CAMBIO); riga.put(PART_CAMBIO, cambio); - if (effetto.get_bool(EFF_CONTROEURO)) - { - if (!((TRectype&)riga).exist(PART_CONTROEURO)) - { - const TExchange chg(effetto.get(EFF_CODVAL), cambio, _exchange_contro); - const real cc = chg.get_base_change(); - riga.put(PART_CAMBIO, cc); - } - else - riga.put(PART_CONTROEURO, TRUE); - } riga.put(PART_TIPOCF,_cliente.tipo()); riga.put(PART_SOTTOCONTO,_cliente.sottoconto()); riga.put(PART_IMPTOTDOC,effetto.get(EFF_IMPORTO)); @@ -1065,18 +1032,7 @@ void TContabilizzazione_effetti_app::compile_saldac(const TEffetto& eff, const TString4 codval = eff.get(EFF_CODVAL); const TDate datacam = eff.get(EFF_DATACAMBIO); real cambio = eff.get(EFF_CAMBIO); - exchange_type et = eff.get_bool(EFF_CONTROEURO) ? _exchange_contro : _exchange_base; - if (et == _exchange_contro) - { - if (!((TRectype&)riga_part).exist(PART_CONTROEURO)) - { - const TExchange chg(codval, cambio, et); - cambio = chg.get_base_change(); - et = _exchange_base; - riga_part.put(PART_CAMBIO, cambio); - } - } - const TValuta valuta_eff(codval, datacam, cambio, et); + const TValuta valuta_eff(codval, datacam, cambio); partita->modifica_pagamento(riga_pagamento, valuta_eff, old_ap, old_abb, old_diffcam, @@ -1229,33 +1185,33 @@ error_type TContabilizzazione_effetti_app::write_all(bool change_status) bool TContabilizzazione_effetti_app::has_diffcam(const TEffetto& eff) const { - bool yes = FALSE; + bool yes = false; if (eff.in_valuta()) // Considera solo effetti in valuta { const TExchange cambio(eff); - + const bool always_diffcam = ini_get_bool(CONFIG_DITTA, "cg", "DiffCamAlways"); TLocalisamfile partite(LF_PARTITE); - for (int n = 1; yes == FALSE && n <= eff.rows_r(); n++) + for (int n = 1; !yes && n <= eff.rows_r(); n++) { const TRectype& riga = eff.row_r(n); - if (riga.get_char(REFF_ACCSAL) != 'S') // Ignora righe non saldanti - continue; - - partite.put(PART_TIPOCF, eff.get(EFF_TIPOCF)); - partite.put(PART_GRUPPO, 0); - partite.put(PART_CONTO, 0); - partite.put(PART_SOTTOCONTO, eff.get(EFF_CODCF)); - partite.put(PART_ANNO, riga.get(REFF_ANNO)); - partite.put(PART_NUMPART, riga.get(REFF_NUMPART)); - partite.put(PART_NRIGA, riga.get(REFF_NRIGA)); - int err = partite.read(); - if (err == NOERR) - { - const TExchange cambiofatt(partite.curr()); - yes = cambiofatt != cambio; + if (always_diffcam || riga.get_char(REFF_ACCSAL) == 'S') // Ignora righe non saldanti + { + partite.put(PART_TIPOCF, eff.get(EFF_TIPOCF)); + partite.put(PART_GRUPPO, 0); + partite.put(PART_CONTO, 0); + partite.put(PART_SOTTOCONTO, eff.get(EFF_CODCF)); + partite.put(PART_ANNO, riga.get(REFF_ANNO)); + partite.put(PART_NUMPART, riga.get(REFF_NUMPART)); + partite.put(PART_NRIGA, riga.get(REFF_NRIGA)); + int err = partite.read(); + if (err == NOERR) + { + const TExchange cambiofatt(partite.curr()); + yes = cambiofatt != cambio; + } + else + NFCHECK("Effetto pagante fattura fantasma"); } - else - NFCHECK("Effetto pagante fattura fantasma"); } } return yes; @@ -1344,8 +1300,21 @@ void TContabilizzazione_effetti_app::contabilize_bill(const char tipo, const lon _total_mov = 0.0; _total_mov_val = 0.0; distinta.read(tipo,numero,_lock); // Sblocca da solo quella precedente + + const int items = distinta.items(); // Perche' sul file effetti il numero riga distinta e' un long ?? + if (items == 0) + { + _error = generic_error; + error_box(FR("La distinta %c %ld non ha effetti"), tipo, numero); + return; + } + + if (_caus != NULL) + { delete _caus; + _caus = NULL; + } const TString& cc = distinta.tipocf() == 'F' ? _cod_caus_pag : _cod_caus; _caus = new TCausale(cc, _data_op.year()); @@ -1392,7 +1361,6 @@ void TContabilizzazione_effetti_app::contabilize_bill(const char tipo, const lon else dettaglio_rate = _dett_rate_att; - const int items = distinta.items(); // Perche' sul file effetti il numero riga distinta e' un long ?? // compila la testata compile_head_mov(key); @@ -1496,6 +1464,7 @@ void TContabilizzazione_effetti_app::contabilize_bill(const char tipo, const lon void TContabilizzazione_effetti_app::contabilize() { + const bool cont_sep = ini_get_bool(CONFIG_DITTA, "ef", "ContSep"); // Stramaledetta _total_bills = 0; const long cur_items = _dist_sheet->items(); // Quante distinte in totale ? @@ -1508,13 +1477,13 @@ void TContabilizzazione_effetti_app::contabilize() TToken_string& t = _dist_sheet->row(j); const char tipo = t.get_char(1); const long numero = t.get_long(2); - if (ini_get_bool(CONFIG_DITTA, "ef", "ContSep")) + + if (cont_sep) { _distinta->read(tipo,numero); - const int items = _distinta->items(); - TAssoc_array codcs; - + + TAssoc_array codcs; for (int i = 0; i < items; i++) // scorre le righe della distinta (effetti) { const TEffetto& eff = (*_distinta)[i]; @@ -1525,7 +1494,9 @@ void TContabilizzazione_effetti_app::contabilize() contabilize_bill(tipo,numero, key); } else + { contabilize_bill(tipo,numero); + } if (!good()) display_error(); } diff --git a/ef/ef0a00.cpp b/ef/ef0a00.cpp index 9b0b9bde9..ae0d987d4 100755 --- a/ef/ef0a00.cpp +++ b/ef/ef0a00.cpp @@ -690,7 +690,6 @@ void TPE_mask::save_rate() const TString& codval = get(F_CODVAL); const real cambio = get(F_CAMBIO); - const bool eurocambio = get_bool(F_EURO); const int tipopag = get_int(F_TIPOPAG); bool zeroes = false; // Esistono righe effetto da cancellare @@ -704,7 +703,7 @@ void TPE_mask::save_rate() if (codval.full() && !imp.is_zero()) { impval = imp; - TCurrency c(impval, codval, cambio, eurocambio ? _exchange_contro : _exchange_base); + TCurrency c(impval, codval, cambio); c.change_to_firm_val(); imp = c.get_num(); } @@ -821,7 +820,6 @@ void TPE_mask::save_rate() eff.put(EFF_IMPORTOVAL, totimpval); eff.put(EFF_CODVAL, codval); eff.put(EFF_CAMBIO, cambio); - eff.put(EFF_CONTROEURO, eurocambio); eff.put(EFF_DATACAMBIO, get(F_DATACAMBIO)); eff.put(EFF_SPESE, get(F_SPESE)); } diff --git a/ef/ef0a00a.h b/ef/ef0a00a.h index e55ca9055..00bf716c6 100755 --- a/ef/ef0a00a.h +++ b/ef/ef0a00a.h @@ -8,7 +8,6 @@ #define F_DUMMYDIST 208 #define F_DATADIST 209 #define F_CODVAL 210 -#define F_EURO 211 #define F_CAMBIO 212 #define F_DATACAMBIO 213 #define F_DESCAB 214 diff --git a/ef/ef0a00a.uml b/ef/ef0a00a.uml index 389954d33..9e9d0a6cc 100755 --- a/ef/ef0a00a.uml +++ b/ef/ef0a00a.uml @@ -81,7 +81,6 @@ BEGIN OUTPUT F_CODVAL CODVAL OUTPUT F_CAMBIO CAMBIO OUTPUT F_DATACAMBIO DATACAMBIO - OUTPUT F_EURO CONTROEURO OUTPUT F_TIPOCF TIPOCF OUTPUT F_ABI CODABIP OUTPUT F_CAB CODCABP @@ -103,19 +102,12 @@ BEGIN DISPLAY "Contro\nEuro@6" B1 DISPLAY "Denominazione@50" S0 OUTPUT F_CODVAL CODTAB - OUTPUT F_EURO B1 CHECKTYPE NORMAL GROUP 3 MESSAGE EMPTY CLEAR,6@ MESSAGE ENABLE,6@ END -BOOLEAN F_EURO -BEGIN - PROMPT 64 1 "Contro Euro" - FLAGS "D" -END - DATE F_DATADIST BEGIN PROMPT 2 2 "Data " diff --git a/ef/f31.dir b/ef/f31.dir index 0e027540a..90f3a2508 100755 --- a/ef/f31.dir +++ b/ef/f31.dir @@ -1,3 +1,3 @@ 31 0 -$effetti|0|0|249|0|Effetti||| +$effetti|0|0|248|0|Effetti||| diff --git a/ef/f31.trr b/ef/f31.trr index f25bc01ce..34fddb723 100755 --- a/ef/f31.trr +++ b/ef/f31.trr @@ -1,5 +1,5 @@ 31 -37 +36 NPROGTR|3|7|0|Numero progressivo effetto DATASCAD|5|8|0|Data di scadenza TIPOPAG|2|1|0|Tipo pagamento @@ -11,7 +11,6 @@ DATAEMISS|5|8|0|Data emissione CODVAL|1|3|0|Codice valuta DATACAMBIO|5|8|0|Data cambio CAMBIO|4|15|6|Cambio -CONTROEURO|8|1|0|Cambio espresso contro Euro CODABI|10|5|0|Codice ABI banca CODCAB|10|5|0|Codice CAB banca ULTRATA|8|1|0|Ultima rata