Για να κάνετε τις προελεύσεις δεδομένων πιο ευέλικτες, μπορείτε να εφαρμόσετε παραμέτρους χρόνου εκτέλεσης στο ερώτημα για να επιτρέψετε στην προέλευση δεδομένων να χρησιμοποιεί μεταβλητές.
Αυτές μπορεί να είναι μεταβλητές αντικατάστασης που ορίζονται στο Essbase, παράμετροι χρόνου εκτέλεσης που ορίζονται από το περιβάλλον του πλέγματος όταν οι χρήστες του Smart View εμφανίζουν λεπτομέρειες σε εξωτερικά δεδομένα ή συναρτήσεις καθορισμένες από τον χρήστη γραμμένες σε ένα σύστημα εξωτερικής προέλευσης.
Κάθε φορά που σκοπεύετε να χρησιμοποιήσετε μεταβλητές στις προελεύσεις δεδομένων Essbase, πρέπει πρώτα να
Συμπεριλάβετε σύνταξη μεταβλητών στο ερώτημα πηγής δεδομένων. Για παράδειγμα, το ερώτημα προέλευσης δεδομένων πρέπει να περιλαμβάνει ?
στη σύνταξή του, όπου το ?
είναι ένα σύμβολο κράτησης θέσης για κάποια μεταβλητή που θα καθοριστεί κατά τον χρόνο εκτέλεσης.
Έχετε μία από τις ακόλουθες επιλογές:
Ορίστε μια σταθερή τιμή προεπιλεγμένη παράμερος στην προέλευση δεδομένων για το Essbase, για χρήση ως εναλλακτική σε περίπτωση που η μεταβλητή έχει μη έγκυρο περιβάλλον κατά τον χρόνο εκτέλεσης. Εναλλακτικά,
Μεταβιβάστε μια εξωτερική, καθορισμένη από τον χρήστη συνάρτηση (ή αποθηκευμένη διαδικασία) ως παράμετρο
Για να ορίσετε Προελεύσεις δεδομένων και να εφαρμόσετε παραμέτρους για αυτές, πρέπει να είστε διαχειριστής εφαρμογών ή να έχετε ανώτερο ρόλο.
Η ενεργοποίηση της χρήσης μεταβλητών στις προελεύσεις δεδομένων Essbase σάς βοηθά να βελτιστοποιήσετε τις λειτουργίες απαιτώντας λιγότερες προελεύσεις δεδομένων για διατήρηση. Η υλοποίηση μεταβλητών σε προελεύσεις δεδομένων σάς δίνει τη δυνατότητα να καθορίσετε ένα περιβάλλον ερωτήματος χρόνου εκτέλεσης που θα εφαρμόζεται κάθε φορά που ένας χρήστης αποκτά πρόσβαση σε μια προέλευση δεδομένων που σχετίζεται με έναν κύβο Essbase.
Για παράδειγμα, υποθέστε τις ακόλουθες περιπτώσεις χρήσης.
Ένας διαχειριστής βάσης δεδομένων επιβλέπει μια επαναλαμβανόμενη εργασία φόρτωσης δεδομένων που φορτώνει δεδομένα στον κύβο σε μηνιαία βάση. Ο διαχειριστής βάσης δεδομένων μπορεί τώρα να χρησιμοποιήσει μια μεταβλητή αντικατάστασης για τη φόρτωση δεδομένων για τον τρέχοντα μήνα, αντί να διατηρεί έναν κανόνα φόρτωσης για κάθε μήνα.
Ένας διαχειριστής εφαρμογών διατηρεί ορισμούς αναφοράς εμφάνισης λεπτομερειών για διαφορετικές περιπτώσεις επιχειρηματικής χρήσης. Ο διαχειριστής εφαρμογών υλοποιεί μεταβλητές στην υποκείμενη προέλευση δεδομένων από τις οποίες αντλούν οι χρήστες του Smart View κατά τη διεξαγωγή των λειτουργιών εμφάνισης λεπτομερειών. Ως αποτέλεσμα, ο διαχειριστής εφαρμογών έχει λιγότερους ορισμούς αναφορών εμφάνισης λεπτομερειών για συντήρηση και εντοπισμό σφαλμάτων.
Ορίστε μια προεπιλεγμένη παράμετρο σε μια προέλευση δεδομένων εάν θέλετε να ενεργοποιήσετε τη χρήση μεταβλητών στα ερωτήματα που δημιουργεί το Essbase όταν λειτουργεί με δεδομένα που είναι αποθηκευμένα εκτός του κύβου.
Για να ορίσετε την προεπιλεγμένη παράμετρο,
Ανακτήστε ή δημιουργήστε μια σύνδεση με την εξωτερική προέλευση δεδομένων (για παράδειγμα, δημιουργήστε μια σύνδεση με τη βάση δεδομένων Oracle Database).
Μπορείτε να χρησιμοποιήσετε μια καθολική σύνδεση, εάν υπάρχει ήδη στη σελίδα "Προελεύσεις" του περιβάλλοντος εργασίας web Essbase ή μπορείτε να δημιουργήσετε μια σύνδεση σε επίπεδο εφαρμογής.
Δημιουργήστε μια προέλευση δεδομένων μέσω της σύνδεσης που θα χρησιμοποιήσετε για να αποκτήσετε πρόσβαση στη βάση δεδομένων Oracle Database.
Μπορείτε να ορίσετε μια προέλευση δεδομένων καθολικά εάν θα πρέπει να είναι διαθέσιμη σε όλες τις εφαρμογές ή μπορείτε να την ορίσετε σε επίπεδο εφαρμογής.
Για να δημιουργήσετε μια καθολική προέλευση δεδομένων, πρέπει να έχετε τον ρόλο διαχειριστής υπηρεσίας. Κάντε κλικ στις Προελεύσεις, επιλέξτε την καρτέλα Προελεύσεις δεδομένων κάτω από το όνομα χρήστη σας και κατόπιν κάντε κλικ στη Δημιουργία προέλευσης δεδομένων.
Εναλλακτικά, για να δημιουργήσετε μια προέλευση δεδομένων σε επίπεδο εφαρμογής, πρέπει να έχετε τον ρόλο διαχειριστής εφαρμογών ή έμπειρος χρήστης με δικαίωμα διαχείρισης εφαρμογής στην καθορισμένη εφαρμογή. Στην καρτέλα Εφαρμογές, κάντε κλικ σε ένα όνομα εφαρμογής. Στη συνέχεια, κάντε κλικ στις Προελεύσεις, επιλέξτε την καρτέλα Προελεύσεις δεδομένων κάτω από το όνομα χρήστη σας και κατόπιν κάντε κλικ στη Δημιουργία προέλευσης δεδομένων.
Στο βήμα Γενικά, για Σύνδεση, επιλέξτε τη σύνδεση βάσης δεδομένων Oracle Database που δημιουργήσατε.
Για το Όνομα, καταχωρήστε ένα όνομα στην προέλευση δεδομένων.
Για το Ερώτημα, καταχωρήστε ένα ερώτημα (αυτό το παράδειγμα χρησιμοποιεί SQL). Για να το κάνετε παραμετροποιημένο ερώτημα, πρέπει να συμπεριλάβετε μια συνθήκη φίλτρου (όρος WHERE) που αντιστοιχίζει μια σχεσιακή στήλη στην προέλευση σας σε ένα σύμβολο κράτησης θέσης. Υποδεικνύετε τη θέση της μεταβλητής χρησιμοποιώντας ένα σύμβολο κράτησης θέσης, ?, στη σύνταξη του ερωτήματος. Το σύμβολο κράτησης θέσης αφορά μια παράμετρο που θα μεταβιβάσετε σε επόμενο βήμα.
select * from SB_DT where DIMENSION_YEAR=?
Για παράδειγμα, ας υποθέσουμε ότι η σχεσιακή βάση δεδομένων σας έχει τον ακόλουθο πίνακα, που ονομάζεται SB_DT. Ο πίνακας έχει στήλη DIMENSION_YEAR με τους μήνες ως τιμές:
Για να χρησιμοποιήσετε μια μεταβλητή για την επιλογή των τιμών μήνα από τη στήλη DIMENSION_YEAR, εφαρμόστε την ακόλουθη σύνταξη φίλτρου στο ερώτημα: όπου DIMENSION_YEAR=?
Κάντε κλικ στην επιλογή "Επόμενο".
Στο βήμα Στήλες, εφαρμόστε τον κατάλληλο τύπο δεδομένων που πρέπει να συσχετίσει το Essbase με κάθε στήλη από τα σχεσιακά δεδομένα προέλευσης.
Για παράδειγμα, ορίστε τις αριθμητικές στήλες σε τύπο Διπλής ακρίβειας και αφήστε τις αλφαριθμητικές στήλες με τύπο Συμβολοσειρά.
Κάντε κλικ στην επιλογή "Επόμενο".
Στο βήμα Παράμετροι, δημιουργείται το Param1 – αυτή η παράμετρος υπάρχει επειδή χρησιμοποιήσατε ένα ? στο ερώτημα στο βήμα "Γενικά".
Αφήστε μη επιλεγμένο το πλαίσιο Χρήση μεταβλητών, κάντε διπλό κλικ στο πεδίο κειμένου στην περιοχή Τιμή και πληκτρολογήστε μια προεπιλεγμένη τιμή για την παράμετρο χρόνου εκτέλεσης. Ο σκοπός αυτής της προεπιλεγμένης τιμής είναι η χρήση της από το Essbase ως εναλλακτική σε περίπτωση που η παράμετρος έχει μη έγκυρο περιβάλλον κατά τον χρόνο εκτέλεσης. Αυτό το βήμα είναι σημαντικό εάν σκοπεύετε να χρησιμοποιήσετε παραμέτρους χρόνου εκτέλεσης ως μέρος των ορισμών αναφοράς εμφάνισης λεπτομερειών.
Μπορείτε επίσης να μετονομάσετε το Param1 σε ένα όνομα που έχει σημασία για την περίπτωση χρήσης σας. Για παράδειγμα, μπορείτε να το μετονομάσετε σε param_G_month για να υποδείξετε ότι η παράμετρος χρησιμοποιεί μια καθολική μεταβλητή για τον τρέχοντα μήνα ή μπορείτε να το μετονομάσετε σε param_<appName>_month για να υποδείξει ότι η παράμετρος χρησιμοποιεί μια μεταβλητή σε επίπεδο εφαρμογής για τον τρέχοντα μήνα. Η προσαρμογή των ονομάτων των παραμέτρων μπορεί να είναι χρήσιμη κατά τον εντοπισμό σφαλμάτων παραμέτρων χρησιμοποιώντας τα αρχεία καταγραφής server Essbase.
Εάν θέλετε να προσαρμόσετε την παράμετρο ώστε να αναφέρεται σε μια μεταβλητή αντικατάστασης, τότε δεν χρειάζεται να παρέχετε μια προεπιλεγμένη τιμή. Ανατρέξτε στην ενότητα Χρήση μεταβλητών αντικατάστασης σε μια προέλευση δεδομένων αντί για αυτό το θέμα.
Κάντε κλικ στην επιλογή "Επόμενο".
Στην Προεπισκόπηση, παρατηρήστε ότι η προεπιλεγμένη παράμετρος έχει εφαρμοστεί στο ερώτημά σας. Ως αποτέλεσμα, η προεπισκόπηση συμπληρώνεται μόνο με εγγραφές εξωτερικών προελεύσεων στις οποίες η τιμή της στήλης DIMENSION_YEAR είναι Ιαν.
Αν και η προεπισκόπηση εμφάνιζε τιμές μόνο με την προεπιλεγμένη παράμετρο εφαρμοσμένη, αργότερα, όταν υλοποιήσετε τις παραμέτρους χρόνου εκτέλεσης για τον ορισμό αναφοράς εμφάνισης λεπτομερειών, θα έχετε πρόσβαση σε περισσότερα εξωτερικά δεδομένα από αυτά που ήταν ορατά στην προεπισκόπηση.
Κάντε κλικ στην επιλογή Δημιουργία για να δημιουργήσετε την προέλευση δεδομένων με βάση αυτό το ερώτημα των δεδομένων εξωτερικής προέλευσης. Η προέλευση δεδομένων είναι ενεργοποιημένη για την υλοποίηση των παραμέτρων χρόνου εκτέλεσης.
Η ακόλουθη ροή εργασιών επεξηγεί τον τρόπο δημιουργίας μιας προέλευσης δεδομένων Essbase από ένα ερώτημα δεδομένων εξωτερικής προέλευσης, χρησιμοποιώντας μια μεταβλητή αντικατάστασης που ορίζεται στο Essbase. Η μεταβλητή αντικατάστασης προσθέτει μεγαλύτερη ευελιξία στον τρόπο που σχεδιάζετε το ερώτημα που αντλείται από τα δεδομένα προέλευσης.
Σε αυτό το παράδειγμα, θα χρησιμοποιήσετε μια μεταβλητή αντικατάστασης στο Essbase για να δηλώσετε τον τρέχοντα μήνα. Αντί να ενημερώνετε τις προελεύσεις δεδομένων κάθε μήνα για να αντλείτε δεδομένα για τον τρέχοντα μήνα, μπορείτε να αφήσετε τις προελεύσεις δεδομένων ως έχουν και να ενημερώσετε μόνο τη μεταβλητή αντικατάστασης που ορίσατε.
Δημιουργήστε μεταβλητή αντικατάστασης σε καθολικό επίπεδο ή επίπεδο εφαρμογής.
Ανακτήστε ή δημιουργήστε μια σύνδεση με την εξωτερική προέλευση δεδομένων (για παράδειγμα, δημιουργήστε μια σύνδεση με τη βάση δεδομένων Oracle Database).
Μπορείτε να χρησιμοποιήσετε μια καθολική σύνδεση, εάν υπάρχει ήδη στη σελίδα "Προελεύσεις" του περιβάλλοντος εργασίας web Essbase ή μπορείτε να δημιουργήσετε μια σύνδεση σε επίπεδο εφαρμογής.
Δημιουργήστε μια προέλευση δεδομένων μέσω της σύνδεσης που θα χρησιμοποιήσετε για να αποκτήσετε πρόσβαση στη βάση δεδομένων Oracle Database.
Μπορείτε να ορίσετε μια προέλευση δεδομένων καθολικά εάν θα πρέπει να είναι διαθέσιμη σε όλες τις εφαρμογές ή μπορείτε να την ορίσετε σε επίπεδο εφαρμογής.
Στο βήμα Γενικά, για Σύνδεση, επιλέξτε τη σύνδεση βάσης δεδομένων Oracle Database που δημιουργήσατε.
Για το Όνομα, καταχωρήστε ένα όνομα στην προέλευση δεδομένων.
Για το Ερώτημα, καταχωρήστε ένα ερώτημα (αυτό το παράδειγμα χρησιμοποιεί SQL). Για να το κάνετε παραμετροποιημένο ερώτημα, πρέπει να συμπεριλάβετε μια συνθήκη φίλτρου (όρος WHERE) που αντιστοιχίζει μια σχεσιακή στήλη στην προέλευση σας σε ένα σύμβολο κράτησης θέσης. Υποδεικνύετε τη θέση της μεταβλητής χρησιμοποιώντας ένα σύμβολο κράτησης θέσης, ?
, στη σύνταξη του ερωτήματος. Το σύμβολο κράτησης θέσης αφορά μια παράμετρο που θα μεταβιβάσετε σε επόμενο βήμα.
select * from SB_DT where DIMENSION_YEAR=?
Για παράδειγμα, ας υποθέσουμε ότι η σχεσιακή βάση δεδομένων σας έχει τον ακόλουθο πίνακα, που ονομάζεται SB_DT. Ο πίνακας έχει στήλη DIMENSION_YEAR με τους μήνες ως τιμές:
Για να χρησιμοποιήσετε μια μεταβλητή για την επιλογή των τιμών μήνα από τη στήλη DIMENSION_YEAR, εφαρμόστε την ακόλουθη σύνταξη φίλτρου στο ερώτημα: όπου DIMENSION_YEAR=?
Κάντε κλικ στην επιλογή "Επόμενο".
Στο βήμα Στήλες, εφαρμόστε τον κατάλληλο τύπο δεδομένων που πρέπει να συσχετίσει το Essbase με κάθε στήλη από τα σχεσιακά δεδομένα προέλευσης.
Για παράδειγμα, ορίστε τις αριθμητικές στήλες σε τύπο Διπλής ακρίβειας και αφήστε τις αλφαριθμητικές στήλες με τύπο Συμβολοσειρά.
Κάντε κλικ στην επιλογή "Επόμενο".
Στο βήμα Παράμετροι, δημιουργείται το Param1 – αυτή η παράμετρος υπάρχει επειδή χρησιμοποιήσατε ένα ?
στο ερώτημα στο βήμα "Γενικά". Για να προσαρμόσετε το Param1 ώστε να αναφέρεται σε μια μεταβλητή αντικατάστασης, κάντε κλικ στην επιλογή Χρήση μεταβλητών και επιλέξτε μια μεταβλητή αντικατάστασης από την αναπτυσσόμενη λίστα Τιμή.
Εάν δημιουργείτε μια προέλευση δεδομένων σε μια εφαρμογή, είναι διαθέσιμες για επιλογή μεταβλητές αντικατάστασης τόσο καθολικές όσο και σε επίπεδο εφαρμογής. Οι μεταβλητές σε επίπεδο εφαρμογής έχουν πρόθεμα με το όνομα της εφαρμογής. Εάν δημιουργείτε μια καθολική προέλευση δεδομένων, μόνο οι καθολικές μεταβλητές αντικατάστασης είναι διαθέσιμες για επιλογή.
Μπορείτε να μετονομάσετε το Param1 σε ένα όνομα που έχει σημασία για την περίπτωση χρήσης σας. Για παράδειγμα, μπορείτε να το μετονομάσετε σε param_G_month για να υποδείξετε ότι η παράμετρος χρησιμοποιεί μια καθολική μεταβλητή για τον τρέχοντα μήνα ή μπορείτε να το μετονομάσετε σε param_<appName>_month για να υποδείξει ότι η παράμετρος χρησιμοποιεί μια μεταβλητή σε επίπεδο εφαρμογής για τον τρέχοντα μήνα. Η προσαρμογή των ονομάτων των παραμέτρων μπορεί να είναι χρήσιμη κατά τον εντοπισμό σφαλμάτων παραμέτρων χρησιμοποιώντας τα αρχεία καταγραφής server Essbase.
Κάντε κλικ στην επιλογή "Επόμενο".
Στην Προεπισκόπηση, παρατηρήστε ότι η μεταβλητή αντικατάστασης έχει εφαρμοστεί στο ερώτημά σας. Ως αποτέλεσμα, η προεπισκόπηση συμπληρώνεται μόνο με εγγραφές εξωτερικών πηγών στις οποίες η τιμή της στήλης DIMENSION_YEAR είναι Αυγ.
Κάντε κλικ στην επιλογή Δημιουργία για να δημιουργήσετε την προέλευση δεδομένων με βάση αυτό a ερώτημα των δεδομένων εξωτερικής προέλευσης.