Η επανεγγραφή επιτρέπει στους χρήστες να ενημερώσουν δεδομένα από αναλύσεις.
Θέματα:
Η επανεγγραφή επιτρέπει στους χρήστες να ενημερώνουν τα δεδομένα σας απευθείας από dashboard και αναλύσεις.
Οι χρήστες με το δικαίωμα Εγγραφή write-back σε βάση δεδομένων βλέπουν τα πεδία εγγραφής write-back ως πεδία με δυνατότητα επεξεργασίας στις αναλύσεις. Οι τιμές που καταχωρίζουν αποθηκεύονται στη βάση δεδομένων. Οι χρήστες χωρίς το δικαίωμα Εγγραφή write-back σε βάση δεδομένων βλέπουν τα πεδία εγγραφής write-back ως πεδία μόνο για ανάγνωση.
Εάν ένας χρήστης πληκτρολογήσει μια τιμή σε ένα πεδίο με δυνατότητα επεξεργασίας και κάνει κλικ στο κουμπί εγγραφής write-back, τότε η εφαρμογή εκτελεί την εντολή SQL insert
ή update
που ορίζεται σε ένα πρότυπο εγγραφής write-back. Εάν η εντολή ολοκληρωθεί με επιτυχία, η ανάλυση ενημερώνεται με τη νέα τιμή. Εάν παρουσιαστεί σφάλμα είτε στην ανάγνωση του προτύπου είτε στην εκτέλεση της εντολής SQL, τότε εμφανίζεται ένα μήνυμα σφάλματος.
Η εντολή insert
εκτελείται όταν μια εγγραφή δεν υπάρχει ακόμα και ο χρήστης εισαγάγει νέα δεδομένα στον πίνακα. Σε αυτήν την περίπτωση, ο χρήστης πληκτρολόγησε σε μια εγγραφή πίνακα όπου η αρχική τιμή ήταν null. Η εντολή update
εκτελείται όταν ο χρήστης τροποποιεί δεδομένα που υπάρχουν ήδη. Για την εμφάνιση μιας εγγραφής που δεν υπάρχει ακόμα στον φυσικό πίνακα, μπορείτε να δημιουργήσετε έναν άλλον παρόμοιο πίνακα. Χρησιμοποιήστε αυτόν τον παρόμοιο πίνακα για να εμφανίζονται εγγραφές κράτησης θέσης τις οποίες μπορεί να τροποποιήσει ένας χρήστης.
Σημείωση:
Όταν δημιουργείτε πρότυπα εγγραφής write-back, πρέπει να συμπεριλάβετε μια εντολή insert
και μια εντολή update
, ακόμα και αν δεν χρησιμοποιούνται και οι δύο. Για παράδειγμα, αν εκτελείτε μόνο insert
, πρέπει να συμπεριλάβετε μια κενή δήλωση update
<update></update>
, όπως σε αυτόν τον κώδικα XML:
insert
και δύο κενές δηλώσεις update
. Για να μάθετε περισσότερα για τον τρόπο δημιουργίας και δόμησης αρχείων XML εγγραφής write-back, ανατρέξτε στην ενότητα Δημιουργία αρχείων προτύπων επανεγγραφής.
<?xml version="1.0" encoding="utf-8" ?> <WebMessageTables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="oracle.bi.presentation/writebackschemas/v1"> <WebMessageTable lang="en-us" system="WriteBack" table="Messages"> <WebMessage name="SetQuotaUseID"> <XML> <writeBack connectionPool="Supplier"> <insert>INSERT INTO regiontypequota VALUES(@{c5f6e60e1d6eb1098},@{c5d7e483445037d9e},'@{c3a93e65731210ed1}','@{c6b8735ea60ff3011}',@{c0432jkl53eb92cd8})</insert> <update></update> </writeBack> </XML> </WebMessage> <WebMessage name="SetForecastUseID"> <XML> <writeBack connectionPool="Supplier"> <insert>INSERT INTO regiontypeforecast VALUES(@{c83ebf607f3cb8320},@{cb7e2046a0fba2204},'@{c5a93e65d31f10e0}','@{c5a93e65d31f10e0}',@{c7322jkl93ev92cd8})</insert> <update></update> </writeBack> </XML> </WebMessage> </WebMessageTable> </WebMessageTables>
Οι διαχειριστές μπορούν να επιτρέψουν στους χρήστες να επεξεργάζονται τα δεδομένα σε αναλύσεις και dashboard.
Οι χρήστες μπορούν να κάνουν εγγραφή write-back σε οποιαδήποτε πηγή δεδομένων που επιτρέπει την εκτέλεση ερωτημάτων SQL από το Oracle Analytics .
Καθώς διαμορφώνετε για εγγραφή write-back, έχετε υπόψη τους ακόλουθους περιορισμούς:
Οι αριθμητικές στήλες πρέπει να περιέχουν μόνο αριθμούς. Δεν πρέπει να περιέχουν κανέναν χαρακτήρα μορφοποίησης δεδομένων, όπως σύμβολα δολαρίου ($), σύμβολα λιρών ή σύμβολα κατακερματισμού (#), σύμβολα ποσοστού (%), κτλ.
Οι στήλες κειμένου πρέπει να περιέχουν μόνο δεδομένα συμβολοσειρών.
Εάν ένας συνδεδεμένος χρήστης προβάλλει ήδη ένα dashboard που περιέχει μια ανάλυση όπου τα δεδομένα έχουν τροποποιηθεί με χρήση εγγραφής write-back, τα δεδομένα δεν ανανεώνονται αυτόματα στο dashboard. Για να δείτε τα ανανεωμένα δεδομένα, ο χρήστης πρέπει να ανανεώσει μη αυτόματα το dashboard.
Μπορείτε να χρησιμοποιήσετε τον μηχανισμό προτύπων μόνο με προβολές πίνακα και μόνο για δεδομένα μοναδικής τιμής. Ο μηχανισμός προτύπων δεν υποστηρίζεται για προβολές συγκεντρωτικού πίνακα ή οποιονδήποτε άλλον τύπο προβολής, για δεδομένα πολλαπλών τιμών ή για αναπτυσσόμενες στήλες με δεδομένα μοναδικής τιμής.
Όλες οι τιμές στις στήλες εγγραφής write-back είναι επεξεργάσιμες. Όταν εμφανίζονται σε περιβάλλον μη φιλικό για εκτυπωτές, τα επεξεργάσιμα πεδία εμφανίζονται σαν να έχει ο χρήστης το δικαίωμα Εγγραφή write-back σε βάση δεδομένων. Ωστόσο, όταν μια λογική στήλη αντιστοιχίζεται σε μια φυσική στήλη που μπορεί να αλλάξει, η λογική στήλη επιστρέφει τιμές για πολλαπλές τομές επιπέδων. Αυτό το σενάριο μπορεί να προκαλέσει προβλήματα.
Οποιοδήποτε πεδίο σε μια ανάλυση μπορεί να σημανθεί ως πεδίο εγγραφής write-back, ακόμα κι αν δεν παράγεται από τον πίνακα εγγραφής write-back που δημιουργήσατε. Ωστόσο, δεν μπορείτε να εκτελέσετε με επιτυχία τη λειτουργία εγγραφής write-back εάν ο πίνακας δεν είναι ενεργοποιημένος για εγγραφή write-back. Η ευθύνη για τη σωστή σήμανση των πεδίων ανήκει στον σχεδιαστή περιεχομένου.
Ένα πρότυπο μπορεί να περιέχει δηλώσεις SQL εκτός από insert
και update
. Η συνάρτηση εγγραφής write-back μεταβιβάζει αυτές τις δηλώσεις στη βάση δεδομένων. Ωστόσο, η Oracle δεν υποστηρίζει ή συστήνει τη χρήση οποιωνδήποτε δηλώσεων εκτός από insert
ή update
.
Το Oracle Analytics εκτελεί μόνο ελάχιστη επικύρωση της εισόδου δεδομένων. Εάν το πεδίο είναι αριθμητικό και ο χρήστης εισαγάγει δεδομένα κειμένου, τότε το Oracle Analytics το εντοπίζει και δεν επιτρέπει τη μεταφορά των μη έγκυρων δεδομένων στη βάση δεδομένων. Ωστόσο, δεν εντοπίζει άλλες μορφές εισόδου μη έγκυρων δεδομένων (τιμές εκτός εύρους, μικτό κείμενο και αριθμητικά δεδομένα, κτλ.). Όταν ο χρήστης πατήσει το κουμπί εγγραφής write-back και εκτελεστεί insert ή update, τα μη έγκυρα δεδομένα έχουν ως αποτέλεσμα ένα μήνυμα σφάλματος από τη βάση δεδομένων. Ο χρήστης μπορεί τότε να διορθώσει την εσφαλμένη είσοδο. Οι σχεδιαστές περιεχομένου μπορούν να περιλαμβάνουν κείμενο στην ανάλυση εγγραφής write-back για να βοηθούν τον χρήστη, για παράδειγμα, "Δεν επιτρέπεται η εισαγωγή μικτών αλφαριθμητικών τιμών σε ένα πεδίο αριθμητικών δεδομένων".
Ο μηχανισμός προτύπων δεν είναι κατάλληλος για την εισαγωγή αυθαίρετων νέων εγγραφών. Με άλλα λόγια, μην τον χρησιμοποιείτε ως εργαλείο εισόδου δεδομένων.
Όταν δημιουργείτε έναν πίνακα για εγγραφή write back, βεβαιωθείτε ότι μία στήλη τουλάχιστον δεν περιλαμβάνει δυνατότητα εγγραφής write-back αλλά περιλαμβάνει τιμές που είναι μοναδικές για κάθε σειρά και δεν είναι null.
Οι αναλύσεις εγγραφής write-back δεν υποστηρίζουν εμφάνιση λεπτομερειών. Επειδή η μετάβαση σε λεπτομέρειες τροποποιεί τη δομή του πίνακα, το πρότυπο εγγραφής write-back δεν λειτουργεί.
Προσοχή:
Ο μηχανισμός προτύπων λαμβάνει την είσοδο χρήστη και την εγγράφει απευθείας στη βάση δεδομένων. Η ασφάλεια της φυσικής βάσης δεδομένων είναι δική σας ευθύνη. Για βέλτιστη ασφάλεια, αποθηκεύετε τους πίνακες βάσης δεδομένων εγγραφής write-back σε ένα μοναδικό στιγμιότυπο βάσης δεδομένων.Ένα αρχείο προτύπου εγγραφής write-back είναι ένα αρχείο με μορφοποίηση XML που περιέχει ένα ή περισσότερα πρότυπα εγγραφής write-back.
Ένα πρότυπο εγγραφής write-back αποτελείται από ένα στοιχείο WebMessage
που καθορίζει το όνομα του προτύπου, τον χώρο συγκέντρωσης συνδέσεων και τις δηλώσεις SQL που απαιτούνται για την εισαγωγή και την ενημέρωση εγγραφών στους πίνακες και τις στήλες εγγραφής write-back που έχετε δημιουργήσει. Όταν οι σχεδιαστές περιεχομένου ενεργοποιούν μια προβολή πίνακα για εγγραφή write back, πρέπει να καθορίζουν το όνομα του προτύπου εγγραφής write-back που θα χρησιμοποιηθεί για την εισαγωγή και την ενημέρωση των εγγραφών στην προβολή πίνακα.
Ένα πρότυπο εγγραφής write-back πρέπει να ικανοποιεί τις ακόλουθες απαιτήσεις:
WebMessage
: Πρέπει να καθορίσετε ένα όνομα για το πρότυπο εγγραφής write-back χρησιμοποιώντας την παράμετρο name
στο στοιχείο WebMessage.
Για να λειτουργεί σωστά η εγγραφή write-back, κατά την ενεργοποίηση μιας προβολής πίνακα για εγγραφή write back, ένας σχεδιαστής περιεχομένου πρέπει να καθορίσει το όνομα του προτύπου εγγραφής write-back που θα χρησιμοποιηθεί για την εισαγωγή και την ενημέρωση των εγγραφών στην προβολή.
Αυτό το παράδειγμα εμφανίζει ένα πρότυπο write-back που ονομάζεται SetQuotaUseID
.
<WebMessage name="SetQuotaUseID">
connectionPool
: Για να ικανοποιούνται οι απαιτήσεις ασφάλειας, πρέπει να καθορίσετε τον χώρο συγκέντρωσης συνδέσεων μαζί με τις εντολές SQL για την εισαγωγή και την ενημέρωση των εγγραφών. Αυτές οι εντολές SQL παραπέμπουν στις τιμές που μεταβιβάζονται στο σχήμα εγγραφής write-back για τη δημιουργία των δηλώσεων SQL που θα τροποποιήσουν τον πίνακα βάσης δεδομένων.
VALUES
: Η παραπομπή στις τιμές στήλης μπορεί να γίνεται είτε μέσω του αναγνωριστικού στήλης ή της θέσης στήλης. Προτιμάται η χρήση του αναγνωριστικού στήλης.
Κλείστε τις τιμές συμβολοσειρών και ημερομηνιών σε μονά εισαγωγικά. Τα μονά εισαγωγικά δεν απαιτούνται σε αριθμητικές τιμές.
Αναγνωριστικό στήλης - Κάθε αναγνωριστικό στήλης είναι αλφαριθμητικό και δημιουργείται τυχαία. Μπορείτε να βρείτε τα αναγνωριστικά στηλών στον ορισμό XML της ανάλυσης που είναι διαθέσιμος στην καρτέλα Σύνθετες επιλογές στο πρόγραμμα επεξεργασίας αναλύσεων. Για παράδειγμα, τιμές αναγνωριστικών στηλών όπως: @{c5f6e60e1d6eb1098}
, @{c3a93e65731210ed1}
, '@{c6b8735ea60ff3011}'
Όταν χρησιμοποιείτε αναγνωριστικά στηλών, η εγγραφή write-back συνεχίζει να λειτουργεί ακόμα και αν αλλάξει η σειρά των στηλών.
Θέση στήλης - Οι θέσεις στηλών αρχίζουν την αρίθμηση με το 1. Για παράδειγμα, τιμές θέσεων στηλών όπως: @1
, @3
, '@5'
Εάν αλλάξει η σειρά των στηλών, η εγγραφή write back δεν λειτουργεί πλέον και αυτός είναι ο λόγος που προτιμώνται τα αναγνωριστικά στηλών.
Πρέπει να συμπεριλάβετε ένα στοιχείο <insert>
και ένα στοιχείο <update>
στο πρότυπο. Εάν δεν θέλετε να συμπεριλάβετε εντολές SQL εντός των στοιχείων, πρέπει να εισαγάγετε ένα κενό διάστημα μεταξύ των ετικετών ανοίγματος και κλεισίματος. Για παράδειγμα, πρέπει να εισαγάγετε το στοιχείο ως:
<insert> </insert>
Αντί για:
<insert></insert>
Εάν παραλείψετε το κενό διάστημα, θα δείτε ένα μήνυμα σφάλματος εγγραφής write-back, όπως "Δεν είναι δυνατή η ανάγνωση του προτύπου εγγραφής write-back 'my_template' από το σύστημα".
Εάν ο τύπος δεδομένων μιας παραμέτρου δεν είναι ακέραιος ή πραγματικός αριθμός, τότε προσθέστε μονά εισαγωγικά γύρω από αυτή. Εάν η βάση δεδομένων δεν εκτελεί Οριστικοποιήσεις αυτόματα, τότε προσθέστε τον προαιρετικό κόμβο postUpdate
μετά από τους κόμβους insert
και update
για να επιβάλετε την οριστικοποίηση. Ο κόμβος postUpdate
συνήθως ακολουθεί αυτό το παράδειγμα:
<postUpdate>COMMIT</postUpdate>
Παράδειγμα σύνταξης αρχείου προτύπου εγγραφής write-back με χρήση αναγνωριστικού στήλης
Ένα αρχείο προτύπου εγγραφής write-back που παραπέμπει σε τιμές μέσω αναγνωριστικού στήλης μπορεί να μοιάζει με αυτό το παράδειγμα:
<?xml version="1.0" encoding="utf-8" ?> <WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1"> <WebMessageTable lang="en-us" system="WriteBack" table="Messages"> <WebMessage name="SetQuotaUseID"> <XML> <writeBack connectionPool="Supplier"> <insert>INSERT INTO regiontypequota VALUES(@{c5f6e60e1d6eb1098},@{c5d7e483445037d9e},'@{c3a93e65731210ed1}','@{c6b8735ea60ff3011}',@{c0432jkl53eb92cd8})</insert> <update>UPDATE regiontypequota SET Dollars=@{c0432jkl53eb92cd8} WHERE YR=@{c5f6e60e1d6eb1098} AND Quarter=@{c5d7e483445037d9e} AND Region='@{c3a93e65731210ed1}' AND ItemType='@{c6b8735ea60ff3011}'</update> </writeBack> </XML> </WebMessage> </WebMessageTable> </WebMessageTables>
Παράδειγμα σύνταξης αρχείου προτύπου εγγραφής write-back με χρήση θέσης στήλης
Ένα αρχείο προτύπου εγγραφής write-back που παραπέμπει σε τιμές μέσω θέσης στήλης μπορεί να μοιάζει με αυτό το παράδειγμα:
<?xml version="1.0" encoding="utf-8" ?> <WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1"> <WebMessageTable lang="en-us" system="WriteBack" table="Messages"> <WebMessage name="SetQuota"> <XML> <writeBack connectionPool="Supplier"> <insert>INSERT INTO regiontypequota VALUES(@1,@2,'@3','@4',@5)</insert> <update>UPDATE regiontypequota SET Dollars=@5 WHERE YR=@1 AND Quarter=@2 AND Region='@3' AND ItemType='@4'</update> </writeBack> </XML> </WebMessage> </WebMessageTable> </WebMessageTables>