Identificativo articolo: 139041 - Ultima modifica: venerdì 19 gennaio 2007 - Revisione: 3.1

ACC: messaggio di errore "errore definito dall'applicazione o definite dall'oggetto"

Suggerimento di sistemaIl presente articolo fa riferimento a un sistema operativo diverso da quello in uso. Il contenuto dell'articolo che potrebbe non essere relativo al sistema in uso è disabilitato.
Moderato: Impone la macro di base, codifica e le competenze di interoperabilità.

In questa pagina

Espandi tutto | Chiudi tutto

Sintomi

Se si utilizzano le funzioni Error() o Error$() per ottenere la descrizione testuale di un messaggio di errore, è analogo il seguente messaggio di errore:
Errore definito dall'applicazione o definito dall'oggetto

Questo messaggio potrebbe essere visualizzato quando si tenta di ottenere la descrizione di un errore intercettato nell'evento di errore di una maschera, come illustrato di seguito:
   Private Sub Form_Error(DataErr As Integer, Response As Integer)
      MsgBox Error(DataErr)
      Response = acDataErrContinue
   End Sub
				

Cause

Il messaggio di errore da registrare è Microsoft Access specifico. Quando si passa un numero di errore alla funzione Error() che non è un errore specifico di applicazioni di Visual Basic, Visual Basic, Applications Edition non viene chiamato nuovamente nell'applicazione host per richiedere il messaggio di errore.

Risoluzione

Microsoft Access 7.0 ha introdotto il nuovo metodo di AccessError di è possibile utilizzare per restituire la stringa descrittiva associata a un errore Microsoft Access come indicato di seguito:
   Private Sub Form_Error(DataErr As Integer, Response As Integer)
      MsgBox Application.AccessError(DataErr)
      Response = acDataErrContinue
   End Sub
				

Nota: Il metodo AccessError restituirà una stringa associata solo a errori di Microsoft Access ed errori di Visual Basic. NON verrà restituito descrittive stringhe associate a errori di accesso dati.

Informazioni

Procedura per riprodurre il problema


  1. Aprire il database di esempio Northwind.mdb.
  2. Aprire la tabella Ordini in visualizzazione Struttura.
  3. Impostare la proprietà Required del campo IDImpiegato su Sì e quindi chiudere la tabella.
  4. Scegliere Sì quando il seguente messaggio:
           Data integrity rules have been changed. Existing data may not be
           valid for the new rules.
    
           This process may take a long time. Do you want the existing data to
           be tested with the new rules?
    						
  5. Aprire la maschera Ordini in visualizzazione struttura e impostare la seguente proprietà di form:
           OnError: [Event Procedure]
    						
  6. Digitare il seguente codice nel modulo del form:
           Private Sub Form_Error(DataErr As Integer, Response As Integer)
              MsgBox Error$(DataErr)
              MsgBox Application.AccessError(DataErr)
              Response = acDataErrDisplay
           End Sub
    						
  7. Visualizzare la maschera in visualizzazione Maschera e fare clic sul pulsante sulla barra degli strumenti nuovo record per passare a un nuovo record di ordini.
  8. Digitare la riga seguente nella fatturazione A: casella combinata e premere INVIO:

    hello world!

    Si noti che viene visualizzato il seguente messaggio di tre:
           Application-defined or object-defined error.
    
           The text you entered isn't an item in the list.
    
           The text you entered isn't an item in the list.
    						

    Nota: Poiché la variabile di risposta è impostata su acDataErrDisplay, l'errore non viene intercettato. Il terzo messaggio sopra riportato è il messaggio di errore effettivo.
  9. Fare clic su un cliente di fatturazione A: casella combinata.
  10. Scegliere Salva Record dal menu record. Si noti che viene visualizzato il seguente messaggio di tre:
           Application-defined or object-defined error
    
           < a message box with no text appears >
    
           Field 'Orders.EmployeeID' can't contain a null value.
    						

    Nota: La seconda casella di messaggio è vuota perché l'errore generato un errore di accesso dati. Il metodo AccessError non viene restituito messaggi di errore di accesso ai dati.

Riferimenti

Per ulteriori informazioni sul metodo AccessError, cercare "AccessError" e "Metodo AccessError" utilizzando l'indice della Guida di Microsoft Access 97.

Le informazioni in questo articolo si applicano a:
  • Microsoft Access 95 Standard Edition
  • Microsoft Access 97 Standard Edition
Chiavi: 
kbmt kberrmsg kbprb KB139041 KbMtit
Traduzione automatica articoliTraduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 139041  (http://support.microsoft.com/kb/139041/en-us/ )
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Retired KB ArticleDichiarazione di non responsabilità per articoli della Microsoft Knowledge Base su prodotti non più supportati
Questo articolo è stato scritto sui prodotti per cui Microsoft non offre più supporto. L?articolo, quindi, viene offerto ?così come è? e non verrà più aggiornato.