Texto Enriquecido en una DataWindow

¿Cómo utilizo un Texto Enrriquecido dentro de una datawindow que contiene más campos de una tabla datos?
Explicación...
Si tengo la tabla MEMORANDOS (cod_mem , fec_mem , tex_mem) ...
Quiero imprimir una datawindow que traiga los tres datos Código (Number), Fecha (Date), Texto (RichText).
2

2 respuestas

Respuesta
1
La datawindow estilo Rich Text funciona como si fuera un documento de fusion, se guarda el código RTF estático dentro del data object, y los campos que saca de la BD han de ser campos normales (texto, fecha, numérico). Por lo cual, no puedes utilizar este tipo de Datawindow. Bueno, se puede pero no es fácil !
La solución + fácil es utilizar un control Rich Text, puesto que es mucho + flexible que la Datawindow Rich Text. Puedes utilizar un DataStore o SQL embedded para recuperar los datos del memorando ( siempre y cuando la columna tex_mem no sea de tipo binario, claro ), e insertar los valores mediante Copy & Paste. El control tiene métodos de sobra para conseguirlo, y por supuesto tiene un Print.
Si tex_mem es de tipo binary, tienes que usar la sentencia SELECTBLOB para leer el valor en una variable blob, y convertirla a String.
Pd : el RTF q soporta PowerBuilder es bastante cutre (no puedes usar tablas, p.e.) por lo q te podrias plantear de usar algun ActiveX. Lamentablemente la cutrez se arrastra desde la version 5 y no parece q lo quieran mejorar. Suerte !
Respuesta
1
Debes usar el control Richtextedit ya que desde un datawindow solo puedes poner campos tipos string de hasta 4000 caracteres.
Puedes usar un datawindow para traer el dato de tu base de datos pero en pedazos de 4000 caracteres y luego los vas añadiendo a tu richtextedit

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas