Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/06/2012, 10:04
Avatar de junior1920
junior1920
 
Fecha de Ingreso: noviembre-2010
Ubicación: Tumán
Mensajes: 77
Antigüedad: 14 años, 2 meses
Puntos: 1
Exclamación Función like en vb.net !!!!

Hola nuevamente aqui con otro problemita:
He creado un función buscar en postgres:
Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION like_cat(_nom_cat CHARACTER)
  2.   RETURNS SETOF categoria AS
  3. $BODY$
  4. DECLARE
  5. _select categoria;
  6. BEGIN
  7. FOR _select IN SELECT * FROM categoria WHERE nom_cat ilike '%'||_nom_cat||'%'
  8. loop
  9. RETURN NEXT _select;
  10. END loop;
  11. END;$BODY$
  12.   LANGUAGE plpgsql VOLATILE
  13.   COST 100
  14.   ROWS 1000;

y hago lo siguiente; lo estoy haciendo en capas:

I.- CAPA ACCESO DATOS
1.1.- Clase CategoriaAD
Código vb:
Ver original
  1. Imports System.Data
  2. Imports Npgsql
  3. Imports NpgsqlTypes
  4. imports EntidadNegocio
  5. Public Class CategoriaAD
  6.     Private conn As New NpgsqlConnection
  7.     Private comando As New NpgsqlCommand
  8.     #Region "Cadena de conexion"
  9.     Public Sub New()
  10.         Dim Objconexion As New conexion
  11.         conn = Objconexion.abrir
  12.         comando.Connection=conn
  13.     End Sub
  14.     #End Region
  15. #Region "Función Buscar"
  16.     Public Function buscar(ByVal ObjCategoriaEN As CategoriaEN)
  17.         Dim reader As NpgsqlDataReader
  18.         Dim categoria As New CategoriaEN
  19.         Try
  20.             conn.Close()
  21.             conn.Open()
  22.             comando.CommandType=CommandType.StoredProcedure
  23.             comando.CommandText="like_cat"
  24.             Dim _nom_cat As New NpgsqlParameter("_nom_cat",NpgsqlTypes.NpgsqlDbType.Varchar)
  25.             _nom_cat.Value=ObjcategoriaEN.gnom_cat
  26.             _nom_cat.Direction=ParameterDirection.Input
  27.             comando.Parameters.Add(_nom_cat)
  28.             comando.ExecuteNonQuery
  29.         Catch ex as Exception
  30.             MsgBox(ex.Message, MsgBoxStyle.Critical, ex.Source)
  31.         Finally
  32.             conn.Close()
  33.             conn.ClearAllPools
  34.         End Try
  35.     End Function
  36.     #End Region

2.- CAPA EntidadNegocio
2.1.- Clase CategoriaEN

Código vb:
Ver original
  1. Public Class CategoriaEN
  2.     Private idcat As Integer
  3.     Private nom_cat As String
  4.     Private desc_cat As String
  5.     '--------------------------
  6.     Public Property gidcat()
  7.         Get
  8.             Return idcat
  9.         End Get
  10.         Set(ByVal value)
  11.             idcat=value
  12.         End Set
  13.     End Property
  14.     '--------------------------
  15.     Public Property gnom_cat()
  16.         Get
  17.             Return nom_cat
  18.         End Get
  19.         Set(ByVal value)
  20.             nom_cat=value
  21.         End Set
  22.     End Property
  23.     '--------------------------
  24.     Public Property gdesc_cat()
  25.         Get
  26.             return desc_cat
  27.         End Get
  28.         Set(ByVal value)
  29.             desc_cat=value
  30.         End Set
  31.     End Property
  32.     '--------------------------
  33. End Class

3.- CAPA LogicaNegocio
3.1.- CategoriaLN

Código vb:
Ver original
  1. Imports AccessoDatos
  2. imports EntidadNegocio
  3. Public Class CategoriaLN
  4.     Private ObjCategoriaAD As CategoriaAD
  5.     Public Sub New()
  6.         ObjCategoriaAD=New CategoriaAD
  7.     End Sub
  8.        #Region "Establecer conexion con la función buscar"
  9.     Public Function buscar(ByVal ObjCategoriaEN As CategoriaEN)
  10.         ObjCategoriaAD.buscar(ObjCategoriaEN)
  11.     End Function
  12.     #End Region

4.- CAPA Presentacion
4.1.- Formulario listcategoria

Código vb:
Ver original
  1. Imports System.Data
  2. imports System.Windows.Forms.CheckState
  3. Imports EntidadNegocio
  4. Imports LogicaNegocio
  5. Public Partial Class listcategoria
  6.  
  7.        Sub Button1Click(sender As Object, e As EventArgs)
  8.         ObjCategoriaEN=New CategoriaEN
  9.         ObjCategoriaLN=New CategoriaLN
  10.         ObjCategoriaEN.gnom_cat=Ltrim(Rtrim(txtbuscar.Text))
  11.         ObjCategoriaLN.buscar(ObjCategoriaEN)
  12.         dgwlistcategoria.DataSource=ObjCategoriaLN.buscar
  13.     End Sub
  14. End Class

Y este es el error que me muestra:

No se ha especificado ningún argumento para el parámetro 'ObjCategoriaEN' de 'Public Function buscar(ObjCategoriaEN As EntidadNegocio.CategoriaEN) As Object'. (BC30455)