Página 1 de 1

Necesito ayuda, por favor

Publicado: Dom Mar 08, 2015 9:38 pm
por JavierCantarero
Bueno, estoy intentándolo pero no puedo, de verdad.....
La duda que puse la semana pasada no me la ha sabido responder nadie.....
a ver si con esta tengo mas suerte, aunque esto mas que una duda es un problema:
yo hago ::odbf:seek("5 ")
me devuelve .T.
y en el registro que me deja tiene de valor "523654782"
¿ porque devuelve .T. si es mentira ?
y si miro el ::odbf:found, también es .T.
por favor, necesito un cable...
Muchas gracias

Necesito ayuda, por favor

Publicado: Dom Mar 08, 2015 10:30 pm
por jfgimenez
Javier,
> Bueno, estoy intentándolo pero no puedo, de verdad.....
>
> La duda que puse la semana pasada no me la ha sabido
> responder nadie.....
>
> a ver si con esta tengo mas suerte, aunque esto mas que una
> duda es un problema:
>
> yo hago ::odbf:seek("5 ")
> me devuelve .T.
> y en el registro que me deja tiene de valor "523654782"
>
> ¿ porque devuelve .T. si es mentira ?
>
> y si miro el ::odbf:found, también es .T.
comprueba si en algún sitio del programa tienes un "SET SOFTSEEK ON". Si
es así­, ponlo a OFF o llama a ese método pasándole .F. en el segundo
parámetro.
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info

Necesito ayuda, por favor

Publicado: Lun Mar 09, 2015 9:13 am
por JavierCantarero
Muchas gracias por contestar Jose, lo pruebo y comento aquí­
Gracias

Necesito ayuda, por favor

Publicado: Lun Mar 09, 2015 1:04 pm
por joselalinf

Necesito ayuda, por favor

Publicado: Lun Mar 09, 2015 1:18 pm
por JavierCantarero
Jose,
yo eso lo sabí­a que existí­a, programo en dbase desde hace muchí­simos años, pero en clipper no tení­a que ponerle el parámetro para que hiciera la búsqueda exacta, y creo que al mirar en la ayuda de xailer lo habré leido mal, entendí­ que tampoco habí­a que ponerlo, que por defecto era búsqueda exacta.
Esta tarde lo reviso y te cuento.
Muchí­simas gracias
Salu2
Javi Cantero

Necesito ayuda, por favor

Publicado: Lun Mar 09, 2015 1:22 pm
por jfgimenez
Javier,
> yo eso lo sabí­a que existí­a, programo en dbase desde hace
> muchí­simos años, pero en clipper no tení­a que ponerle el
> parámetro para que hiciera la búsqueda exacta, y creo que
> al mirar en la ayuda de xailer lo habré leido mal, entendí­
> que tampoco habí­a que ponerlo, que por defecto era
> búsqueda exacta.
el método Seek() de TDbf utiliza por defecto lo que tenga establecido el
SET SOFTSEEK. Es decir, que si está en OFF, entonces hace la búsqueda
exacta, pero como esté en ON, entonces la búsqueda es aproximada. Por
eso te decí­a que busques ese SET SOFTSEEK en tu programa, porque
seguramente lo has puesto en ON en algún sitio.
Y por cierto, también pudes pasarle el segundo parámetro a Seek(), que
es un valor lógico que indica el valor de SOFTSEEK, y entonces da igual
lo que tengas en el SET.
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info

Necesito ayuda, por favor

Publicado: Lun Mar 09, 2015 1:37 pm
por ignacio
Buenos dí­as,
Es probable que se pierda el espacio final en algún momento antes de llegar el valor al método. El método Seek() no hace ningún tipo de truncado. Reví­selo por si acaso.
Pruebe a utilizar directamente la función DbSeek() por si fuese un problema de Harbour.
Un saludo

Necesito ayuda, por favor

Publicado: Lun Mar 09, 2015 8:46 pm
por joselalinf
Javier,
el problema que te comenta José F. es muy común y pensaba que eras novato
en estos mundos :-)
Saludos,
José Lalí­n

Necesito ayuda, por favor

Publicado: Mar Mar 10, 2015 8:37 am
por JavierCantarero
Jose, Jose e Ignacio,
muchas gracias a los tres por contestar;
Ya va perfectamente, únicamente poniendo el valor .F. en el seek ya se me solucionó. El SOFT SEEK no lo inicialicé al inicio del programa porque no lo tení­a por costumbre. Ya sabiéndolo no hay problema, inicio el SOFT SEEK y ya no me preocuparé el resto del programa.
Muchas gracias
Saludos
Javi Cantero