Salut
Soit la PROC (Qui compile) :
Soit le code C#
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69 create or replace PROCEDURE XXXXXXX_EU_UTILISATEUR_GET ( vCODE_USR IN VARCHAR2, cRESULTSET IN OUT globalPkg.RCT1, nRETURN_VALUE OUT NUMBER ) AS BEGIN nRETURN_VALUE := 0; OPEN cRESULTSET FOR SELECT CODE_USR, NOM_USR, PREN_USR, TYPE_USR, FAX_USR, TEL_USR, CODE_FCT, ADRS_INF, TLC_USR, CODE_RP, TYPE_HD, CODE_SO, CODE_DIV, CODE_SIT, CODE_DR, CODE_DP, CODE_SV, CODE_RESP, CODE_LOC, CODE_BAT, CODE_ETG, ADRS_USR, CP_USR, VIL_USR, CPS_USR, USR_REMPL, HD, CHPAR1, CHPAR2, CHPAR3, CHPAR4, CHPAR5, CHPAR6, CHPAR7, CHPAR8, CHPAR9, CHPAR10, HG_IDLEVELH, HG_IDLEVELG, CODE_CTRCT, CHPAR11, CHPAR12, CHPAR13, CHPAR14, CHPAR15, MIDNAME, NICKNAME, VMAIL_USR, PAGER_USR, CIVILITE, COM_USR, ROWID FROM UTILISATEUR WHERE CODE_USR = vCODE_USR; END XXXXXXX_EU_UTILISATEUR_GET;
pour info :
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 public CL_DATA_Utilisateur(int Code_Utilisateur) { CHPAR = new List<string>(); OracleConnection oConn = new OracleConnection(ConfigurationManager.ConnectionStrings["XXXXX_CS"].ConnectionString); oConn.Open(); OracleCommand oCmd = new OracleCommand("XXXXXXX_EU_UTILISATEUR_GET", oConn); oCmd.Parameters.Add(new OracleParameter("vCODE_USR", intCodeToString(Code_Utilisateur, '0', 10))); OracleParameter oParam = new OracleParameter(); oParam.ParameterName="cRESULTSET"; oParam.OracleType= OracleType.Cursor; oParam.Direction = ParameterDirection.Output; oCmd.Parameters.Add(oParam); oCmd.Prepare(); OracleDataAdapter oDA = new OracleDataAdapter(oCmd); DataSet oDS = new DataSet(); oDA.Fill(oDS); this.CODE_USR = (string)oDS.Tables[0].Rows[0][CODE_USR]; oConn.Close(); }
L'exec du C# me donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 internal static string intCodeToString(int value, char frontFillWith, int totalLenght) { string strToReturn; strToReturn = value.ToString(); int stringLenght = strToReturn.Length; strToReturn = new string(frontFillWith, totalLenght - stringLenght) + strToReturn; return strToReturn; }
Exception Details: System.Data.OracleClient.OracleException: ORA-01036: numéro/nom de variable interdit
Source Error:
Line 71: OracleDataAdapter oDA = new OracleDataAdapter(oCmd);
Line 72: DataSet oDS = new DataSet();
Line 73: oDA.Fill(oDS);
Line 74: this.CODE_USR = (string)oDS.Tables[0].Rows[0][CODE_USR];
Line 75: oConn.Close();
Question :
Ou est l'erreur ?
D'avance merci
Laurent
Partager