titilechat001
Messages postés22Date d'inscriptionmardi 16 août 2005StatutMembreDernière intervention18 septembre 2005
-
18 sept. 2005 à 12:05
titilechat001
Messages postés22Date d'inscriptionmardi 16 août 2005StatutMembreDernière intervention18 septembre 2005
-
18 sept. 2005 à 21:07
bonjour
je travaille sur une base access 97, en dao. quand je fait un
recordet.movefirst, ca me met comme erreur "l'objet est incorrect ou
n'est plus défini" . Je ne comprends pas pourquoi et ai essayé de me
renseigner là dessus, mais en vain. Ca me fait la même erreur avec un
addnew autre part dans mon code.
voici mon code
Private Sub Form_Activate()
With Me.dataaddition.Recordset
.AddNew 'ajout de la nouvelle table
!id_table = idtable
!addition_ht = Me.lbltotalht.Caption
!Date = Me.lbldateservice.Caption
.Update
.MoveLast
End With
End Sub
ma question va vous paraitre basique, mais je débute.
D'autre part, je voudrais mettre un message d'erreur quand
l'utilisateur fait appel à un enregistrement qui n'est plus valide,
mais ne sais pas comment m'y prendre. Une personne du forum m'a donné
un code, mais il ne fonctionne pas. je ne l'ai pas mis au bon endroit,
je pense.
j'ai mis: Private Sub Form_Load()
On Error GoTo Err_form_activate
Err_form_activate:
If Err.Number = "3201" Then
MsgBox "L'enregistrement spécifié n'existe plus !"
Resume Next
Exit Sub
End If
End Sub
est ce que je dois me mettre à chaque sub de mon code ou juste à form load? est ce qu'il faut que je déclare autre chose?
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200621 18 sept. 2005 à 12:36
Salut,
Un traitement d'erreur doit se trouver dans la procédure ou la fonction où l'erreur peut se produire donc la mettre dans le load de la form n'est valable que pour le load, pas pour toute la form. Et on code de cette façon :
sub truc()
On Error GoTo Trt_erreur
'ton code susceptible de provoquer l'erreur
exit sub 'sinon on passe dans le trt d'erreur même s'il n'y en a pas
Trt_erreur:
If Err.Number = "3201" Then
MsgBox "L'enregistrement spécifié n'existe plus !"
Resume Next 'si tu veux continuer malgré l'erreur sinon rien
End If
End Sub
D'autre part, je ne comprend pas ton addnew dans l'évènement activate. Si tu veux ajouter un enreg chaque fois que ta form prend le focus c'est presque correct (reste à savoir comment tu gère idtable et le pourquoi du movelast inutile). Sinon, ce n'est pas là qu'il faut le mettre.
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200621 18 sept. 2005 à 19:39
J'en était resté à l'erreur "l'objet est incorrect ou n'est plus défini" mais en fait, "l'enregistrement connexe est requis dans la table 'serveur'" veut dire qu'il y a une intégrité référentielle entre ta table et la table serveur. Tu ne peux donc modifier ou supprimer d'enregistrement.
Il n'y aurait pas 2 tables dans le from de ton recordset ?
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?