Altova MapForce 2026 Enterprise Edition

Cet exemple montre comment appeler une procédure qui prend des paramètres d'entrée et récupère également certaines sorties de la base de données. Dans ce scénario, la procédure stockée est appelée de la même manière qu'un service web ou une fonction, et vous pouvez mapper les données récupérées par celle-ci vers n'importe quel autre composant cible pris en charge par MapForce.

 

Créons tout d'abord la procédure stockée de démonstration dans la base de données "AdventureWorks". Pour ce faire, exécuter le script ci-dessous par rapport à la base de données. Vous pouvez ce faire à partir d'une fenêtre de requête de Microsoft SQL Server Management Studio, ou directement depuis l'onglet Requête BD de MapForce, voir Parcourir et interroger des bases de données. Dans tous les cas, s'assurer que votre compte d'utilisateur de base de données a la permission de créer des procédures stockées.

 

CREATE PROCEDURE Production.uspSearchProducts
  @SearchString nvarchar(50)
  ,@MaxPrice money
  ,@ComparePrice money OUTPUT
AS
BEGIN
  SET NOCOUNT ON      
  SELECT pr.[Name], pr.ListPrice FROM [Production].[Product] pr
  WHERE pr.[Name] like @SearchString AND  pr.ListPrice < @MaxPrice
 
  SET @ComparePrice = @MaxPrice
  RETURN @ComparePrice
END

 

La procédure stockée ci-dessus récupère un jeu d'enregistrements contenant des informations sur les produits. Elle prend deux paramètres en entrée : une chaîne contenant le nom du produit (@SearchString) et le prix maximum du produit (@MaxPrice). En plus du jeu d'enregistrements et du paramètre de retour par défaut, elle récupère également un paramètre de sortie (@ComparePrice).

 

Les étapes suivantes vous montrent comment créer un mappage qui consomme des données retournées par cette procédure.

 

1.Connectez-vous à la base de données "AdventureWorks" depuis MapForce, et ajoutez la procédure stockée au mappage, comme décrit dans la section Ajouter des procédures stockées dans le mappage. Assurez-vous que votre compte d'utilisateur de base de données détient la permission de créer des procédures stockées.

2.Cliquez sur le bouton Afficher Menu contextuel mf_ic_storedproc_menu à côté de la procédure stockée et sélectionnez Insérer appel avec Paramètres. La procédure stockée apparaît désormais dans un composant distinct du mappage, où le côté gauche répertorie les paramètres d'entrée et le côté droit contient les paramètres de retour et de sortie.

mf_sp_10

3.Cliquez à nouveau sur le bouton Afficher Menu contextuel mf_ic_storedproc_menu, puis sélectionnez Modifier structures des jeux d'enregistrements. Cette opération est nécessaire pour fournir à MapForce des informations sur la structure du jeu d'enregistrements renvoyé par la procédure. Le dialogue « Structures des jeux d'enregistrements » apparaît.

mf_sp_11

Le fait d'appeler une procédure stockée au moment de la conception peut présenter des effets secondaires (selon la mise en place de la procédure). Si vous ne souhaitez pas exécuter la procédure stockée au moment de la conception, ne pas cliquer sur Exécuter, comme décrit dans les étapes suivantes. Au lieu, définir le recordset attendu dans le dialogue "Structures de recordset", en ajoutant des recordsets et leurs colonnes associées manuellement. Utiliser les touches Ajouter recordset ou Ajouter colonne dans le dialogue "Structures de recordset".

 

4.Cliquez sur Définir paramètres d'entrée et appeler procédure. Le dialogue « Évaluer procédure stockée » apparaît.

mf_sp_12

5.Remplissez les valeurs des paramètres comme indiqué ci-dessus, puis cliquez sur Exécuter.

6.Cliquez sur OK. La structure du jeu d'enregistrements (« RS1 ») est désormais visible à la fois dans le dialogue « Structures des jeux d'enregistrements » et dans le mappage.

7.À ce stade, vous pouvez ajouter un composant cible où les données récupérées seront écrites. Dans cet exemple, les données seront écrites dans un fichier CSV. Dans le menu Insertion, cliquez sur Fichier texte et ajoutez un composant CSV au mappage, voir également CSV et fichiers texte. Ensuite, tracez les connexions de mappage comme illustré ci-dessous. Notez que les paramètres d'entrée de la procédure sont fournis au moyen de constantes. Pour plus d'informations concernant les constantes, voir Ajouter une constante au mappage.

mf_sp_13

Vous pouvez maintenant prévisualiser le mappage. Cliquez sur le bouton Sortie et observez le résultat du mappage dans le volet Sortie, par exemple :

mf_sp_14

© 2019-2025 Altova GmbH