Este es mi package de prueba:
Código:
Y cuando quiero llamarlo desde vb net con oledb, uso este codigo:--Header create or replace package PKGTest is -- Author : JGONZALEZF -- Created : 12/02/2008 10:03:48 -- Purpose : type arrGlosa is table of varchar(50); procedure test ( param1 out arrGlosa ); end PKGTest; --Body create or replace package body PKGTest is procedure test ( param1 out arrGlosa ) AS cursor cur is select InstId ,InstGlosa from TesT_InstiFinan; conta number default 1; begin for regCur in cur loop param1(conta) := regCur.instglosa; conta := conta + 1; end loop; end test; end PKGTest;
Código:
Que lo saque de la página de microsoft, pero como siempre.. al parecer algo falla.. ojala puedan ayudarme, gracias. Dim cnOra As New OleDbConnection("Provider=MSDAORA;Data Source=ayftest;" & _ "user id=administradora;password=xxx;Persist Security info=False;") Dim sqlCmd As New OleDbCommand _ ("{call PKGTest.test({resultset 3, param1})}", cnOra) sqlCmd.CommandType = CommandType.Text Dim sqlDA As New OleDbDataAdapter(sqlCmd) cnOra.Open() Dim ds As New DataSet Try sqlDA.Fill(ds) 'Me.DataGrid1.DataSource = ds.Tables("Persons") Catch ex As Exception MsgBox(ex.Message) End Try cnOra.Close()