Contare le aperture di file Access e di sue maschere

mercoledì 17 marzo 2010 - 15.42

peppe1956 Profilo | Newbie

Buonasera a tutti!
Ho necessità di monitorare quante volte viene aperto un
file Access e quante volte vengono aperte, in quello stesso
file Access, determinate maschere, conteggiando anche il tempo in cui rimangono aperte.
Esiste già un codice per farlo?

Grazie per la vostra disponibilità ed arrivederci.

Peppe

cormoran50 Profilo | Newbie

Ciaoo Peppe;

io, grazie all'aiuto di altri amici di un altro forum l'ho risolto in questo modo: sull'evento caricamento della maschera principale , cioè sull'evento Form_Load() devi inserire questo codice :

Set clsLog = New clsBuildLogFile
With clsLog
'.Utente = .ComputerName 'Eventuale Nome Utente Connesso
'.Path="C:\" 'DEFAULT=CurrentDb_Path
.NomeFile = "Accessi.Log" 'Un nome Indicativo.Log o Txt
.Note = Me.name 'Esempio il Nome della Form + altro
'.Delimitatore = ";" 'DEFAULT=vbTab
.Data_Mode = 1 'DEFAULT=1
.messaggio = "Apertura Maschera"
.Action_WriteOut
End With

..in questo modo ogni volta che viene aperta la maschera iniziale della tua applicazione, viene generato un file (Accessi.log) che registra la data, l'ora, nome pc ed il nome della form aperta.

Ciaoo

Francesco


peppe1956 Profilo | Newbie

Grazie Cormoran, ho inserito il seguente codice:


Private Sub Form_Load()

Set clsLog = New clsBuildLogFile

With clsLog
'.Utente = .ComputerName 'Eventuale Nome Utente Connesso
'.Path="C:\" 'DEFAULT=CurrentDb_Path
.NomeFile = "Accessi.Txt" 'Un nome Indicativo.Log o Txt
.Note = Me.MascheraPRIMA 'Esempio il Nome della Form + altro
'.Delimitatore = ";" 'DEFAULT=vbTab
.Data_Mode = 1 'DEFAULT=1
.messaggio = "Apertura Maschera"
.Action_WriteOut
End With

End Sub

ma esce una finestra di errore col seguente contenuto:
"Errore di compilazione: Tipo definito dall'utente non definito"

Dove sbaglio?

Grazie ancora per la disponibilità e ciao.

Peppe

cormoran50 Profilo | Newbie

Ciaoo Peppe..

..supponiamo che la tua maschera sia "Start" , il codice lo devi inserire nell'evento Form_Load() (su caricamento) della maschera iniziale.

..La riga da te inserita

.Note = Me.MascheraPRIMA

la devi cambiare in

.Note = Me.Name

esattamente come l'ho scritto io : non devi sostituire Me.Name con il nome della tua maschera..!!

Ciaooo fammi sapere

Franco

peppe1956 Profilo | Newbie



Ciao Cormoran, ho reinserito il codice come al seguito:


Private Sub Form_Load()
Set clsLog = New clsBuildLogFile
With clsLog
'.Utente = .ComputerName 'Eventuale Nome Utente Connesso
'.Path="C:\" 'DEFAULT=CurrentDb_Path
.NomeFile = "Accessi.Log" 'Un nome Indicativo.Log o Txt
.Note = Me.Name 'Esempio il Nome della Form + altro
'.Delimitatore = ";" 'DEFAULT=vbTab
.Data_Mode = 1 'DEFAULT=1
.messaggio = "Apertura Maschera"
.Action_WriteOut
End With
End Sub

ma mi dà ancora quel messaggio che ti indicavo.

A proposito, così come è concepito, il file dovrebbe essere creato nella stessa cartella dove c'è il file che apro?

Ti ringrazio in anticipo per quanto potrai fare e ti saluto cordialmente.

Peppe

cormoran50 Profilo | Newbie

Ciaooo Peppe,

...il codice da me inviato, l'ho riprovato io in una mia applicazione e funziona benissimo ! te lo rinvio di nuovo, eliminando i commenti :

Private Sub Form_Load()
Set clsLog = New clsBuildLogFile
With clsLog
.Utente = .ComputerName
.Path = "C:\"
.NomeFile = "Accessi.txt"
.note = Me.Name
.Delimitatore = ";"
.Data_Mode = 1
.messaggio = "Apertura Maschera"
.Action_WriteOut
End With
End Sub

lo devi inserire, lo ripeto , nell'evento "su caricamento" della tua maschera iniziale..!! quindi riprova esattamente come te l'ho riscritto; ti dò conferma che il file txt che viene generato, e cioè Accessi.txt , viene creato nella stessa cartella dove hai la tua applicazione.


P.S.... naturalmente se non hai altri utenti connessi ...

Private Sub Form_Load()
Set clsLog = New clsBuildLogFile
With clsLog
.NomeFile = "Accessi.txt"
.note = Me.Name
.Data_Mode = 1
.messaggio = "Apertura Maschera"
.Action_WriteOut
End With
End Sub


Ciaooo

Franco

peppe1956 Profilo | Newbie

Ciao Cormoran50, purtroppo ritorna sempre quella finestra di errore.
Preciso che la maschera ove ho inserito il codice è quella che, configurata in "Strumenti/Avvio", si apre in automatico all'apertura del file.
La finestra di errore esce quando il file viene aperto dalla finestra "Database", non esce quando l'apertura è quella definita dall'"Avvio", ma comunque il fiel Accessi non viene creato.

Mi spiace disturbarti.

Ciao.

Peppe

P.S.: ho trovato l'errore; mancava il modulo di classe. L'ho trovato in questo sito

http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=56

che ho trovato fornitissimo e chiarissimo.

Desidero ringraziare il creatore di tale sito ed anche Cormoran50 per l'aiuto da cui è partito tutto.


Ciao ancora
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5