Hay alguna razón por la que no puedas crear un stored procedure en tu base de datos?, o prefieres no hacerlo?. En cuanto a la longitud, acabo de probar con un SELECT de 914 caracteres a una base de datos de SQL Server 7, y funciono sin problema, la instrucción la fui concatenando poco a poco:
lcSQL = lcSQL + "select "
lcSQL = lcSQL + "items.nitemid, "
lcSQL = lcSQL + "transactions.ccode, "
lcSQL = lcSQL + "classes.cclassname, "
lcSQL = lcSQL + "colors.ccolor, "
.
.
sqlexec(lnCon,lcSQL,"curTest")
En cuanto al password, puedes almacenarlo en un DSN ahi si queda oculto aunque no se que tan encriptado esté, no es necesario indicarlo en la conexión dentro de la base de datos de VFP.
Si optas por SQL PT, puedes encriptar el password por supuesto.
P.D. creo que ya nos movieron la discusión al foro en español :D
>Claro!!, el problema es que mi sentencia SELECT es bastante larga ya >que realizo unos UNION y otroas cositas mas, y al montarlo en una >instrucción SQLEXEC() mi envia un error que tiene que ver con que >la cadena del parametro es demasiado larga... es por eso que habia >recurrido a un vista. En realida buscare la forma de hacer algo >equivalente. Pero sigo insistiendo que deberia haber un parche para >eso.
>
>Otra cosa que no miro correcta es que cuando creas una Conexion y >colocas tu password se ve plenamente tu password. Yo se que eso puede >solucionarse con un programa que te pida el password y !!Solucion !!. >Pero son cosas que estan mal,; en la version 7 pasa lo mismo.