Newsgroup: it.comp.appl.access
Titolo: registrare operazioni eseguite su records

Buona sera a tutto il Ng, avrei cortesemente bisogno di una risposta al
mio quesito se fosse possibile, dunque il problema sarebbe il seguente
ci sarebbe la necessità di tenere traccia di ogni operazione
effettuata da un user che usa un db che gira in una rete di circa 9
macchine, ora perche' dover tenere traccia di ogni operazione
effettuata? bene il db in questione lavora per il rilascio di pass
atti a consentire la sosta in aree blu...le cosidette zone blu che ci
sono in quasi tutte le città italiane,
il problema sorge nel constatare che malgrado i vari controlli
utilizzati per evitare che vengano rilasciati pass a persone che non
hanno i requisiti necessari, queste persone il pass lo riescono ad
ottenere ugualmente grazie ai favori elargiti dagli operatori che usano
il db, resta di fatto che, comunque, le persone che ottengono il pass
nonostante non ne abiano diritto, nel corso dell'anno, grazie a
controlli da parte di addetti della società gestore delle zone blu
vengono beccati....e invitati a restituire il pass e pagare anche una
forte ammenda, ma comunque il problema non si risolve perche' i pass
vengono rilasciati lo stesso grazie ad operatori compiacenti. Quindi la
mia richiesta d'aiuto dove sta?? sta nel chiedere vi sia qualche amico
del NG, che mi possa indicare la soluzione adeguata per far si che
questo problema si possa, se non in toto, in buona parte risolvere,
vorrei sottolineare a priori che nel db le maschere di inserimento e
modifica non si appoggiano a nessuna tabella ma sono tutte maschere non
associate che scrivono i dati attraverso query di inserimento di
aggiornamento o di eliminazione, l'unica form che e' appoggiata alle
tabelle (che sono tre le principali, poi ve ne sono altre che comunque
non sono importanti per quel che riguarda il rilascio dei pass) e
quella in cui fa visionare l'anagrafica utente la targa o le targhe
della vettura e i vari pass rilasciati, di modifiche ce' ne sono
pochissime se non un cambio indirizzo o zona, ma per quanto riguarda i
pass non sono contemplate le modifiche, dal momento che essendo i pass
stessi a rendiconto(quindi numerati) si rilascia sempre un nuovo pass
con un protocollo nuovo piuttosto che apportare modifiche, cosicche' si
tiene sempre traccia di ogni pass rilasciato, anche se sbagliato,
comunque non volendo essere eccessivamente prolisso piu' di quanto non
lo sia adesso, volevo dire che ho visionato i vari esempi riportati nel
sito comune ed in quello di Alessandro Baraldi circa i log, pero' penso
che effettivamente non e' la soluzione che piu' si adatta al mio
problema in quanto il bisogno reale non e' tanto quello di seguire le
tracce di ogni modifica effettuata, ma piuttosto dal momento che per
ogni nuovo utente registrato, ogni modifica effettuata all'indirizzo o
la zona, ogni cambio targa, ogni smarrimento che implica il rilascio di
un duplicato, insomma per ogni singola operazione di inserimento o
modifica corrisponde sempre il rilascio di un nuovo pass, questa e' una
prerogativa imprescindibile, di conseguenza avevo pensato  che a ogni
rilascio di pass si potesse scrivere in un campo della tabella Pass che
potrei denominare operatore la sigla dell'operatore che ha effettuato
l'operazione anzicche' ricorrere al log e compagnia bella, penasate che
la cosa sia fattibile? e se si devo apportare modifiche al db a livello
di  protezione utente, ricorrendo quindi alla conversione del db in mdw
con le relative autorizzazioni Amministratore User ecc ecc  per poter
usare l'application .current user?
Raga' insomma me la dareste una mano??
Grazie 
Saluti
Diego

 ha scritto nel messaggio
news:1161114463....@k70g2000cwa.googlegroups.com...

Grazie
Saluti
Diego
Sicuro che ti si dà una mano.
Concordo in pieno con il fatto che si debba tenere traccia delle singole
attività degli operatori, legando all'operatore la singola operazione
(targa, nome, etc.).
In sostanza, si tratta di salvare ogni operazione riportando l'IDOperatore e
gli estremi dell'operazione in una tabella riservata. Dopodiché è facile
metterli alle strette.
Il problema, come hai già premesso, è che la tabella nella quale salvi
queste info dev'essere preclusa ai non amministratori in modo che, non
avendo accesso, non la possano leggere e/o modificare. Per fare questo,
però, devi passare necessariamente per la protezione a livello utente
(inoltre e dopo, devi essere certo che chi ha la pass di amm/ore non sia
paraculo pure lui :P).
Son forche caudine, ma risolvono :)
In ogni caso e se non sai già cavartela da solo, sul sitocomune trovi un
tutorial chiaro e dettagliato sulla procedura per settare la protezione a
livello utente.
Fatto questo e se ho caito bene il problema, si può usare l'evento "dopo
aggiornamento" per raccogliere i dati immessi dai singoli operatori e
salvarli nella tabella riservata.
Ciao.
eSQueL

 ha scritto nel messaggio
news:mubZg.7044$uv5....@twister1.libero.it...

e poi se ci lasci un pass ... noi ti aiutiamo ancor di più!
io sto in zona Brera a Milano ... dal lunedi al giovedi ....
;-)

ciroteo ha scritto:


ecc a llà||
queste cose sono permesse solo ai napoletani!!
a voi del nord non dovrebbero neanche passare per la mente!!!
mica hai ascendenti nostrane???
tu paga e ti sarà dato!
:-)))))
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


non solo ai napoletani...io sono di Palermo e comunque per rispondere a
ESQUEL,  l'amministratore sarei io e piuttosto che paraculo mi
definisco BASTARD INSIDE !! =))

 eSQueL
Intanto Voglio Ringraziarti eSQueL e Ringraziare chi mi ha risposto, te
in particolar modo perche' mi hai dato modo di riflettere su come agire
in tal senso, mi alletta l'idea di una tabella nascosta dove tenere le
informazioni di cui parliamo, ora il problema sta dove tenerla,
considerando che il db e' diviso potrei tenerla nel back-end ma a qual
punto dovrei proteggere anche quello magari con la classica password
che si imposta da access direttamente, poi però sono noie nel
collegare le tabelle, perche' se lo fai attraverso il sistema del
collega tabella da access sei costretto a dare la password agli
operatori se non vuoi metterti a collegare le tabelle a manetta pc per
pc, viceversa dovrei farlo via codice ma non lo so fare o perlomeno
potrei utilizzare una delle funzioni che mettono a disposizione gli
amici del sitocomune, ma non parlano di eventuali back end protetti e
quindi mi ritroverei a scartare l'opzione sul nascere, resterebbe
quella di creare la tabella localmente cioe' nel front end che e'
protetto , ma poi dovrei andare a vedere uno per uno i client  e quindi
non sarebbe gestibile magari da un solo client fatto ad hoc per
l'amministratore....cacchio mi sa che mi ci perdo ...come ne esco
fuori??
Saluti
Diego

 eSQueL
Diego

Scusate un'informazione: sono andato a vedere il tutorial per avviare
la protezione utente pubblicato nel sito comune, lo leggo e mi
consiglia di lanciare il file WRKGADM.EXE per iniziare la creazione
account, mi suggerisce di cercarlo..eseguo con il cerca...ma il file
non esiste...non esiste proprio, io ho access 2003 non c'e' di suo o
non c'e' perche' magari non e' stato caricato durante
l'istallazione??....sapreste dirmi come mai non c'e' l'ho?
la cosa mi turba!!!
Saluti
Diego

 ha scritto nel messaggio 
news:1161125147.2...@b28g2000cwb.googlegroups.com...

Perchč quell'esempio č per A97.
Saluti Andrea 

 Saluti Andrea
quindi non c'e' perche' a quanto pare in access 2003 la creazione
utenti gruppi e' intrinseca dell'applicazione stessa senza quindi
ricorrere al file in questione, se e cose stanno cosi mi
tranquillizzo!!
Grazie Andrea
Saluti
Diego

> Fatto questo e se ho caito bene il problema, si puň usare l'evento

Crea un MDE, mettilo nei riferimenti
In questo ci scrivi una funzione per la concessione di user e psw
Ora per fare quella operazone qualsiasi record va a cercare i permessi 
nell'mde
Ovvio che solo tu hai l'mdb da convertire in mde
cosě facendo eviti qualsisai tabella, che per quanto celabile puň essere 
portata in chiaro
-- 
-- 
Massimiliano Amendola
www.accessgroup.it
Il sito italiano di svilupatori Access
www.donkarl.com/it/cisa
 

 
www.donkarl.com/it/cisa
Buon giorno Massimiliano, l' MDE da creare dovrebbe essere il back End?
e poi dovrei aggiungerlo ai riferimenti come se fosse una libreria o un
Ocx? ed inoltre, scusami se approfitto dell tua disponibilità, se
l'Mde e protetto da password (sempre che sia quello contenente solo le
tabelle come le collego via codice? scusami saro' sicuramente tarato ma
a volte mi perdo in queste cose.
Saluti
Diego

 ha scritto nel messaggio 
news:1161155340.1...@b28g2000cwb.googlegroups.com...
quindi non c'e' perche' a quanto pare in access 2003 la creazione
utenti gruppi e' intrinseca dell'applicazione stessa senza quindi
ricorrere al file in questione, se e cose stanno cosi mi
tranquillizzo!!
Leggi il tread
Sito Comune Faq 6.219
Saluti Andrea

 ha scritto nel messaggio 
news:1161157700.9...@m7g2000cwm.googlegroups.com...
Buon giorno Massimiliano, l' MDE da creare dovrebbe essere il back End?
e poi dovrei aggiungerlo ai riferimenti come se fosse una libreria o un
Ocx? ed inoltre, scusami se approfitto dell tua disponibilità, se
l'Mde e protetto da password (sempre che sia quello contenente solo le
tabelle come le collego via codice? scusami saro' sicuramente tarato ma
a volte mi perdo in queste cose.
Mi sà che stai facendo un pò di confusione, secondo me dovresti creare un FE 
(programma) che sia MDE e che abbia in apertura un logg con tanto di 
password e tutte le volte che qualcuno entra viene registrato.
A questo punto (non è molto facile ma dovresti riuscirci) devi creare in 
tabella dei campi che registrino chi hacreato e/o modificato il record.
Il BE (dati) deve essere protetto da password.
Non è facile quello che ti ho detto ma io ci sono arrivato con esempi presi 
dai vari siti e quindi dovresti riuscirci anche tu, magari volta volta 
chiedi consiglio all'NG.
Altro sistema è quello della protezione utente ma li ti aiuto male perchè 
sono riuscito a malapena a metterla in atto per me.
Saluti Andrea 

 Saluti Andrea
Ciao Andrea....Mannaggia è quello che cerco di fare, il problema sta
nelle tabelle collegate , nel senso che il problema si pone se il
backend e' protetto da password, come faccio a fare bypassare la
password via codice?? cosicchè il frontend si colleghi? senza bisogno
di digitarla?
Saluti
Diego

 ha scritto nel messaggio 
news:1161160394.2...@h48g2000cwc.googlegroups.com...
VedoTondo ha scritto:
Ciao Andrea....Mannaggia è quello che cerco di fare, il problema sta
nelle tabelle collegate , nel senso che il problema si pone se il
backend e' protetto da password, come faccio a fare bypassare la
password via codice?? cosicchè il frontend si colleghi? senza bisogno
di digitarla?
Forse non hai mai provato ma se dal FE colleghi le tabelle lui ti chiede la 
password la prima volta, gli dici che tabelle collegare e poi non la chiede 
più a meno che tu non sposti uno dei due database.
La consulta a quel punto avviene solo ed esclusivamente dal FE e non devi 
più toccare il BE ovviamente il FE a quel punto devi proteggerlo dal tasto 
Shift, devi creare un MDE, devi fare in modo che chi vi accede deve 
accedersi tramite una form con login altrimenti "nisba" e registrare come 
dicevamo prima la loggatura.
A quel punto tutte le tabelle che sono esclusivamente si BE vengono gestite 
dal FE che le tratta quasi come de fossero tabelle sue ad eccezione delle 
relazioni che devi impostare sull BE per l'integrità referenziale e sul FE 
per quanto riguarda l'utilizzo eventuale nei report.
Saluti Andrea 

 Saluti Andrea
No Andrea in effetti non avavo mai provato prima il collegamento di un
fe ad un be protetto da pwd e non sapevo che la pwd la chiedesse una
volta soltanto...se è così le cose allora sono un po meno complesse.
Grazie per la dritta
a buon rendere spero!!
Saluti
Diego


Usare l'evento dopo aggiornamento non so se sia fattibile per il
semplice fatto che le maschere di inserimento e modifica dati non sono
associate etutte le operazioni di inserimento nuovi record e modifica
record vengono fatte attraverso query di inserimento e aggiornamento, e
che io sappia scegliendo questo genere di gestione dei dati l'evento
prima dopo aggiornamento nelle maschere non associate non funziona per
nulla, al limite dovrei associarlo all'evento click del command che
scatena le varie query
Diego
_____________________________________
E' solo un'idea:
1) Crei un nuovo db;
2) importi le tabelle dall'attuale BE e tutto il resto dal FE;
3) imposti la protezione a livello utente;
4) Crei la tabella riservata e la rendi disponibile in lettura/scrittura al 
solo amm/ore;
5) dividi il db;
6) Da codice accedi al BE e gestisci anche la riallegazione delle tabelle 
(il codice per questo lo trovi sia sul sitocomune, sia su quello di 
Alessandro Baraldi. Sono sicuro che c'č anche altrove);
7) Usi l'evento dopo aggiornamento legato ai singoli controlli (TextBox) che 
funziona indipendentemente dal fatto che il controllo sia o meno associato 
e, per ciascun aggiornamento che t'interessa, salvi il valore immesso in una 
"variabile di sessione" (il codice che fa questo l'ha postato Alessandro 
Baraldi qualche giuorno fa) e, sull'evento che conferma la registrazione 
(presumo un pulsante), da codice apri il BE e scrivi la tabella con i valori 
contenuti nelle variabili di sessione (che reinizializzi immediatamente dopo 
a 0, "" o False per evitare errori con l'inserimento successivo).
Ma, ammesso e non concesso che tutto quanto sopra abbia un senso, avrai 
bisogno di un bel po' di codice. Senza la vedo dura.
Uhu ... č la volta che i guru dell'NG mi fanno a fettine :)
Ciao
eSQueL 

A proposito, il file si chiama wrkgadm.exe e dovrebbe trovarsi in:
"C:\Programmi\Microsoft Office\Office\1040\wrkgadm.exe"
Ciao 


non ho parlato di tabelle, altrimenti non ce ne sarebbe bisogno del mde
Metti una funzione
Function fctProntosituuu()
    se il pc è autorizzato funzia altrimenti NO
end function
-- 
-- 
