FoxPro/Visual FoxPro - Alternativa al famoso Seek

 
Vista:

Alternativa al famoso Seek

Publicado por es_binario (757 intervenciones) el 17/08/2010 23:05:50
Buenas tardes compañeros

Tengo un punto de venta en el que para localizar el codigo de barras para agregarlo al detalle utilizo el famoso SEEK, pero me gustaria cambiarlo por otra alternativa sql.

set exact on
with thisformset.Form1
if not empty(.Txtcode_bar.value)
&& Verifica que haya un codigo a buscar
select articulos
set order to cod_barra
seek alltrim(.Txtcode_bar.value)
if found()

El caso es que funciona bien, entonces mi plan era un select y un reccount pero note que aveces lo agrega y aveces no, la razon no la se, pero el seek no falla y me gustaria que alguien me diera alguna sujerencia.

local codigo busca
codigo_busca = alltrim(Thisformset.form1.txtcode_bar.value)
Select * from articulos where articulos.cod_barra = codigo_busca;
into cursor cur_existe_codigo
select cur_existe_codigo
if reccount() > 0 && existe

endif

La razon es que si mientras se ejecuta una isntruccion seek y falla la corriente electrica se rope el indice

gracias por las sujerencias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Alternativa al famoso Seek

Publicado por Domingo (1 intervención) el 18/08/2010 03:07:42
Dejate de j.o.d.e.r !!!
QUE QUIERES INVENTAR?

Cómo se va a romper un índice si estás haciendo búsquedas y ...puf! te cortan la energía?

Domingo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Alternativa al famoso Seek

Publicado por xx (378 intervenciones) el 18/08/2010 14:53:36
Jejeje me rio de lo que dijo Domingo...

A mi tambien me parece raro!!, creo que si usas una tabla para busqueda deberias abrirla de solo lectura SHARED NOUPDATE y dificilmente se corrompa! a no ser que tu disco este fallando!!.

Bueno otra alternativa no conozco salvo que el motor sql tenga una funcion parecida que desconozco:
Lo que me intriga es porque en ocaciones te funciona y en otras no veo que la busqueda la realizas sin los espacios o sea:

codigo_busca = alltrim(Thisformset.form1.txtcode_bar.value)

y sera que la clave de tu tabla articulos esta indexada tambien con:
index on alltrim(cod_barra) to ...?
si no es asi te encontrara solo los registros que ocupan todo el ancho del campo.

PD: podrias reemplazar el codigo por este
local codigo busca

codigo_busca = alltrim(Thisformset.form1.txtcode_bar.value)
Select * from articulos where articulos.cod_barra == codigo_busca;
into cursor cur_existe_codigo
IF _TALLY==0 &&no encontro nada
ENDIF
* si hay registros uno o mas

Saludos desde: Encarnacion, PARAGUAY!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Alternativa al famoso Seek

Publicado por es_binario (757 intervenciones) el 18/08/2010 23:19:12
Eso de indexar con alltrim no me lo sabia, bueno voy a probar, pero si el sql aveces digamos usando el mismo codigo de barra me lo acepta y aveces no, que raro verdad.

pero voy a probar lo que me sugieres gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Alternativa al famoso Seek

Publicado por alberto (404 intervenciones) el 19/08/2010 05:54:53
amigo ex_binario una altermativa que yo uso en utilidades del sistema tengo un form donde creo de nuevo todos los indices de las tablas donde muestro todas las tablas y le doy la opcion de crear los indices a la tabla seleccionda con un checkbox o crear todos.
Eso te evita de estar visitando al cliente cuando tengas un problemita de essos, a proposito a mi me paso eso hace algunos dias con el archivo de clientes que buscaba un apellido y le mostraba cualquier cosa , jjee
bueno corrio la aplicacion y asunto terminado.
saludos desde santa fe , argentina.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Alternativa al famoso Seek

Publicado por es_binario (757 intervenciones) el 19/08/2010 09:16:53
Muchas gracias por tu consejo lo voy poner en practica

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar