FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Error al pasar Variable ...
Posts: 33
Joined: Mon Oct 10, 2005 12:49 PM
Error al pasar Variable ...
Posted: Mon Nov 28, 2005 04: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 ...
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Error al pasar Variable ...
Posted: Tue Nov 29, 2005 08: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
Posts: 1074
Joined: Fri Oct 07, 2005 01:56 PM
Error al pasar Variable ...
Posted: Tue Nov 29, 2005 08: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

Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl

Continue the discussion