From c784edac65a7169c92e0611cca6a1bbdefc9aaa1 Mon Sep 17 00:00:00 2001 From: mtollari Date: Fri, 16 Jun 2017 14:52:02 +0000 Subject: [PATCH] =?UTF-8?q?Patch=20level=20=20=20=20=20=20=20=20=20:=2012.?= =?UTF-8?q?0=20no-patch=20Files=20correlati=20=20=20=20=20:=20Commento=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20:=20-=20Sistemata=20apertura?= =?UTF-8?q?=20in=20visualizzazione=20utenti,=20adesso=20vengono=20ripuliti?= =?UTF-8?q?=20i=20filtri=20e=20se=20il=20file=20=C3=A8=20bloccato=20si=20v?= =?UTF-8?q?isualizza=20lo=20stesso.=20-=20Abilitato=20bottone=20"Nuovo"=20?= =?UTF-8?q?anche=20in=20visualizzazione?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://10.65.10.50/branches/R_10_00@23870 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- src/include/relapp.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/include/relapp.cpp b/src/include/relapp.cpp index 5fda52117..46dcf31db 100755 --- a/src/include/relapp.cpp +++ b/src/include/relapp.cpp @@ -335,7 +335,9 @@ void TRelation_application::set_toolbar() pos = _mask->id2pos(DLG_NEWREC); if (pos >= 0) { - bool enabins = (mode == MODE_QUERY || _lnflag == 0) && can_edit_some; + // Prima: can_edit_some = can_I_write(NULL) + // Adesso: user_can_write() -> a me interessa che l'utente possa scrivere senza controllare che sia bloccato il record, si puņ sempre creare un record (se abilitati) nuovo anche in visualizzazione + bool enabins = (mode == MODE_QUERY || _lnflag == 0) && user_can_write(NULL); _mask->fld(pos).enable(enabins); } @@ -589,10 +591,10 @@ bool TRelation_application::modify_mode() set_mode(MODE_MOD); err = read(*_mask); - if (err != NOERR) + if (err != NOERR && (!_locked || err != _islocked)) { query_mode(); - return FALSE; + return false; } rel->save_status(); @@ -602,7 +604,7 @@ bool TRelation_application::modify_mode() // Forse deve essere fatta prima della init_modify_mode()! if (_curr_transaction == TRANSACTION_MODIFY) ini2insert_mask(); - return TRUE; + return true; } @@ -1016,7 +1018,8 @@ void TRelation_application::edit_cancel() { TRelation* rel = get_relation(); rel->restore_status(); - rel->lfile().reread(_unlock); // Unlock main file + _locked = false; + rel->lfile().reread(_unlock); // Unlock main file } }