Hola, es sobre como retornar un valor.

Sobre la pregunta de el día 29 de julio, estoy mandando llamar a una aplicación de power builder desde otra aplicación que no es power builder, mi pregunta es que con que objeto de power builder retorno un valor para cacharlo en mi otra aplicación, no se si este más claro ahora. Gracias por tu atención.

1 Respuesta

Respuesta
1
Hasta donde yo tengo conocimiento un ejecutable puede retornar un valor directamente al sistema operativo por ejemplo un error o un numero de error, este es recogido por el sistema y puede ser interrogado por medio de un script propio del sistema, sin embargo hasta la fecha no he tenido conocimiento de que un ejecutable y propiamente de pb, pueda retornar un valor (o tipo de valor), y depositar un puntero en memoria, para que este sea interpretado por otro ejecutable no necesariamente del mismo lenguaje.
Esto es casi imposible, puedo equivocarme, pero recuerda que los tipos de datos son propios y definidos dentro del la herramienta de desarrollo y por ende interpretados por el ejecutable, el sistema operativo no tiene idea de como funciona esto.
Sin embargo lo que puedo recomendarte como una idea alterna es que en el momento justo antes de finalizar la aplicación de power builder, generes un fichero texto en un directorio que dispongas, y que sea común a los 2 ejecutables, este fichero texto podría ser un ficherito tipo INI, el cual pueda leer el otro ejecutable, con las mismas características, entonces tu comunicación seria mucho más extensa, no solo por medio de un valor sino que de múltiples valores.
Espero esto pueda ser de utilidad para resolver tu problema
Se me paso comentarte que es por ejecutable... gracias
Entonces como power builder si recibe parámetros de otra aplicación con (commandparam) y no puede pasarlos, es una duda, otra pregunta el (message. stringparam) no sirve para regresar un valor string?... gracias por tu valioso tiempo que me otorgas
Un ejecutable de power builder si tiene la capacidad de recibir uno o varios parámetros, estos son interpretados directamente por el ejecutable, tal y como te lo expongo en la respuesta anterior, sin embargo no puede devolver un valor de la misma forma en que los recibe puesto que una vez que el ejecutable sale de la memoria, esta no tiene capacidad de poder mantener esos datos, puesto que en el momento que el ejecutable desaparece, también desaparece el interprete de tipos de datos, y si aun esto fuera posible, entonces el puntero asignado por el posible retorno, quedaría colgado en la memoria, puesto que no habría nadie que lo destruya, y podría colapsar dicha memoria (ram), la única manera que veo posible el devolver datos o valores es utilizando un dispositivo más solido, como el disco duro, por ejemplo, asumiendo más o menos lo que haría un puntero en memoria, pero colocándolo en un fichero texto, proponía un fichero ini puesto que estos son standard, y pueden ser leído casi por todos los lenguajes actuales.
Entonces en otras palabras en lugar de enviar un resultado a la memoria RAM lo va a enviar a la memoria FIJA, o DISCO RÍGIDO.
Como ejemplo me gustaría citar a windows, ya que este sistema una vez satura la memoria ram, escribe en la memoria de swap, o disco, en un área temporal. Si esta se satura, el sistema se detiene.
Con respecto a la clase message, esta tiene la finalidad de mantener en ella los valores que por medio de las instrucciones OPENWITHPARM, CLOSEWITHRETURN, errores propios del sistema, SQLCA, SQLDA, etc. utilizan para mensajería interna, dentro de control y control, o clase y clase. Dichas instrucciones o mensajes incluso pueden ser utilizados por el programador.
Igualmente que lo anterior, esta clase solo esta viva o vigente mientras el ejecutable exista en la memoria de la maquina, cuando desaparece, también desaparecen todas las variables, manejadores, punteros, valores standard, etc.
Para mi es un honor poder contestar cuestiones relacionadas con power builder, saber que puedo echarle una mano a los colegas de otras partes del mundo, hay veces que nos encontramos con problemas que de momento no tenemos soluciones rápidas, pero con espacios como todoexpertos.com, podemos exponerlo y recibir ayuda de otras personas que posiblemente ya superaron esto.
Estoy para servirte.
Espero esto pueda ser de utilidad para resolver tu problema

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas