> Tech > Création d’une UDF

Création d’une UDF

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Aussitôt la table Employee_data créée, je dois résoudre un autre problème de gestion. Pour certains rapports, la colonne EMPNO doit avoir un format différent de celui utilisé dans l'application Corporate Data. Plutôt que de coder le formatage en dur dans mon application, j'utilise le nouveau support UDF pour générer ma

propre
fonction scalaire pour formater des rapports. Ce faisant, je permets à  chaque
programme qui a besoin de cette fonction, d’utiliser l’UDF au lieu de devoir coder
à  chaque fois la fonction dans le programme. L’UDF garantit également l’homogénéité
de la fonction et rend l’application plus souple.

Pour créer l’UDF (que j’appelle EMPLOC) en utilisant OpNav, j’ouvre le dossier
Database, sélectionne la bibliothèque CORPDATA, puis choisis New, Function, puis
SQL dans le menu de library. La première page de la boîte de dialogue New SQL
Function s’affiche. Sous l’onglet General de la figure 8, j’entre le nom de la
fonction, la description, le type, la longueur, et le nom spécifique. (Ce dernier
est généralement, par défaut, le nom de la fonction, mais on peut fort bien utiliser
le nom spécifique pour différencier deux fonctions portant le même nom.) La figure
9 présente la page de l’onglet Parameters, dans laquelle j’entre les paramètres
qui seront transmis à  l’UDF et je clique sur Insert pour ajouter le paramètre
d’entrée EMPNO. Finalement, sous l’onglet SQL Statements, j’ajoute les instructions
SQL qui constituent le corps de l’UDF (figure 10). Dès lors que j’ai écrit ce
code une fois, n’importe qui peut l’appeler à  partir d’autres instructions SQL.

La fonction prend le EMPNO qui lui a été passé et utilise les paramètres pour
sortir la description appropriée, sous forme de texte, de l’agence d’appartenance
de l’employé. Tous les rapports auront ainsi le descriptif d’agence correct. J’appuie
ensuite sur le bouton OK pour créer l’UDF EMPLOC. OpNav rafraîchit aussitôt la
liste d’objets pour la bibliothèque CORPDATA. En créant l’UDF dans OpNav, on se
dispense de coder la syntaxe SQL suivante :

CREATE FUNCTION CORPDATA.EMPLOC
(EMPNO CHARACTER(6))
RETURNS CHARACTER(10)
LANGUAGE SQL
SPECIFIC EMPLOC
READS SQL DATA STATIC DISPATCH
BEGIN DECLARE LOCATION CHAR(10) ;
IF SUBSTR(EMPNO,1,1) = ‘1’ THEN
SET LOCATION = ‘EAST COAST’;
ELSE
SET LOCATION = ‘WEST COAST’ ;
END IF ;
RETURN LOCATION;
END

Les UDF permettent d’étendre les possibilités de SQL en fournissant des
fonctions propres à  votre activité

Téléchargez cette ressource

Les mégatendances cybersécurité et cyber protection 2024

Les mégatendances cybersécurité et cyber protection 2024

L'évolution du paysage des menaces et les conséquences sur votre infrastructure, vos outils de contrôles de sécurité IT existants. EPP, XDR, EDR, IA, découvrez la synthèse des conseils et recommandations à appliquer dans votre organisation.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010