Χρήση παραστάσεων σε συνθήκες για τον έλεγχο πολλών τιμών

Σε αυτήν την αναλυτική παρουσίαση, θα μάθετε να χρησιμοποιείτε παραστάσεις και Συνθήκες για τη σύγκριση πολλών τιμών σε λειτουργία για προχωρημένους.

Όταν δημιουργείτε μια ροή cloud, μπορείτε να χρησιμοποιήσετε την κάρτα Συνθήκη στη βασική λειτουργία για να συγκρίνετε γρήγορα μια μεμονωμένη τιμή με μια άλλη τιμή. Ωστόσο, υπάρχουν φορές που χρειάζεται να συγκρίνετε πολλές τιμές. Για παράδειγμα, μπορεί να θέλετε να ελέγξετε τις τιμές μερικών στηλών σε έναν πίνακα υπολογιστικού φύλλου ή βάσης δεδομένων.

Μπορείτε να χρησιμοποιήσετε οποιονδήποτε συνδυασμό από τις παρακάτω λογικές παραστάσεις στις συνθήκες σας.

Expression Περιγραφή Παράδειγμα
and Δέχεται δύο ορίσματα και επιστρέφει την τιμή true εάν ισχύουν και οι δύο τιμές.
Σημείωση: Και τα δύο ορίσματα πρέπει να είναι δυαδικές τιμές.
Αυτή η παράσταση επιστρέφει false:
and(greater(1,10),equals(0,0))
or Δέχεται δύο ορίσματα και επιστρέφει την τιμή true εάν οποιοδήποτε όρισμα είναι true.
Σημείωση: Και τα δύο ορίσματα πρέπει να είναι δυαδικές τιμές.
Αυτή η παράσταση επιστρέφει την τιμή true:
or(greater(1,10),equals(0,0))
equals Επιστρέφει true, αν δύο τιμές είναι ίσες. Για παράδειγμα, εάν η παράμετρος1 είναι κάποια_τιμή, αυτή η παράσταση επιστρέφει την τιμή true:
equals(parameters('παράμετρος1'), 'κάποια_τιμή')
less Δέχεται δύο ορίσματα και επιστρέφει την τιμή true εάν το πρώτο όρισμα είναι μικρότερο από το δεύτερο όρισμα.
Σημείωση: Οι υποστηριζόμενοι τύποι είναι ακέραιος αριθμός, κινητής υποδιαστολής και συμβολοσειρά.
Αυτή η παράσταση επιστρέφει την τιμή true:
less(10,100)
lessOrEquals Επιστρέφει true, αν το πρώτο όρισμα είναι μικρότερο από ή ίσο με το δεύτερο.
Σημείωση: Οι υποστηριζόμενοι τύποι είναι ακέραιος αριθμός, κινητής υποδιαστολής και συμβολοσειρά.
Αυτή η παράσταση επιστρέφει την τιμή true:
lessOrEquals(10,10)
greater Δέχεται δύο ορίσματα και επιστρέφει την τιμή true εάν το πρώτο όρισμα είναι μεγαλύτερο από το δεύτερο όρισμα.
Σημείωση: Οι υποστηριζόμενοι τύποι είναι ακέραιος αριθμός, κινητής υποδιαστολής και συμβολοσειρά.
Αυτή η παράσταση επιστρέφει false:
greater(10,10)
greaterOrEquals Δέχεται δύο ορίσματα και επιστρέφει την τιμή true εάν το πρώτο όρισμα είναι μεγαλύτερο από ή ίσο με το δεύτερο όρισμα.
Σημείωση: Οι υποστηριζόμενοι τύποι είναι ακέραιος αριθμός, κινητής υποδιαστολής και συμβολοσειρά.
Αυτή η παράσταση επιστρέφει false:
greaterOrEquals(10,100)
empty Επιστρέφει την τιμή true αν ένα αντικείμενο, ένας πίνακας ή μια συμβολοσειρά είναι κενά. Αυτή η παράσταση επιστρέφει την τιμή true:
empty('')
not Επιστρέφει το αντίθετο μιας δυαδικής τιμής. Αυτή η παράσταση επιστρέφει την τιμή true:
not(contains('200 επιτυχία','Αποτυχία'))
if Επιστρέφει μια συγκεκριμένη τιμή, εάν η παράσταση έχει ως αποτέλεσμα true ή false. Αυτή η παράσταση επιστρέφει την τιμή «ναι»:
if(equals(1, 1), 'ναι', 'όχι')

Προϋποθέσεις

  • Πρόσβαση στο Power Automate.
  • Το δικό σας υπολογιστικό φύλλο με τους πίνακες που περιγράφονται παρακάτω σε αυτή την αναλυτική παρουσίαση. Φροντίστε να αποθηκεύσετε το υπολογιστικό φύλλο σε μια θέση όπως το Dropbox ή το Microsoft OneDrive, έτσι ώστε το Power Automate να μπορεί να έχει πρόσβαση σε αυτό.
  • Microsoft Office 365 Outlook (παρόλο που χρησιμοποιούμε Office 365 Outlook, μπορείτε να χρησιμοποιήσετε οποιαδήποτε υποστηριζόμενη υπηρεσία ηλεκτρονικού ταχυδρομείου στις ροές σας.)

Χρησιμοποιήστε της παράστασης «or» (ή)

Μερικές φορές η ροή εργασιών σας απαιτεί να εκτελείται μια ενέργεια, αν η τιμή ενός στοιχείου είναι τιμήA or τιμήB. Για παράδειγμα, μπορεί να παρακολουθείτε την κατάσταση των εργασιών σε έναν πίνακα υπολογιστικού φύλλου. Ας υποθέσουμε ότι ο πίνακας έχει μια στήλη με το όνομα Κατάσταση και οι πιθανές τιμές της στήλης Κατάσταση είναι:

  • Ολοκληρώθηκε
  • αποκλείστηκε
  • περιττό
  • δεν ξεκίνησε

Ακολουθεί ένα παράδειγμα για το πώς μπορεί να φαίνεται το υπολογιστικό φύλλο:

δείγμα υπολογιστικού φύλλου.

Στο προηγούμενο υπολογιστικό φύλλο, θέλετε να χρησιμοποιήσετε το Power Automate για να καταργήσετε όλες τις σειρές όπου η στήλη Κατάσταση είναι ορισμένη σε ολοκληρώθηκε ή περιττό.

Ας δημιουργήσουμε τη ροή.

Ξεκινήστε με μια κενή ροή

  1. Είσοδος στο Power Automate.

    είσοδος.

  2. Επιλέξτε την καρτέλα Οι ροές μου.

    επιλογή των ροών μου.

  3. Επιλέξτε Δημιουργία από κενό.

    δημιουργία από κενό.

Προσθέστε ένα έναυσμα στη ροή σας

  1. Πραγματοποιήστε αναζήτηση για Χρονοδιάγραμμα και, στη συνέχεια, επιλέξτε το έναυσμα Χρονοδιάγραμμα - Περιοδικότητα

    έναυσμα χρονοδιαγράμματος.

  2. Ορίστε το χρονοδιάγραμμα ώστε να εκτελείται μία φορά την ημέρα.

    ορισμός χρονοδιαγράμματος.

Επιλέξτε το υπολογιστικό φύλλο και λάβετε όλες τις σειρές

  1. Επιλέξτε Νέο βήμα > Προσθήκη ενέργειας.

    νέο βήμα.

  2. Πραγματοποιήστε αναζήτηση για σειρές και επιλέξτε Excel - Λήψη σειρών.

    Σημείωση: Επιλέξτε την ενέργεια «Λήψη σειρών» που αντιστοιχεί στο υπολογιστικό φύλλο που χρησιμοποιείτε. Για παράδειγμα, εάν χρησιμοποιείτε φύλλα Google, επιλέξτε Φύλλα Google - Λήψη σειρών.

    λήψη γραμμών.

  3. Επιλέξτε το εικονίδιο φακέλου στο πλαίσιο Όνομα αρχείου, εντοπίστε και επιλέξτε το υπολογιστικό φύλλο που περιέχει τα δεδομένα σας.

    επιλογή υπολογιστικού φύλλου.

  4. Επιλέξτε τον πίνακα που περιέχει τα δεδομένα σας από τη λίστα Όνομα πίνακα.

    επιλογή πίνακα.

Ελέγξτε τη στήλη κατάστασης κάθε σειράς

  1. Επιλέξτε Νέο βήμα > Περισσότερα > Προσθήκη «apply to each».

    Προσθήκη μιας "Εφαρμογής στο καθένα".

  2. Προσθέστε το διακριτικό Τιμή στο πλαίσιο Επιλογή εξόδου από προηγούμενα βήματα.

    Προσθήκη τιμής.

  3. Επιλέξτε Προσθήκη συνθήκης > Επεξεργασία σε λειτουργία για προχωρημένους.

  4. Προσθέστε την ακόλουθη παράσταση or. Αυτή η παράσταση or ελέγχει την τιμή κάθε σειράς του πίνακα (μια σειρά είναι γνωστή ως «στοιχείο» αναφορικά με την πρόσβαση σε αυτήν σε μια παράσταση). Εάν η τιμή της στήλης Κατάσταση είναι Ολοκληρώθηκε ή Περιττό, η παράσταση or αποδίδει την τιμή «true».

    Η παράσταση or εμφανίζεται όπως φαίνεται εδώ:

    @or(equals(item()?['status'], 'unnecessary'), equals(item()?['status'], 'completed'))

    Η κάρτα Συνθήκη μοιάζει με αυτή την εικόνα:

    εικόνα παράστασης or.

Διαγραφή σειρών που συμφωνούν από το υπολογιστικό φύλλο

  1. Επιλέξτε Προσθήκη μιας ενέργειας στη διακλάδωση της συνθήκης ΕΆΝ ΝΑΙ, ΝΑ ΜΗΝ ΕΚΤΕΛΕΣΤΕΙ ΚΑΜΙΑ ΕΝΕΡΓΕΙΑ.

  2. Πραγματοποιήστε αναζήτηση για Διαγραφή σειράς και επιλέξτε Excel - Διαγραφή σειράς.

    εικόνα διαγραφής σειράς.

  3. Στο πλαίσιο Όνομα αρχείου, αναζητήστε και επιλέξτε το αρχείο υπολογιστικού φύλλου που περιέχει τα δεδομένα που θέλετε να διαγράψετε.

  4. Στη λίστα Όνομα πίνακα, επιλέξτε τον πίνακα που περιέχει τα δεδομένα σας.

  5. Τοποθετήστε το διακριτικό Αναγνωριστικό σειράς στο πλαίσιο Αναγνωριστικό σειράς.

    αρχείο υπολογιστικού φύλλου.

Δώστε όνομα στη ροή και αποθηκεύστε την

  1. Δώστε ένα όνομα στην ροή σας και επιλέξτε το κουμπί Δημιουργία ροής.

    αποθηκεύστε τη ροή σας.

Εκτελέστε τη ροή με την παράσταση or

Η ροή εκτελείται αφού την αποθηκεύσετε. Εάν έχετε δημιουργήσει το υπολογιστικό φύλλο που αναφέρεται παραπάνω σε αυτή την αναλυτική παρουσίαση, θα έχει την εξής μορφή αφού ολοκληρωθεί η εκτέλεση της ροής:

η παράσταση or ολοκληρώθηκε.

Παρατηρήστε ότι έχουν διαγραφεί όλα τα δεδομένα από τις σειρές που είχαν «ολοκληρώθηκε» ή «περιττό» στη στήλη «Κατάσταση».

Χρήση της παράστασης «and»

Ας υποθέσουμε ότι έχετε έναν πίνακα υπολογιστικού φύλλου με δύο στήλες. Τα ονόματα στηλών είναι «Κατάσταση» και «Ανάθεση». Ας υποθέσουμε επίσης ότι θέλετε να διαγράψετε όλες τις σειρές, εάν η τιμή στη στήλη κατάστασης έχει «αποκλεισμός» και η τιμή της στήλης «Ανάθεση» είναι «Ανδρέας Σωτηρίου». Για να πραγματοποιήσετε αυτή την εργασία, ακολουθήστε όλα τα βήματα που περιγράφονται παραπάνω σε αυτήν την αναλυτική παρουσίαση, ωστόσο, όταν επεξεργάζεστε την κάρτα Συνθήκη κάρτας σε λειτουργία για προχωρημένους, χρησιμοποιήστε την παράσταση and που φαίνεται εδώ:

@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))

Η κάρτα Συνθήκη μοιάζει με αυτή την εικόνα:

εικόνα παράστασης and.

Εκτελέστε τη ροή με την παράσταση and

Εάν ακολουθήσατε το παράδειγμα, το υπολογιστικό φύλλο μοιάζει με αυτήν την εικόνα:

πριν την εκτέλεση and.

Αφού εκτελεστεί η ροή σας, το υπολογιστικό φύλλο σας μοιάζει με αυτή την εικόνα:

μετά την εκτέλεση and.

Χρήση της παράστασης empty

Παρατηρήστε ότι υπάρχουν αρκετές κενές σειρές στο υπολογιστικό φύλλο τώρα. Για να τις διαγράψετε, χρησιμοποιήστε την παράσταση κενή για να εντοπίσετε όλες τις σειρές που δεν έχουν οποιοδήποτε κείμενο στις στήλες «Ανάθεση» και «Κατάσταση».

Για να πραγματοποιήσετε αυτή την εργασία, ακολουθήστε όλα τα βήματα που αναφέρονται στην ενότητα Χρήση της παράστασης «and» που αναφέρεται παραπάνω σε αυτήν την αναλυτική παρουσίαση, ωστόσο, όταν επεξεργάζεστε την κάρτα Συνθήκη σε λειτουργία για προχωρημένους, χρησιμοποιήστε την παράσταση empty με αυτόν τον τρόπο:

@and(empty(item()?['Status']), empty(item()?['Assigned']))

Η κάρτα Συνθήκη μοιάζει με αυτή την εικόνα:

εικόνα παράστασης empty.

Αφού εκτελεστεί η ροή σας, το υπολογιστικό φύλλο μοιάζει με αυτή την εικόνα:

μετά την εκτέλεση της παράστασης empty.

Παρατηρήστε ότι οι επιπλέον σειρές έχουν καταργηθεί από τον πίνακα.

Χρήση της παράστασης «greater»

Φανταστείτε έχετε αγοράσει εισιτήρια μπέιζμπολ για τους συνεργάτες σας και χρησιμοποιείτε ένα υπολογιστικό φύλλο για να βεβαιωθείτε ότι θα λάβετε το αντίτιμο από κάθε άτομο. Μπορείτε να δημιουργήσετε γρήγορα μια ροή cloud που στέλνει καθημερινά ένα μήνυμα ηλεκτρονικού ταχυδρομείου σε κάθε άτομο που δεν έχει καταβάλλει το πλήρες ποσό.

Χρησιμοποιήστε την παράσταση greater για να προσδιορίσετε τους υπαλλήλους που δεν έχουν πληρώσει το πλήρες ποσό. Στη συνέχεια, μπορείτε να στείλετε αυτόματα μια φιλική υπενθύμιση με μήνυμα ηλεκτρονικού ταχυδρομείου σε εκείνους που δεν έχουν εξοφλήσει.

Ακολουθεί μια προβολή του υπολογιστικού φύλλου:

προβολή υπολογιστικού φύλλου.

Αυτή είναι η υλοποίηση της παράστασης greater που προσδιορίζει όλα τα άτομα που έχουν πληρώσει μικρότερο ποσό από το ποσό πληρωμής:

@greater(item()?['Due'], item()?['Paid'])

Χρήση της παράστασης «less»

Φανταστείτε έχετε αγοράσει εισιτήρια μπέιζμπολ για τους συνεργάτες σας και χρησιμοποιείτε ένα υπολογιστικό φύλλο για να βεβαιωθείτε ότι θα λάβετε το αντίτιμο από κάθε άτομο, μέχρι κάποια συμφωνημένη ημερομηνία. Μπορείτε να δημιουργήσετε μια ροή cloud που στέλνει ένα μήνυμα ηλεκτρονικού ταχυδρομείου υπενθύμισης σε κάθε άτομο που δεν έχει καταβάλλει το πλήρες ποσό εάν η τρέχουσα ημερομηνία είναι λιγότερο από μία ημέρα πριν την προθεσμία.

Χρησιμοποιήστε την παράσταση and μαζί με την παράσταση less, δεδομένου ότι υπάρχουν δύο συνθήκες που επικυρώνετε:

συνθήκη προς επικύρωση παράσταση που θα χρησιμοποιηθεί Παράδειγμα
Έχει καταβληθεί το πλήρες ποσό πληρωμής; greater @greater(item()?['Due'], item()?['Paid'])
Απέχει η προθεσμία λιγότερο από μία ημέρα; less @less(item()?['DueDate'], addDays(utcNow(),1))

Συνδυασμός των παραστάσεων greater και less σε μία παράσταση and

Χρησιμοποιήστε την παράσταση greater για να προσδιορίσετε τους υπαλλήλους που έχουν καταβάλει μικρότερο από το συνολικό ποσό πληρωμής και χρησιμοποιήστε την παράσταση less για να διαπιστώσετε εάν η ημερομηνία πληρωμής απέχει λιγότερο από μία ημέρα από την τρέχουσα ημερομηνία. Στη συνέχεια μπορείτε να χρησιμοποιήσετε την ενέργεια Αποστολή μηνύματος ηλεκτρονικού ταχυδρομείου για να στείλετε μια φιλική υπενθύμιση μέσω ηλεκτρονικού ταχυδρομείου σε όσους δεν έχουν εξοφλήσει πλήρως και η προθεσμία απέχει λιγότερο από μία ημέρα.

Ακολουθεί μια προβολή του πίνακα του υπολογιστικού φύλλου:

προβολή πίνακα υπολογιστικού φύλλου.

Αυτή είναι η υλοποίηση της παράστασης and που προσδιορίζει όλα τα άτομα που έχουν πληρώσει μικρότερο ποσό από το ποσό πληρωμής και η προθεσμία απέχει λιγότερο από μία ημέρα από την τρέχουσα ημερομηνία:

@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))

Χρήση συναρτήσεων σε παραστάσεις

Ορισμένες παραστάσεις λαμβάνουν τις τιμές τους από ενέργειες του περιβάλλοντος εκτέλεσης που ενδέχεται να μην υπάρχουν όταν ξεκινήσει η εκτέλεση της ροής cloud. Για να αναφέρετε ή να εργαστείτε με αυτές τις τιμές στις παραστάσεις, μπορείτε να χρησιμοποιήσετε συναρτήσεις που παρέχει η γλώσσα ορισμού ροής εργασιών. Περισσότερες πληροφορίες: Αναφορά συναρτήσεων για τη γλώσσα ορισμού ροής εργασιών στο Power Automate