Page 1 of 1

Error al pasar Variable ...

PostPosted: Mon Nov 28, 2005 3:01 pm
by Chantiel
Saludos gente,

llevo varias horas trabado con un error que no he podido solucionar. El caso es el siguiente.

En el cuerpo principal del programa declaro una variable y la inicializo:

local cCambiar:= space(9)


Luego la paso como parametro de una funcion:

pBuscarPeticionario(mnif_cif, @mpriorita, @mfechanace, @cCambiar, oGrabarExpediente)

Dentro de esa funcion utilizo esa variable para hacer una comparacion, pero me daba un error.

Para averiguar que valor estaba tomando use un MsgAlert:

MsgAlert("Contenido de cCambiar: "+cCambiar,"PACORR!!!")

Y este fue el Error.log que me genero:

Time from start: 0 hours 0 mins 18 secs
Error occurred at: 28/11/05, 13:08:37
Error description: Error BASE/1081 Error de argumento: +
Args:
[ 1] = U

.
.
.

Param 1: C "42170002P"
Param 2: C " "
Param 3: D / /
Param 4: U
Param 5: O Class: TMDICHILD


He intentado ponerle un valor:

local cCambiar

cCambiar:= "algo"

pBuscarPeticionario(mnif_cif, @mpriorita, @mfechanace, @cCambiar, oGrabarExpediente)
...

Y sigue dandome el mismo error. Esto a que se puede deber?


Gracias de antemano!



Nos leemos!!

PostPosted: Tue Nov 29, 2005 11:03 am
by cmsoft
Chantiel:
Si no le haces ninguna asignacion antes de la llamada a la funcion, proba inicializando dentro de la funcion pBuscarPeticionario() a ver si te tira el mismo error.
Si haces una asignacion antes fijate que valor le estas asignando porque seguro que el error esta ahí.
Suerte...

PostPosted: Thu Dec 01, 2005 11:59 am
by MarioG
Chantiel
quizás no entienda bien tu problema, pero hice este simple ejemplo y funciona sin problemas
Code: Select all  Expand view
#include "fivewin.ch"


procedure main()
local cCambiar:= Space( 9 )

   fPasarxRef( @cCambiar )

   MsgAlert("Contenido de cCambiar devuelto: "+cCambiar,"PACORR!!!")

// Fin

procedure fPasarxRef( cCambiar )

   ? "valor de entrada " +cCambiar, "espacios", Len( cCambiar)

   cCambiar:= "0123456789"

// Fin


Me parece que deberías hacer un seguimiento de cCambiar para ver si en algún lugar, antes de pasarlo a pBuscarPeticionario(...), no se le está asignando un valor nil

espero "alumbre" algo :-)