Bonjour,
J'essai d'appeler une procédure stocké en Oracle et Access me retourne toujours ce message : Aucune valeur donnée pour un ou plusieurs des paramètres requis.
Voici mon code VBA
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
20
21
22
23
24 Dim cnx As New ADODB.Connection Dim cmd As ADODB.Command With cnx '.ConnectionString = "DSN=FIP_ORA;UID=u9917;PWD=hummer01;DRIVER=msdaora;Server=devor1b" .Open "Provider=MSDAORA.1;Password=hummer01;User ID=u9917;Server=devor1b;Data Source=DEVOR1B" '.Open End With Set cmd = New ADODB.Command With cmd .ActiveConnection = cnx .CommandText = "AFD.EXG1_EmisLettrTypCnsul.valid_mode_difsn_mdl_doc(?,?,?)" .Parameters.Append .CreateParameter("p_cod_ret", adNumeric, adParamOutput) .Parameters.Append .CreateParameter("p_med_no_mode_emis_doc", adNumeric, adParamInput) .Parameters.Append .CreateParameter("p_mdo_no_seq_mdl_doc", adNumeric, adParamInput) .Parameters(0).Value = 2 .Parameters(1).Value = 183 .CommandType = adCmdStoredProc End With Set rstADO = New ADODB.Recordset rstADO = cmd.Execute
Et voici ma Procédure Stocké
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
20
21
22
23
24
25
26
27
28
29 PROCEDURE valid_mode_difsn_mdl_doc(p_cod_ret OUT VARCHAR2 ,p_med_no_mode_emis_doc IN ben_mode_emis_typ_doc.med_no_mode_emis_doc%TYPE ,p_mdo_no_seq_mdl_doc IN ben_typ_doc_prcod_mdl_doc.mdo_no_seq_mdl_doc%TYPE) IS BEGIN p_cod_ret := '0'; ben.ben3510a.valid_mode_difsn_mdl_doc(p_cod_ret, p_med_no_mode_emis_doc, p_mdo_no_seq_mdl_doc); IF p_cod_ret = '11654' THEN p_cod_ret := '12977'; ELSE IF p_cod_ret = '1299' THEN p_cod_ret := '3295'; END IF; END IF; EXCEPTION WHEN OTHERS THEN -- Erreur imprévue @1 @2 p_cod_ret := '3295@' || gl_cte_package || '_valid_mode_difsn_mdl_doc@' || LOWER(SUBSTR(SQLERRM, 1, 500)); END valid_mode_difsn_mdl_doc;
Merci de m'aider
Partager