Dudas con dos instrucciones de proceso


(ame) #1

Hola,

 

Resulta que desde un evento llamo a un proceso usando la instrucción de proceso: "Ejecutar proceso", e indico además la variable local donde recogerá un dato que retornará este proceso. La variable es numérica.

En el proceso "llamado", al final de su ejecución, ejecuto la instrucción "Set dato de proceso de retorno" e indico un campo de una tabla: #ID.

El problema es que al volver al evento "llamador", no recoge este #ID que supuestamente tiene que devolver el proceso "llamado". Me muestra 0.

Cabe decir que al final del proceso "llamado", justo antes de la instrucción que retorna el dato, pongo a modo de prueba un mensaje mostrando el #ID, y efectivamente tiene valor, pongámosle 5, pero luego en el evento "llamador" la variable que debe recoger ese dato, se rellena con un 0. No sé por qué no me funciona esto. ¿Alguna idea?

 

Gracias y un saludo.


([N4] eic) #2

Hola.

Según la incidencia 1818 de vBugman, no está implementada la recepción del retorno de proceso de la instrucción "Ejecutar proceso".

Saludos,

Fran Varona

 


(ame) #3

Ah vale, pues ya me quedo más tranquilo. Lo resolveré con una variable global aunque por metodología de la programación suelo evitar las variables globales lo más posible.

Esperemos que lo corrijan en la próxima versión. Gracias.

 

Saludos.

 

José Luis.


([N1] Velasco) #4

Buenas ame.

Dependiendo de lo que hagas en el proceso, puedes probar a convertirlo en una función. Así podrás recepcionar el valor resultante.

Un saludo.

 

 


Jorge Velasco Fernández

jvelasco@theseedsc.com

www.theseedsc.com


(ame) #5

Gracias Jorge por el interés y por aportar otro punto de vista.

En el proceso realizo un alta de una ficha y devuelvo su ID. Supongo que con lo de "dependiendo de lo que hagas en el proceso..." te referías a si tenía origen y/o destino. Como no tiene, lo he resuelto perfectamente como me has indicado, con una función. Solución elegante, más modular. No me gusta tener que recurrir mucho a variables globales, ya que pueden provocar efectos colaterales.

 

Saludos.

 

José Luis.


([N1] agsgallardo) #6

Y si lo ejecutas desde un Manejador de Objeto? asi podrás recoger el dato que necesites desde una variable local del Proceso, con la instrucción Gest variable local del Objeto.