In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

dbSeek() y Softseek

Foro público de Xailer en español
Responder
soporte
Mensajes: 39
Registrado: Lun Dic 18, 2006 12:19 pm

dbSeek() y Softseek

Mensaje por soporte »

Estoy tratando de ejecutar un dbSeek() con Set Softseek en Off y se comporta
como si estuviera en On que pasa?
--
Ing. Guillermo Guevara C.
Grupo Computación 2000
Nuevo Mundo Nº 2821
Jardines de la Cruz
Guadalajara, Jal. 44950
(33) 1078-8363 / 1078-8364
www.pv2000.com.mx
soporte@pv2000.com.mx
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9441
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

dbSeek() y Softseek

Mensaje por ignacio »

Guillermo,
Lo siento, pero es imposible ayudarte con tan poca información y sin un
programa de ejemplo. En cualquier caso, el fallo estaría en xHarbour más que
en Xailer.
Un saludo,
--
Ignacio Ortiz de Zúñiga
[Soporte Xailer]
"Ing. Guillermo Guevara C." <soporte@pv2000.com.mx> escribió en el mensaje
news:475b2f32$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Estoy tratando de ejecutar un dbSeek() con Set Softseek en Off y se
> comporta como si estuviera en On que pasa?
>
> --
> Ing. Guillermo Guevara C.
> Grupo Computación 2000
> Nuevo Mundo Nº 2821
> Jardines de la Cruz
> Guadalajara, Jal. 44950
> (33) 1078-8363 / 1078-8364
> www.pv2000.com.mx
> soporte@pv2000.com.mx
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

dbSeek() y Softseek

Mensaje por Xevi »

Guillermo,
Te comento un caso en el que a mi me ocurrí­a, y me parecí­a que funcionaba
mal la sentencia Seek, cuando el error era de "cambio de xip" de Clipper a
Xailer...
Cuando ejecutaba un Seek sobre una DBF de un campo que estaba correctamente
inexado, siempre se comportaba como si tuviera la cláusula SoftSeek
activada... y realmente no la tení­a activada, PERO lo que intentaba
localizar era el contenido de un Edit...
cBusca := oEdit:cText
MSGINFO( cBusca ) //"ABCD"
....
MiDBF->( Seek( cBusca ) )
En este caso realmente ¿que se intenta localizar???... "ABCD"
Y si en la DBF hay un campo que EMPIEZE por "ABCD" te devuelve el registro
localizado pero NO el que sea completamente "ABCD" + tantos espacios como
longitud quda del campo.
No se si me explico.
Bien, pues antes con Clipper cuando hací­amos un Get... le dávamos la
longitud TOTAL del campo a localizar ¿no??? y luego llenábamos los
caracteres que querí­amos localizar, pero en la cola se quedaban los
carácteres en blanco...
Si es este tu caso, Para solucionarlo...
cBusca := oEdit:cText + Space( Len(MiDBF->MICAMPO) - Len(oEdit:cText ) )
MSGINFO( cBusca ) //"ABCD"
....
MiDBF->( Seek( cBusca ) )
Espero que te sirva.
Un Saludo,
Xevi.
"Ing. Guillermo Guevara C." <soporte@pv2000.com.mx> escribió en el mensaje
de noticias news:475b2f32$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Estoy tratando de ejecutar un dbSeek() con Set Softseek en Off y se
> comporta como si estuviera en On que pasa?
>
> --
> Ing. Guillermo Guevara C.
> Grupo Computación 2000
> Nuevo Mundo Nº 2821
> Jardines de la Cruz
> Guadalajara, Jal. 44950
> (33) 1078-8363 / 1078-8364
> www.pv2000.com.mx
> soporte@pv2000.com.mx
>
>
soporte
Mensajes: 39
Registrado: Lun Dic 18, 2006 12:19 pm

dbSeek() y Softseek

Mensaje por soporte »

> Guillermo,
>
> Te comento un caso en el que a mi me ocurría, y me parecía que funcionaba
> mal la sentencia Seek, cuando el error era de "cambio de xip" de Clipper a
> Xailer...
>
> Cuando ejecutaba un Seek sobre una DBF de un campo que estaba
> correctamente inexado, siempre se comportaba como si tuviera la cláusula
> SoftSeek activada... y realmente no la tenía activada, PERO lo que
> intentaba localizar era el contenido de un Edit...
> cBusca := oEdit:cText
> MSGINFO( cBusca ) //"ABCD"
> ...
> MiDBF->( Seek( cBusca ) )
>
> En este caso realmente ¿que se intenta localizar???... "ABCD"
> Y si en la DBF hay un campo que EMPIEZE por "ABCD" te devuelve el registro
> localizado pero NO el que sea completamente "ABCD" + tantos espacios como
> longitud quda del campo.
> No se si me explico.
>
> Bien, pues antes con Clipper cuando hacíamos un Get... le dávamos la
> longitud TOTAL del campo a localizar ¿no??? y luego llenábamos los
> caracteres que queríamos localizar, pero en la cola se quedaban los
> carácteres en blanco...
>
> Si es este tu caso, Para solucionarlo...
>
> cBusca := oEdit:cText + Space( Len(MiDBF->MICAMPO) - Len(oEdit:cText ) )
> MSGINFO( cBusca ) //"ABCD"
> ...
> MiDBF->( Seek( cBusca ) )
>
> Espero que te sirva.
>
> Un Saludo,
> Xevi.
Xevi:
Efectivamente lo acabo de hacer y funcionó perfectamente, agradezco mucho tu
colaboración.
Aprovecho para comentarle a Ignacio Ortiz de Zuñiga, que realmente esto es
un bug y deben de repararlo no creen...
Saludos:
Guillermo
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9441
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

dbSeek() y Softseek

Mensaje por ignacio »

Guillermo,
Entendemos que no lo es. Cuando desarrollamos Xailer tuvimos muy claro que
no queriamos de ninguna forma tener controles tipo Edit con espacios en
blanco a su derecha, pues eso que no tiene ningún efecto en programas en
modo consola, da un aspecto horroroso en programas Windows.
Además ese comportamiento que sería razonable para su uso en DBFs con el
comando SEEK, no lo es para otros motores de bases de datos que no esperan
en absoluto espacios extra de ningún tipo.
Xailer impone ciertos cambios de CHIP en la forma de programar y éste es uno
de ellos. Lo siento.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Ing. Guillermo Guevara C." <soporte@pv2000.com.mx> escribió en el mensaje
news:[email=475d44d4@ozsrv2.ozlan.local...]475d44d4@ozsrv2.ozlan.local...[/email]
>> Guillermo,
>>
>> Te comento un caso en el que a mi me ocurría, y me parecía que funcionaba
>> mal la sentencia Seek, cuando el error era de "cambio de xip" de Clipper
>> a Xailer...
>>
>> Cuando ejecutaba un Seek sobre una DBF de un campo que estaba
>> correctamente inexado, siempre se comportaba como si tuviera la cláusula
>> SoftSeek activada... y realmente no la tenía activada, PERO lo que
>> intentaba localizar era el contenido de un Edit...
>> cBusca := oEdit:cText
>> MSGINFO( cBusca ) //"ABCD"
>> ...
>> MiDBF->( Seek( cBusca ) )
>>
>> En este caso realmente ¿que se intenta localizar???... "ABCD"
>> Y si en la DBF hay un campo que EMPIEZE por "ABCD" te devuelve el
>> registro localizado pero NO el que sea completamente "ABCD" + tantos
>> espacios como longitud quda del campo.
>> No se si me explico.
>>
>> Bien, pues antes con Clipper cuando hacíamos un Get... le dávamos la
>> longitud TOTAL del campo a localizar ¿no??? y luego llenábamos los
>> caracteres que queríamos localizar, pero en la cola se quedaban los
>> carácteres en blanco...
>>
>> Si es este tu caso, Para solucionarlo...
>>
>> cBusca := oEdit:cText + Space( Len(MiDBF->MICAMPO) - Len(oEdit:cText ) )
>> MSGINFO( cBusca ) //"ABCD"
>> ...
>> MiDBF->( Seek( cBusca ) )
>>
>> Espero que te sirva.
>>
>> Un Saludo,
>> Xevi.
>
> Xevi:
>
> Efectivamente lo acabo de hacer y funcionó perfectamente, agradezco mucho
> tu colaboración.
> Aprovecho para comentarle a Ignacio Ortiz de Zuñiga, que realmente esto es
> un bug y deben de repararlo no creen...
>
> Saludos:
>
> Guillermo
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

dbSeek() y Softseek

Mensaje por jose.luis »

Guillermo,
No es un bug. Como dice Xevi hay que cambiar ligeramente el chip de clipper
y de fivewin para utilizar xailer.
Puedes hacer las búsquedas así:
::oDataset1:Seek( PAD( ::oCampo1:Value,10) )
Saludos,
José Luis Capel
"Ing. Guillermo Guevara C." <soporte@pv2000.com.mx> escribió en el mensaje
news:[email=475d44d4@ozsrv2.ozlan.local...]475d44d4@ozsrv2.ozlan.local...[/email]
>> Guillermo,
>>
>> Te comento un caso en el que a mi me ocurría, y me parecía que funcionaba
>> mal la sentencia Seek, cuando el error era de "cambio de xip" de Clipper
>> a Xailer...
>>
>> Cuando ejecutaba un Seek sobre una DBF de un campo que estaba
>> correctamente inexado, siempre se comportaba como si tuviera la cláusula
>> SoftSeek activada... y realmente no la tenía activada, PERO lo que
>> intentaba localizar era el contenido de un Edit...
>> cBusca := oEdit:cText
>> MSGINFO( cBusca ) //"ABCD"
>> ...
>> MiDBF->( Seek( cBusca ) )
>>
>> En este caso realmente ¿que se intenta localizar???... "ABCD"
>> Y si en la DBF hay un campo que EMPIEZE por "ABCD" te devuelve el
>> registro localizado pero NO el que sea completamente "ABCD" + tantos
>> espacios como longitud quda del campo.
>> No se si me explico.
>>
>> Bien, pues antes con Clipper cuando hacíamos un Get... le dávamos la
>> longitud TOTAL del campo a localizar ¿no??? y luego llenábamos los
>> caracteres que queríamos localizar, pero en la cola se quedaban los
>> carácteres en blanco...
>>
>> Si es este tu caso, Para solucionarlo...
>>
>> cBusca := oEdit:cText + Space( Len(MiDBF->MICAMPO) - Len(oEdit:cText ) )
>> MSGINFO( cBusca ) //"ABCD"
>> ...
>> MiDBF->( Seek( cBusca ) )
>>
>> Espero que te sirva.
>>
>> Un Saludo,
>> Xevi.
>
> Xevi:
>
> Efectivamente lo acabo de hacer y funcionó perfectamente, agradezco mucho
> tu colaboración.
> Aprovecho para comentarle a Ignacio Ortiz de Zuñiga, que realmente esto es
> un bug y deben de repararlo no creen...
>
> Saludos:
>
> Guillermo
>
>
soporte
Mensajes: 39
Registrado: Lun Dic 18, 2006 12:19 pm

dbSeek() y Softseek

Mensaje por soporte »

Enterado y entendido Muchas Gracias
--
Ing. Guillermo Guevara C.
Grupo Computación 2000
Nuevo Mundo Nº 2821
Jardines de la Cruz
Guadalajara, Jal. 44950
(33) 1078-8363 / 1078-8364
www.pv2000.com.mx
soporte@pv2000.com.mx
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
news:475d8b33$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Guillermo,
>
> Entendemos que no lo es. Cuando desarrollamos Xailer tuvimos muy claro que
> no queriamos de ninguna forma tener controles tipo Edit con espacios en
> blanco a su derecha, pues eso que no tiene ningún efecto en programas en
> modo consola, da un aspecto horroroso en programas Windows.
>
> Además ese comportamiento que sería razonable para su uso en DBFs con el
> comando SEEK, no lo es para otros motores de bases de datos que no esperan
> en absoluto espacios extra de ningún tipo.
>
> Xailer impone ciertos cambios de CHIP en la forma de programar y éste es
> uno de ellos. Lo siento.
>
> Un saludo,
>
> --
> Ignacio Ortiz de Zúñiga
> http://www.xailer.com
>
>
> "Ing. Guillermo Guevara C." <soporte@pv2000.com.mx> escribió en el mensaje
> news:[email=475d44d4@ozsrv2.ozlan.local...]475d44d4@ozsrv2.ozlan.local...[/email]
>>> Guillermo,
>>>
>>> Te comento un caso en el que a mi me ocurría, y me parecía que
>>> funcionaba mal la sentencia Seek, cuando el error era de "cambio de xip"
>>> de Clipper a Xailer...
>>>
>>> Cuando ejecutaba un Seek sobre una DBF de un campo que estaba
>>> correctamente inexado, siempre se comportaba como si tuviera la cláusula
>>> SoftSeek activada... y realmente no la tenía activada, PERO lo que
>>> intentaba localizar era el contenido de un Edit...
>>> cBusca := oEdit:cText
>>> MSGINFO( cBusca ) //"ABCD"
>>> ...
>>> MiDBF->( Seek( cBusca ) )
>>>
>>> En este caso realmente ¿que se intenta localizar???... "ABCD"
>>> Y si en la DBF hay un campo que EMPIEZE por "ABCD" te devuelve el
>>> registro localizado pero NO el que sea completamente "ABCD" + tantos
>>> espacios como longitud quda del campo.
>>> No se si me explico.
>>>
>>> Bien, pues antes con Clipper cuando hacíamos un Get... le dávamos la
>>> longitud TOTAL del campo a localizar ¿no??? y luego llenábamos los
>>> caracteres que queríamos localizar, pero en la cola se quedaban los
>>> carácteres en blanco...
>>>
>>> Si es este tu caso, Para solucionarlo...
>>>
>>> cBusca := oEdit:cText + Space( Len(MiDBF->MICAMPO) - Len(oEdit:cText ) )
>>> MSGINFO( cBusca ) //"ABCD"
>>> ...
>>> MiDBF->( Seek( cBusca ) )
>>>
>>> Espero que te sirva.
>>>
>>> Un Saludo,
>>> Xevi.
>>
>> Xevi:
>>
>> Efectivamente lo acabo de hacer y funcionó perfectamente, agradezco mucho
>> tu colaboración.
>> Aprovecho para comentarle a Ignacio Ortiz de Zuñiga, que realmente esto
>> es un bug y deben de repararlo no creen...
>>
>> Saludos:
>>
>> Guillermo
>>
>>
>
>
Responder