Store Procedure

Obsydian, Cool:Plex, Advantage Plex, AllFusion Plex...

Moderadores: Jorge Ubeda, pacopicon

Store Procedure

Notapor cjaramillo » Vie Mar 06, 2009 9:58 pm

Hola.

Tengo una nueva inquietud. Quisiera saber como insertar en un grid los registros que han sido resultado de un store procedure.

Saludos
cjaramillo
 
Mensajes: 22
Registrado: Mar Feb 03, 2009 4:33 pm
Ubicación: Ecuador GYE

Re: Store Procedure

Notapor Jorge Ubeda » Lun Mar 09, 2009 3:35 pm

cjaramillo escribió:Hola.

Tengo una nueva inquietud. Quisiera saber como insertar en un grid los registros que han sido resultado de un store procedure.

Saludos

CJaramillo
La pregunta es muy genérica. Se podría responder "con el mismo blockFetch con que cargas la grilla". Con más información se podría contestar mejor.
Jorge Ubeda
Site Admin
 
Mensajes: 229
Registrado: Mié Oct 26, 2005 6:00 pm
Ubicación: Valencia

Notapor cjaramillo » Mié Mar 11, 2009 5:13 pm

No sé como podrias cargar los resultados de un stored procedure con un blockfetch. Hasta ahora cuando he llamado a un SP, este me devuelve los valores especificados en el output, pero nunca he recuperado varios registros a la vez.
Espero me puedan ayudar.
cjaramillo
 
Mensajes: 22
Registrado: Mar Feb 03, 2009 4:33 pm
Ubicación: Ecuador GYE

Un poco más...

Notapor Jorge Ubeda » Mié Mar 11, 2009 11:25 pm

cjaramillo escribió:No sé como podrias cargar los resultados de un stored procedure con un blockfetch. Hasta ahora cuando he llamado a un SP, este me devuelve los valores especificados en el output, pero nunca he recuperado varios registros a la vez.
Espero me puedan ayudar.

cjaramillo escribió:No sé como podrias cargar los resultados de un stored procedure con un blockfetch. Hasta ahora cuando he llamado a un SP, este me devuelve los valores especificados en el output, pero nunca he recuperado varios registros a la vez.
Espero me puedan ayudar.

Vayamos por partes...
1. No tengo experiencia directa con el uso de stored procedures, aunque sí con varias otras formas de intervenir a distintos niveles en el AS400 desde Plex. Por lo tanto, mi comentario no está apoyado en un uso directo.
2. Doy por supuesto que tu servidor es un AS400, y usas DB2. Eso es por costumbre, y por falta de información. Es conveniente que te expliques un poco más para poder avanzar.
3. Un blockFetch es una función servidora RPG (si estamos hablando de una variante Cliente Java o WinC/Servidor Iseries. Si estamos hablando de ODBC, hay variaciones, pero igualmente se puede hacer). Si estamos hablando de AS400, entonces hablamos de una función RPG. Se podría invocar el procedimiento usando directamente la llamada a nivel del procesamiento de cada fila por medio de las sentencias que el diagrama de acción tiene para procedimientos almacenados, o se puede usar una variante SQLRPG y construír la sentencia. Los parametros se pueden pasar. Es cuestión de ver el caso. Lo que llegue a un block fetch se puede pasar como cualquier otra cosa. Entonces, sin cambiar nada de la logica de carga de la grilla, tendrás el resultado.
4. Se puede discutir si un procedimiento almacenado es una buena solución. Si ya lo tienes, es una cosa. Si es una idea de desarrollo, habría que medir performance, y el impacto de la caja negra en el modelo.
Con más información se puede seguir más adelante. Tú dirás.
Jorge Ubeda
Site Admin
 
Mensajes: 229
Registrado: Mié Oct 26, 2005 6:00 pm
Ubicación: Valencia

un poco más

Notapor Jorge Ubeda » Jue Mar 12, 2009 9:31 am

Con un poco más de tiempo, y en base a la ayuda de Plex.
Sin conocer todavía en qué plataforma tienes que resolver el problema, veo que la ayuda no habla de cómo implementar procedimientos en AS400. Sí en JDBC u ODBC, lo que te puede servir de guía. Se menciona allí un modelo de demostración, Dbfunctions.mdl, en el grupo de modelos de ejemplo, que te puede ayudar. Está claro que podrías llamar un SP a nivel de cada fila recuperada, si acaso eso tiene sentido en tu caso (reitero que estamos hablando en el aire).
Dado que no hay información sobre AS400, si ese fuera tu ambiente, habría dos posibilidades, a mi juicio: llamar una función nativa que invocara el SP (function type API en el modelo), o ejecutar directamente un API CALL con el código correspondiente en una función tipo SQLRPG400.
Jorge Ubeda
Site Admin
 
Mensajes: 229
Registrado: Mié Oct 26, 2005 6:00 pm
Ubicación: Valencia

Notapor cjaramillo » Jue Abr 30, 2009 3:28 pm

Habia descuidado el tema pero lo he vuelto a retomar.

Estoy trabajando mediante odbc conectado a una base de datos de sybase. Los stores estan guardados en la base de datos y los llamo con las respectivas funciones type database, que como lo he explicado me funcionan bien para retornar un dato, pero no lo he logrado para un grupo de registros
cjaramillo
 
Mensajes: 22
Registrado: Mar Feb 03, 2009 4:33 pm
Ubicación: Ecuador GYE


Volver a Plex

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados

cron