Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Εάν έχετε χρησιμοποιήσει κάποιο άλλο εργαλείο προγραμματισμού, όπως η Visual Basic ή η JavaScript, μπορεί να ρωτήσετε: Πού βρίσκονται οι μεταβλητές; Το Power Apps λειτουργεί διαφορετικά και χρειάζεται μια διαφορετική προσέγγιση. Αντί να ψάχνετε για μια μεταβλητή όταν δημιουργείτε μια εφαρμογή καμβά, σκεφθείτε: Τι θα έκανα στο Excel;
Σε άλλα εργαλεία, μπορείτε να εκτελέσετε ρητά έναν υπολογισμό και να αποθηκεύσετε το αποτέλεσμα σε μια μεταβλητή. Ωστόσο, το Power Apps και το Excel επανυπολογίζουν αυτόματα τύπους καθώς αλλάζουν τα δεδομένα εισόδου, ώστε συνήθως να μην χρειάζεται να δημιουργήσετε ή να ενημερώσετε μεταβλητές. Με τη χρήση αυτής της προσέγγισης, δημιουργείτε, κατανοείτε και συντηρείτε πιο εύκολα την εφαρμογή σας.
Ορισμένες φορές, χρειάζεται να χρησιμοποιήσετε μεταβλητές στο Power Apps, το οποίο επεκτείνει το μοντέλο του Excel προσθέτοντας τύπους συμπεριφοράς. Αυτοί οι τύποι εκτελούνται όταν, για παράδειγμα, ένας χρήστης επιλέξει ένα κουμπί. Μέσα σε έναν τύπο συμπεριφοράς, είναι συχνά χρήσιμο να ορίσετε μια μεταβλητή για χρήση σε άλλους τύπους.
Γενικά, αποφύγετε τη χρήση μεταβλητών. Ωστόσο, μερικές φορές μόνο μια μεταβλητή σάς επιτρέπει να δημιουργήσετε την εμπειρία που θέλετε. Οι μεταβλητές δημιουργούνται έμμεσα και πληκτρολογούνται όταν εμφανίζονται στις συναρτήσεις που ορίζουν τις τιμές τους.
Μετάφραση του Excel στο Power Apps
Excel
Ας εξετάσουμε τον τρόπο λειτουργίας του Excel. Ένα κελί μπορεί να έχει μια τιμή, όπως έναν αριθμό ή μια συμβολοσειρά, ή έναν τύπο που βασίζεται στις τιμές άλλων κελιών. Όταν εισάγετε μια διαφορετική τιμή σε ένα κελί, το Excel υπολογίζει αυτόματα τους τύπους που εξαρτώνται από τη νέα τιμή. Δεν χρειάζεται να κάνετε προγραμματισμό για να ενεργοποιήσετε αυτήν τη συμπεριφορά.
Στο παρακάτω παράδειγμα, το κελί A3 χρησιμοποιεί τον τύπο A1+A2. Εάν αλλάξει το A1 ή το A2 , το A3 επανυπολογίζει αυτόματα για να εμφανίσει την αλλαγή. Αυτή η συμπεριφορά δεν απαιτεί κωδικοποίηση εκτός του ίδιου του τύπου.
Το Excel δεν έχει μεταβλητές. Η τιμή ενός κελιού με έναν τύπο αλλάζει με βάση τα δεδομένα εισόδου του, αλλά δεν υπάρχει τρόπος να θυμάστε το αποτέλεσμα ενός τύπου και να το αποθηκεύετε σε ένα κελί ή οπουδήποτε αλλού. Εάν αλλάξετε την τιμή ενός κελιού, μπορεί να αλλάξει ολόκληρο το υπολογιστικό φύλλο και να χαθούν οποιεσδήποτε προηγουμένως υπολογιζόμενες τιμές. Μπορείτε να αντιγράψετε και να επικολλήσετε κελιά, αλλά αυτό είναι μη αυτόματο και δεν είναι δυνατό με τύπους.
Power Apps
Οι εφαρμογές που δημιουργείτε στο Power Apps μοιάζουν πολύ με το Excel. Αντί να ενημερώνετε κελιά, προσθέτετε στοιχεία ελέγχου οπουδήποτε σε μια οθόνη και τα ονομάζετε για χρήση σε τύπους.
Για παράδειγμα, μπορείτε να αντιγράψετε τη συμπεριφορά του Excel σε μια εφαρμογή, προσθέτοντας ένα στοιχείο ελέγχου Ετικέτα με την ονομασία Label1 και δύο στοιχεία ελέγχου Εισαγωγή κειμένου με την ονομασία TextInput1 και TextInput2. Εάν ορίσετε την ιδιότητα Text του Στοιχείου ελέγχου Label1 σε TextInput1 + TextInput2, εμφανίζει πάντα αυτόματα το άθροισμα των αριθμών στα στοιχεία ελέγχου TextInput1 και TextInput2 .
Παρατηρήστε ότι το στοιχείο ελέγχου Label1 είναι επιλεγμένο, εμφανίζοντας τον τύπο Text που χρησιμοποιεί στη γραμμή τύπων, στο επάνω μέρος της οθόνης. Ο τύπος TextInput1 + TextInput2 δημιουργεί μια εξάρτηση μεταξύ αυτών των στοιχείων ελέγχου, όπως ακριβώς και οι εξαρτήσεις μεταξύ των κελιών σε ένα βιβλίο εργασίας του Excel. Ας αλλάξουμε την τιμή του TextInput1:
Ο τύπος για την Label1 υπολογίζει ξανά αυτόματα και εμφανίζει τη νέα τιμή.
Στο Power Apps, χρησιμοποιείτε τύπους για να ορίσετε όχι μόνο την κύρια τιμή ενός στοιχείου ελέγχου, αλλά και ιδιότητες όπως η μορφοποίηση. Στο επόμενο παράδειγμα, ένας τύπος για την ιδιότητα Color της ετικέτας εμφανίζει αυτόματα τις αρνητικές τιμές με κόκκινο χρώμα. Η συνάρτηση If φαίνεται οικεία από το Excel:
If( Value(Label1.Text) < 0, Red, Black )
Χρησιμοποιείτε τύπους για πολλά σενάρια:
- Όταν είναι ενεργοποιημένο το GPS της συσκευής σας, ένα στοιχείο ελέγχου χάρτη εμφανίζει την τρέχουσα θέση σας με έναν τύπο που χρησιμοποιεί τις στήλες Location.Latitude και Location.Longitude. Καθώς μετακινείστε, ο χάρτης παρακολουθεί αυτόματα την τοποθεσία σας.
- Άλλοι χρήστες ενημερώνουν πηγές δεδομένων. Για παράδειγμα, άλλοι χρήστες από την ομάδα σας μπορούν να ενημερώνουν στοιχεία σε μια λίστα. Όταν ανανεώνετε μια προέλευση δεδομένων, οι εξαρτημένοι τύποι υπολογίζονται ξανά αυτόματα για να εμφανίσουν τα ενημερωμένα δεδομένα. Για παράδειγμα, μπορείτε να ορίσετε την ιδιότητα Items μιας συλλογής στον τύπο Filter( SharePointList ), που εμφανίζει αυτόματα το πρόσφατα φιλτραρισμένο σύνολο εγγραφών.
Πλεονεκτήματα
Η χρήση τύπων για τη δημιουργία εφαρμογών έχει πολλά πλεονεκτήματα:
- Εάν γνωρίζετε το Excel, γνωρίζετε και το Power Apps. Η γλώσσα του μοντέλου και των τύπων είναι ίδια.
- Εάν έχετε χρησιμοποιήσει άλλα εργαλεία προγραμματισμού, σκεφτείτε πόσος κώδικας θα χρειαστείτε για να κάνετε αυτά τα παραδείγματα. Στη Visual Basic, θα γράψετε ένα πρόγραμμα χειρισμού συμβάντων για το συμβάν αλλαγής σε κάθε στοιχείο ελέγχου εισαγωγής κειμένου. Ο κώδικας για τον υπολογισμό καθενός είναι πλεονάζων και μπορεί να βγει εκτός συγχρονισμού ή θα χρειαστεί να συντάξετε μια κοινή υπορουτίνη. Στο Power Apps, τα κάνετε όλα αυτά με έναν μόνο τύπο μίας γραμμής.
- Για να δείτε από πού προέρχεται το κείμενο της Label1, γνωρίζετε ακριβώς πού να κοιτάξετε: τον τύπο στην ιδιότητα Text . Δεν υπάρχει άλλος τρόπος για να αλλάξετε το κείμενο αυτού του στοιχείου ελέγχου. Σε ένα παραδοσιακό εργαλείο προγραμματισμού, κάθε πρόγραμμα χειρισμού συμβάντων ή υπορουτίνη μπορεί να αλλάξει την τιμή της ετικέτας, από οποιοδήποτε σημείο του προγράμματος. Αυτό καθιστά δύσκολο να εντοπίσετε πότε και πού άλλαξε μια μεταβλητή.
- Εάν αλλάξετε ένα στοιχείο ελέγχου ρυθμιστικού και, στη συνέχεια, αλλάξετε γνώμη, μπορείτε να αλλάξετε το ρυθμιστικό ξανά στην αρχική του τιμή. Είναι σαν να μην έχει αλλάξει ποτέ τίποτα: η εφαρμογή εμφανίζει τις ίδιες τιμές στοιχείων ελέγχου όπως πριν. Δεν υπάρχουν συνέπειες για τον πειραματισμό και την ερώτηση "what if", όπως ακριβώς και στο Excel.
Σε γενικές γραμμές, εάν μπορείτε να κάνετε κάτι με έναν τύπο, είναι καλύτερα. Αφήστε τη μηχανή τύπων στο Power Apps να δουλέψει για λογαριασμό σας.
Μάθετε πότε πρέπει να χρησιμοποιείτε μεταβλητές
Ας αλλάξουμε τον απλό αθροιστή μας ώστε να λειτουργεί όπως μια παλιομοδίτικη αριθμομηχανή με συνεχές σύνολο. Όταν επιλέγετε το κουμπί Προσθήκη , προσθέτετε έναν αριθμό στο τρέχον σύνολο. Όταν επιλέγετε το κουμπί Απαλοιφή , επαναφέρετε το τρέχον σύνολο στο μηδέν.
| Εμφάνιση | Περιγραφή |
|---|---|
|
Όταν ξεκινήσει η εφαρμογή, το τρέχον σύνολο είναι 0. Η κόκκινη κουκκίδα αντιπροσωπεύει το δάχτυλο του χρήστη στο πλαίσιο εισαγωγής κειμένου, όπου ο χρήστης εισάγει το 77. |
|
Ο χρήστης επιλέγει το κουμπί Προσθήκη. |
|
Το 77 προστίθεται στο τρέχον σύνολο. Ο χρήστης επιλέγει ξανά το κουμπί Προσθήκη. |
|
Το 77 προστίθεται ξανά στο τρέχον σύνολο, με αποτέλεσμα 154. Ο χρήστης επιλέγει το κουμπί Απαλοιφή. |
|
Το τρέχον σύνολο επανέρχεται σε 0. |
Η αριθμομηχανή μας χρησιμοποιεί κάτι που δεν υπάρχει στο Excel: ένα κουμπί. Σε αυτή την εφαρμογή, δεν μπορείτε να χρησιμοποιήσετε μόνο τύπους για τον υπολογισμό του τρέχοντος συνόλου, επειδή η τιμή του εξαρτάται από μια σειρά ενεργειών που εκτελεί ο χρήστης. Αντί για αυτό, καταγράφετε και ενημερώνετε το τρέχον σύνολο με μη αυτόματο τρόπο. Τα περισσότερα εργαλεία προγραμματισμού αποθηκεύουν αυτές τις πληροφορίες σε μια μεταβλητή.
Μερικές φορές χρειάζεστε μια μεταβλητή για να συμπεριφέρεται η εφαρμογή σας με τον τρόπο που θέλετε, αλλά αυτή η προσέγγιση παρέχεται με προειδοποιήσεις:
- Ενημερώνετε με μη αυτόματο τρόπο το τρέχον σύνολο. Ο αυτόματος επανυπολογισμός δεν το κάνει για εσάς.
- Το τρέχον σύνολο δεν υπολογίζεται με βάση τις τιμές άλλων στοιχείων ελέγχου. Εξαρτάται από το πόσες φορές ο χρήστης επιλέγει το κουμπί Add και ποια τιμή βρίσκεται στο στοιχείο ελέγχου εισαγωγής κειμένου κάθε φορά. Μήπως ο χρήστης εισήγαγε 77 και επέλεξε την επιλογή Προσθήκη δύο φορές ή εισήγαγε 24 και 130 για κάθε πρόσθεση; Δεν μπορείτε να αντικρίσετε τη διαφορά όταν το σύνολο φτάσει τον αριθμό 154.
- Οι αλλαγές στο σύνολο μπορεί να προέρχονται από διαφορετικές ενέργειες. Σε αυτό το παράδειγμα, αμφότερα τα κουμπιά Add και Clear ενημερώνουν το σύνολο. Εάν η εφαρμογή δεν συμπεριφέρεται με τον αναμενόμενο τρόπο, ποιο κουμπί προκαλεί το πρόβλημα;
Χρησιμοποιήστε μια καθολική μεταβλητή
Για να δημιουργήσετε μια αριθμομηχανή, χρειάζεστε μια μεταβλητή που περιέχει το τρέχον σύνολο. Οι απλούστερες μεταβλητές για χρήση στο Power Apps είναι οι καθολικές μεταβλητές.
Πώς λειτουργούν οι καθολικές μεταβλητές:
- Ορίστε την τιμή μιας καθολικής μεταβλητής με τη συνάρτηση Set . Ο τύπος Set( MyVar, 1 ) ορίζει την καθολική μεταβλητή MyVar στην τιμή 1.
- Χρησιμοποιήστε την καθολική μεταβλητή αναφέροντας το όνομα που χρησιμοποιείται με τη συνάρτηση Set . Στην περίπτωση αυτή, η συνάρτηση MyVar επιστρέφει την τιμή 1.
- Οι καθολικές μεταβλητές μπορεί να περιέχουν οποιαδήποτε τιμή, όπως συμβολοσειρές, αριθμούς, εγγραφές και πίνακες.
Αναδομήστε την αριθμομηχανή χρησιμοποιώντας μια καθολική μεταβλητή:
Προσθέστε ένα στοιχείο ελέγχου εισαγωγής κειμένου με την ονομασία TextInput1 και δύο κουμπιά με την ονομασία Button1 και Button2.
Ορίστε την ιδιότητα Text του στοιχείου Button1 σε "Add" και την ιδιότητα Text του στοιχείου Button2 σε "Clear".
Για να ενημερώσετε το τρέχον σύνολο όταν ένας χρήστης επιλέγει το κουμπί Add , ορίστε την ιδιότητά του OnSelect σε αυτόν τον τύπο:
Set( RunningTotal, RunningTotal + TextInput1 )
Αυτός ο τύπος δημιουργεί το RunningTotal ως μια καθολική μεταβλητή που περιέχει έναν αριθμό λόγω του + τελεστή. Αναφέρετε το RunningTotal σε οποιοδήποτε σημείο της εφαρμογής. Όταν ο χρήστης ανοίξει την εφαρμογή, το RunningTotal έχει μια αρχική τιμή κενό.
Την πρώτη φορά που ένας χρήστης επιλέγει το κουμπί Add και ορίζει εκτελέσεις, το RunningTotal ορίζεται στην τιμή RunningTotal + TextInput1.
Για να ορίσετε το τρέχον σύνολο σε 0 όταν ο χρήστης επιλέγει το κουμπί Clear , ορίστε την ιδιότητά του OnSelect σε αυτόν τον τύπο:
Set( RunningTotal, 0 )
Προσθέστε ένα στοιχείο ελέγχου Ετικέτα και ορίστε την ιδιότητά του Text σε RunningTotal.
Αυτός ο τύπος επανυπολογίζει αυτόματα και εμφανίζει στον χρήστη την τιμή RunningTotal καθώς αλλάζει με βάση τα κουμπιά που επιλέγει ο χρήστης.
Προεπισκόπηση της εφαρμογής. Πληκτρολογήστε έναν αριθμό στο πλαίσιο κειμένου και επιλέξτε το κουμπί Προσθήκη μερικές φορές. Όταν είστε έτοιμοι, επιστρέψτε στην εμπειρία σύνταξης χρησιμοποιώντας το πλήκτρο Esc .
Για να εμφανίσετε την τιμή της καθολικής μεταβλητής, επιλέξτε Μεταβλητές στο μενού σύνταξης εφαρμογών.
Για να εμφανίσετε όλα τα σημεία όπου η μεταβλητή έχει οριστεί και χρησιμοποιηθεί, επιλέξτε την κάτω από τις Καθολικές μεταβλητές.
Τύποι μεταβλητών
Το Power Apps διαθέτει τρεις τύπους μεταβλητών:
| Τύπος μεταβλητής | Εμβέλεια | Περιγραφή | Συναρτήσεις που καθορίζουν |
|---|---|---|---|
| Καθολικές μεταβλητές | Εφαρμογή | Χρησιμοποιήστε καθολικές μεταβλητές για τη διατήρηση ενός αριθμού, συμβολοσειράς κειμένου, δυαδικής τιμής, εγγραφής, πίνακα ή άλλης τιμής που αναφέρετε οπουδήποτε στην εφαρμογή. | Ορισμός |
| Μεταβλητές περιβάλλοντος | Οθόνη | Χρησιμοποιήστε μεταβλητές περιβάλλοντος για να μεταβιβάσετε τιμές σε μια οθόνη, όπως παραμέτρους σε άλλες γλώσσες. Τις αναφέρετε μόνο από μία οθόνη. |
UpdateContext Navigate |
| Συλλογές | Εφαρμογή | Χρησιμοποιήστε συλλογές για να διατηρήσετε έναν πίνακα στον οποίο αναφέρεστε οπουδήποτε στην εφαρμογή. Μπορείτε να αλλάξετε τα περιεχόμενα του πίνακα και να τα αποθηκεύσετε στην τοπική συσκευή για μελλοντική χρήση. |
Collect ClearCollect |
Δημιουργία και κατάργηση μεταβλητών
Οι μεταβλητές δημιουργούνται με μη ρητό τρόπο όταν εμφανίζονται σε μια συνάρτηση Set, UpdateContext, Navigate, Collect ή ClearCollect . Για να δηλώσετε μια μεταβλητή και τον τύπο της, απλώς συμπεριλάβετε τη σε οποιαδήποτε από αυτές τις συναρτήσεις οπουδήποτε στην εφαρμογή σας. Αυτές οι συναρτήσεις δεν δημιουργούν μεταβλητές. καλύπτουν μόνο μεταβλητές με τιμές. Ποτέ δεν δηλώνετε τις μεταβλητές ρητά όπως θα κάνατε σε ένα άλλο εργαλείο προγραμματισμού και όλες οι πληκτρολόγησης προέρχονται έμμεσα από τη χρήση.
Για παράδειγμα, μπορεί να έχετε ένα στοιχείο ελέγχου κουμπιού με έναν τύπο OnSelect ίσο με το Set( X, 1 ). Αυτός ο τύπος καθορίζει το X ως μεταβλητή με έναν τύπο αριθμού. Χρησιμοποιείτε το X σε τύπους ως αριθμό και αυτή η μεταβλητή έχει μια τιμή κενή αφού ανοίξετε την εφαρμογή, αλλά πριν επιλέξετε το κουμπί. Όταν επιλέγετε το κουμπί, δίνετε στο X την τιμή 1.
Εάν προσθέσετε ένα άλλο κουμπί και ορίσετε την ιδιότητά του OnSelect σε Set( X, "Hello" ), προκύπτει σφάλμα καθώς ο τύπος (συμβολοσειρά κειμένου) δεν συμφωνεί με τον τύπο στο προηγούμενο Σύνολο (αριθμός). Όλοι οι σιωπηροί ορισμοί της μεταβλητής πρέπει να συμφωνούν σχετικά με τον τύπο. Και πάλι, όλα αυτά συμβαίνουν επειδή αναφέρετε το X σε τύπους, όχι επειδή οποιοσδήποτε από αυτούς τους τύπους εκτελείται στην πραγματικότητα.
Καταργήστε μια μεταβλητή καταργώντας όλες τις συναρτήσεις Set, UpdateContext, Navigate, Collect ή ClearCollect που δημιουργούν έμμεσα τη μεταβλητή. Χωρίς αυτές τις συναρτήσεις, η μεταβλητή δεν υπάρχει. Επίσης, καταργήστε τυχόν αναφορές στη μεταβλητή καθώς προκαλούν σφάλμα.
Μεταβλητή διάρκεια ζωής και αρχική τιμή
Οι μεταβλητές παραμένουν στη μνήμη όσο εκτελείται η εφαρμογή. Όταν κλείσει η εφαρμογή, οι τιμές στις μεταβλητές χάνονται.
Αποθηκεύστε τα περιεχόμενα μιας μεταβλητής σε μια προέλευση δεδομένων χρησιμοποιώντας τις συναρτήσεις Patch ή Collect . Αποθηκεύστε τιμές σε συλλογές στην τοπική συσκευή χρησιμοποιώντας τη συνάρτηση SaveData .
Όταν ο χρήστης ανοίγει την εφαρμογή, όλες οι μεταβλητές ξεκινούν με μια αρχική τιμή κενό.
Ανάγνωση μεταβλητών
Χρησιμοποιήστε το όνομα της μεταβλητής για να διαβάσετε την τιμή της. Για παράδειγμα, καθορίστε μια μεταβλητή με αυτόν τον τύπο:
Set( Radius, 12 )
Στη συνέχεια, χρησιμοποιήστε την επιλογή Radius οπουδήποτε χρησιμοποιείτε έναν αριθμό και αντικαθίσταται με 12:
Pi() * Power( Radius, 2 )
Εάν δώσετε σε μια μεταβλητή περιβάλλοντος το ίδιο όνομα με μια καθολική μεταβλητή ή μια συλλογή, η μεταβλητή περιβάλλοντος έχει προτεραιότητα. Μπορείτε να αναφέρετε την καθολική μεταβλητή ή συλλογή χρησιμοποιώντας τον τελεστή αποσαφήνισης[@Radius].
Δεσμευμένα ονόματα μεταβλητών
Μην χρησιμοποιείτε κανένα από τα παρακάτω ονόματα μεταβλητών. Αυτά τα ονόματα είναι ιδιότητες εφαρμογής και η χρήση τους μπορεί να προκαλέσει διενήσεις ονόματος μεταβλητής που έχουν ως αποτέλεσμα μη αναμενόμενη συμπεριφορά της εφαρμογής.
- ActiveScreen
- DesignHeight
- DesignWidth
- Height
- MinScreenHeight
- MinScreenWidth
- SizeBreakpoints
- StudioVersion
- TestCaseId
- Δοκιμή
- TestSuiteId
- Θέμα
- Width
Χρήση μιας μεταβλητής περιβάλλοντος
Ας δούμε πώς μπορείτε να δημιουργήσετε μια αριθμομηχανή χρησιμοποιώντας μια μεταβλητή περιβάλλοντος αντί για μια καθολική μεταβλητή.
Πώς λειτουργούν οι μεταβλητές περιβάλλοντος
- Προσδιορίζετε έμμεσα και ορίζετε μεταβλητές περιβάλλοντος χρησιμοποιώντας τη συνάρτηση UpdateContext ή Navigate. Όταν ξεκινά η εφαρμογή, η αρχική τιμή κάθε μεταβλητής περιβάλλοντος είναι κενή.
- Ενημερώνετε τις μεταβλητές περιβάλλοντος με εγγραφές. Σε άλλα εργαλεία προγραμματισμού, συνήθως χρησιμοποιείτε το "=" για την ανάθεση, όπως "x = 1". Για τις μεταβλητές περιβάλλοντος, χρησιμοποιήστε το { x: 1 } αντί για αυτό. Όταν χρησιμοποιείτε μια μεταβλητή περιβάλλοντος, χρησιμοποιήστε το όνομά της απευθείας χωρίς τη σύνταξη της εγγραφής.
- Μπορείτε επίσης να ορίσετε μια μεταβλητή περιβάλλοντος όταν χρησιμοποιείτε τη συνάρτηση Navigate για να εμφανίσετε μια οθόνη. Εάν θεωρήσετε μια οθόνη ως ένα είδος διαδικασίας ή υπορουτίνης, αυτή η προσέγγιση είναι σαν τη μεταβίβαση παραμέτρων σε άλλα εργαλεία προγραμματισμού.
- Εκτός από τη συνάρτηση Navigate, οι μεταβλητές περιβάλλοντος περιορίζονται στο περιβάλλον μίας οθόνης, από όπου παίρνουν το όνομά τους. Δεν μπορείτε να τις χρησιμοποιήσετε ή να τις ορίσετε εκτός αυτού του περιβάλλοντος.
- Οι μεταβλητές περιβάλλοντος μπορεί να περιέχουν οποιαδήποτε τιμή, όπως συμβολοσειρές, αριθμούς, εγγραφές και πίνακες.
Αναδομήστε την αριθμομηχανή χρησιμοποιώντας μια μεταβλητή περιβάλλοντος:
Προσθέστε ένα στοιχείου ελέγχου "Κείμενο εισαγωγής", με την ονομασία TextInput1, και δύο κουμπιά, με την ονομασία Button1 και Button2.
Ορίστε την ιδιότητα Text του στοιχείου Button1 σε "Add" και την ιδιότητα Text του στοιχείου Button2 σε "Clear".
Για να ενημερώνεται το τρέχον σύνολο όταν ένας χρήστης επιλέγει το κουμπί Add, ορίστε την ιδιότητά του OnSelect στον παρακάτω τύπο:
UpdateContext( { RunningTotal: RunningTotal + TextInput1 } )
Αυτός ο τύπος καθορίζει το RunningTotal ως μια μεταβλητή περιβάλλοντος που διατηρεί έναν αριθμό λόγω του + τελεστή. Αναφέρεστε στο RunningTotal σε οποιοδήποτε σημείο αυτής της οθόνης. Όταν ο χρήστης ανοίξει την εφαρμογή, το RunningTotal έχει μια αρχική τιμή κενό.
Την πρώτη φορά που ο χρήστης επιλέγει το κουμπί Add και εκτελείται η συνάρτηση UpdateContext , το RunningTotal ορίζεται στην τιμή RunningTotal + TextInput1.
Για να ορίσετε το τρέχον σύνολο σε 0 κάθε φορά που ο χρήστης επιλέγει το κουμπί Clear, ορίστε την ιδιότητα OnSelect στον παρακάτω τύπο:
UpdateContext( { RunningTotal: 0 } )
Και πάλι, χρησιμοποιήστε τη συνάρτηση UpdateContext με τον τύπο UpdateContext( { RunningTotal: 0 } ).
Προσθέστε ένα στοιχείο ελέγχου Ετικέτα και ορίστε την ιδιότητά του Text σε RunningTotal.
Αυτός ο τύπος θα υπολογιστεί αυτόματα και θα εμφανίσει στο χρήστη την αξία του RunningTotal που αλλάζει με βάση τα κουμπιά που επιλέγει ο χρήστης.
Προεπισκόπηση της εφαρμογής. Πληκτρολογήστε έναν αριθμό στο πλαίσιο κειμένου και επιλέξτε το κουμπί Προσθήκη μερικές φορές. Όταν είστε έτοιμοι, επιστρέψτε στην εμπειρία σύνταξης χρησιμοποιώντας το πλήκτρο Esc .
Ορίστε την τιμή μιας μεταβλητής περιβάλλοντος κατά την περιήγηση σε μια οθόνη για να διαβιβάσετε το "περιβάλλον" ή τις "παραμέτρους" από μία οθόνη σε μια άλλη. Για να παρουσιάσετε αυτήν την τεχνική, εισαγάγετε μια οθόνη, εισαγάγετε ένα κουμπί και ορίστε την ιδιότητα OnSelect σε αυτόν τον τύπο:
Navigate( Screen1, None, { RunningTotal: -1000 } )
Κρατήστε πατημένο το πλήκτρο Alt ενώ επιλέγετε αυτό το κουμπί για να εμφανίσετε το Screen1 και ορίστε τη μεταβλητή περιβάλλοντος RunningTotal σε -1000.
Για να εμφανίσετε την τιμή της μεταβλητής περιβάλλοντος, κάντε μία από τις εξής ενέργειες:
Αν χρησιμοποιείτε την έκδοση προεπισκόπησης του Power Apps Studio, επιλέξτε Μεταβλητές στο μενού σύνταξης εφαρμογών.
Εάν χρησιμοποιείτε την κλασική έκδοση του Power Apps Studio, επιλέξτε το μενού Αρχείο και, στη συνέχεια, επιλέξτε Μεταβλητές στο αριστερό τμήμα παραθύρου.
Για να εμφανίσετε πού έχει οριστεί και χρησιμοποιηθεί η μεταβλητή περιβάλλοντος, επιλέξτε την κάτω από τις Μεταβλητές περιβάλλοντος.
Χρήση μιας συλλογής
Ας δημιουργήσουμε μια αριθμομηχανή χρησιμοποιώντας μια συλλογή. Επειδή μια συλλογή περιέχει έναν πίνακα που είναι εύκολο να αλλάξει, αυτή η αριθμομηχανή διατηρεί μια "χαρτοταινία" για κάθε τιμή καθώς την εισάγετε.
Πώς λειτουργούν οι συλλογές
- Η δημιουργία και ο ορισμός των συλλογών γίνονται με χρήση της συνάρτησης ClearCollect. Αντί για αυτό, μπορείτε να χρησιμοποιήσετε τη συνάρτηση Collect , αλλά απαιτεί μια άλλη μεταβλητή αντί να αντικαταστήσετε την παλιά.
- Μια συλλογή είναι ένας τύπος προέλευσης δεδομένων και ένας πίνακας. Για να λάβετε μια μοναδική τιμή σε μια συλλογή, χρησιμοποιήστε τη συνάρτηση First και λάβετε ένα πεδίο από την εγγραφή που προκύπτει. Εάν χρησιμοποιείτε μία μόνο τιμή με τη συνάρτηση ClearCollect, αυτό είναι το πεδίο Τιμή , όπως σε αυτό το παράδειγμα:
First(VariableName).Value
Δημιουργήστε μια αριθμομηχανή χρησιμοποιώντας μια συλλογή:
Προσθέστε ένα στοιχείου ελέγχου Εισαγωγή κειμένου, με την ονομασία TextInput1, και δύο κουμπιά, με την ονομασία Button1 και Button2.
Ορίστε την ιδιότητα Text του στοιχείου Button1 σε "Add" και την ιδιότητα Text του στοιχείου Button2 σε "Clear".
Για να ενημερώνεται το τρέχον σύνολο όταν ένας χρήστης επιλέγει το κουμπί Add, ορίστε την ιδιότητά του OnSelect στον παρακάτω τύπο:
Collect( PaperTape, TextInput1.Text )
Η απλή ύπαρξη αυτού του τύπου καθιερώνει το PaperTape ως συλλογή η οποία περιλαμβάνει έναν πίνακα με συμβολοσειρές κειμένου μίας στήλης. Μπορείτε να κάνετε αναφορά του PaperTape σε οποιοδήποτε σημείο αυτής της εφαρμογής. Κάθε φορά που ένας χρήστης ανοίγει αυτήν την εφαρμογή, το PaperTape είναι ένας κενός πίνακας.
Όταν αυτός ο τύπος εκτελείται, προσθέτει τη νέα τιμή στο τέλος της συλλογής. Επειδή προσθέτουμε μια μοναδική τιμή, η συνάρτηση Collect την τοποθετεί αυτόματα σε έναν πίνακα μίας μόνο στήλης και το όνομα της στήλης είναι Value που θα χρησιμοποιήσετε αργότερα.
Για να καταργείται την χαρτοταινία όταν ο χρήστης επιλέγει το κουμπί Clear, ορίστε την ιδιότητά του OnSelect στον παρακάτω τύπο:
Clear( PaperTape )
! [Ιδιότητα OnSelect του στοιχείου Clear but1. Για να εκτελέσετε την αριθμομηχανή, επιλέξτε F5 για να ανοίξετε την προεπισκόπηση, πληκτρολογήστε αριθμούς στο στοιχείο ελέγχου εισαγωγής κειμένου και επιλέξτε κουμπιά.
label.](μέσα/εργασία με-μεταβλητές/papertape-3.png)Για να εκτελέσετε την αριθμομηχανή, πατήστε το πλήκτρο F5 για να ανοίξετε την έκδοση προεπισκόπησης, πληκτρολογήστε αριθμούς στο στοιχείο ελέγχου "Κείμενο εισαγωγής" και επιλέξτε κουμπιά.
Για να επιστρέψετε στον προεπιλεγμένο χώρο εργασίας, επιλέξτε Esc.
Για να εμφανίσετε την χαρτοταινία, εισαγάγετε ένα στοιχείο ελέγχου Πίνακας δεδομένων και ορίστε το **[Items](στοιχεία ελέγχου/ιδιότητες1. Για να δείτε τις τιμές στη συλλογή σας, κάντε μία από τις ακόλουθες ενέργειες:
Εάν χρησιμοποιείτε την έκδοση προεπισκόπησης του Power Apps Studio, επιλέξτε Μεταβλητές στο μενού σύνταξης εφαρμογής και, στη συνέχεια, επιλέξτε Συλλογές.
Εάν χρησιμοποιείτε την κλασική έκδοση του Power Apps Studio, επιλέξτε Συλλογές από το μενού Αρχείο .. Για να δείτε τις τιμές στη συλλογή σας, κάντε μία από τις ακόλουθες ενέργειες:
Αν χρησιμοποιείτε την έκδοση προεπισκόπησης του Power Apps Studio, επιλέξτε Μεταβλητές στο μενού σύνταξης εφαρμογών και μετά επιλέξτε Συλλογές.
Αν χρησιμοποιείτε την κλασική έκδοση του Power Apps Studio, επιλέξτε Συλλογές, στο μενού Αρχείο.
Για να αποθηκεύσετε και να λάβετε τη συλλογή σας, προσθέστε δύο ακόμα στοιχεία ελέγχου κουμπιού και ορίστε τις ιδιότητές τους Text σε Load και Save. Ορίστε την ιδιότητα OnSelect του κουμπιού Load σε αυτόν τον τύπο:
Clear( PaperTape ); LoadData( PaperTape, "StoredPaperTape", true )
Πρέπει πρώτα να απαλείψετε τη συλλογή, επειδή το LoadData θα προσαρτήσει τις αποθηκευμένες τιμές στο τέλος της συλλογής.
Ορίστε την ιδιότητα OnSelect του κουμπιού Save σε αυτόν τον τύπο:
SaveData( PaperTape, "StoredPaperTape" )
Κάντε ξανά προεπισκόπηση επιλέγοντας F5, πληκτρολογήστε αριθμούς στο στοιχείο ελέγχου εισαγωγής κειμένου και επιλέξτε κουμπιά. Επιλέξτε το κουμπί Save. Κλείστε και φορτώστε εκ νέου την εφαρμογή και επιλέξτε το κουμπί Load για να φορτώσετε εκ νέου τη συλλογή σας.
Σημείωμα
Οι συναρτήσεις SaveData και LoadData λειτουργούν με το Power Apps Mobile αλλά όχι με το Power Apps Studio ή το πρόγραμμα αναπαραγωγής web για το Power Apps.