Patch level : 12.0 344

Files correlati     : ve0
Commento            : 
- Aggiunto il controllo per verificare che il plafond non venga superato durante l'immissione di una fattura, se è presente un esubero verrà mostrata una warning_box che avvisa l'utente.
- Aggiunto caso _isnowarning che non mostra la warning_box con il messaggio di errore, così da non mostrarne più di uno.


git-svn-id: svn://10.65.10.50/branches/R_10_00@23626 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
mtollari 2017-02-16 14:38:37 +00:00
parent 21d878019f
commit 269e2cd65b
5 changed files with 1320 additions and 1286 deletions

View File

@ -95,7 +95,8 @@ enum TIsamerr {
_isreinsert = 224, // @emem Chiave primaria duplicata
_islocked = 225, // @emem Record bloccato
_isbadtrc = 226, // @emem Tracciato Record errato o mancante
_istrcerr = 227 // @emem Tracciato record incoerente
_istrcerr = 227, // @emem Tracciato record incoerente
_isnowarning = 86552 // @emem Il messaggio di errore è già stato visualizzato
};
typedef long TRecnotype;

View File

@ -1206,6 +1206,8 @@ bool TRelation_application::save(bool check_dirty)
case _isreinsert:
warning_box(TR("Esiste già un elemento con la stessa chiave"));
break;
case _isnowarning:
break;
default:
error_box(FR("Impossibile registrare i dati: errore %d"), err);
break;

File diff suppressed because it is too large Load Diff

View File

@ -106,6 +106,8 @@ public:
virtual ~TMotore_application( ) { }
virtual const char* get_next_key( );
int checkPlafondAvaibility(TDocumento d); // Controllo aggiunto dal modulo Li per verificare la disponibilità di plafond
};
inline TMotore_application& app() { return (TMotore_application &) main_app(); }

View File

@ -1196,30 +1196,23 @@ void TDocumento_mask::cli2mask(bool force_load)
const TDate datadoc = doc().get(DOC_DATADOC);
const bool split_payment = datadoc.year() >= 2015 && c.get_bool(CLI_SPLITPAY);
const bool ivadiff = !split_payment && alleg == 7;
TMask_field* ld = find_by_id(F_LIQDIFF);
if (ld)
{
if (ivadiff)
{
const bool gld = ini_get_bool(CONFIG_DITTA, "cg", "GesLiqDiff");
ld->enable(gld);
ld->set(gld ? "X" : "");
}
else
{
ld->disable();
ld->set("");
}
}
const bool ivadiff = !split_payment && ven_rec.get_bool(CFV_FATTSOSP);
if (ivadiff)
{
TMask_field* ld = find_by_id(F_LIQDIFF);
if (ld)
{
const bool gld = ini_get_bool(CONFIG_DITTA, "cg", "GesLiqDiff");
if (gld != ld->active())
ld->enable(gld);
ld->set(gld ? "X" : "");
}
}
TMask_field* ixc = find_by_id(F_IVAXCASSA);
if (ixc)
if (ixc && ixc->active())
{
const bool IVAxCassa = !split_payment && !ivadiff && alleg < 5 && gestione_IVAxCassa(datadoc);
ixc->enable(IVAxCassa);
ixc->set(IVAxCassa ? "X" : "");
}
@ -4588,12 +4581,10 @@ void TBarcode_mask::on_idle()
{
_last_key = 0;
const TString& code = efield(DLG_USER).get_window_data();
const int codeType = get_int(DLG_BARCODE_TYPE);
if (code.len() >= codeType)
if (code.len() >= 8)
{
if (on_code_entered(code))
reset(DLG_USER);
field(DLG_USER).set_focus();
}
}
return TAutomask::on_idle();
@ -4608,12 +4599,11 @@ bool TBarcode_mask::on_field_event(TOperable_field& o, TField_event e, long joly
return true;
}
TBarcode_mask::TBarcode_mask(TDocumento_mask& dm) : TAutomask("BAR CODE READER", 1, 40, 10, -1, 4), _dm(dm), _last_key(0)
TBarcode_mask::TBarcode_mask(TDocumento_mask& dm) : TAutomask("BAR CODE READER", 1, 40, 3, -1, 4), _dm(dm), _last_key(0)
{
TButton_tool& bt = add_button_tool(DLG_QUIT, TR("Fine"), TOOL_QUIT);
add_button_tool(DLG_INFO, TR("Info"), TOOL_INFO);
add_string(DLG_USER, 0, PR("Codice "), 1, 1, 128, "", 30);
add_list(DLG_BARCODE_TYPE, 0, PR("Tipo codice"), 1, 3, 20, "P", "8|13", "EAN 8|EAN 13");
set_handlers();
}