Convertir Tipo String a Tipo Window en PB 10.2.0

Aldo Buenos Días
Tengo una duda
¿Cómo le haces para convertir una variable de "tipo string" a "tipo window"?
Lo que pasa es que en una variable de tipo string tengo el nombre de una ventana que quiero abrir con Open(window) pero Open no acepta más que variables de tipo window y no acepta de tipo string.
¿Me puedes ayudar por favor?
Tu siempre puedes
Muchas Gracias
Ricardo Alberto Ibarra M.
Monterrey, N.L.
[email protected]
[email protected]

1 respuesta

Respuesta
window w_to_open
string s_w_name
s_w_name = "w_mi_ventana"//lo podes sacar de un select o cualquier lado
Open(w_to_open, s_w_name)
xq tenes el nombre en un string?
Cual es el objetivo.
Otra cosa no referencies ventanas entre si. Menos a si misma pone close(this) o close(parent) si llamas desde un botón.
AldoB
Aldo, de Nuevo Buenos Días
Ya estoy haciendo eso que me envías como respuesta, lo que pasa es que ayer se me olvido decírtelo. Y si funciona, te abre la ventana y todo muy bien, peeeeeerooooo... sucede que nosotros ya tenemos hechas todas las ventanas del sistema que estamos haciendo y en ellas existen llamados a la misma ventana por medio de su nombre. Ejemplo:close(w_ventana_pagos), si yo hago eso en una ventana que halla sido abierta por la instrucción que tu me dices "Open(w_to_open, s_w_name)" no va a reconocer a la ventana "w_ventana_pagos" pues la ventana que se esta abriendo en la instrucción "Open(w_to_open, s_w_name)" es la ventana "w_to_open" heredada de la ventana "s_w_name" y realmente eso no me sirve porque dentro del código de todas las ventanas de nuestro sistema tenemos ya muchas en donde dentro de la misma ventana usamos el nombre de esa misma ventana como argumento de alguna función hecha por nosotros mismos o de Power builder o simple y sencillamente para hacer un llamado de una variable de instancia de otra ventana 2 desde una ventana 1 o viceversa y no queremos cambiar todo el código otra vez porque eso de Abrir una ventana con la instrucción "Open(w_to_open, s_w_name)" significa abrir la ventana "w_to_open" heredada de la ventana que esta contenida en la variable string "s_w_name" y eso no nos va a servir porque esa instrucción nunca abre la ventana que esta contenida en la variable "s_w_name"; es por eso que te pregunto de nuevo ¿cómo le haces para convertir una variable de "tipo string" a "tipo window"? O ¿Hay otra solución para eso que te explico?
Saludos
Ricardo Alberto Ibarra M.
Monterrey, N.L.
[email protected]
[email protected]
Aldo Muy Buenos Días
En esto ultimo que me escribes estoy totalmente de acuerdo que al abrir con la instrucción que me dijiste antes que es Open(w_to_open, ls_ventana) no debo referenciar el nombre de la ventana dentro de si misma, de hecho tuve que cambiar todos esos nombres por la palabra "this" o por la palabra "parent" según el caso. Ahora, hablando de el objetivo de nuestro sistema es que en una tabla que la llamamos "csOpciones" tenemos todas las opciones del sistema que estamos construyendo, desde Salir del Sistema hasta la opción más compleja y de esta manera también tenemos guardado el nombre de la ventana que se abrirá al dar click a una cierta opción del sistema y ese nombre de la ventana esta en tipo string dentro de una Base de Datos SQL Server 2000, en la tabla csOpciones tenemos muchos campos tales como Opcion_Id, Nombre de la Opción, Objeto del Sistema que representa tal opción, nombre de la ventana donde se encuentra la opción (en tipo string), nombre de la ventana que abrirá esa opción (en tipo string), etcétera, y no todas las opciones tienen esta ventana definida ya que hay opciones del sistema que no abren ventanas como por ejemplo un radio button o un command button. Todo esto lo hicimos para controlar dentro de Power Builder 10 la seguridad con respecto a los objetos y opciones del sistema que podrá ver cada Rol de Usuario y donde cada Rol tiene definidas diferentes opciones del sistema de acuerdo a sus responsabilidades de cada Rol dentro del sistema y cada Usuario debe tener definidos uno o más Roles de Usuario. Ese es el objetivo mi amigo Aldo, es por eso que tengo el nombre de la ventana guardada en un campo de tipo string en una tabla de SQL Server 2000 y es por eso que busco la manera de implementar una solución que me ayude a convertir una variable de tipo String a una de tipo Window. Te comento adicionalmente que ya implemente la solución que me diste de Open(w_to_open, ls_ventana) donde w_to_open es de tipo window y ls_ventana es de tipo string y es sacado su valor de la tabla csOpciones de acuerdo a la opción que selecciono, esta solución esta en MODO DE PRUEBAS, tuve que quitar todos los llamados a las ventanas con su nombre y cambiarlos por this o por parent y como te comento esta en PRUEBAS, pero si esto no funciona tendré que buscar otra solución.
Saludos desde Monterrey, N.L.
Que DIOS te Bendiga
Y espero pronto tu favorable respuesta
Ricardo Ibarra M.
Hola Aldo
Quisiera saber porque no me has contestado
Gracias
Ricardo Ibarra
Discuulpa la demora pero estoy de viaje por trabajo y no tengo tiempo para responderte correctamente.
AldoB
Ok espero tu respuesta cuando regreses de viaje
Saludos
Estuve leyendo la ultima pregunta y no entiendo que me preguntas. Para mi la solución pasa por lo que te dije antes y que es lo que estas haciendo en modo pruebas.
Cualquier otra cosa va a ser agregar "suciedad" al código que va a terminar siendo inmantenible.
AldoB

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas