Renvoi d'une liste d'enregistrements en paramètre

RPG (3 et 4, free), CL, SQL, etc...
Répondre
PGG57
Messages : 33
Enregistré le : jeu. 11 févr. 2010, 10:42:59
Localisation : Nancy

Renvoi d'une liste d'enregistrements en paramètre

Message par PGG57 »

Bonjour,

Je recherche un exemple de procédure stockée ou code SQL ou RPG ou une bibliographie me permettant de retourner vers un système "autre" une suite d'enregistrements de données issues de plusieurs fichiers et de calculs.

Merci par avance

cmasse
Site Admin
Messages : 813
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

exemple de procédure stockée

Message par cmasse »

voici un exemple de procédure cataloguée qui retourne les 7 jours de la semaine en cours

Code : Tout sélectionner

     Dsemaine          DS                  qualified dim(7) inz
     D  nom_du_jour                  10
     D  date_du_jour                 10
     Ddsjours          DS
     D j1                            10    inz('Lundi')
     D j2                            10    inz('Mardi')
     D j3                            10    inz('Mercredi')
     D j4                            10    inz('Jeudi')
     D j5                            10    inz('Vendredi')
     D j6                            10    inz('Samedi')
     D j7                            10    inz('Dimanche')
     D tbjours                       10    dim(7) overlay(dsjours)
     Ddepart           S               D
     Dwjour            S              1  0
     di                S              3I 0
     Djoursemaine      PR                  extpgm('FORMATION1/FREE01')
     D                                 D   const
     D                                1  0
      /free
         joursemaine(%date() : wjour);
         depart = %date() - %days(wjour);
         for i=1 to 7;
           semaine(i).nom_du_jour = tbjours(i);
           semaine(i).date_du_jour = %char(depart + %days(i));
         endfor;
         // retourner la DS semaine
         EXEC SQL
           SET RESULT SETS ARRAY :semaine for 7 rows;
         *inlr = *on;
      /end-free                                                       
Christian Massé (Volubis.fr)

Répondre