Consulta en Tablas

Nuevamente por aquí, tenia una pregunta acerca de como filtrar una tabla en el siguiente caso:
Tengo un campo llamado PÓLIZA el cual tiene datos como los que siguen:
8152-8481
0001-0999
Entre otros ejemplos, pero lo que quiero realizar es por ejemplo filtrar la tabla al momento que un ejemplo de el usuario buscar la póliza
8153 y que me mande al registro que contiene esa póliza que en esto ejemplos seria 8152-8481 y este mimmo jale todos los campos de este mimo registro.Lo que me causa un poco de conflicto es que el campo póliza esta en un solo campo los dos números que es la inicial a la final, y tengo demasiandos registro, el cual seria muy tardado pasar a otra tabla y tomarlos por separado. GRACIAS

1 Respuesta

Respuesta
1
Te pregunto, en la misma tabla puedo encontrar en el campo poiliza, ¿esto?
8151-3456
8151-7425
8151-7256
8151-3456
8151-3486
8153-7451
8153-7422
8153-3253
8153-3454
8153-3485
Por ejemplo y lo que quieres es copnsultar para elo 8151 y debe salir solo
8151-3456
8151-7425
8151-7256
8151-3456
8151-3486
Si es así tu pregunta, entonces debes:
polbus = "8151"
select * from tabla where substr(poliza,1,4)==polbus into cursor respuesta
Éxitos, prueba y me dices si es lo que necesitas, de lo contrario, escríbeme un ejemplo para apreciarlo bien.
No olvides finalizar la pregunta si lo consideras necesario.
Si es algo así solo que por ejemplo tengo en la póliza:
7536-7795 (Siempre el primero va a ser menor que el segundo)
Y el usuario teclea en el txt 7590, es decir esta póliza esta en el intervalo 7536-7795 y dando el usuario la póliza 7590, quiero que como resultado de el intervalo 7536-7795, creo que así esta mejor verdad, lo que he hecho es lo siguiente:
no=reccount()
For i=0 to no
     SELECT vista_liquidaciones
     SKIP
     poliza1=SUBSTR(poliza,1,4)
     poliza2=SUBSTR(poliza,6,4)
     if(pol>poliza1 and pol<poliza2)
     polizaBuena=poliza  //o tambien probe  polizaBuena=poliza1+"-"+poliza2                  
     ELSE
           polizaBuena="0000-0000"
           SELECT vista_liquidaciones
     ENDIF
Endfor
y posteriormente realizo el filtro de la tabla mediante
set filter to poliza=polizaBuena
Gracias, por la ayuda
Solo que no esta funcionando estaría muy agradecido si podrías ayudarme en ver que es lo que me esta faltando o algo de Antemano muchas gracias, Espero Respuesta... GRACIAS
Por aquí seguimos esperando respuesta, Saludos y gracias nuevamente
Ya te entendí, entoncesd prueba lo siguiente
polbus = 7590
SELECT * from TABLAWHERE VAL(SUBSTR(poliza,1,4))<=polbus AND polbus <=VAL(SUBSTR(poliza,6,4)) into cutrsor RTA
if _tally != 0
* encontrado
else
* no encontrado
Endif
Pruébalo y me dices
Estoy poniendo
polbus = poli
SELECT * form vista_liquidaciones WHERE VAL(SUBSTR(poliza,1,4))<=polbus AND polbus<=VAL(SUBSTR(poliza,6,4)) into CURSOR RTA
if _tally != 0
      GO RTA
else
      * no encontrado
Endif
Y esta marcando el siguiente error y la verdad no se bien la sintaxis de la sentencia
Command contains unrecognized phrase/keyword
Ahora esta apareciendo lo siguiente:
Operator/operand and type mismatch
En mi tabla el campo póliza esta como cadena de caracteres y lo estoy recibiendo en el form solo los 4 números, pero según yo los mismos números los puede tomar como caracteres y pues según yo es por lo que me esta marcando el error.
Si, eso es cierto, en mi ejemplo POLIBUS es numérico, leelo como número y veraz que funciona.
Éxitos.
Espero que evalúes esto y me avices.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas