En Velneo no podemos pasar referencias de Objetos entre procesos (un handicap enorme), solo podemos establecer la Ficha o Lista de Entrada y fijar Variables Locales de tipo numérico, string, booleano o array.
Para acceder desde un proceso al Objeto instanciado en el Interface de un Formulario concreto, en este caso un TreeWidget, no tendrás más remedio que navegar por el modelo de Objetos del API de Velneo (theMainWindow, theParentWidget, theRoot, parentDataView, etc …).
Depende como lo hayas definido, el proceso JS es un fichero de script, si lo incluyes en el manejador y lo has previsto, podrás usar la variable arbol sin ningún problema.
Amigo wikan asi lo tengo montado anclado en un formulario mediante su manejador de evento, el caso es que lo mismo se repite en 6 lugares teniendo que repetir el mismo código en distintos formularios y sus respectivas tablas, por eso quería minimizar el uso de código.
Solucionado en realidad no es necesario crear un manejador de objeto para pasar el control treewidget, simplemente hacer:
Ejecutar proceso (nombre de proceso JS, 1° plano: Local(síncrono), ,)
Lo único que el control debe tener el mismo nombre en cada formulario.
Los de soporte me indicaron que revisara el nombre del control y allí me di cuenta del detalle.
Manuel se refiere a usar la instrucción #include “(CurrentProject)/MiGestion_TreeWidget.js” en el Manejador JS del formulario.
De esta forma solo escribes una sola vez el código y en el proceso Javascript usas theRoot.dataView().control(<TreeWidget>) que funcionará una vez incluido en el manejador del formualrio.
No es la forma más ortodoxa de hacer las cosas pero Velneo nos obliga a estas “chapucillas” para resolver sus limitaciones.