Buenas tardes...
Abro este post, para saber si alguien me puede ayudar a optimizar un codigo que me tiene con los pelos de punta..
Tengo un SP que valida formato de los numeros telefónicos.
Para validar dicho formato debo verificar los codigos de area local, por ejemplo--->
IF pfx_o_vAREA IN ('032','041') THEN
etc.....
END IF
Hasta ahi todo bien....mi problema surge cuando quiero dejar en una sola variable 2 o mas codigos de area...y para esto recorro con un cursor que me trae los codigos de area y los voy concatenando en una variable, con lo cual el valor de la variable V_COD_AREA queda = '032','045','058','057' (por ejemplo, porque pueden ser mas codigos)
Entonces cuando reemplazo IF pfx_o_vAREA IN('032','041') por IF pfx_o_vAREA IN(V_COD_AREA), no entra en el if si la variable pfx_o_vAREA viene con alguno de los valores anteriores, yo creo en mi ignorancia que compara con string completo?
probé dejando cada codigo de area en una variable diferente: IN(V_CODIGO1,V_CODIGO2, ETC.) y ahí funcionó sin nigun problema...
Existe otra manera de optimizarlo para no tener 21 variables(21 codigos de areas telefonicas)?
De antemano gracias!!
- Inicie sesión para enviar comentarios
Creo que la comparación no te
Subido por Carlos el 18 Marzo, 2013 - 20:32
Creo que la comparación no te funciona como esperas porque el operador IN espera una serie de valores, que pueden ser variables, pero no una variable que contenga la serie de valores.
Si trabajas con variables de cadena yo probaría utilizando otros operadores de comparación de cadenas como:
No he podido hacer ninguna prueba, así que ya comentarás si te funciona bien.
Muchas gracias Carlos, haré
Subido por Veriyo el 18 Marzo, 2013 - 20:57
En respuesta a Creo que la comparación no te por Carlos
Muchas gracias Carlos, haré la prueba y les cuento como me fue.