Power Builder - Inhabilitar campos de un Dw

 
Vista:

Inhabilitar campos de un Dw

Publicado por Ana María (48 intervenciones) el 14/10/2004 18:04:26
Hola, buen día...
Tengo una ventana en la cual el usuario ingresa un número serial y le hace clic en un botón en donde se busca si ese número serial existe o no en una tabla X.

Si NO existe entonces inserta una fila al DW...

Pero si existe entonces muestra la información en el Dw pero ahí es donde vienen la pregunta... cómo hago para que en caso de existir el serial los campos del DW no puedan ser editados por el usuario?

Gracias por la ayuda
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

RE:Inhabilitar campos de un Dw

Publicado por Anonimo (26 intervenciones) el 14/10/2004 18:18:23
Podes usar la propiedad protect para cada campo del DW que no queres que sea editable.
Se usa asi:
dw.object.nombre_columna.protect=1 -> para que no sea editable
dw.object.nombre_columna.protect=0 -> para que se pueda editar

Espero que te sirva, 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

RE:Inhabilitar campos de un Dw

Publicado por Oscar (1 intervención) el 14/10/2004 20:34:39
Hola Ana Maria:
Cuando se trata de una fila nueva el usuario debe ingresar un nuevo valor; pero debemos prevenir que modifique el valor para filas existentes. En este caso, se usa una expresión condicional para la propiedad Protec para una determinada columna:
IF(IsRowNew(),0,1)

Acá va un ejemplo en tiempo de diseño y en tiempo de ejecución:

* En tiempo de diseño
1. Abrí tu objeto DW.
2. Mantén presionada la tecla CTRL y seleccioná con un clic todas tus columnas.
3. En las propiedades, donde dice Protect, pulsá el botón rojo, y en expression, pegas:

If(IsRowNew(),0,1)

* En tiempo de ejecución
Añades el siguiente script en el evento open de tu ventana:

dw_1.Modify("nombre_columna1.Protect='0~tIf(IsRowNew(),0,1)'")

dw_1.Modify("nombre_columna2.Protect='0~tIf(IsRowNew(),0,1)'")
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