diff --git a/ve/batbtip.uml b/ve/batbtip.uml index 5afddb88a..ba795a974 100755 --- a/ve/batbtip.uml +++ b/ve/batbtip.uml @@ -114,6 +114,7 @@ BEGIN CHECKTYPE NORMAL FLAG "U" GROUP 2 + ADD RUN CG0 -4 END STRING F_DESCAUS 50 diff --git a/ve/ve0100.cpp b/ve/ve0100.cpp index 196dc3edf..92e880aa4 100755 --- a/ve/ve0100.cpp +++ b/ve/ve0100.cpp @@ -73,8 +73,7 @@ void TMotore_application::init_insert_mode( TMask& m ) m.set(F_DATADOC, data_doc); int pos = m.id2pos( F_DATACAMBIO1); - - if (pos >= 0 && m.fld(pos).active()) + if (pos >= 0 && m.fld(pos).active() && !m.get(F_CODVAL).empty()) { m.fld(pos).set(data_doc); m.fld(pos).dirty(); diff --git a/ve/ve2400.cpp b/ve/ve2400.cpp index b7690ca30..82b27a3fd 100755 --- a/ve/ve2400.cpp +++ b/ve/ve2400.cpp @@ -566,7 +566,7 @@ bool TMask_anamag::handle_anno(TMask_field &fld, KEY k) } if (mask.last_annogiac>0 && mask.last_annogiac!=fld.mask().get_int(F_ANNO)) { if (fld_giac.dirty() && handle_sheetgiac(fld_giac,K_ENTER)) { - if (fld.yesno_box("Vuoi salvare le righe di giacenza per l'anno %d",mask.last_annogiac )) { + if (fld.yesno_box("Salvare le righe di giacenza per l'anno %d",mask.last_annogiac )) { fld_giac.autosave(*mask._rel); fld_giac.record()->rewrite(); } @@ -641,7 +641,7 @@ static bool in_handler = FALSE; if ((fld_stomag.dirty() || mask.info_sto_dirty()) && fld_stomag.items()>0 ) { - if (fld.yesno_box("Vuoi salvare lo storico per l'anno %d",mask.last_annosto) && + if (fld.yesno_box("Salvare lo storico per l'anno %d",mask.last_annosto) && handle_sheetstomag(fld_stomag,K_ENTER)) { fld_stomag.autosave(*mask._rel); diff --git a/ve/velib03.cpp b/ve/velib03.cpp index e0a7f2327..ff5cf4b6c 100755 --- a/ve/velib03.cpp +++ b/ve/velib03.cpp @@ -1104,7 +1104,7 @@ int TDocumento::write_rewrite(TBaseisamfile & f, bool re) const // eliminare anche il mov di mag. ?????? int TDocumento::remove(TBaseisamfile& f) const { - if (!cancellabile() && !yesno_box("Documento non cancellabile,\n vuoi continuare ugualmente")) + if (!cancellabile() && !yesno_box("Documento non cancellabile,\nContinuare ugualmente")) return NOERR; const bool check_movmag = dongle().active(MGAUT) && tipo().mov_mag(); diff --git a/ve/velib04b.cpp b/ve/velib04b.cpp index 5d73f5f94..ac5cce85b 100755 --- a/ve/velib04b.cpp +++ b/ve/velib04b.cpp @@ -1838,7 +1838,7 @@ error_type TContabilizzazione::search_costo_ricavo(TBill& conto, const TRiga_doc } // end of switch if (good()) { - if (conto.ok() == 0 || !conto.find()) + if (!conto.ok() || !conto.find()) { _conto_errato = conto; _error = conto_error; @@ -3432,7 +3432,7 @@ error_type TContabilizzazione::write_intra(TDocumento& doc) rc->put("NUMREG", numreg); rintra.set_key(rc); for(rc = (TRectype*) righe.first_item(); rc != NULL; rc = (TRectype*) righe.succ_item()) - rintra.add_row(rc); + rintra.add_row(*rc); // Devo aggiungere una copia della riga dell'assoc array! // Testa (de coccio...) intra.zero(); intra.put("NUMREG", numreg); @@ -3809,9 +3809,7 @@ bool TContabilizzazione::elabora(TLista_documenti& doc_in, TLista_documenti& /* write_all(doc, *_movimento); // Se la scrittura e' andata ok... } } - - - + if (!good()) { display_error(doc); diff --git a/ve/velib06.cpp b/ve/velib06.cpp index 6bb777126..e8d563a92 100755 --- a/ve/velib06.cpp +++ b/ve/velib06.cpp @@ -155,7 +155,7 @@ TDocumento_mask::TDocumento_mask(const char* td) enable(F_CODLIN, geslin); enable(F_DESLIN, geslin); - const bool geslis = cfg.get_bool("GES", "ve", 1); + const bool geslis = cfg.get_bool("GES", NULL, 1); const bool gesliscatven = cfg.get_bool("GESLISCV"); if (geslis) @@ -2342,18 +2342,18 @@ bool TDocumento_mask::controeuro_handler( TMask_field& f, KEY key ) */ bool TDocumento_mask::datacambio_handler( TMask_field& f, KEY key ) { - if (key == K_TAB && f.mask().get(F_CAMBIO).empty()) + TMask& m = f.mask(); + if (key == K_TAB && m.field(F_CAMBIO).empty()) { - const TRectype & rec = cache().get("%VAL", f.mask().get(F_CODVAL1)); - real c = rec.get_real("S4"); - f.mask().set(F_CAMBIO, c); + const TRectype& rec = cache().get("%VAL", m.get(F_CODVAL1)); + m.set(F_CAMBIO, rec.get("S4")); } return TRUE; } bool TDocumento_mask::codval_handler( TMask_field& f, KEY key ) { - if (key == K_TAB && f.focusdirty()) + if (key == K_TAB && f.focusdirty() && !f.empty()) { TMask& m = f.mask(); @@ -2363,21 +2363,20 @@ bool TDocumento_mask::codval_handler( TMask_field& f, KEY key ) { datacam = m.get_date(F_DATADOC); m.set(F_DATACAMBIO, datacam); + m.set(F_DATACAMBIO1, datacam); } TExchange exc(f.get()); exchange_type et; real cambio = exc.get_change(et); // Determino il cambio standard ed il "Contro-Euro" TString16 key; - key.format("%-3s", (const char*)f.get()); key << datacam.string(ANSI); + key.format("%-3s%s", (const char*)f.get(), (const char*)datacam.string(ANSI)); const real giornaliero = cache().get("CAM", key, "S4"); if (!giornaliero.is_zero()) cambio = giornaliero; // Ho trovato un cambio per il giorno! m.set(F_CAMBIO, cambio); m.set(F_CONTROEURO, et == _exchange_contro ? "X" : ""); - TSheet_field& righe = f.mask().sfield(F_SHEET); - - righe.force_update(); + m.sfield(F_SHEET).force_update(); // Aggiorna punti decimali degli importi } return TRUE; } \ No newline at end of file diff --git a/ve/velib06a.cpp b/ve/velib06a.cpp index 66dbd1880..1b4c2f4aa 100755 --- a/ve/velib06a.cpp +++ b/ve/velib06a.cpp @@ -217,7 +217,7 @@ bool data_hndl( TMask_field& field, KEY key ) e.on_hit(); } - if (m.id2pos(F_DATACAMBIO1) >= 0) + if (m.id2pos(F_DATACAMBIO1) >= 0 && !m.get(F_CODVAL).empty()) m.set(F_DATACAMBIO1, field.get(), TRUE); } if (key == K_ENTER || field.to_check(key)) diff --git a/ve/verig.uml b/ve/verig.uml index ba945facd..e66179004 100755 --- a/ve/verig.uml +++ b/ve/verig.uml @@ -1637,7 +1637,7 @@ ENDIF DISPLAY "Codice Fase@10" CODTAB DISPLAY "Descrizione @50" S0 OUTPUT FR_FASCMS CODTAB - OUTPUT FR_DESCMS S0 + OUTPUT FR_DESFAS S0 FIELD FASCMS FLAGS "UZ" IFDEF(CH_FASCMS) @@ -1654,9 +1654,9 @@ IFDEF(X_FASCMS) ELSEIF PROMPT 14 14 "" ENDIF - USE FAS KEY 2 + USE FSC KEY 2 INPUT S0 FR_DESFAS - DISPLAY "Descrizione @50" S0 + DISPLAY "Descrizione@50" S0 DISPLAY "Codice Fase@10" CODTAB COPY OUTPUT FR_FASCMS CHECKTYPE NORMAL