Problema con la Instrucción Select

44 views
Skip to first unread message

Elides Paredes

unread,
Jul 18, 2015, 8:00:11 PM7/18/15
to publice...@googlegroups.com
Estimados amigos

Hice con el select lo siguiente:

SELECT Clientes.empresa,;
       Clientes.encargado,;
               Clientes.email,;
               IIF(Clientes.retiene = .T.,'Retiene Impuestos','No retiene Impuestos') as agente,;
             Clientes.retiene;
 FROM ;
     C:\PROYECTO\TABLAS\CLIENTES.DBF;
INTO CURSOR tabla1 READWRITE 

No me da error, pero....
al mostrar el cursor, con un Browse o en el grid,  se come 3 letras en el campo agente queda así : 'No_retiene_Impues' debería ser No_retiene_Impuestos

Supongo que debe ser un problema sencillo, pero me lleva una semana y no logro conseguir el error, por eso recurro a ustedes.. 
De antemano
MUCHAS GRACIAS

Elides Paredes
Barquisimeto Venezuela.

Augusto Felix Ortiz

unread,
Jul 18, 2015, 8:06:58 PM7/18/15
to publice...@googlegroups.com
Proba agregarle 2 espacios a la derecha de 'Retiene impuestos  '
Saludos
Augusto

De: Elides Paredes
Enviado: ‎18/‎07/‎2015 21:00
Para: publice...@googlegroups.com
Asunto: [vfp] Problema con la Instrucción Select

Antonio Meza

unread,
Jul 18, 2015, 8:18:39 PM7/18/15
to publice...@googlegroups.com, elides...@gmail.com
El problema es que esta tomando el tamaño del campo de la primera condición, y ese mismo tamaño de campo lo aplica para la segunda y por ello te salen cortadas las letras.

Como te dijo Augusto agrégale a la primera condición unos espacios mas para que de esa forma el segundo valor no se corte ya que es mas largo que el primero.

saludos
Antonio Meza

Elides Paredes

unread,
Jul 18, 2015, 8:33:25 PM7/18/15
to publice...@googlegroups.com, elides...@gmail.com

Augusto, Funcionó, perfecto. Mil gracias
 
Aunque no entiendo porque pasa eso. Lo importante es que me solucionaste un problema, si hubiese consultado antes, pero siempre trato de pelear solo y cuando no puedo me busco uno mas grande..jajaja..

De nuevo gracias.. 

Elides Paredes
Barquisimeto Venezuela.

Elides Paredes

unread,
Jul 18, 2015, 8:36:04 PM7/18/15
to publice...@googlegroups.com, elides...@gmail.com

Gracias Antonio.

Ahora si lo entiendo, 

Carlos Miguel FARIAS

unread,
Jul 19, 2015, 9:40:31 AM7/19/15
to Grupo Fox
No toma el largo de la primer cadena de la condición, toma el largo, toma el largo del primer registro que resuelve (en el select) que debe ser uno que no retiene (la cadena más corta.
Hay que "padearla"

SELECT C.empresa, C.encargado, C.email,;
       PADR(IIF(Clientes.retiene = .T.,'Retiene Impuestos','No retiene Impuestos'), 20) as agente,;
       Clientes.retiene;
   FROM C:\PROYECTO\TABLAS\CLIENTES.DBF INTO AS C CURSOR tabla1 READWRITE 

Saludos: Miguel, La Pampa (RA)
Reply all
Reply to author
Forward
0 new messages