Newsgroup: it.comp.appl.access
Titolo: Impedire le modifiche sulle tabelle

In un database vorrei che venisse memorizzato il nome dell'utente che ha
effettuato una determinata operazione, nonché la data di modifica
della'operazione stessa.
Ho, quindi, pensato di inserire sulla tabella due campi, uno con il nome
utente e l'altro con la data, che vengono valorizzati in automatico non
appena l'utente aggiunge e/o modifica il record.
Mi sono accorto, perň, che l'utente stesso puň entrare nel database
contenente le tabelle, aprire la tabella in questione e modificare a
paicimento i campi di cui sopra (per esempio, indicando un'altra data).
Non potendo, con le autorizzazioni, impedire che l'utente apra e modifichi
le tabelle in questione (altrimenti non potrei in nessuna maniera- almeno
credo- registrare il suo nome e la data) vorrei sapere se esiste un modo per
impedire l'apertura delle tabelle o, meglio, per registrare in qualche modo
il nome utente e la data in modo protetto.
Grazie
Salvatore

 ha scritto nel messaggio
news:bn6844$fsb$1...@lacerta.tiscalinet.it...

Io un problema simile lo ho risolto facendo aprire direttamente la maschera
principale e nascondendo la finestra database.
Se quindi disabiliti tutti i menu & Co. dal menu di avvio ti trovi con la
sola maschera.
Ciao,
Massimo

 
con la protezione di access hai provato?
potresti creare al volo un recordset che accede alla tabella come utente 
privilegiato e quindi può leggere e scrivere.
i permessi sulla tabella, impediranno però ad altri di modificarne il 
contenuto.
-- 
+-------
| Paolo opg
|
| janickg ( at ) hotmail ( dot ) com
+-------

 ha scritto nel messaggio
news:Xns941D87518...@193.43.96.1...

Ma se l'utente può leggere e scrivere può anche modificare i dati sulla
tabella. Io voglio evitare che lo stesso utente che scrive i dati (o meglio
al quale viene attribuita la scrittura dei dati) possa entrare sulla tabella
e modificarne il contenuto. Non posso non autorizzarlo a scrivere o
modificare la tabella, perchè altrimenti non potrà mai inserire neppure una
riga sulla tabella stessa.
Ciao
Salvatore


La tua soluzione può andar bene nel caso di tabelle che appartengono al
database. Ma se le tabelle sono allegate?
Ciao, e grazie
Salvatore

 Ciao
io sto parlando di utenti di access, tu di quelli di sistema...
se usi la sicurezza di access (files mdw & co) puoi fare quello che ho 
detto.
ho però l'impressione che tu non abbia idea d cos'è la protezione di 
access.
sul sitocomune, nella sezione general, trovi "Come utilizzare la 
sicurezza di Access?"
dacci un'occhiata che sicuramente ti chiarirà le idee.
-- 
+-------
| Paolo opg
|
| janickg ( at ) hotmail ( dot ) com
| (fake reply-to address!)
+-------


Conosco la sicurezza di access, tant'è che la sto utilizzando...Se però un
utente deve scrivere su una tabella attraverso una maschera (visto che deve
registrare i dati) non puoi impedire che lo stesso utente apra la tabella
(che sta sul BE) e ne modifichi i dati. La limitazione la puoi effettuare
solo con le maschere. Se conosci un metodo per impedire questo, potresti
suggerirmelo? Grazie
Salvatore

 
con un recordset hai provato?


> con un recordset hai provato?
Questo preoblema ce l'ho anche io! Che dovrei fare in pratica?
Grazie
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 
provare a creare un recordset con un utente che abbia il permesso di 
scrivere sulla tabella protetta...
di solito si mette admin senza password (l'utente predefinito con cui 
access lavora).
mettendo un utente abilitato, si dovrebbe poter modificare anche oggetti 
protetti.



Scusa, Paolo, ma se l'utente ha il permesso di scrivere sulla tabella (e
deve per forza averlo, altrimenti come fa ad inserirci i dati?) cosa può
impedirgli di aprire la stessa tabella e modificarne il contenuto di uno o
più campi?
Ciao
Salvatore

 
se la situazione è questa, non lo ferma niente.
è per questo che ho suggerito la possibiltà del recordset...
creandolo come altro utente, il rset potrebbe modificare la tabella, 
anche se l'utente che ha aperto il db non ne ha il permesso.
ovvio che non puoi fare un semplice
set rst=currentdb.openrecordset(blablabla)
dovrai crearti un workspace e tutto quello che ci vuole per creare un 
contesto con i permessi che servono per modificare la tabella.
a questo punto, tutte le modifiche le fai via codice passando per il rset 
con permesso di scrittura nella tabella protetta.
(dettaglio: è un'idea che m'è venuta, non so se funzioni...)


 ha scritto nel messaggio
news:Xns941EB090E...@193.43.96.1...

Grazie e ciao
Salvatore