Bonjour tout le monde,
J’ai un problème un peu compliqué (au moins pour moi), je vais essayer de faire mon mieux pour vous expliquer.
Donc j’ai créé deux procédures stockées l’une pour remplir le rapport que j’ai créé par Crystal reports et l’autre pour sauvegarder quelques données affichées dans une table (odl_printed) qui a comme clé primaire un autonumber.
L’affichage et l’enregistrement se font simultanément car j’ai besoin d’afficher la dernière clé primaire de la table d’enregistrement odl_printed.
j'ai lié la première directement au rapport
la deuxième qui est une procédure paramétrée :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 create procedure p4 as declare @p varchar(50) INSERT INTO [Cutting software].dbo.odl_printed( designation_veh, placement, fk_tissu, designation_tissu, id_kanban_tissu, placementB, placementC, placementD, datetime_impression -- <===================== ) SELECT relation_tissu_placement_veh.designation_veh, relation_tissu_placement_veh.placement, relation_tissu_placement_veh.fk_tissu, relation_tissu_placement_veh.designation_tissu, placement.id_kanban_tissu, placement.PlacementB, placement.PlacementC, placement.PlacementD, GETDATE() -- <===================== FROM relation_tissu_placement_veh INNER JOIN placement ON relation_tissu_placement_veh.placement = placement.placement where designation_veh = @p
j’ai tapé le code vb suivant pour son exécution :
Je n’ai pas réussi à enregistrer les données et par conséquent l’affichage. Je ne sais pas où le problème car le code ne retourne aucun erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Dim pr As SqlParameter Dim r As Integer Cn.Open() Dim myCm = New SqlCommand("P4", Cn) With myCm .CommandText = "P4" .CommandType = CommandType.StoredProcedure pr = New SqlParameter pr.ParameterName = "@p" pr.SqlDbType = SqlDbType.VarChar pr.Direction = ParameterDirection.Input pr.Value = ComboBox1.Text End With r = myCm.ExecuteNonQuery() If r <> 0 Then MsgBox("rows affected") Else MsgBox("no rows affected") End If Cn.Close()
s'il y a d'autres explications à fournir merci de me poser des questions
Merci d'avance pour votre aide.
Partager