Παρακολούθηση εξάρτησης για στοιχεία λύσης
Οι λύσεις αποτελούνται στοιχεία λύσης. Θα χρησιμοποιήσετε την περιοχή Λύσεις στο Microsoft Dataverse για να δημιουργήσετε ή να προσθέσετε στοιχεία λύσης. Μπορείτε να εκτελέσετε αυτές τις ενέργειες μέσω προγραμματισμού με χρήση του μηνύματος AddSolutionComponentRequest ή οποιωνδήποτε μηνυμάτων που δημιουργούν ή ενημερώνουν στοιχεία λύσης τα οποία περιλαμβάνουν μια παράμετρο SolutionUniqueName
.
Τα στοιχεία λύσης εξαρτώνται συχνά από άλλα στοιχεία λύσης. Μπορείτε να διαγράψετε οποιοδήποτε στοιχείο λύσης που έχει εξαρχτήσεις σε άλλο στοιχείο λύσης. Για παράδειγμα, μια προσαρμοσμένη κορδέλα συνήθως απαιτεί πόρους Web εικόνας ή δέσμης ενεργειών για την εμφάνιση εικονιδίων και την εκτέλεση ενεργειών με τη χρήση δεσμών ενεργειών. Με την προϋπόθεση ότι η προσαρμοσμένη κορδέλα βρίσκεται στη λύση, απαιτούνται οι συγκεκριμένοι πόροι Web που χρησιμοποιεί. Για να μπορέσετε να διαγράψετε τους πόρους Web, θα πρέπει να καταργήσετε τις αναφορές σε αυτές στην προσαρμοσμένη κορδέλα. Αυτές οι εξαρτήσεις στοιχείου λύσης μπορούν να προβληθούν στην εφαρμογή, κάνοντας κλικ στην Εμφάνιση εξαρτήσεων.
Αυτό το θέμα περιγράφει τους τύπους των στοιχείων λύσης που μπορείτε να συμπεριλάβετε στις λύσεις σας και τον τρόπο με τον οποίο εξαρτώνται μεταξύ τους.
Όλα τα στοιχεία λύσης
Η πλήρης λίστα των διαθέσιμων τύπων στοιχείων λύσεων βρίσκεται στο καθολικό σύνολο επιλογών συστήματος componenttype
. Το υποστηριζόμενο εύρος τιμών για αυτήν την ιδιότητα είναι διαθέσιμο συμπεριλαμβάνοντας το αρχείο OptionSets.cs
ή OptionSets.vb
στο έργο σας. Ωστόσο, πολλοί από τους τύπους στοιχείων λύσης που παρατίθενται εκεί προορίζονται μόνο για εσωτερική χρήση και η λίστα δεν παρέχει πληροφορίες σχετικά με τις σχέσεις μεταξύ των στοιχείων λύσης.
Εξαρτήσεις στοιχείων λύσης
Οι εξαρτήσεις στοιχείων λύσης σας βοηθούν να επιβεβαιώσετε ότι διαθέτετε μια αξιόπιστη εμπειρία εργασίας με λύσης. Εμποδίζουν τις ενέργειες που εκτελείτε κανονικά από ακούσια κατάλυση προσαρμογών που καθορίζονται σε μια λύση. Αυτές οι εξαρτήσεις αποτελούν τα στοιχεία τα οποία μια διαχειριζόμενη λύση επιτρέπει να εγκατασταθούν και να καταργηθεί η εγκατάστασή τους απλώς μέσω εισαγωγής ή διαγραφής της λύσης.
Το πλαίσιο λύσεων παρακολουθεί αυτόματα τις εξαρτήσεις για τα στοιχεία λύσης. Κάθε λειτουργία σε ένα στοιχείο λύσης υπολογίζει αυτόματα τις εξαρτήσεις σε άλλα στοιχεία του συστήματος. Οι πληροφορίες εξαρτήσεων χρησιμοποιούνται για τη διατήρηση της ακεραιότητας του συστήματος και την αποτροπή λειτουργιών που θα μπορούσαν να οδηγήσουν σε ασυνεπή κατάσταση.
Ως αποτέλεσμα της εξάρτησης από την παρακολούθηση, εφαρμόζονται οι ακόλουθες συμπεριφορές:
Η διαγραφή ενός στοιχείου εμποδίζεται εάν κάποιο άλλο στοιχείο στο σύστημα εξαρτάται από αυτό.
Η εξαγωγή μιας λύσης προειδοποιεί το χρήστη, εάν υπάρχουν στοιχεία που λείπουν, τα οποία θα μπορούσαν να προκαλέσουν αποτυχία κατά την εισαγωγή αυτής της λύσης σε ένα άλλο σύστημα.
Οι προειδοποιήσεις κατά την εξαγωγή μπορούν να παραβλεφθούν εάν ο προγραμματιστής της λύσης προτίθεται ότι η λύση πρόκειται να εγκατασταθεί μόνο σε έναν οργανισμό όπου τα εξαρτώμενα στοιχεία αναμένονται να υπάρχουν. Για παράδειγμα, όταν δημιουργείτε μια λύση που έχει σχεδιαστεί για να εγκατασταθεί μέσω μιας προ-εγκατεστημένης λύσης "βάσης".
Η εισαγωγή μιας λύσης αποτυγχάνει εάν όλα τα απαιτούμενα στοιχεία δεν περιλαμβάνονται στη λύση και επίσης δεν υπάρχουν στο σύστημα-στόχο.
- Επιπλέον, κατά την εισαγωγή μιας διαχειριζόμενης λύσης, όλα τα απαιτούμενα στοιχεία πρέπει να συμφωνούν με τον τύπο του πακέτου της λύσης. Ένα στοιχείο σε μια διαχειριζόμενη λύση μπορεί να εξαρτηθεί μόνο από ένα άλλο διαχειριζόμενο στοιχείο.
Υπάρχουν τρεις τύποι εξαρτήσεων στοιχείων λύσης:
Λύση Εσωτερική
Τις εσωτερικές εξαρτήσεις διαχειρίζεται το Dataverse. Προκύπτουν όταν ένα συγκεκριμένο στοιχείο λύσης δεν υφίσταται χωρίς την ύπαρξη ενός άλλου στοιχείου λύσης.Δημοσιευμένος
Οι δημοσιευμένες εξαρτήσεις δημιουργούνται όταν δύο στοιχεία λύσης σχετίζονται μεταξύ τους και, στη συνέχεια, δημοσιεύονται. Για να καταργήσετε αυτόν τον τύπο εξάρτησης, πρέπει να καταργηθεί η συσχέτιση και οι οντότητες να δημοσιευτούν ξανά.Αδημοσίευτος
Οι μη δημοσιευμένες εξαρτήσεις εφαρμόζονται στην μη δημοσιευμένη έκδοση ενός στοιχείου λύσης με δυνατότητα δημοσίευσης η οποία ενημερώνεται. Μετά τη δημοσίευση του στοιχείου λύσης, γίνεται μια δημοσιευμένη εξάρτηση.Οι εσωτερικές εξαρτήσεις λύσης είναι εξαρτήσεις όπου οι ενέργειες με ένα στοιχείο λύσης απαιτούν μια ενέργεια από ένα στοιχείο λύσης. Για παράδειγμα, εάν διαγράψετε μια οντότητα, πρέπει να αναμένετε ότι όλα τα χαρακτηριστικά της οντότητας θα διαγραφούν με αυτήν. Θα διαγραφούν επίσης τυχόν σχέσεις της οντότητας με άλλες οντότητες.
Ωστόσο, μια εσωτερική εξάρτηση ενδέχεται να οδηγήσει σε μια δημοσιευμένη εξάρτηση και να απαιτεί μη αυτόματη παρέμβαση. Για παράδειγμα, εάν συμπεριλάβετε ένα πεδίο αναζήτησης σε μια φόρμα οντοτήτων και, στη συνέχεια, διαγράψετε την κύρια οντότητα στη σχέση, δεν μπορείτε να ολοκληρώσετε αυτήν τη διαγραφή μέχρι να καταργήσετε το πεδίο αναζήτησης από τη σχετική φόρμα οντοτήτων και, στη συνέχεια, να δημοσιεύσετε τη φόρμα.
Όταν εκτελείτε ενέργειες μέσω προγραμματισμού με λύσεις, μπορείτε να χρησιμοποιήσετε μηνύματα που σχετίζονται με την οντότητα
Dependency
. Ανατρέξτε στην ενότητα Οντότητα εξάρτησης για μηνύματα που μπορείτε να χρησιμοποιήσετε για τον προσδιορισμό εξαρτήσεων που μπορεί να υπάρχουν πριν από τη διαγραφή ενός στοιχείου ή την κατάργηση της εγκατάστασης μιας λύσης.
Συνήθη στοιχεία λύσης
Αυτά είναι τα στοιχεία λύσης που εμφανίζονται στην εφαρμογή και τα στοιχεία με τα οποία θα εργαστείτε απευθείας κατά την προσθήκη ή την κατάργηση στοιχείων λύσης χρησιμοποιώντας τη σελίδα λύσης. Καθένας από τους άλλους τύπους στοιχείων λύσης θα εξαρτηθεί από ένα ή περισσότερα από αυτά τα στοιχεία λύσης για να υπάρξει.
Κορδέλες εφαρμογής (RibbonCustomization)
Προσαρμογές κορδέλας για την κορδέλα εφαρμογών και τα πρότυπα κορδέλας οντοτήτων. Οι κορδέλες εφαρμογής δεν περιλαμβάνουν ορισμούς για κορδέλες σε επίπεδο οντότητας ή φόρμας.
Οι προσαρμοσμένες κορδέλες εφαρμογών συχνά έχουν δημοσιευμένες εξαρτήσεις σε πόρους Web. Οι πόροι Web χρησιμοποιούνται για τον καθορισμό εικονιδίων κουμπιών κορδέλας και συναρτήσεων JavaScript για έλεγχο κατά την εμφάνιση στοιχείων κορδέλας ή για τις ενέργειες που εκτελούνται όταν χρησιμοποιείται ένα συγκεκριμένο στοιχείο ελέγχου κορδέλας. Οι εξαρτήσεις δημιουργούνται μόνο όταν οι ορισμοί της κορδέλας χρησιμοποιούν την οδηγία $webresource:
για να συσχετίσουν τον πόρο Web με την κορδέλα. Περισσότερες πληροφορίες: οδηγία $webresource
Πρότυπο άρθρου (KBArticleTemplate)
Πρότυπο που περιέχει τα τυπικά χαρακτηριστικά ενός άρθρου. Υπάρχει πάντα μια εσωτερική εξάρτηση μεταξύ του προτύπου άρθρου και της οντότητας KbArticle.
Ρόλος σύνδεσης (ConnectionRole)
Ρόλος που περιγράφει τη σχέση μεταξύ δύο καρτελών. Κάθε ρόλος σύνδεσης καθορίζει τους τύπους καρτελών οντότητας που μπορούν να συνδεθούν χρησιμοποιώντας τον ρόλο σύνδεσης. Με αυτόν τον τρόπο, δημιουργείται μια δημοσιευμένη εξάρτηση μεταξύ του ρόλου σύνδεσης και της οντότητας.
Πρότυπο σύμβασης (ContractTemplate)
Πρότυπο που περιέχει τα τυπικά χαρακτηριστικά μιας σύμβασης. Υπάρχει πάντα μια εσωτερική εξάρτηση μεταξύ του προτύπου σύμβασης και της οντότητας σύμβασης.
Φόρμα πίνακα εργαλείων και οντότητας (SystemForm)
Οι καρτέλες οντότητας φόρμας συστήματος χρησιμοποιούνται για τον ορισμό πινάκων εργαλείων και φορμών οντοτήτων. Όταν μια SystemForm χρησιμοποιείται ως φόρμα οντότητας, υπάρχει μια εσωτερική εξάρτηση στην οντότητα. Όταν μια SystemForm χρησιμοποιείται ως πίνακας εργαλείων, δεν υπάρχουν εσωτερικές εξαρτήσεις. Οι φόρμες οντότητας και οι πίνακες εργαλείων συνήθως έχουν δημοσιευμένες εξαρτήσεις που σχετίζονται με το περιεχόμενό τους. Μια φόρμα οντότητας μπορεί να έχει πεδία αναζήτησης τα οποία εξαρτώνται από μια σχέση οντότητας. Τόσο οι πίνακες εργαλείων όσο και οι φόρμες οντότητας μπορεί να περιέχουν γραφήματα ή υποπλέγματα που θα δημιουργήσουν μια δημοσιευμένη εξάρτηση σε μια προβολή, η οποία, στη συνέχεια, θα έχει μια εσωτερική εξάρτηση σε μια οντότητα. Μια δημοσιευμένη εξάρτηση από πόρους Web μπορεί να δημιουργηθεί λόγω του περιεχομένου που εμφανίζεται εντός του πίνακα εργαλείων ή της φόρμας ή όταν μια φόρμα περιέχει βιβλιοθήκες JavaScript. Οι φόρμες οντότητας έχουν δημοσιευμένες εξαρτήσεις σε όλα τα χαρακτηριστικά που εμφανίζονται ως πεδία στη φόρμα.
Πρότυπο ηλεκτρονικού ταχυδρομείου (EmailTemplate)
Πρότυπο που περιέχει τα τυπικά χαρακτηριστικά ενός μηνύματος ηλεκτρονικού ταχυδρομείου. Ένα πρότυπο ηλεκτρονικού ταχυδρομείου συνήθως περιλαμβάνει πεδία που εισάγουν δεδομένα από συγκεκριμένα χαρακτηριστικά οντότητας. Ένα πρότυπο ηλεκτρονικού ταχυδρομείου μπορεί να συνδεθεί σε μια συγκεκριμένη οντότητα όταν δημιουργηθεί έτσι ώστε να μπορεί να υπάρχει μια εσωτερική εξάρτηση στην οντότητα. Ένα καθολικό πρότυπο ηλεκτρονικού ταχυδρομείου δεν συσχετίζεται με μια συγκεκριμένη οντότητα, αλλά μπορεί να έχει δημοσιευμένες εξαρτήσεις σε χαρακτηριστικά οντότητας που χρησιμοποιούνται για την παροχή δεδομένων. Μια διεργασία (ροή εργασίας) συχνά έχει ρυθμιστεί για την αποστολή ενός μηνύματος ηλεκτρονικού ταχυδρομείου χρησιμοποιώντας ένα πρότυπο ηλεκτρονικού ταχυδρομείου που δημιουργεί μια δημοσιευμένη εξάρτηση με τη ροή εργασιών.
Οντότητα (Entity)
Η κύρια δομή που χρησιμοποιείται για την μοντελοποίηση και τη διαχείριση δεδομένων στο Dataverse. Τα γραφήματα, οι φόρμες, οι σχέσεις οντότητας, οι προβολές και τα χαρακτηριστικά που σχετίζονται με μια οντότητα διαγράφονται αυτόματα όταν η οντότητα διαγράφεται λόγω των εσωτερικών εξαρτήσεων μεταξύ τους. Οι οντότητες συχνά έχουν δημοσιευμένες εξαρτήσεις με διαδικασίες, πίνακες εργαλείων και πρότυπα ηλεκτρονικού ταχυδρομείου.
Προφίλ ασφάλειας πεδίων (FieldSecurityProfile)
Προφίλ που καθορίζει το επίπεδο πρόσβασης για ασφαλή χαρακτηριστικά.
Πρότυπο συγχώνευσης αλληλογραφίας (MailMergeTemplate)
Πρότυπο που περιέχει τα τυπικά χαρακτηριστικά ενός εγγράφου συγχώνευσης αλληλογραφίας. Ένα πρότυπο συγχώνευσης αλληλογραφίας έχει μια δημοσιευμένη εξάρτηση στην οντότητα με την οποία συσχετίζεται.
Σύνολο επιλογών (OptionSet)
Ένα σύνολο επιλογών προσδιορίζει ένα σύνολο επιλογών. Ένα χαρακτηριστικό λίστας επιλογών χρησιμοποιεί ένα σύνολο επιλογών για τον καθορισμό των επιλογών που παρέχονται. Πολλά χαρακτηριστικά λίστας επιλογών μπορεί να χρησιμοποιούν ένα καθολικό σύνολο επιλογών, έτσι ώστε οι επιλογές που παρέχουν να είναι πάντα ίδιες και να είναι δυνατή η διατήρησή τους σε ένα σημείο. Μια δημοσιευμένη εξάρτηση προκύπτει όταν ένα χαρακτηριστικό λίστας επιλογών αναφέρεται σε ένα καθολικό σύνολο επιλογών. Δεν μπορείτε να διαγράψετε ένα καθολικό σύνολο επιλογών που χρησιμοποιείται από ένα χαρακτηριστικό λίστας επιλογών.
Συγκρότηση προσθήκης (PluginAssembly)
Συγκρότηση που περιέχει έναν ή περισσότερους τύπους προσθήκης. Οι προσθήκες καταχωρούνται σε συμβάντα τα οποία συνήθως σχετίζονται με μια οντότητα. Με αυτόν τον τρόπο, δημιουργείται μια δημοσιευμένη εξάρτηση.
Διεργασία (Workflow)
Σύνολο λογικών κανόνων που καθορίζουν τα βήματα που είναι απαραίτητα για τον αυτοματισμό μιας συγκεκριμένης επιχειρηματικής διεργασίας, εργασίας ή συνόλου ενεργειών που θα πρέπει να εκτελεστεί. Οι διεργασίες παρέχουν ένα ευρύ φάσμα ενεργειών που δημιουργούν δημοσιευμένες εξαρτήσεις σε οποιοδήποτε άλλο στοιχείο λύσης, το οποίο αναφέρεται από τη διεργασία. Κάθε διεργασία έχει επίσης μια δημοσιευμένη εξάρτηση στην οντότητα με την οποία συσχετίζεται.
Αναφορά (Report)
Σύνοψη δεδομένων σε μια εύκολη για ανάγνωση διάταξη. Μια αναφορά έχει δημοσιευμένες εξαρτήσεις σε οποιαδήποτε δεδομένα οντότητας ή χαρακτηριστικού που περιλαμβάνονται στην αναφορά. Κάθε αναφορά πρέπει επίσης να συσχετίζεται με μια κατηγορία αναφοράς δημιουργώντας μια εσωτερική εξάρτηση σε ένα στοιχείο λύσης που ονομάζεται "Κατηγορία σχετική με την αναφορά" (ReportCategory). Οι αναφορές μπορεί να έχουν ρυθμιστεί ώστε να αποτελούν υποαναφορές δημιουργώντας μια δημοσιευμένη εξάρτηση με τη γονική αναφορά.
Βήμα επεξεργασίας μηνύματος SDK (SDKMessageProcessingStep)
Στάδιο στη διοχέτευση εκτέλεσης στην οποία πρόκειται να εκτελεστεί μια προσθήκη.
Ρόλος ασφαλείας (Role)
Ομαδοποίηση των προνομίων ασφαλείας. Στους χρήστες ανατίθενται ρόλοι που τους εξουσιοδοτούν να έχουν πρόσβαση στο σύστημα του Dataverse. Οι φόρμες οντότητας μπορούν να συσχετιστούν με συγκεκριμένους ρόλους ασφαλείας για τον έλεγχο των ατόμων που μπορούν να προβάλουν τη φόρμα. Με αυτόν τον τρόπο, δημιουργείται μια δημοσιευμένη εξάρτηση μεταξύ του ρόλου ασφαλείας και της φόρμας.
Σημείωμα
Μόνο οι ρόλοι ασφαλείας από τη επιχειρηματική μονάδα οργανισμού μπορούν να προστεθούν σε μια λύση. Μόνο ένας χρήστης με πρόσβαση ανάγνωσης σε αυτούς τους ρόλους ασφαλείας μπορεί να τους προσθέσει σε μια λύση.
Τελικό σημείο υπηρεσίας (ServiceEndpoint)
Τελικό σημείο εξυπηρέτησης με το οποίο είναι δυνατή η επικοινωνία.
Χάρτης τοποθεσίας (SiteMap)
Δεδομένα XML που χρησιμοποιούνται για τον έλεγχο του παραθύρου περιήγησης της εφαρμογής. Ο χάρτης τοποθεσίας μπορεί να είναι συνδεδεμένος για την εμφάνιση ενός πόρου Web HTML ή ένα εικονίδιο στο χάρτη τοποθεσίας μπορεί να χρησιμοποιεί έναν πόρο Web εικόνας. Όταν χρησιμοποιείται η οδηγία $webresource:
για τη δημιουργία αυτών των συσχετίσεων, δημιουργείται μια δημοσιευμένη εξάρτηση. Περισσότερες πληροφορίες: οδηγία $webresource
Πόρος Web (WebResource)
Δεδομένα ισοδύναμα με αρχεία που χρησιμοποιούνται στην ανάπτυξη Web. Οι πόροι Web παρέχουν στοιχεία από την πλευρά του προγράμματος-πελάτη που χρησιμοποιούνται για την παροχή προσαρμοσμένων στοιχείων περιβάλλοντος εργασίας χρήστη. Οι πόροι Web μπορεί να έχουν δημοσιευμένες εξαρτήσεις με φόρμες οντότητας, κορδέλες και το SiteMap. Όταν χρησιμοποιείται η οδηγία $webresource:
για τη δημιουργία συσχετίσεων στην κορδέλα ή το SiteMap, δημιουργείται μια δημοσιευμένη εξάρτηση. Για περισσότερες πληροφορίες, ανατρέξτε στην οδηγία $webresource.
Σημείωμα
Οι πόροι Web μπορεί να εξαρτώνται από άλλους πόρους Web με βάση σχετικές συνδέσεις. Για παράδειγμα, ένας πόρος Web HTML μπορεί να χρησιμοποιεί έναν πόρο Web CSS ή δέσμης ενεργειών. Ένας πόρος Web Silverlight που εμφανίζεται εκτός μιας φόρμας οντότητας ή ενός γραφήματος πρέπει να διαθέτει έναν πόρο Web HTML για να τον φιλοξενήσει. Αυτές οι εξαρτήσεις δεν παρακολουθούνται ως εξαρτήσεις λύσης.
Δείτε επίσης
Έννοιες λύσης
Κατάργηση εξαρτήσεων
Περιβαλλοντική στρατηγική
Εργασία με λύσεις χρησιμοποιώντας τα API SDK]
Αναφορά οντότητας λύσης
Αναφορά οντότητας SolutionComponent