Enviado desde mi iPhone
Qué tal Moisés
Ya probé con parámetros y sin parámetros y el resultado es el mismo, es más solo por probar hice el call con el nombre directo del programa y funciona bastante bien, pero necesito que esté en variable, ya que tengo que llamar a un catálogo con cientos de programas y no quiero hacer el call uno por uno de la manera tradicional para no tener que darle mantenimiento al programa que los ejecuta y solo que el usuario tenga bien configurado su catálogo.
Voy a checar lo del código generado a ver si por ahí encuentro la respuesta
Gracias
Saludos cordiales,
Iván Lovera Lara
De: mvera [mailto:mvera@integralware.com.mx]
Enviado el: jueves, 28 de julio de 2011 06:24 p.m.
Para: csharp-l@gxtech.com.uy
Asunto: RE: [csharp-l] No se puede encontrar el método execute
Supongo que reportelargo es un nombre interno de un objeto de GX, como realmente GX no hace call's dinámicos, ya que incluye en el código TODOS las llamadas a objetos coinciden con los parámetros usados en el llamado, en tu ejemplo ninguno:
Call(&Report)
1.- Verifica si tienes realmente objetos sin parámetros
2.- o ponle a reportelargo algún parámetro y el llamado debe cambiar
Reportelargo
Rulues
Parm(&parm1);
Call(&Report, &parm1)
Después podrías analizar el código generado para verificar lo que te menciono.
Saludos,
Moisés VERA
Director Consultor
Integralware Company
De: Roberto Iván Lovera Lara [mailto:ivan.lovera@ehan.com.mx]
Enviado el: jueves, 28 de julio de 2011 05:34 p.m.
Para: csharp-l@gxtech.com.uy
Asunto: [csharp-l] No se puede encontrar el método execute
Estimados
Estoy tratando de ejecutar programas Genexus dinámicamente, donde el nombre del programa está en una variable
Pero al tratar de ejecutar el programa
&Reporte = 'reportelargo'
...
Call(&Report)
Obtengo el siguiente mensaje de error
Error de servidor en la aplicación '/CosEv1U5.NetEnvironment'.
No se puede encontrar el método 'GeneXus.Programs.reportelargo.execute'.
Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.
Encontré una propiedad que supongo tengo que cambiar del default No a Sí, lo hice, pero continua el error
Expand Dynamic Calls Property
Scope
Objects: Procedures, Transactions, Web Panels, Work Panels
Languages: .NET, Java, Visual Foxpro, RPG, Cobol
Interfaces: Web, WinPurpose
To allow calling GeneXus objects dynamically.
Values
No: No objects are called
Yes: Capability to call objectsDefault value = No
Description
This feature allows the specifier to transform a dynamic call (referencing a variable or attribute as first parameter) into a DO CASE, with as many CASEs as programs exist in the KB, with the same number and type of parameters referenced in the CALL.
¿Cómo puedo solucionar esto?
Muchas gracias de antemano
ev. 1 U5
C#
SqlServer
Saludos cordiales,
Iván Lovera Lara
0 Response to "Re: [csharp-l] No se puede encontrar el método execute"
Publicar un comentario