Συναρτήσεις ColumnNames και Column
Ισχύει σε: Εφαρμογές καμβά Εφαρμογές βάσει μοντέλου Power Platform CLI
Ανακτά ονόματα στηλών και τιμές από ένα μη τυπολογημένο αντικείμενο.
Περιγραφή
Η συνάρτηση ColumnNames επιστρέφει τα ονόματα όλων των στηλών από μια μη τυπολογημένη καρτέλα, επιστρέφοντας έναν πίνακα με όλα τα ονόματα από αυτήν την καρτέλα.
Η συνάρτηση Column επιστρέφει την τιμή μιας ιδιότητας από μια μη τυπολογημένη καρτέλα με το δεδομένο όνομα στήλης. Η τιμή επιστρέφεται ως μη τυπολογημένο αντικείμενο.
Οι συναρτήσεις ColumnNames και Column επιστρέφουν σφάλματα εάν το μη τυπολογημένο αντικείμενο δεν αναπαριστά μια καρτέλα (δηλαδή, εάν αντιπροσωπεύει έναν πίνακα ή μια τιμή κλιμάκωσης ή στοιχειώδη τιμή).
Σύνταξη
ColumnNames( UntypedRecord )
- UntypedRecord – Απαιτείται. Ένα μη τυπολογημένο αντικείμενο που αναπαριστά μια καρτέλα.
Column( UntypedRecord; Όνομα_στήλης )
- UntypedRecord – Απαιτείται. Ένα μη τυπολογημένο αντικείμενο που αναπαριστά μια καρτέλα.
- ColumnName - Απαιτείται. Το όνομα της στήλης που θα ανακτηθεί από τη δεδομένη καρτέλα.
Παραδείγματα
Πρόσβαση σε τιμές πεδίου
Δεδομένης της παρακάτω συμβολοσειράς JSON σε μια μεταβλητή με όνομα JsonString
{ "name": "Seattle", "population": 737000 }
Ο παρακάτω τύπος επιστρέφει έναν πίνακα μίας στήλης με μια
Value
στήλη που περιέχει τις ακόλουθες τιμές: "name", "population":ColumnNames( ParseJSON( JsonString ) )
Ο παρακάτω τύπος επιστρέφει τον αριθμό
737000
:Value( Column( ParseJSON( JsonString ), "population" ) )
2.1. Σημειώστε ότι αυτό είναι παρόμοιο με τον
.
τελεστή για μη τυπολογημένες καρτέλες, αλλά το όνομα στήλης δεν χρειάζεται να είναι γνωστό εκ των προτέρων.Ο παρακάτω τύπος επιστρέφει την τιμή κειμένου
"name: Seattle, population: 737000"
:With( { untyped: ParseJSON( JsonString ) }, Concat( ColumnNames( untyped ), $"{Value}: {Column( untyped, Value )}", ", "))
Κενά
Δεδομένης της παρακάτω συμβολοσειράς JSON σε μια μεταβλητή με όνομα JsonString
{ "text": "text value" , "number": 567, "empty": null }
- Η προσπάθεια πρόσβασης σε πεδία που δεν υπάρχουν, επιστρέφει Blank(). Ο παρακάτω τύπος επιστρέφει
true
:IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
- Οι τιμές
null
JSON θεωρούνται Blank(). Ο παρακάτω τύπος επιστρέφειtrue
:IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
Nonrecords
Η κλήση των συναρτήσεων Column ή ColumnNames με μη τυπολογημένα αντικείμενα που δεν αντιπροσωπεύουν καρτέλες επιστρέφει σφάλμα. Όλες αυτές οι παραστάσεις παρακάτω είναι εσφαλμένες:
Τύπος | Αιτία για σφάλμα |
---|---|
ColumnNames( ParseJSON ( "[1, 2, 3]" ) ) | Το μη τυπολογημένο αντικείμενο αντιπροσωπεύει έναν πίνακα |
Column( ParseJSON ( "23,45"); "Τιμή" ) | Το μη τυπολογημένο αντικείμενο αντιπροσωπεύει έναν αριθμό |
ColumnNames( ParseJSON ( """γεια""") ) | Το μη τυπολογημένο αντικείμενο αντιπροσωπεύει ένα κείμενο |
Column( ParseJSON ( "{"""a"":false}" ).a, "a" ) | Το μη τυπολογημένο αντικείμενο αντιπροσωπεύει μια δυαδική τιμή |