Problemi di runtime con pacchetto pubblicato

Anonimo
2017-11-27T21:18:22+00:00

Ho creato un pacchetto da un database access utilizzando il software SSE. Sono andato a testarlo su di una macchina virtuale su cui avevo preventivamente installato il runtime di access 2013 (versione di access con cui ho realizzato il DB) per vedere se tutto era a posto. L'installazione dell'eseguibile è andata bene, ho lanciato il programma e si è aperto con il suo desktop senza problemi. Il programma richiede di effettuare un login:

si apre la maschera qui sopra in cui viene scelto, fra le voci già presenti, l'operatore con cui loggarsi. Quando esco da questo campo per portarmi al successivo dove inserire la password necessaria compare il popup di "errore runtime" e mi si chiude l'applicazione.

Preciso che all'uscita del campo operatore è prevista l'esecuzione della seguente sub :

Private Sub Operat_AfterUpdate()

Dim rstOpe As New ADODB.Recordset

rstOpe.Open "TOperatori", CurrentProject.Connection, adOpenForwardOnly

Do Until rstOpe.EOF

If rstOpe!Utente = Operat Then

chk1 = rstOpe!Sigla

chk2 = rstOpe!Password

pw.SetFocus

Exit Sub

Else

rstOpe.MoveNext

End If

Loop

rstOpe.Close

Set rstOpe = Nothing

End Sub

Qualcuno ha idea del perchè di quest'errore? Considerate che io sono un autodidatta che sta cercando di imparare come si fa... Grazie anticipatamente per ogni suggerimento che potete darmi.

Roberto Pisoni

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

7 risposte

Ordina per: Più utili
  1. Anonimo
    2017-11-30T22:30:17+00:00

    Mi spiace continuare a "rompere" ma il problema persiste... mi spiego: Ho sostituito il mio codice con quello che mi hai gentilmente suggerito e, approfittando del fatto che stavo nel VBA ho messo un error check in tutte le sub della maschera in questione e del desktop. Ora, nonostante questo, non solo il programma mi crasha appena aperto ma in più continua a non volermi dire il perchè nonostante la gestione degli errori l'ho messa anche nella sub chiamata dal caricamento della maschera "Desktop". :(

    Altra cosa strana: mentre in access la maschera Desktop mi si apre correttamente con i soli tab "Login" e "Chiudi" visibili (vedi img qui a seguito)

    quando si apre con l'exe e crasha tutti i tab e i pulsanti sono visibili come se la sub relativa non si carica (ma, nonostante la gestione degli errori come mi hai suggerito, puoi vedere che non mi da alcun risultato utile).

    Che cosa posso andare a vedere per capire cosa non funziona? Grazie 1000 ancora.

    Roberto

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2017-11-29T23:06:58+00:00

    PS: (sì, sono sempre io...)

    PS2: visto che sono controlli, il codice che ti ho suggerito diventa:

    Private Sub Operat_AfterUpdate() Dim rstOpe As New ADODB.Recordset

    On Error Goto Errore

    rstOpe.Open "SELECT * FROM TOperatori WHERE Utente='" & Me.Operat &"'", CurrentProject.Connection, adOpenForwardOnly

    If not rstOpe.EOF Then

    Me.chk1 = rstOpe!Sigla

    Me.chk2 = rstOpe!Password

    pw.SetFocus

    End If

    rstOpe.Close

    Set rstOpe = Nothing

    Exit Sub

    Errore:

    MsgBox Err.Number & ": "& Err.Description

    End Sub

    Ciao

    La risposta è stata utile?

    0 commenti Nessun commento