Error al pasar Variable ...

Error al pasar Variable ...

Postby Chantiel » Mon Nov 28, 2005 4:08 pm

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!!
FW 2.5 + Cl 5.3 + Blk 7.0

Sin mas ...
User avatar
Chantiel
 
Posts: 33
Joined: Mon Oct 10, 2005 12:49 pm
Location: En una piedra en medio del Atlantico (Tenerife)

Postby Antonio Linares » Tue Nov 29, 2005 8:11 am

No debería ocurrir lo que comentas, pero prueba a hacer la asignación de nuevo dentro de la función a la que llamas:

local cCambiar:= space(9)

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

...

function pBuscarPeticionario( ... )

cCambiar := Space( 9 )
...
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41418
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Patricio Avalos Aguirre » Tue Nov 29, 2005 8:07 pm

Chantiel !!Que raro!!

prueba este ejemplo, por lo menos a mi me funciona bien..

procedure prueba()

local cCambiar1:= "prueba1", cCambiar2:= "prueba2", cCambiar3:= "prueba3", cCambiar4:= "prueba4", cCambiar5:= "prueba5"

prueba2( @cCambiar1,@cCambiar2,@cCambiar3,@cCambiar4,@cCambiar5 )

alert( cValtochar( cCambiar1 ) + CRLF + ;
cValtochar( cCambiar2 ) + CRLF + ;
cValtochar( cCambiar3 ) + CRLF + ;
cValtochar( cCambiar4 ) + CRLF + ;
cValtochar( cCambiar5 ) )


return

function prueba2( cCambiar1,cCambiar2,cCambiar3,cCambiar4,cCambiar5 )

alert( cValtochar( cCambiar1 ) + CRLF + ;
cValtochar( cCambiar2 ) + CRLF + ;
cValtochar( cCambiar3 ) + CRLF + ;
cValtochar( cCambiar4 ) + CRLF + ;
cValtochar( cCambiar5 ) )


cCambiar1:= "return prueba1"
cCambiar2:= "return prueba2"
cCambiar3:= "return prueba3"
cCambiar4:= "return prueba4"
cCambiar5:= "return prueba5"

return nil


Espero que te sirva!!

Saludos
Patricio
User avatar
Patricio Avalos Aguirre
 
Posts: 1059
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 28 guests