Partager via


Afficher les résultats dans SQL Server

Si vous utilisez un modèle d’accès direct aux tables ou une vue, le résultat de la requête est lié au contrôle ou à la table. Power Fx active automatiquement la pagination des données de votre application dans la galerie ou la table. Toutefois, les procédures stockées peuvent renvoyer un résultat de requête, un code de retour ou des valeurs de paramètres Out.

Pour utiliser ces différents types de résultats dans votre application, utilisez les modèles suivants.

Formules pour différents contrôles

Formules typiques pour les vues et les procédures stockées :

Control Property Formula Description
Galerie ou tableau Items DataSource La source de données de la table ou de la vue peut être affinée à l’aide des fonctions Filtrer et StartsWith. Les autres clauses de requête générées sont ajoutées à la requête existante.
Formulaire Source de données DataSource Source des données de la table ou de la vue
Bouton Envoyer sur un formulaire OnSelect DataSource.dboSPName({ args}); Refresh (‘DataSource’) La première DataSource de cette formule est la source de données de procédure stockée, c’est-à-dire celle qui contient votre procédure stockée. La DataSource dans la formule d’actualisation est la source de données de la vue.
Bouton Supprimer dans un formulaire OnSelect SP DataSource.dboSPName({ args}); Refresh (‘View DataSource’) La première DataSource de cette formule est la source de données de procédure stockée, c’est-à-dire celle qui contient votre procédure stockée. La DataSource dans la formule d’actualisation est la source de données de la vue.

Code de retour

Utilisez ce code de retour pour accéder aux résultats d’une instruction de retour.

<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >}).ReturnCode

Paramètres de sortie

Utilisez le nom du paramètre tel qu’il apparaît dans la charge utile JSON.

<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >}).OutputParameters.<parameterName>

Ensembles de résultats

D’autres tables sont accessibles via leur nom, par exemple, Table1, Table2, ou Table3.

<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >}).ResultSets.Table1

Résultats non typés

Certaines procédures stockées complexes renvoient des résultats non typés. Ce résultat est courant pour les procédures stockées qui utilisent des tables temporaires. Power Apps il n’est pas facile de déterminer les résultats à l’avance. Par conséquent, le retour est marqué comme sans type et vous ne pouvez pas accéder directement à ces résultats. Vous devez fournir tout d’abord un type.

Vous pouvez accéder aux données avec le modèle d’exemple d’accès aux données suivant.

Exemple d’accès aux données

  1. Récupérez les résultats dans une variable nommée MyUntypedObject.

  2. Récupérez Table1 de cette variable et placez-la dans une variable nommée table1.

    Astuce

    Cette étape n’est pas strictement nécessaire. Il est cependant utile de mettre tous les résultats dans une variable, puis d’extraire les parties dont vous avez besoin, plus tard.

  3. Parcourir table1 et extraire les éléments JSON dans des paires de valeurs nommées.

  4. Faites correspondre les noms avec les noms renvoyés dans la charge utile JSON.

  5. Pour valider, ouvrez un moniteur Power Apps et examinez la section corps du nœud de données pour un enregistrement.

Set(
    <MyUntypedObject>, // pull results into variable
    <datasourceName>.<StoredprocedureName>( 
      { <paramName1>: "someString" }
    ).ResultSets
);
Set(
    table1, // put Table1 into table1
    <MyUntypedObject>.Table1
);
Set(
    TypedTable,
    ForAll(
        table1, // extract JSON from table1
        {
            BookID: Value(ThisRecord.BookID),
            BookName: Text(ThisRecord.BookName)
        }
    )
);