
Call Store Procedure from .NET
Publicado por Carlos (5 intervenciones) el 09/06/2014 22:24:00
En mipaquete PKG_BACK_CONSULTA tengo el procedimiento almacenado:
Mi Codigo.NET es el siguiente:
AYUDA PORFAVOOOR!
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
PROCEDURE SP_BATCHBIBLIOTECA(P_CURSOR IN OUT T_CURSOR, P_XML varchar2)
IS
V_CURSOR T_CURSOR;
V_XML SYS.XMLTYPE;
V_DOC CLOB;
V_ID NUMBER;
BEGIN
V_DOC := P_XML;
V_XML := sys.xmltype.createXML(V_DOC);
select
x.Id
into
V_ID
from xmltable('/PAXLST_Message/Parametro'
passing v_xml
columns
Id NUMBER path '//Id'
) x;
OPEN V_CURSOR FOR
SELECT
p.vfechaprestamo,
l.marc852c_clasificacion || '/' || l.marc852d_clasificacion as Clasificacion,
cast (lpad(p.nidserie, 8, '0') as varchar2(8)) as nidserie,
l.marc245a_titulo,
u.apellido_materno || ' ' || u.apellido_paterno || ', ' || u.nombres as NombreUsuario,
u.codigo as Usuario, u.correo_electronico,
pt.dias_prestamo,
round((sysdate - to_date(p.vfechaprestamo,'DD/MM/YYYY'))) AS DiasPrestado,
(round((sysdate - to_date(p.vfechaprestamo,'DD/MM/YYYY'))) -pt.dias_prestamo) AS DiasAtraso
from prestamo p, libros l, usuarios u, permisos_tipodocumento pt
WHERE l.id = p.nidlibro
And u.tipo_acceso = pt.id_permiso
and u.id = p.nidpersona
And pt.id_tipodocumento = l.marc852a_institucion
And p.nestado =1
And u.codigo = 'snaveda'
--And (round((sysdate - to_date(p.vfechaprestamo,'DD/MM/YYYY'))) -pt.dias_prestamo) in (0,2)
ORDER BY p.vFechaPrestamo desc;
P_CURSOR := V_CURSOR;
end;
Me sale este error:
ORA-06550: línea 1, columna 7:
PLS-00201: el identificador 'PKG_BACK_CONSULTA.SP_BATCHBIBLIOTECA' se debe declarar
ORA-06550: línea 1, columna 7:
PL/SQL: Statement ignored
Mi Codigo.NET es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
DataSet dsLista = new DataSet();
string Conexion = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP) (HOST=10.0.2.63)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=DESARROLLO)));User Id=biblio_apli;Password=c0nsulta;";
string strXML = "";
OracleConnection con = new OracleConnection(Conexion);
con.Open();
OracleCommand cmd = new OracleCommand();
cmd.Connection = con;
cmd.CommandText = "PKG_BACK_CONSULTA.SP_BATCHBIBLIOTECA";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new OracleParameter("P_CURSOR", OracleType.Cursor)).Direction = ParameterDirection.Output;
cmd.Parameters.Add(new OracleParameter("P_XML", OracleType.VarChar)).Value = strXML;
cmd.ExecuteNonQuery();
OracleDataAdapter da = new OracleDataAdapter(cmd);
da.Fill(dsLista);
gvMorosos.DataSource = dsLista.Tables[0];
con.Close();
AYUDA PORFAVOOOR!
Valora esta pregunta


0