Descripción con mas de 250 caracter

339 views
Skip to first unread message

Douglas Sánchez

unread,
Jun 28, 2014, 12:59:23 AM6/28/14
to publice...@googlegroups.com
Hola que tal colegas y amigos del foro.

Tengo que mostrar en una grid, columna1, campo: descripcion y luego en un reporte pero tiene una longitud con mas de 250 caracteres, este tiene 320 caracteres en mysql.

Alguna idea de como hacer esto en vfp9?

Saludes y desde ya gracias de antemanos.

Douglas

Robert Martínez

unread,
Jun 28, 2014, 2:03:14 AM6/28/14
to publice...@googlegroups.com
Buenas Noche,

Lo primero es que si el campo contiene mas de 250 caracteres entonces debería de caer en un campo memo (texto) cuando hace la consulta desde VFP,  entonces la mejor opción para mostrar un campo memo es el control EditBox, que tendrías que incluirlo dentro de una columna del Control GRID sustituyendo el control que este coloca por defecto (Text), creo que es mas fácil de entender si te lo explico con un ejemplo en un lenguaje todos los de este foros comprendemos (VFP), en consecuencia te adjunto un archivo con un ejemplo que creo puede ayudarte a conseguir tu objetivo.

Saludos,
Robert.
textolargogrd.prg

Angel Dario Rodriguez

unread,
Jun 28, 2014, 7:54:18 AM6/28/14
to publice...@googlegroups.com
Buenas, al tratar de ejecutarlo da error.

Robert Martínez

unread,
Jun 28, 2014, 9:50:55 AM6/28/14
to publice...@googlegroups.com
Tienes Razón, pero aquí te adjunto el código probado con los arreglos de lugar.
textolargogrd.prg

Douglas Sánchez

unread,
Jun 28, 2014, 11:17:14 AM6/28/14
to publice...@googlegroups.com
Gracias ya habia visto esta alternativa, tendré que poner mi campo descrip de vfp en memo pero vfp no me trae mas que 250 caracteres en la consulta y ahora ese es el problema.

Saludes

Douglas
--
Ing. Douglas Sánchez Guillén
      Consultor Informatico
Claro: 505 88495476

Robert Martínez

unread,
Jun 29, 2014, 2:08:46 AM6/29/14
to publice...@googlegroups.com

Saludos,

Yo nunca había usado MySQL, siempre he trabajado con MS-SQL, nunca he tenido problemas con la longitud de un campo de esa forma, así que instale MySQL e hice una consulta desde VFP a una tabla con un columna de tipo texto con mas de 250 caracteres, en el cursor resultante de la consulta el campo tipo texto lo trae como tipo MEMO en VFP y con todos los caracteres, en este caso mas de 1,000.

El driver que utilice para conectarme a SQL es {MySQL ODBC 5.3 ANSI Driver}

Douglas Sánchez

unread,
Jun 29, 2014, 8:18:55 PM6/29/14
to publice...@googlegroups.com
Hola Fauso Martinez,

Ya solucione y tu idea me sirvió, por otra parte lo otro que hice fue lo siguientes, por si alguien tiene el mismo problema.


        SELECT *, SUBSTR(descripcion,1,150)as desc1, SUBSTR(descripcion,151,350) as desc2                r1 = SQLExec(Thisform.nhandle,sqlcad,'tmpresult')
    If r1 <= 0
    Select TmpCotiza
    Zap
    Append From Dbf('tmpresult')
    Select TmpCotiza
    Replace descripcion With  (desc1 + desc2) All
    Select tmpresult
    Use

En donde descripción es el campo memo que no aceptaba a usar en vfp ya que son varios registro y tiene mas de 320 Caracteres, las descripciones.

Saludes

Douglas


Robert Martínez

unread,
Jun 30, 2014, 8:02:11 AM6/30/14
to publice...@googlegroups.com
En lo que has hecho seria lo mismo que solo sacara 254 caracteres de la tabla que tienes en SQL, porque donde concatenas los dos campos que traes (Replace descripcion With  (desc1 + desc2) All) solo te tomará los primeros 254 caracteres de la cadena que se forma de la concatenación, a menos que el campo "descripcion" sea de tipo memo con una longitud superior a los 254 caracteres, para que pueda contener los 351 que te genera la concatenación de Desc1 + Desc2.
Reply all
Reply to author
Forward
0 new messages