Liens entre deux formulaires (violation de clé primaire)

The_tiger85

New Member
J'ai tout les numéros, pas seulement ceux qui sont en liens avec le type de dossier...
De plus j'ai une erreur
 

Mykle

New Member
Alors deux questions:

Ton formulaire, a-t-il une source ? Si oui, requête ? Table ?

ta listbox pour les numéros de dossier a-t-elle comme "origine source" "table/requete" puis en "contenu", la requete dont on vient de parler ?
 

The_tiger85

New Member
Oui mon formulaire à une vue comme source.

Voici les caractéristique de ma liste pour les numéros de dossier :
Nom : NumDossier1
Origine source : Table/Vue/Proc. Stockée
Contenu : SELECT [dbo].[Vue1].[NumDossier] FROM [dbo].[Vue1] ORDER BY [NumDossier];

Vue1 étant la requête de tout à l'heure.
 

Mykle

New Member
Ok, là je comprends mieux. La requête de tout à l'heure, était déestinée à être implantée dans la liste pour les numéros de dossier comme contenu.
 

The_tiger85

New Member
Voici la requête pour la liste des numéros de dossiers
SELECT NumDossier FROM dbo.Dossier WHERE (TypeDossier = Lst_TypeDossier)

Mais maintenant il me dit que "Lst_TypeDossier" est un nom de colonne incorrect. Ce nom correspond à la liste des type de dossiers.
 

The_tiger85

New Member
Voila la commande de mon bouton valider :

Private Sub CmdValider_Click()
On Error GoTo Err_CmdValider_Click

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim qdf As DAO.QueryDef

Set db = CurrentDb

SQL = "SELECT NumDossier FROM Dossier WHERE TypeDossier ='" & Lst_TypeDossier.Value & "';"

Set qdf = db.CreateQueryDef("", SQL)
Debug.Print SQL
Set rs = qdf.OpenRecordset()

If rs.EOF Then
MsgBox "Aucun dossier", vbExclamation
Else
'Tu crées un textbox dans ton formulaire de recherche que l'utilisateur ne verra pas,
'pour y placer le résultat de ta requête. Cette manipulation a pour but de conserver
'le numero de dossier lorsque tu ouvriras le formulaire dossier, pour que la requête
'dont elle dépendra puisse retrouver les informations correspondantes

hidLst_NumDossier = rs!Lst_NumDossier
DoCmd.OpenForm "Dossier"
End If

Exit_CmdValider_Click:
Exit Sub

Err_CmdValider_Click:
MsgBox Err.Description
Resume Exit_CmdValider_Click
End Sub
 

Mykle

New Member
Selon moi, ton bouton est bon, après il faut tester...

Pour ce qui est de la liste de numéros en fonction du type de dossier, je ne comprends pas où peut être le problème... J'ai un formulaire dont certaines listes déroulantes contiennent une requête qui se base sur une zone de texte, et cela fonctionne... Essayes de créer une requête sql qui contient ce dont on parle, enregistre-là, et utilise-là comme Contenu dans la liste de numéro_dossier (appelle là par exemple R_type).
 

The_tiger85

New Member
Mon bouton ne marche pas, il me dit "Variable objet ou variable de bloc With non définie"
J'ai une autre liste avec mes numéros qui fonctionne.

Code de la liste des type de dossier :
Me.Lst_TypeDossier.RowSource = "SELECT TypeDossier FROM dbo.VueAccueil GROUP BY TypeDossier ORDER BY TypeDossier;"

Code pour mettre à jour les numéros de dossiers :
Me.NumDossier.RowSource = "SELECT NumDossier FROM Dossier WHERE TypeDossier ='" & Lst_TypeDossier.Value & "'"

Mais mon soucis est que lorsque je sort du formulaire après avoir cliqué sur le numéro, c'est là que j'ai une violation de clé primaire.
 

Ca peut vous intéresser