Τα φίλτρα ελέγχουν την πρόσβαση ασφαλείας στις τιμές δεδομένων σε έναν κύβο. Τα φίλτρα είναι η πιο λεπτομερής μορφή ασφάλειας που είναι διαθέσιμη.
Όταν δημιουργείτε ένα φίλτρο, προσδιορίζετε ένα σύνολο περιορισμών σε συγκεκριμένα κελιά του κύβου ή σε ένα εύρος κελιών. Στη συνέχεια, μπορείτε να αντιστοιχίσετε το φίλτρο σε χρήστες ή ομάδες.
Ο δικός σας ρόλος ασφαλείας καθορίζει εάν θα μπορείτε να δημιουργείτε, να αντιστοιχίζετε, να επεξεργάζεστε, να αντιγράφετε, να μετονομάζετε ή να διαγράφετε φίλτρα:
Μπορείτε να δημιουργήσετε πολλά φίλτρα για έναν κύβο. Εάν επεξεργαστείτε ένα φίλτρο, οι τροποποιήσεις που γίνονται στον ορισμό του κληρονομούνται από όλους τους χρήστες αυτού του φίλτρου.
Ανατρέξτε στην ενότητα Έλεγχος της πρόσβασης σε κελιά βάσης δεδομένων με χρήση φίλτρων ασφάλειας.
Για να επεξεργαστείτε ένα φίλτρο στο περιβάλλον εργασίας Redwood, εντοπίστε την καρτέλα "Φίλτρα" επιλέγοντας τον κύβο και κατόπιν επιλέγοντας τη σελίδα "Προσαρμογή". Στη συνέχεια, επεξεργαστείτε ένα φίλτρο κάνοντας κλικ στο όνομα φίλτρου και κάνοντας τις αλλαγές σας στη λειτουργία επεξεργασίας φίλτρων. Για να επεξεργαστείτε μια υπάρχουσα σειρά, κάντε διπλό κλικ στη συγκεκριμένη σειρά.
Για να επεξεργαστείτε ένα φίλτρο στο Κλασικό περιβάλλον εργασίας web, μεταβείτε στην καρτέλα "Φίλτρα" του εργαλείου επιθεώρησης και επεξεργαστείτε το φίλτρο κάνοντας κλικ στο όνομα φίλτρου και κάνοντας τις αλλαγές σας στη λειτουργία επεξεργασίας φίλτρων.
Μπορείτε να αντιγράψετε, να μετονομάσετε ή να διαγράψετε ένα φίλτρο κάνοντας κλικ στο μενού "Ενέργειες" στα δεξιά του ονόματος φίλτρου και ορίζοντας μια επιλογή.
Μετά τη δημιουργία φίλτρων, κάντε ανάθεση σε χρήστες ή ομάδες.
Μπορείτε να δημιουργήσετε δυναμικά φίλτρα βάσει δεδομένων εξωτερικής προέλευσης, για να περιορίσετε τον αριθμό των απαιτούμενων ορισμών φίλτρων.
@datasourceLookup
και των μεταβλητών $LoginUser
και $LoginGroup
. Τα δεδομένα εξωτερικής προέλευσης είναι ένα αρχείο csv ή ένας σχεσιακός πίνακας. Για τα σχεσιακά δεδομένα προέλευσης, μπορείτε να φορτώσετε το αρχείο .csv σε έναν σχεσιακό πίνακα.Χρησιμοποιήστε τη δυναμική σύνταξη φίλτρων, για να δημιουργήσετε ευέλικτα φίλτρα που μπορείτε να αντιστοιχίσετε σε πολλούς χρήστες και ομάδες.
Οι σειρές φίλτρου μπορούν να περιλαμβάνουν τα ακόλουθα στοιχεία ως τμήμα του ορισμού τους, επιπλέον των εκφράσεων μελών.
$loginuser
Αυτή η μεταβλητή αποθηκεύει την τιμή του τρέχοντος συνδεδεμένου χρήστη κατά τον χρόνο εκτέλεσης. Μπορεί να χρησιμοποιηθεί σε συνδυασμό με τη μέθοδο @datasourcelookup
.
$logingroup
Αυτή η μεταβλητή αποθηκεύει την τιμή όλων των ομάδων στις οποίες ανήκει ο τρέχων συνδεδεμένος χρήστης. Περιλαμβάνει άμεσες και έμμεσες ομάδες. Όταν χρησιμοποιείται σε συνδυασμό με τη μέθοδο @datasourcelookup
, γίνεται αναζήτηση κάθε ομάδας μεμονωμένα στην προέλευση δεδομένων.
@datasourcelookup
Αυτή η μέθοδος ανακτά εγγραφές από μια προέλευση δεδομένων.
Σύνταξη
@datasourcelookup (dataSourceName, columnName, columnValue, returnColumnName)
Παράμετρος | Περιγραφή |
---|---|
dataSourceName |
Το όνομα της εξωτερικής προέλευσης δεδομένων όπως ορίζεται στο Essbase. Για μια προέλευση δεδομένων επιπέδου εφαρμογής, τοποθετήστε ένα πρόθεμα με το όνομα της εφαρμογής και μια τελεία. |
columnName |
Το όνομα της στήλης προέλευσης δεδομένων για αναζήτηση ενός δεδομένου columnValue. |
columnValue |
Η τιμή αναζήτησης στο columnName. |
returnColumnName |
Το όνομα της στήλης προέλευσης δεδομένων από όπου επιστρέφει η λίστα τιμών. |
Περιγραφή
Μια κλήση @datasourcelookup ισοδυναμεί με το ακόλουθο ερώτημα SQL:
select returnColumnName from dataSourceName where columnName=columnValue
Το @datasourcelookup εκτελεί αναζήτηση στη δεδομένη προέλευση δεδομένων για τις εγγραφές όπου το columnName περιέχει columnValue. Εάν καθορίσετε το columnValue ως $loginuser
, αυτή η μέθοδος θα αναζητήσει εγγραφές όπου το columnName περιέχει το όνομα χρήστη του ήδη συνδεδεμένου χρήστη.
Το Essbase σχηματίζει τη σειρά ορισμού φίλτρου συνδυάζοντας τα στοιχεία λίστας ως συμβολοσειρά διαχωρισμένη με κόμματα. Αν κάποια εγγραφή περιέχει ειδικούς χαρακτήρες, κενά ή μόνο αριθμούς, αυτά περικλείονται σε διπλά εισαγωγικά.
Παραδείγματα
Περικλείστε τις παραμέτρους με διπλά εισαγωγικά.
Η παρακάτω κλήση εκτελεί αναζήτηση σε μια καθολική προέλευση δεδομένων και επιστρέφει μια λίστα με ονόματα καταστημάτων όπου η Mary είναι υπεύθυνη καταστήματος.
@datasourceLookup("StoreManagersDS","STOREMANAGER","Mary","STORE")
Η παρακάτω κλήση εκτελεί αναζήτηση σε μια προέλευση δεδομένων επιπέδου εφαρμογής και επιστρέφει μια λίστα με ονόματα καταστημάτων όπου ο τρέχον συνδεδεμένος χρήστης είναι ο υπεύθυνος καταστήματος.
@datasourceLookup("Sample.StoreManagersDS","STOREMANAGER","$loginuser","STORE")
Η παρακάτω κλήση εκτελεί αναζήτηση σε μια προέλευση δεδομένων επιπέδου εφαρμογής και επιστρέφει μια λίστα με ονόματα καταστημάτων, όπου το τμήμα καταστήματος αντιστοιχεί σε οποιαδήποτε ομάδα στην οποία ανήκει ο συνδεδεμένος χρήστης.
@datasourceLookup("Sample.StoreManagersDS","STORE_DEPARTMENT","$logingroup","STORE")
Εάν ο συνδεδεμένος χρήστης ανήκει σε 3 ομάδες, τότε η παραπάνω μέθοδος @datasourcelookup
επιστρέφει όλες τις αντίστοιχες τιμές στήλης για κάθε ομάδα.
Χρησιμοποιήστε την ακόλουθη γενική ροή εργασίας για τη δημιουργία δυναμικών φίλτρων.
Αυτή η ροή εργασίας δυναμικών φίλτρων υποθέτει ότι έχετε ήδη έναν κύβο και έχετε εκχωρήσει χρήστες και ομάδες.
Στο Κλασικό περιβάλλον εργασίας web, χρησιμοποιήστε την ενότητα Φίλτρα του εργαλείου επιθεώρησης βάσεων δεδομένων.
$loginuser
, η μεταβλητή $logingroup
και η μέθοδος @datasourcelookup
, όπως απαιτείται.Το παρακάτω δυναμικό φίλτρο λειτουργεί με έναν κύβο που ονομάζεται Efficient.UserFilters, ο οποίος είναι διαθέσιμος στη συλλογή ως δείγμα προτύπου.
Για να μάθετε πώς να δημιουργήσετε και να εφαρμόσετε αυτό το δυναμικό φίλτρο, πραγματοποιήστε λήψη του προτύπου βιβλίου εργασίας, Efficient_Filters.xlsx
, από την ενότητα "Τεχνικά" της συλλογής, και ακολουθήστε τις οδηγίες του αρχείου README στο βιβλίο εργασίας. Η συλλογή είναι διαθέσιμη στην ενότητα "Αρχεία" του περιβάλλοντος εργασίας web του Essbase.