Tengo creado un proceso ON_INIT_SERVER para poder iniciar el Protocolo TCP: iniciar servicio, pero no hay forma que cuando se ejecuta el programa el proceso ON_INIT_SERVER se inicie.
Para poder comprobar si se inicia o no, he puesto una variable global en ese proceso para poder mirar una vez ejecutado la aplicación si el valor de la variable global a cambiado, y no.
¿Teneis alguna idea de el porque no se me ejecuta el proceso ON_INIT_SERVER?
El proceso ON_INIT_SERVER se ejecuta (en 3P) cada vez que reinicias la Instancia, no cuando ejecutas la aplicación. Tenlo en cuenta ya que no es lo mismo.
Más o menos tenía claro el tema del proceso se ejecuta en 3P cada vez que se reinicia la instància, y no cuando ejecutamos la aplicación, y con tu confirmación se reafirma la idea, pero durante este fin de semana he realizado varias pruebas y continua sin procesar el ON_INIT_SERVER al reiniciar la instancia.
He puesto una variable global en el ON_INIT_SERVER para poder comprobar su posterior valor, pero no cambia el valor, es como si no se procesara el ON_INIT_SERVER
Ejecuta un comando Mensaje(“Hola Ramón, yo soy ON_INIT_SERVER”) como primera línea del ON_INIT_SERVER y comprueba el Panel de Mensajes sistema del vAdmin.
El mensaje debe aparecer ahí.
El proceso ON_INIT_SERVER se ejecuta siempre que se instancia el Proyecto.
El error está en otro sitio. Comprueba que el código no tenga errores.
La variable global que usas es en disco o en memoria. Porque si es en memoria depende del plano de ejecución. Haz lo que comenta Paco y al mensaje pone también la variable, así verás si en 3P tienen valor.
Con el mensaje que me indicas que ponga en el ON_INIT_SERVER he podido comprobar que efectivamente se conecta bien, y con el tema de las variables globales, a sido de cambiarlas de Memoria a Disco, y ahora todo funciona correctamente.
Te habrá sonado la flauta en este caso, pero mejor que entiendas el porqué ahora funciona y antes no.
De lo contrario volveremos a repetir esta incidencia una y otra vez.
Según vuestras respuestas y la documentación de Velneo, un resumen puede ser el siguiente:
Con el proceso ON_INIT_SERVER se puede crear un proceso para que sea ejecutado cada vez que se declare o se reinicie una instancia de un proyecto. Es decir, cada vez que creemos o reiniciemos una instancia de un proyecto.
Dicho proceso será ejecutado en el servidor Velneo vServer.
El proceso deberá cumplir los siguientes requisitos:
1 para que el sistema reconozca un proceso como tal ha de tener el identificador ON_INIT_SERVER
2 el proceso no podrá tener ni tabla de origen ni destino.
3 el proceso no deberá incluir ningún comando de instrucción que requiera la intervención de un usuario o que genere interfaz ya que, tal y como hemos dicho anteriormente, el proceso es ejecutando en el servidor.
Tener en cuenta que si utilizamos variables globales en memoria en un ON_INIT_SERVER que es ejecutado en el servidor, estas no serán inicializadas por ejecutarlas en 3P.
Lo de ON_INIT_SERVER ya lo tienes claro, pero con la Variables globales veo que la confusión es total.
Es algo que se les atraganta a muchos usuarios de Velneo.
Muchisimas gracias por indicarme el artículo sobre las variables en velneo, acabo de leer el extenso texto sobre todas las variables que se utilizan en Velneo.
Recomiendo a todos leer el citado artículo, sobre todo a los que no tengáis claro el tema de las variables.