OVH Cloud OVH Cloud

Comment lancer une proc SQLserver dans Access

1 réponse
Avatar
JP
bonjour

Comment lancer une procédure SQL SERVER dans du code Microsoft Access

Merci

1 réponse

Avatar
J-Pierre
Bonjour,

Comme ça ?

Dim cmd As New ADODB.Command
Dim retCode As ADODB.Parameter, retMess As ADODB.Parameter, noProjet As ADODB.Parameter
Dim PMQparm As ADODB.Parameter, BATparm As ADODB.Parameter, LIVparm As ADODB.Parameter

Set cmd.ActiveConnection = cnn
cmd.CommandText = "maProcedure"
cmd.CommandType = adCmdStoredProc

Set retCode = cmd.CreateParameter("Return", adInteger, adParamReturnValue)
cmd.Parameters.Append retCode

Set retMess = cmd.CreateParameter("Output", adVarChar, adParamOutput, 200)
cmd.Parameters.Append retMess

Set noProjet = cmd.CreateParameter("Input", adInteger, adParamInput)
cmd.Parameters.Append noProjet
noProjet.Value = Me.T001_no_projet

Set PMQparm = cmd.CreateParameter("Input", adDate, adParamInput)
cmd.Parameters.Append PMQparm

If Not IsNull(Me.PMQdate) And Me.PMQdate <> "" Then
PMQparm.Value = ConvDateUS(Me.PMQdate)
Else
PMQparm.Value = Null
End If

Set BATparm = cmd.CreateParameter("Input", adDate, adParamInput)
cmd.Parameters.Append BATparm
BATparm.Value = ConvDateUS(Me.BATdate)

Set LIVparm = cmd.CreateParameter("Input", adDate, adParamInput)
cmd.Parameters.Append LIVparm
LIVparm.Value = ConvDateUS(Me.LIVdate)

On Error Resume Next
cmd.Execute
On Error GoTo 0

If retCode = 0 Then
DoCmd.Hourglass False
cnn.CommitTrans
Set cmd = Nothing
cnn.Close
Set cnn = Nothing
MsgBox "Nouveau dossier ouvert"
Else
DoCmd.Hourglass False
cnn.RollbackTrans
Set cmd = Nothing
cnn.Close
Set cnn = Nothing
MsgBox "Erreur pendant la création du dossier" & vbCrLf & _
" code retour : " & retCode & vbCrLf & _
" message d'erreur: " & retMess
Exit Sub
End If

J-Pierre

"JP" a écrit dans le message de news:
bonjour

Comment lancer une procédure SQL SERVER dans du code Microsoft Access

Merci