(sujet inconnu)

RPG (3 et 4, free), CL, SQL, etc...
Répondre
N1kos
Messages : 34
Enregistré le : ven. 08 févr. 2013, 09:41:45

(sujet inconnu)

Message par N1kos »

Bonjour,

Le script SQL ci-dessous permet d'appeler un programme de type SRVPGM en SQL:

Code : Tout sélectionner

drop FUNCTION CIF_NUM1;                   
CREATE FUNCTION CIF_NUM1 (                
                               char( 2)       
                             , char( 2)       
                             , char(10)       
                              , char(10)         
                              , char(30)         
                              , char( 1)         
                              , char(10)         
                              , char(10)         
                              , numeric(14, 0)   
                              , numeric(14, 0)   
                              )                  
                     RETURNS    numeric(14, 0)   
 EXTERNAL NAME 'CIF_NUM1(CIF_NUM1)'          
 LANGUAGE RPGLE PARAMETER STYLE                  
 general RETURNS NULL ON NULL INPUT              
 MODIFIES SQL DATA                               
 not fenced;                             


Mais dans mon programme RPG les 4 derniers paramètres sont déclarés comme non obligatoire:

Code : Tout sélectionner

yy_lsys                       10    const options(*nopass)
yy_lbib                       10    const options(*nopass)
yy_nmin                       14s 0 const options(*nopass)
yy_nmax                       14s 0 const options(*nopass)   
Je souhaiterais dans la déclarations de la fonction SQL indiquer également que les 4 derniers paramètres sont facultatifs.

Merci d'avance
N1kos

thomas.barberot
Messages : 58
Enregistré le : jeu. 12 avr. 2012, 14:50:53

(sujet inconnu)

Message par thomas.barberot »

Je crois qu'il faut faire 5 fonctions : une avec tous les paramètres, une avec 1 paramètre de moins, une avec 2 paramètres de moins...

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

FONCTIONS

Message par cmasse »

@Thomas, c'est effectivement une solution (4 déclarations qui pointent vers le même code); On peut désormais connaitre le nbr de paramètres reçus :
https://ibm.co/2QmPQws


@N1kos : on peut aussi déclarer chaque paramètre comme ayant une valeur par défaut :

https://www.ibm.com/support/knowledgece ... udfdft.htm
Christian Massé (Volubis.fr)

N1kos
Messages : 34
Enregistré le : ven. 08 févr. 2013, 09:41:45

(sujet inconnu)

Message par N1kos »

Merci à tous,

J'ai opté pour la seconde solution qui fonctionne parfaitement bien.

Cordialement,
N1kos

Répondre