Controllo inserimento dati in record

di il
4 risposte

Controllo inserimento dati in record

Ciao a tutti.
Ho un db con una sola maschera da cui inserisco dati in una tabella collegata di un db SQL server.
devo sviluppare un controllo che, dopo l'inserimento di un record, sommi il valore di tre campi e mandi un messaggio di alert se il valore è minore di 100.
Nell'evento Sub Form_AfterInsert() ho scritto quindi l'istruzione
If Nz(Me.PERC_F1.Value, 0) + Nz(Me.PERC_F2.Value, 0) + Nz(Me.PERC_F3.Value, 0) < 100 then MsgBox (.....) End If

Non entra nella if.

Ho verificato prima che l'evento venisse intercettato e lo fa.
Ho pensato quindi che la somma dei tre valori non venisse fatta in modo corretto per cui ho aggiunto alla form una casella di testo che ho cercato di valorizzare con l'istruzione
Me.Testo67.Value = Nz(Me.PERC_F1.Value, 0) + Nz(Me.PERC_F2.Value, 0) + Nz(Me.PERC_F3.Value, 0), per vedere il risultato della somma.

In run time ho l'errore 2448: impossibile assegnare un valore all'oggetto.
Ho molta dimestichezza con sql ma poca con access, sicuramente sbaglio la sintassi di assegnazione dei valori ai controlli. Mi aiutate a capire?
Grazie

4 Risposte

  • Re: Controllo inserimento dati in record

    Prova a mettere le parentesi così
    If (Me.PERC_F1.Value + Me.PERC_F2.Value + Me.PERC_F3.Value) < 100 then MsgBox (.....)
  • Re: Controllo inserimento dati in record

    Purtroppo non funziona nemmeno così
  • Re: Controllo inserimento dati in record

    Julipet ha scritto:


    ho aggiunto alla form una casella di testo che ho cercato di valorizzare con l'istruzione
    Me.Testo67.Value = Nz(Me.PERC_F1.Value, 0) + Nz(Me.PERC_F2.Value, 0) + Nz(Me.PERC_F3.Value, 0), per vedere il risultato della somma.
    inserendo direttamente nel controllo la somma cosa ottieni? quelle "PERC_F..." che formato hanno?
    prova cosi:
    Testo67  >>> origine controllo = Nz(PERC_F1) + Nz(PERC_F2) + Nz(PERC_F3)
    Saluti
  • Re: Controllo inserimento dati in record

    Ho trovato il problema. Alla funzione Nz vanno passati campi Variant, mentre io gli passavo dei numerici.
    Grazie a @Gianni55 che mi ci ha fatto riflettere
    Buona giornata
Devi accedere o registrarti per scrivere nel forum
4 risposte