Editar campos de un Data window freeform

He creado un data window freeform con sqlselect y este al mostrarse en la pantalla no permite editar los campos, si se esta mostrando la data de la base de datos y ademas adicioné la sentencia:
datawindow.Enabled =True
Pero igual no ´logro que se puedan editar los campos.
Tengo una base de datos sql y las tablas son país y departamento
Pais : id_pais(numeric), pais(string)
Departamento: id_departamento(numeric), departamento(string), id_pais(numeric)
los datos que quiero que el uduario pueda editar son el departamento

1 respuesta

Respuesta
1
Tu problema tiene una simple y sencilla solución.
El datawindow object cuenta con 2 cosas que tienes que tener en cuenta cuando generas un datawindow hecho en base a una o varias tablas.
Recuerda primero que un update, o insert, solo puede afectar a una única tabla.
Por lo que recomiendo hasta donde sea posible hacer un datawindow con una única tabla.
Bien. Las dos cosas.
Primera.
El datawindow object tiene una opción llamada tab-order, esta opción puede estar en un icono o en el menu formado por la opción FORMAT, en el editor gráfico, cuando activas esta opción, veras una serie de números relacionados con cada columna, cuando no puedes actualizar los datos vistos en un datawindow, significa que el tab-order tiene un valor de 0 (cero), por más que quieras no vas a poder modificar el dato, sin embargo si colocas un valor mayor a 0 entonces esto activa la columna y determina el orden de edición, automáticamente power builder coloca el orden de edición en espacios de 10, por ejemplo el primer campo o columna editable es 10, el segundo 20, y así sucesivamente.
La segunda.
Igualmente en el menu superior existe una opción llamada ROWS, en este menu, encontraras una opción llamada UPDATE PROPERTIES, la cual es una ventana en la que se determina la forma en como el datawindow object deberá actuar para efectuar los cambios relacionados con la tabla en función.
La casilla que determina si puedes o no grabar los cambios es ALLOW UPDATES, la cual debe estar marcada, luego los demás campos son evidentes, el más importante es el KEY MODIFICATION, el cual tiene 2 opciones, uno USE DELETE THEN INSERT (primero borra y luego inserta) si no quieres tener problemas no lo uses, lo cual deja la única opción que es USE UPDATE, esta opción trada de actualizar directamente los datos. (Realmente es la más confiable.)
Finalizando.
Verifica primero los tab-orders, y luego la forma de actualización de datos en la opción de propiedades de actualización.
Recuerda que una debe estar ligada a la otra pues una permite modificar con el teclado los datos, y la otra permite la modificación en la tabla.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas