Power Builder - Asignar un menú a un item de otro menú.

 
Vista:

Asignar un menú a un item de otro menú.

Publicado por Q.O.J (4 intervenciones) el 08/06/2006 17:22:26
Hola,

Estamos buscando la solución a un problema que hasta ahora no hemos podido resolver.
Se trata de asignar un menú a un item de otro menú. Esto funciona en nuestra aplicación que está desarrollada en la versión 5.0 de PB. Sin embargo, lo estamos intentando en una versión posterior, concretamente la 8.0.4, sin conseguir los resultados apetecidos.

// Código original

CHOOSE CASE upper(nom_menu)
CASE "CATALOGO"
if xventana.menuid.item[3] <> obj_menu.submenu.m_catalogo then
xcambiar = true
this.menuid.item[3] = obj_menu.submenu.m_catalogo
end if

CASE "COMPRAS_VENTAS"
if xventana.menuid.item[3] <> obj_menu.submenu.m_compras_ventas then
xcambiar = true
this.menuid.item[3] = obj_menu.submenu.m_compras_ventas
end if

CASE "INMOVILIZADO"
if xventana.menuid.item[3] <> obj_menu.submenu.m_inmovilizado then
xcambiar = true
this.menuid.item[3] = obj_menu.submenu.m_inmovilizado
end if
CASE "AVERIAS"
if xventana.menuid.item[3] <> obj_menu.submenu.m_averias then
xcambiar = true
this.menuid.item[3] = obj_menu.submenu.m_averias
end if
CASE "CONTRATOS"
if xventana.menuid.item[3] <> obj_menu.submenu.m_contratos then
xcambiar = true
this.menuid.item[3] = obj_menu.submenu.m_contratos
end if
END CHOOSE

Nuestro cambio o asociación de menú se consigue en la línea:
"this.menuid.item[3] = obj_menu.submenu.m_contratos"
donde obj_menu.submenu.m_contratos es otro menú.

Bien, si alguién se ha encontrado en la misma situación o sabe algo de como solucionar
este inconveniente, por favor ¿podría decirnos cómo resolverlo?

Gracias anticipadamente.
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:Asignar un menú a un item de otro menú.

Publicado por Jorge (900 intervenciones) el 08/06/2006 17:52:54
Hola

con ChangeMenu() no les serviria ?
si tienen menues ya desarrollados quizas 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:Asignar un menú a un item de otro menú.

Publicado por Q.O.J. (4 intervenciones) el 09/06/2006 09:49:58
Hola,

Gracias Jorge por tu colaboración. Hasta donde tengo entendido la función ChangeMenu(), cambia el menú que una ventana pueda tener asociado por otro. Sin embargo, nuestro problema no es ese, si no el cambiar una sola opción de menú por un menú entero. Como dije en el anterior mensaje, en la versión 5.0 esto se conseguía fácilmente mediante una simple asignación :
Ejemplo(menuid.item[3] = m_menunuevo)
pero con versiones posteriores, concretamente estamos probando con la 10, esta asignación no hace nada, ni siquiera da error.

Gracias nuevamente por tu ayuda.
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:Asignar un menú a un item de otro menú.

Publicado por Jorge (900 intervenciones) el 09/06/2006 16:22:14
Hola.

Si el ChangeMenu cambia el menu asociado por otro en una
ventana

Por inquietud he tratado de reproducirlo en la 10.5
la cual hace lo que tu dices, ni error ni nada.

Cualquier novedad comento o lo comentas

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:Asignar un menú a un item de otro menú.

Publicado por Q.O.J. (4 intervenciones) el 12/06/2006 11:55:57
Utilizando las distintas propiedades del objeto menú, he comprobado que todo el menú está correctamente cargado, (por eso probablemente no dé errores) y si pruebo a ejecutar el código existente en cualquier evento, utilizando la función 'TriggerEvent', lo ejecuta. He probado con algunas de nuestras opciones de menú y abre la ventana solicitada, aunque desde esta ya no abre la siguiente a la que llama, probablemente por no estar disponibles ninguna de las opciones de menú que deberían haberse abierto con anterioridad.

Así pues, el problema es que no es capaz de visualizarlo. Ya veremos después si las subsiguientes ventanas funcionan.

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