Μηνιαία Αρχεία: Νοεμβρίου 2007

ΒΡΎΑ λέει μου μου όνομα στήλης είναι δεσμευμένα ή σε χρήση … Αλλά δεν είναι

Η ΕΝΗΜΕΡΩΜΈΝΗ ΈΚΔΟΣΗ 12/04/07: Δείτε το Microsoft KB (http://support.microsoft.com/kb/923589) για σχετικές πληροφορίες.

Στην πραγματικότητα, αποδεικνύεται ότι είναι, Αλλά παιχνιδιάρικος ΒΡΎΑ έπρεπε να δυσχεραίνουν.

Πελάτης μου κάνει κάποια εργασία ανάπτυξης στο χώρο του ΒΡΎΑ πάνω από το Σαββατοκύριακο. Είναι ένα κομμάτι από ένα συνονθύλευμα ως προς αυτό που πραγματικά έκανε, αλλά το τελικό αποτέλεσμα είναι αυτό:

  • Προσπαθεί να προσθέσετε μια στήλη τοποθεσίας, που ονομάζεται "ποσότητα" και ΒΡΎΑ απαντήσεις: "Το όνομα στήλης που εισαγάγατε χρησιμοποιείται ήδη ή είναι δεσμευμένο. Επιλέξετε ένα άλλο όνομα."
  • Προσπαθεί να το προσθέσετε σε ένα άλλο περιβάλλον και που λειτουργεί. Ως εκ τούτου, "Ποσότητα" δεν είναι δεσμευμένο όνομα.
  • Προσπαθεί να βρει μια υπάρχουσα στήλη ιστοσελίδα που ονομάζεται "ποσότητα" σε αυτήν τη συλλογή τοποθεσιών. Δεν μπορείτε να το βρείτε.

Έκανα μερικά έρευνα, και ακόμη και κάποια κωδικοποίηση, Κερωμένο φιλοσοφική και τελικά βρήκε ότι έκανε μια στήλη που ονομάζεται ποσότητα, Στην πραγματικότητα, Υπάρχουν. Η Zicaffe ιδρύθηκε το _κρυφό"" Ομάδα. Ως εκ τούτου, δεν θα μπορούσαμε να το βρούμε αυτό μέσω της διεπαφής χρήστη του SharePoint.

Πώς πήραν εκεί? Δεν ξέρω, αλλά έχω μια θεωρία (ή όπως ο σύζυγός μου θα το ονομάσουμε, "μπλα μπλα μπλα"). Κάπου κατά μήκος της γραμμής, ένα υπέροχο σαράντα πρότυπο Προστέθηκε και πιθανώς να ενεργοποιηθεί σε μια τοποθεσία της συλλογής τοποθεσιών. Αυτό που στη συνέχεια απενεργοποιήθηκε (ή το site αφαιρεθεί). Η στήλη τοποθεσίας, Ωστόσο, παρέμεινε αλλά εν τη» _κρυφό" Ομάδα. Αν κάποιος ξέρει καλύτερα, παρακαλώ ενημερώστε με μέσω ηλεκτρονικό ταχυδρομείο ή μετά στα σχόλια.

SharePoint έλεγε την αλήθεια. Είναι σχεδόν αξίζει να σημειωθεί ότι αυτό το μήνυμα δεν είναι τόσο χρήσιμος όσο θα μπορούσε να είναι. Θα ήταν ωραίο να δείτε εκείνο το δίκρανο μήνυμα σε δύο διαφορετικά μηνύματα στο μέλλον: 1) Λένε ότι το όνομα της στήλης είναι δεσμευμένο ή δεν είναι. 2) Αν αυτό δεν είναι αποκλειστικό, Δείτε το site, ή τουλάχιστον η ομάδα, όπου το όνομα της στήλης χρησιμοποιείται ήδη.

</Τέλος>

Παρουσιάσει OM δεδομένων μέσω μια προσαρμοσμένη λίστα (ή, Ακόμα ένα άλλο OM δεδομένων Displayor [όπως το YACC, αλλά διαφορετικά])

Σήμερα, Πέρασα μια χούφτα ώρες εντοπισμό η βασική αιτία πίσω από το μήνυμα "το όνομα στήλης που εισαγάγατε χρησιμοποιείται ήδη ή διατηρούνται. Επιλέξετε ένα άλλο όνομα."

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

Τοποθέτησα να Φόρουμ MSDN εδώ και το αδάμαστο Andrew Woodward μου επισήμανε προς την κατεύθυνση της τα υποκείμενα δεδομένα μοντέλο αντικειμένου.

Πήγα στην Codeplex να βρείτε κάποια εργαλεία που θα σας βοηθήσουν μου peer στο τα υποκείμενα δεδομένα OM και να βοηθήσει να εντοπίσετε το πρόβλημα.

Δοκίμασα διάφορα εργαλεία και ήταν πολύ δροσερό και ενδιαφέρουσα, αλλά στο τέλος, το UI δεν ήταν αρκετά καλό για τον σκοπό μου. Δεν είμαι κριτική τους με οποιοδήποτε μέσο, αλλά σαφώς το εργαλείο-ιθύνοντες δεν έχουν πρόβλημα μου κατά νου όταν δημιούργησε τους UI :). Οι περισσότεροι άνθρωποι φαίνεται να επενδύουν ένα δίκαιο ποσό του χρόνου και της προσπάθειας για τη δημιουργία σταθμού εργασίας / εφαρμογές-πελάτες που παρέχουν θέα δέντρο, Κάντε δεξί κλικ μενού πλαίσιο και τα λοιπά. Αυτά είναι ωραία και όλα, αλλά είναι πολλή δουλειά για να δημιουργήσει ένα χρήστη top-of-the-line εμπειρία που είναι επίσης πολύ ευέλικτο.

Χρειάστηκα πραγματικά μια απάντηση σε αυτό το πρόβλημα. Αυτό να συνέβη σε μένα ότι αν θα μπορούσα να πάρω όλες τις στήλες τοποθεσίας στη συλλογή τοποθεσιών σε μια προσαρμοσμένη λίστα, Θα μπορούσα να φιλτράρετε, ταξινομήσετε και να δημιουργήσετε προβολές που θα σας βοηθήσει να βρω αυτό το δήθεν υφιστάμενη στήλη (που έκανε, BTW). Πήγα μπροστά και έκανε ότι και μία ή δύο ώρες αργότερα, είχε όλες τις στήλες τοποθεσίας μου φορτωθεί σε μια προσαρμοσμένη λίστα με την ομαδοποίηση, διαλογή και ούτω καθεξής. Βρήκα την απάντηση μου πέντε λεπτά αργότερα.

Αν και όταν παίρνω με επιτυχία πέρα από τον κόσμο, Νομίζω ότι εγώ θα διάταγμα ότι όλους τους παρόχους εργαλεία του SharePoint πρέπει να εξετάσει σοβαρά το ενδεχόμενο επιφανειακές τους αντικείμενο μοντέλο δεδομένων σε μια προσαρμοσμένη λίστα. Με αυτόν τον τρόπο, Έχω τη δύναμη να ψάξετε οποιων δήποτε τρόπο θέλω (περιορίζεται, Φυσικά, από το πρότυπο του sharepoint χαρακτηριστικά).

Προσαρμοσμένη ενέργεια ροής εργασίας του SharePoint Designer — Παρατήρηση σχετικά με <FieldBind σχεδιαστής τύπου =”StringBuilder” … />

Ακριβώς μια γρήγορη παρατήρηση ότι υπάρχει μια πολύ σημαντική διαφορά μεταξύ αυτούς τους δύο ορισμούς:

<FieldBind πεδίο = "InParam1" DesignerType = "StringBuilder" ID = "2" Κείμενο "Παράμετρο εισόδου #1" = />

σε σχέση με:

<FieldBind πεδίο = "InParam1" ID = "2" Κείμενο "Παράμετρο εισόδου #1" = />

Το πρώτο δείχνει σαν αυτό στο SPD:

εικόνα

ενώ το τελευταίο δείχνει σαν αυτό:

εικόνα

I’m not sure how helpful these screen shots are but I put in the effort to make them so you have to view them 🙂

Η παρατήρηση είναι αυτό: StringBuilder επιτρέπει σε σας για να οικοδομηθεί μια συμβολοσειρά (προφανώς) με ανάμειξη συμβολοσειρές κειμένου και δεδομένων ροής εργασίας (μέσω της "Add αναζήτησης" κουμπί στην κάτω αριστερή γωνία). Όταν χρησιμοποιείτε το κουμπί Προσθήκη αναζήτησης, εισαγάγει ένα διακριτικό με τη μορφή"[%Διακριτικό %]". Όταν SharePoint επικαλείται σας προσαρμοσμένη ενέργεια, (Κώδικας C#, στην περίπτωσή μου), SharePoint περνά το διακριτικό ίδια, δεν την αξία του διακριτικού. Εάν χρησιμοποιείτε τον προεπιλεγμένο τύπο σχεδιαστών (ο δεύτερος τύπος), SharePoint επεκτείνει το διακριτικό και περνά την πραγματική αξία του διακριτικού σας δράση.

StringBuilder = κακό, προεπιλεγμένος τύπος σχεδιαστών = καλό.

Φυσικά, που είναι δεν τι θέλω πραγματικά να πω. Απλά μην προσπαθήσετε και να δώσετε μια παράμετρος σε σας προσαρμοσμένη ενέργεια όταν ο σχεδιαστής πληκτρολογήστε = StringBuilder. Χρησιμοποιήστε το προεπιλεγμένο τύπο σχεδιαστών και αλυσίδα ένα StringBuilder σε αυτό εκ των προτέρων εάν πρέπει να χτίσετε συγκρότημα χορδές της ροής εργασίας σας (που παρεμπιπτόντως είναι ακριβώς αυτό που κάνει να δημιουργήσει ένα δυναμικό θέμα για τη δράση του ηλεκτρονικού ταχυδρομείου, αλλά αυτό είναι ένα θέμα για μια άλλη είσοδο blog, ΧΑΡ ΧΑΡ).

<Τέλος />

Πρόωρη ροή εργασίας ενεργοποίησης — Μια λύση μη-ιατρική

Η ΕΝΗΜΕΡΩΜΈΝΗ ΈΚΔΟΣΗ: Δείτε αυτό συζήτησης του MSDN, ειδικά η τελευταία καταχώρηση: http://forums.microsoft.com/MSDN/showpost.aspx?postid=2631057&siteid=1. Περιγράφει μια κατάσταση που μπορεί να κύκλωμα λίγα λόγια όλο αυτό το πράγμα. Με λίγα λόγια, μπορεί να είναι τόσο απλό όσο κάνοντας τουλάχιστον ένα από τα πεδία είναι υποχρεωτικά.

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

Έχω μια ροή εργασίας του SharePoint Designer που θέλει να υπολογίσει και να αντιστοιχίσετε μια ημερομηνία υπενθύμισης"" αφαιρώντας απλά 30 ημέρες από μια άλλη στήλη, "Ημ/νία Παράδοσης". Αυτό πρέπει να συμβεί μόνο για τους τύπους περιεχομένου, "Ασφάλιση". Ο στόχος της επιχείρησης είναι να παράγει ένα KPI που δείχνει δύο κατηγορίες των ασφαλιστικών εγγράφων: "να λήξουν" και "έχει λήξει." (Μπορείτε να διαβάσετε περισσότερα σχετικά με αυτό το είδος του KPI και περισσότερες ουσιαστικές τρυπάνι-κάτω Εδώ).

Έχω ρυθμίσει να φωτιά όταν δημιουργείται ένα νέο στοιχείο, και όταν ένα στοιχείο έχει τροποποιηθεί η ροή εργασιών. Η ιδέα είναι ότι όταν ένα ασφαλιστικών εγγράφων είναι φορτώθηκε, μπορούμε να υπολογίσουμε μια προειδοποίηση ημερομηνία"" με βάση την ημερομηνία λήξης. Ένα ζευγάρι των απόψεων που λειτουργεί σε συνδυασμό με μια λίστα KPI για να τονίσει αυτές τις συνθήκες, όταν οι χρήστες χτύπησε τους Αρχική σελίδα.

Αυτή η στρατηγική δεν λειτουργεί όταν φορτώσετε ένα έγγραφο.

Μπορώ να φορτώσω το έγγραφο και να είμαι παρουσιάζονται με τη οθόνη εισόδου δεδομένων meta. Σε αυτό το σημείο, Είμαι ήδη σε μπελάδες. SharePoint έχει ήδη, πρόωρα από την πλευρά μου, Απολύομαι τη ροή εργασίας. Δεν είχα την ευκαιρία να πάρει τον σωστό τύπο περιεχομένου ουτε την αναθέτει μια Ημ/νία παράδοσης. Την ίδια στιγμή, η ροή εργασίας δεν φωτιά όταν χτύπησα το κουμπί Υποβολή αυτή τη στιγμή. Υπάρχει κάποια ενσωματωμένη λογική ότι «πιστεύει" που πρώτα θα υποβάλουν εντάσσεται η "δημιουργία" εκδήλωση. Έτσι … ροή εργασίας μου απέλυσε και πότε να εκτελεστεί, πέρασε προεπιλεγμένες τιμές δεδομένων meta.

Το καλύτερο έργο-γύρω που ξέρω είναι να εισαγάγετε μια παύση"μέχρι" δραστηριότητα στη ροή εργασίας. Έχω την παύση της ροής εργασίας για 1 λεπτό. Ενώ αυτό παύση, Επιλέγω το σωστό τύπο περιεχομένου, εισάγετε το meta-στοιχεία. Ολοκληρώνει την παύση και τη ροή εργασίας προχωρά όπως απαιτείται. (Σημειώστε ότι στο περιβάλλον μου, χρονόμετρο δραστηριότητες ροής εργασίας από SPD δεν λειτουργούν έξω από το κουτί. Μπορεί να έχετε το ίδιο πρόβλημα. Δείτε Εδώ για περισσότερες λεπτομέρειες).

Δεν μου αρέσει "μαγικό καθυστέρηση" έργο-γύρω. Τι θα συμβεί αν ο χρήστης αποστέλλει ένα έγγραφο και χτυπάει το τηλέφωνο και η επακόλουθη συζήτηση ξεπερνά την παύση? Μπορώ να κάνω την παύση μεγαλύτερη, αλλά ακόμα δεν το συμπαθώ.

Έγραψα για αυτό στο φόρουμ MSDN εδώ: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2430725&SiteID=1

Αστάρι βασικές αρχές ασφαλείας του SharePoint / Αποφύγετε πολλές συνηθισμένες παγίδες

Η ΕΝΗΜΕΡΩΜΈΝΗ ΈΚΔΟΣΗ 12/18/07: Δείτε το άρθρο του Paul Liebrand για κάποιες τεχνικές συνέπειες της αφαίρεση ή τροποποίηση στα προεπιλεγμένα ονόματα ομάδας (Δείτε το παρακάτω σχόλιο καθώς και).

Επισκόπηση:

Ασφαλείας του SharePoint είναι εύκολο να ρυθμίσετε και να διαχειριστείτε. Ωστόσο, έχει αποδειχθεί ότι είναι δύσκολο για κάποιο πρώτους διαχειριστές να πραγματικά να τυλίξει τα χέρια τους γύρω από αυτό. Δεν είναι μόνο ότι, Έχω δει μερικοί διοικητές που έρχονται σε μια τέλεια κατανόηση τη Δευτέρα μόνο για να έχουν χάσει μέχρι την Παρασκευή επειδή δεν έχουν να κάνουν οποιαδήποτε ρύθμιση παραμέτρων στο μεσοδιάστημα. (Ομολογώ να έχουν αυτό το πρόβλημα ο ίδιος). Αυτό το ιστολόγιο εισόδου Ας ελπίσουμε ότι παρέχει έναν χρήσιμο SharePoint ασφαλείας εγχυτήρα και σημεία προς ορισμένες βέλτιστες πρακτικές ρυθμίσεις ασφαλείας.

Σημαντική σημείωση:

Αυτή η περιγραφή είναι με βάση έξω από το πλαίσιο ασφαλείας του SharePoint. Η προσωπική μου εμπειρία είναι προσανατολισμένη γύρω από τα ΒΡΎΑ, έτσι μπορεί να υπάρξει κάποια το ΒΡΎΟ συγκεκριμένα πράγματα εδώ, αλλά πιστεύω ότι είναι ακριβή για WSS. Ελπίζω ότι βλέποντας οποιαδήποτε λάθη ή παραλείψεις θα επισημάνω ότι στα σχόλια ή email μου. Θα σας κάνω διορθώσεις ειπείν.

Βασικές αρχές:

Για τους σκοπούς αυτής της επισκόπησης, Υπάρχουν τέσσερις θεμελιώδεις πτυχές ασφάλειας: Οι χρήστες/ομάδες, ασφαλιζόμενα αντικείμενα, επίπεδα δικαιωμάτων και κληρονομικότητα.

Χρήστες και ομάδες σπάσει προς τα κάτω για να:

  • Μεμονωμένους χρήστες: Τράβηξε από ενεργό κατάλογο ή δημιουργήθηκε απευθείας στο SharePoint.
  • Ομάδες: Αντιστοιχισμένα απευθείας από την υπηρεσία καταλόγου active directory ή δημιουργήθηκε το SharePoint. Ομάδες είναι μια συλλογή των χρηστών. Ομάδες είναι παγκόσμια σε μια συλλογή τοποθεσιών. Ποτέ δεν «δετική" σε ένα συγκεκριμένο ασφαλιζόμενο αντικείμενο.

Ασφαλιζόμενα αντικείμενα σπάσει προς τα κάτω για τουλάχιστον:

  • Τοποθεσίες
  • Βιβλιοθήκες εγγράφων
  • Μεμονωμένα στοιχεία σε λίστες και βιβλιοθήκες εγγράφων
  • Φάκελοι
  • Διάφορες ρυθμίσεις BDC.

Υπάρχουν άλλα ασφαλιζόμενα αντικείμενα, αλλά μπορείτε να πάρετε την εικόνα.

Επίπεδα δικαιωμάτων: Μια δέσμη των κοκκώδη / χαμηλό επίπεδο πρόσβασης δικαιωμάτων που περιλαμβάνουν τέτοια πράγματα όπως Δημιουργήστε/Διαβάστε/διαγράψτε καταχωρήσεις σε λίστες.

Κληρονομικότητα: Από προεπιλογή, οντότητες κληρονομούν τις ρυθμίσεις ασφαλείας από τους αντικειμένου που περιέχει. Δευτερεύουσες τοποθεσίες που κληρονομούν δικαιώματα από το γονικό τους. Βιβλιοθήκες εγγράφων που κληρονομούν από το site τους. Ούτω καθεξής και ούτω καθεξής.

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

Τους σημαντικότερους κανόνες ασφαλείας για την κατανόηση, Ever 🙂 :

  1. Ομάδες είναι απλώς συλλογές των χρηστών.
  2. Ομάδες, είναι παγκόσμια μέσα σε μια συλλογή τοποθεσιών (ήτοι. δεν υπάρχει κανένα τέτοιο πράγμα όπως μια ομάδα που ορίζονται σε επίπεδο τοποθεσίας).
  3. Όνομα ομάδας, δεν αντέχουν, ομάδες δεν, μέσα και τον εαυτό τους, έχουν τις ειδικές επίπεδο ασφαλείας.
  4. Ομάδες έχουν ασφάλεια στο πλαίσιο της ένα συγκεκριμένο ασφαλιζόμενο αντικείμενο.
  5. Μπορεί να μπορείτε να αντιστοιχίσετε διαφορετικά επίπεδα δικαιωμάτων στην ίδια ομάδα για κάθε ασφαλιζόμενο αντικείμενο.
  6. Πολιτικές εφαρμογής Web ατού όλα αυτά (Δείτε παρακάτω).

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

Κοινές παγίδες:

  • Ονόματα ομάδων υπονοεί άδεια: Από το κουτί, SharePoint καθορίζει ένα σύνολο των ομάδων, των οποίων το όνομα υπονοεί μια εγγενή επίπεδο ασφάλειας. Θεωρούν την ομάδα "Συνεργάτη". Καλά, ένα δεν είναι εξοικειωμένοι με το SharePoint ασφαλείας μπορεί να εξετάσουμε αυτό το όνομα και να υποθέσουμε ότι κάθε μέλος αυτής της ομάδας μπορεί να «συμβάλει" σε κάθε site/λίστα/βιβλιοθήκη στην πύλη. Που μπορεί να είναι αλήθεια αλλά όχι επειδή το όνομα της ομάδας που συμβαίνει να είναι "συνεργάτη". Αυτό ισχύει μόνο από το κουτί γιατί η ομάδα έχει προσφέρει ένα επίπεδο δικαιωμάτων που τους δίνει τη δυνατότητα να προσθέσετε/επεξεργαστείτε/διαγράψετε περιεχόμενο στην περιοχή ρίζας. Μέσω κληρονομιάς, Οι συνεισφέροντες"" ομάδα μπορεί επίσης να προσθέσετε/επεξεργαστείτε/διαγράψετε περιεχόμενο σε κάθε υπο-site. Μπορεί να "σπάσει κάποιος" την κληρονομιά αλυσίδα και αλλαγή το επίπεδο δικαιωμάτων από μια δευτερεύουσα τοποθεσία ότι μέλη του το λεγόμενο "συνεισφέρων" Ομάδα δεν μπορεί να συμβάλει σε όλα, αλλά μόνο διαβάσει (για παράδειγμα). Αυτό δεν θα ήταν μια καλή ιδέα, προφανώς, Δεδομένου ότι θα είναι πολύ συγκεχυμένη.
  • Ομάδες δεν έχουν οριστεί σε επίπεδο τοποθεσίας. Είναι εύκολο να μπερδευτείτε από το περιβάλλον εργασίας χρήστη. Η Microsoft παρέχει μια βολική σύνδεση με το χρήστη/ομάδα διαχείρισης μέσω κάθε περιοχή "άτομα και ομάδες" σύνδεση. Είναι εύκολο να πιστέψει κανείς ότι όταν είμαι στο site "xyzzy" και μπορώ να δημιουργήσω μια ομάδα μέσω του xyzzy άνθρωποι και ομάδες σύνδεση που έχω μόλις δημιουργήσει μια ομάδα που υπάρχει μόνο στο xyzzy. Αυτό δεν συμβαίνει. Πραγματικά έχω δημιουργήσει μια ομάδα για τη συλλογή του ολόκληρο το site.
  • Ομάδες μελών να μην αποκλίνει από την ιστοσελίδα (ήτοι. το ίδιο είναι παντού Ομίλου χρησιμοποιείται): Εξετάσει η ομάδα ιδιοκτήτης"" και δύο τοποθεσίες, "HR" και "Logistics". Θα ήταν φυσιολογικό να σκεφτείτε ότι δύο άτομα ξεχωριστά θα ιδίων αυτές τις τοποθεσίες — ιδιοκτήτης ΥΕ και ένας ιδιοκτήτης Logistics. Το περιβάλλον εργασίας χρήστη το καθιστά εύκολο για ένα διαχειριστή για την ασφάλεια να χειρίζομαι αυτό το σενάριο. Αν δεν ήξερα καλύτερα, Μπορεί να έχω πρόσβαση σε συνδεσμους άτομα και ομάδες, μέσω της ιστοσελίδας του HR, Επιλέξτε "ιδιοκτήτες" ομάδα και να προσθέσετε μου HR ιδιοκτήτης σε αυτή την ομάδα. Ένα μήνα αργότερα, Logistics έρχεται στη γραμμή. Έχω πρόσβαση άτομα και ομάδες από το χώρο των Logistics, Προσθέστε έλξης μέχρι οι ιδιοκτήτες"" Ομάδα. Δείτε τον ιδιοκτήτη HR εκεί και να απομακρύνει, σκέφτεται ότι είμαι απομάκρυνση της από ιδιοκτήτες επί του τόπου της εφοδιαστικής. Στην πραγματικότητα, Είμαι απομάκρυνση της από την παγκόσμια ομάδα ιδιοκτητών. Ακολουθεί ιλαρότητα.
  • Παραλείποντας να όνομα ομάδες με βάση το συγκεκριμένο ρόλο: Οι υπεύθυνοι έγκρισης"" ομάδα είναι ένα τέλειο παράδειγμα. Τι μπορώ να μέλη του αυτή έγκριση ομάδας? Όπου μπορεί να την επικυρώνουν? Θέλω πραγματικά τμήμα Logistics τους ανθρώπους να είναι σε θέση να εγκρίνει έγγραφα της HR? Φυσικά δεν. Πάντα το όνομα ομάδες με βάση το ρόλο τους μέσα στην οργάνωση. Αυτό θα μειώσει τον κίνδυνο ότι η ομάδα έχει εκχωρηθεί ένα επίπεδο ακατάλληλη δικαιωμάτων για ένα συγκεκριμένο ασφαλιζόμενο αντικείμενο. Όνομα ομάδες με βάση την προβλεπόμενη ρόλο τους. Στο προηγούμενο σενάριο HR/Logistics, Θα πρέπει να έχουν δημιουργηθεί δύο νέες ομάδες: "HR ιδιοκτήτες" και «Logistics ιδιοκτήτες" και να αναθέσετε επίπεδα για κάθε τεχνολογία λογική άδεια και το ελάχιστο ποσό που απαιτείται για εκείνους τους χρήστες να κάνουν τη δουλειά τους.

Άλλες χρήσιμες αναφορές:

Αν έχετε κάνει αυτό μακριά:

Παρακαλώ επιτρέψτε μου να γνωρίζω τις σκέψεις σας μέσω σχόλια ή email μου. Αν γνωρίζετε άλλες καλές αναφορές, παρακαλώ να κάνει το ίδιο!

Technorati Tags:

Γρήγορη και εύκολη: Δημιουργήσετε ένα τμήμα Web προβολής δεδομένων (DVWP)

Υπάρχει ένας πλούτος των μεγάλων πληροφοριών για το WSS 3.0 Τμήμα Web προβολής δεδομένων (DVWP) στο Διαδίκτυο από διάφορες πηγές. Ωστόσο, Μου φάνηκε να είναι εκπληκτικά δύσκολο να βρείτε πληροφορίες σχετικά με αυτό το πολύ βασικό πρώτο βήμα. Εδώ είναι ένα άλλο άρθρο στην "γρήγορη και εύκολη" σειρά για την αντιμετώπισή.

Ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε ένα τμήμα web προβολής δεδομένων (DVWP). Βασίζονται σε ένα "ανακοινώσεις" Τμήμα Web, αλλά ισχύει για περισσότερες λίστες.

  1. Δημιουργία ενός τμήματος web με ανακοινώσεις και να προσθέσετε σε μια τοποθεσία.
  2. Ανοίξτε την τοποθεσία στο SharePoint Designer.
  3. Ανοίξτε το site της default.aspx.
  4. Επιλέξτε το τμήμα web ανακοινώσεις και κάντε δεξί κλικ.
  5. Από το μενού περιβάλλοντος, Επιλέξτε "μετατροπή σε XSLT προβολή δεδομένων".

SharePoint Designer σας ειδοποιεί ότι αυτό το site είναι τώρα προσαρμοσμένη από τον ορισμό τοποθεσίας. Αυτό δεν είναι απαραίτητα κακό, αλλά υπάρχουν σημαντικές επιπτώσεις (απόδοση, αναβάθμιση, άλλοι) που είναι πέρα από το πεδίο αυτό λίγο "γρήγορη και εύκολη" εγγραφή. Για περισσότερες πληροφορίες σχετικά με το θέμα, Θα ήθελα να συστήσω δύο βιβλία Εδώ καθώς και σας αγαπημένο αναζήτησης στο Διαδίκτυο.

Επιβεβαιώσετε ότι θα το έκανε σωστά:

  1. Κλείστε και ανοίξτε πάλι το πρόγραμμα περιήγησης web (για την αποφυγή κατά λάθος εκ νέου απόσπαση Αρχική "add ένα νέο τμήμα web").
  2. Επιλέξτε το τμήμα web βέλος αναπτυσσόμενης και επιλέξτε "τροποποίηση κοινόχρηστου τμήματος Web" από το μενού.
  3. Το εργαλείο πάνελ που ανοίγει προς τα δεξιά.
  4. Πίνακα έχει αλλάξει από τη συνηθισμένη ρύθμιση επιλογών σε αυτό:
εικόνα

“Δεν μπορεί να πάρει η ιδιότητα στήλη χρονοδιάγραμμα λίστα από τη λίστα του SharePoint” — Περιγραφή/εργασία-arounds

Αυτή την εβδομάδα, Εμείς τέλος αναπαράγεται ένα πρόβλημα που είχε αναφερθεί από έναν απομακρυσμένο χρήστη: Όταν προσπάθησε να εξαγάγετε τα περιεχόμενα ενός καταλόγου για να υπερέχετε, τα πράγματα φαίνεται να αρχίσουν να εργάζονται, αλλά τότε το Excel θα σκάσει επάνω ένα λάθος: «Δεν μπορώ να πάρω την ιδιότητα στήλη σχήματος λίστα από τη λίστα του SharePoint». Έτρεχε γραφείο 2003, Windows XP και συνδέεστε με ΒΡΎΑ.

Έψαξα το Ίντερνετ και είδε κάποια κερδοσκοπία αλλά τίποτα 100% οριστική. Ως εκ τούτου, αυτό το post.

Το πρόβλημα: Εξαγωγή ενόψει του excel που περιέχει μια ημερομηνία (ημερομηνία = ο τύπος δεδομένων της στήλης).

Τι λειτούργησε για μας: Μετατρέψτε την ημερομηνία σε μια «ενιαία γραμμή του κειμένου". Στη συνέχεια, μετατρέψετε πίσω σε μια ημερομηνία.

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

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

Άλλες αναφορές:

http://www.kevincornwell.com/blog/index.php/cannot-get-the-list-schema-column-property-from-the-sharepoint-list/

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2383611&SiteID=1

<Τέλος>

Εγγραφείτε στο blog μου.

Technorati Tags: ,

Γρήγορη και απλή: Στείλτε ένα μήνυμα ηλεκτρονικού ταχυδρομείου με ενσωματωμένο υπερ-σύνδεση από ροή εργασίας του SharePoint Designer

Μία ή δύο φορές το μήνα, κάποιος τοποθετεί μια ερώτηση φόρουμ: "Πώς μπορώ να συμπεριλάβω υπερ-συνδέσεις σε URL που είναι clickable από ένα ηλεκτρονικό ταχυδρομείο του SharePoint Designer?"

Παρουσιάζονται χωρίς περαιτέρω σχόλια: (καλά, στην πραγματικότητα υπάρχει περαιτέρω σχόλιο μετά από την εικόνα):

εικόνα

Becky Isserman ακολουθεί με μια χρήσιμη εξήγηση για το πώς να ενσωματώσει μια σύνδεση σε ένα στοιχείο στο ηλεκτρονικό ταχυδρομείο: http://www.sharepointblogs.com/mosslover/archive/2007/11/20/addition-to-paul-galvin-s-post-about-sending-an-e-mail-with-hyperlinks-in-spd.aspx

Νέα έκδοση: Επεκτάσεις ροής εργασίας του SharePoint Designer (λειτουργίες χειρισμού string)

Η ΕΝΗΜΕΡΩΜΈΝΗ ΈΚΔΟΣΗ: Δείτε εδώ για τις σκέψεις μου για την εμπορευματοποίηση αυτού του έργου: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Έχω ήδη απασχολημένος που εργάζονται για το έργο μου Codeplex, η οποία είναι επί του παρόντος επικεντρώνεται στην παροχή string χειραγώγησης επεκτάσεις σε ροές εργασιών που δημιουργήθηκε μέσω του SharePoint Designer.

Δείτε εδώ για λεπτομέρειες:

Σπίτι του έργου: http://www.codeplex.com/spdwfextensions

Απελευθέρωση: https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=spdwfextensions&ReleaseId=8280

Έκδοση 1.0 περιλαμβάνει τα ακόλουθα νέα χαρακτηριστικά:

Λειτουργία Περιγραφή (Αν δεν ίδια ως λειτουργία .net)
NUM-εγγραφές() Επιστρέφει ο αριθμός "καταχωρήσεις" σε μια συμβολοσειρά σύμφωνα με ένα καθορισμένο οριοθέτη.

Για παράδειγμα: NUM-εγγραφές σε μια συμβολοσειρά "a,β,c" με διαχωριστικό"," = 3.

Εγγραφή() Αποδίδει το νιοστό διακριτικό μιας συμβολοσειράς σύμφωνα με ένα καθορισμένο οριοθέτη.
Μήκος String.Length
Αντικατάσταση() String.Replace()
Περιέχει() String.Contains()
Επιστρέφει τη λέξη "true" ή τη λέξη "ΛΑΘΟΣ".
Δευτερεύουσα συμβολοσειρά(έναρξη) String.Substring(έναρξη)
Δευτερεύουσα συμβολοσειρά(έναρξη,μήκος) String.Substring(έναρξη,μήκος)
ToUpper() String.ToUpper()
ToLower() String.ToLower()
StartsWith() String.StartsWith()
Επιστρέφει τη λέξη "true" ή τη λέξη "ΛΑΘΟΣ".
EndsWith() String.EndsWith()
Επιστρέφει τη λέξη "true" ή τη λέξη "ΛΑΘΟΣ".

Σφάλμα χρόνου εκτέλεσης BDC εξήγησε

Μου προκάλεσε ένα σφάλμα BDC αυτή την εβδομάδα το που εκδηλώθηκε στη διεπαφή χρήστη και εν τη 12 Κυψέλη καταγραφής κατά το χρόνο εκτέλεσης.

Πρώτη, αυτό εμφανίστηκε στο περιβάλλον εργασίας χρήστη:

Δεν ήταν δυνατή η εύρεση πεδίων για εισαγωγή όλων των τιμών αναγνωριστικού για τη σωστή εκτέλεση μιας Εμφάνισης_μεθόδου Ειδικής_εύρεσης με όνομα … Εξασφαλιστεί παράμετροι εισαγωγής έχουν TypeDescriptors συσχετισμένους με κάθε αναγνωριστικό που έχει οριστεί για αυτή την οντότητα.

Εδώ είναι ένα στιγμιότυπο οθόνης:

clip_image001

Μπορούσε, επίσης, να προκαλέσει αυτό το μήνυμα να εμφανίζεται σε το 12 Κυψέλη καταγραφής στο θα (χρησιμοποιώντας μου κατοχυρωμένη με δίπλωμα ευρεσιτεχνίας high-tech-don't-try-this-at-home "μυστηριώδεις λάθη" μέθοδος):

11/14/2007 09:24:41.27 W3wp.exe (0x080C) 0x0B8C του SharePoint Portal Server επιχειρηματικών δεδομένων υψηλής εξαίρεση 6q4x στο BusinessDataWebPart.OnPreRender: System.InvalidOperationException: Η τιμή του αναγνωριστικού ”, τύπου ”, δεν είναι έγκυρη. Αναμενόμενη τιμή αναγνωριστικού του τύπου 'System.String'. στο Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific(Αντικείμενο[] subIdentifierValues, LobSystemInstance lobSystemInstance) στο Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity(Οντότητα οντότητα, Αντικείμενο[] userValues, LobSystemInstance lobSystemInstance) στο Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Προβολή desiredView) στο Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() στο Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

Έψαξα γύρω και βρήκα μερικές οδηγεί σε το Φόρουμ MSDN, αλλά δεν ήταν αρκετό για μένα να καταλάβω τι έκανα λάθος. Είδα μια εκπομπή στο Web με TED Pattison που μου εταιρεία έχει squirreled μακριά σε ένα διακομιστή και ήρθε να συνειδητοποιήσει το πρόβλημα μου.

Στο ADF μου, Είμαι σύνδεση σε μια βάση δεδομένων SQL, όπως φαίνεται:

            <Ιδιότητα Όνομα="RdbCommandText" Τύπος="System.String">
              <![CDATA[
                ΕΠΙΛΈΞΤΕ SETID, CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
                      ΧΏΡΑ, ΔΙΕΎΘΥΝΣΗ1, 2Η ΔΙΕΎΘΥΝΣΗ, ADDRESS3, ADDRESS4, ΠΌΛΗ, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      ΚΟΜΗΤΕΊΑ, ΚΡΆΤΟΣ, ΤΑΧΥΔΡΟΜΙΚΉ, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, ΤΗΛΈΦΩΝΟ, ΕΠΈΚΤΑΣΗ, ΦΑΞ, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG από dbo.PS_CARRIER_ID_VW με (nolock)
                ΌΠΟΥ
                  (SETID <> "ΜΕΤΟΧΉ") και
                  (χαμηλότερη(CARRIER_ID) >= κάτω(@MinId)) και
                  (χαμηλότερη(CARRIER_ID) <= κάτω(@MaxId)) και
                  (χαμηλότερη(DESCR) ΉΘΕΛΑ να κατώτερο(@InputDescr))
                ]]>
            </Ιδιότητα>

Έδωσα ήταν ότι SQL από ένα πρόσωπο DBA και αν κατάλαβα καλά, ότι είναι ένα ειδική Προβολή δημιούργησαν μόνο για μένα. Το μοναδικό κλειδί, εκεί είναι CARRIER_ID.

Εδώ είναι το ζωύφιο που εισήγαγα:

      <Αναγνωριστικά>
        <Αναγνωριστικό Όνομα="CARRIER_ID" Όνομα τύπου="System.String" />
        <Αναγνωριστικό Όνομα="DESCR" Όνομα τύπου="System.String" /> 
</Αναγνωριστικά>

Κάπου κατά μήκος της γραμμής, Είχα καταφέρει να συγχέουμε τον εαυτό μου πάνω από την έννοια του <Αναγνωριστικά> και πρόσθεσε DESCR, ακόμα κι αν δεν είναι στην πραγματικότητα ένα αναγνωριστικό. Πήρα DESCR από τα αναγνωριστικά σύνολο και presto! Δούλεψε όλα.

Ελπίζω να σώσει κάποιον κάποια θλίψη 🙂

Technorati Tags: , , ,