Clipper/FiveWin - Problema con campo MEMO

 
Vista:
sin imagen de perfil

Problema con campo MEMO

Publicado por Javier (3 intervenciones) el 12/05/2017 09:19:44
Hola compañer@s,
Como programador obsolote de Clipper quería pediros ayuda.

Tengo una pequeña BBDD con ±600 registros.
La BBDD tiene un campo MEMO

Quiero hacer un procedimiento para ir recorriendo y mostrando en pantalla cada uno de los registros.
Para ello utilizo las teclas F1 para avanzar un registro y F2 para retroceder un registro.

El tema es que al mostrar también el campo MEMO no me funciona el avanzar/retroceder.
Porque el proceso se queda como "dentro" del campo MEMO y para que lo haga primero tengo que pulsar ESC y después F1 ó F2

Si no muestro el campo MEMO, el proceso funciona perfectamente.

En MEMOEDIT tengo configurado <lModoEdicion> como .F.

¿Alguna sugerencia para que pueda mostrar el campo MEMO y que funcione directamente el avanzar/retroceder registro?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Problema con campo MEMO

Publicado por Javier (3 intervenciones) el 12/05/2017 09:57:32
Pues finalmente ya lo he solucionado poniendo en el argumento de memoedit <cFuncionUsuatio> a .F.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con campo MEMO

Publicado por Jose Lopez (2 intervenciones) el 15/05/2017 21:54:54
Lo que podrías es usar el Tbrowse para desplegar la información del registro que quieras y el contenido del memo simultaneamente..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Problema con campo MEMO

Publicado por Javier (3 intervenciones) el 17/05/2017 10:08:53
Perdonar mi desconocimiento pero llevo muchos años sin programar en clipper y además es la primera vez que trabajo con campos MEMO.

Después de tener hecha toda la aplicación en Clipper me encuentro con el el campo MEMO del .DBF es el mismo para todos los registros.
Yo pensaba que cada registro tenía su campo MEMO individualizado.

Con eso que quiero decir: si yo modifico el campo MEMO en cualquiera de los registros, esa modificación se hace en el campo MEMO de todos los registros de la base de datos.

Yo lo que quiero conseguir es que cada registro pueda tener un campo de texto libre editable y pensé que los campos MEMO era para eso.

¿alguna recomendación o solución?

Gracias compañer@s
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con campo MEMO

Publicado por Jose Lopez (8 intervenciones) el 18/05/2017 16:23:12
Hola Javier,

El archivo memo es uno solo, pero los datos que le incluyas a cada registro son individuales y de hecho se manejan como cualquier otro campo de la base a nivel de despliegue o manipulación, no lo veas diferente. Por ejemplo puedes guardar el contenido del campo memo en una variable y manejarla como cualquier otro campo, solo que siempre está en modo texto. También puedes guardarla de la misma forma que guardas cualquier otro dato. Práctimamente no hay diferencia con cualquier otro campo en ese aspeco.

El campo memo simplemente es una variable más de la base que no tiene un tamaño fijo como los demás campos, por eso está aparte.

Supongamos que el campo memo se llama OBSERVACION, entonces puedes hacer cosas así:

1
2
3
4
5
6
7
8
@10,10 say OBSERVACION
m_obser = OBSERVACION
m_obser = 'Observaciones:' + alltrim(OBSERVACION)
 
m_obser = space(20)
@10,10 say "Observaciones:" get m_obser
read
replace OBSERVACION with m_obser

La parte de edición de un dato muy largo lleva un poco más de trabajo pues no se podría desplegar en una sola línea y hay que usar el MEMOEDIT().

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar