Página 1 de 1

Pasar objeto como parametro

Publicado: Mié Nov 12, 2008 1:02 pm
por jrcsistemas
Hola.
Tengo en un formulario abierta una base de datos con TMySQLDataSource. En
ese formulario pido un codigo por pantalla y lo tengo que verificar usando
una funcion que esta en un PRG de funciones varias.
Le paso a la funcion BuscarCliente( oCodigo:Value ) // TEdit
y en esta quiero hacer uso de la base que tengo abierta en el otro
formulario :
cSelect := "Select * From Clientes Where CODIGO ='"+ cDato + "'"
::oBase:Execute ( cSelect,,@aData) // linea 77
y me el error
BUSCARCLIENTE(77)
Error BASE/1003 Variable does not exist: SELF
Argumentos: ()
Como hago? Le paso el objeto de la base como parámetro ? por referencia ?
Gracias
Juan

Pasar objeto como parametro

Publicado: Mié Nov 12, 2008 10:07 pm
por jfgimenez
Juan,
> Tengo en un formulario abierta una base de datos con TMySQLDataSource. En
> ese formulario pido un codigo por pantalla y lo tengo que verificar usando
> una funcion que esta en un PRG de funciones varias.
> Le paso a la funcion BuscarCliente( oCodigo:Value ) // TEdit
> y en esta quiero hacer uso de la base que tengo abierta en el otro
> formulario :
>
> cSelect := "Select * From Clientes Where CODIGO ='"+ cDato + "'"
>
> ::oBase:Execute ( cSelect,,@aData) // linea 77
>
> y me el error
>
> BUSCARCLIENTE(77)
> Error BASE/1003 Variable does not exist: SELF
> Argumentos: ()
>
> Como hago? Le paso el objeto de la base como parámetro ? por referencia ?
Lláma a la función así:
BuscarCliente( oCodigo:Value, ::oBase )
y despúes la declaras así:
FUNCTION BuscarCliente( cDato, oBase )
...
oBase:Execute ( cSelect,,@aData)
...
Fijate que dentro de la función se usa directamente el objeto oBase que
recibe, y no ::oBase
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info

Pasar objeto como parametro

Publicado: Jue Nov 13, 2008 11:29 am
por jrcsistemas
José
Muchas gracias por tu respuesta.
Juan