Προβολή αποτελεσμάτων στο SQL Server
Εάν χρησιμοποιείτε ένα μοτίβο άμεσης πρόσβασης πίνακα ή μια προβολή, το αποτέλεσμα του ερωτήματος συνδέεται με το στοιχείο ελέγχου ή τον πίνακα. Το Power Fx ενεργοποιεί αυτόματα τη σελιδοποίηση των δεδομένων της εφαρμογής σας στη συλλογή ή στον πίνακα. Ωστόσο, οι αποθηκευμένες διαδικασίες μπορούν να επιστρέψουν ένα αποτέλεσμα ερωτήματος, έναν κωδικό επιστροφής ή τιμές από παραμέτρους Out
.
Για να χρησιμοποιήσετε αυτούς τους διαφορετικούς τύπους αποτελεσμάτων στην εφαρμογή σας, χρησιμοποιήστε τα ακόλουθα μοτίβα.
Τύποι για διαφορετικά στοιχεία ελέγχου
Τυπικοί τύποι για προβολές και αποθηκευμένες διαδικασίες:
Έλεγχος | Ιδιότητα | Τύπος | Description |
---|---|---|---|
Συλλογή ή πίνακας | Items | DataSource |
Η προέλευση δεδομένων πίνακα ή προβολής μπορεί να βελτιωθεί περαιτέρω με ένα φίλτρο και StartsWith. Οι άλλοι όροι ερωτήματος που δημιουργούνται προσαρτώνται στο υπάρχον ερώτημα. |
Φόρμα | DataSource | DataSource |
Η προέλευση δεδομένων πίνακα ή προβολής |
Κουμπί υποβολής σε φόρμα | OnSelect | DataSource.dboSPName({ args}); Refresh (‘DataSource’) |
Η πρώτη DataSource σε αυτόν τον τύπο είναι η προέλευση δεδομένων αποθηκευμένης διαδικασίας—αυτή που περιέχει την αποθηκευμένη διαδικασία. Το DataSource στον τύπο ανανέωσης είναι η προέλευση δεδομένων προβολής. |
Κουμπί διαγραφής σε μια φόρμα | OnSelect | SP DataSource.dboSPName({ args}); Refresh (‘View DataSource’) |
Η πρώτη DataSource σε αυτόν τον τύπο είναι η προέλευση δεδομένων αποθηκευμένης διαδικασίας—αυτή που περιέχει την αποθηκευμένη διαδικασία. Το DataSource στον τύπο ανανέωσης είναι η προέλευση δεδομένων προβολής. |
Κωδικός επιστροφής
Χρησιμοποιήστε αυτόν τον κωδικό επιστροφής για πρόσβαση στα αποτελέσματα μιας δήλωσης επιστροφής.
<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >}).ReturnCode
Παράμετροι εξόδου
Χρησιμοποιήστε το όνομα της παραμέτρου όπως εμφανίζεται στο ωφέλιμο φορτίο JSON.
<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >}).OutputParameters.<parameterName>
Σύνολα αποτελεσμάτων
Μπορείτε να έχετε πρόσβαση σε άλλους πίνακες μέσω του ονόματός τους, για παράδειγμα, Table1
, Table2
ή Table3
.
<datasourceName>.<StoredprocedureName>({<paramName1: value, paramName2: value, ... >}).ResultSets.Table1
Μη πληκτρολογημένα αποτελέσματα
Ορισμένες περίπλοκες αποθηκευμένες διαδικασίες επιστρέφουν μη πληκτρολογημένα αποτελέσματα. Αυτό το αποτέλεσμα είναι σύνηθες για αποθηκευμένες διαδικασίες που χρησιμοποιούν προσωρινούς πίνακες. Ρο Power Apps δεν μπορεί εύκολα να καθορίσει τα αποτελέσματα εκ των προτέρων. Επομένως, η επιστροφή επισημαίνεται ως μη πληκτρολογημένη και δεν μπορείτε να αποκτήσετε απευθείας πρόσβαση σε αυτά τα αποτελέσματα. Πρέπει πρώτα να παράσχετε έναν τύπο.
Μπορείτε να αποκτήσετε πρόσβαση στα δεδομένα με το ακόλουθο μοτίβο παραδείγματος πρόσβασης δεδομένων.
Παράδειγμα πρόσβασης δεδομένων
Τραβήξτε τα αποτελέσματα σε μια μεταβλητή που ονομάζεται
MyUntypedObject
.Τραβήξτε
Table1
από αυτήν τη μεταβλητή και βάλτε τον σε μια μεταβλητή που ονομάζεταιtable1
.Φιλοδώρημα
Αυτό το βήμα δεν είναι απολύτως απαραίτητο. Είναι χρήσιμο, ωστόσο, να βάλετε όλα τα αποτελέσματα σε μια μεταβλητή και στη συνέχεια να τραβήξετε τα μέρη που χρειάζεστε, αργότερα.
Επαναλάβετε μέσω
table1
και εξαγάγετε τα στοιχεία JSON σε καθορισμένα ζεύγη τιμών.Αντιστοιχίστε τα ονόματα με ονόματα που επιστρέφονται στο ωφέλιμο φορτίο JSON.
Για επικύρωση, ανοίξτε μια οθόνη Power Apps και κοιτάξτε την ενότητα σώματος του κόμβου δεδομένων για μια καρτέλα.
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)
}
)
);