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

Ο γιος μου Hacked Gamespot

Έτσι, σήμερα το πρωί, ο γιος μου είναι αποφασισμένη να θέσει ένα ηλικία-δεκατρία περιορίζεται φωτοστέφανο 3 βίντεο στο Gamespot. Είμαι έξω από φτυαρίζει το χιόνι, έτσι δεν είμαι εκεί για να βοηθήσει ή να εμποδίσει. Αναγκαιότητα είναι η μητέρα της εφεύρεσης, και όλα αυτά … έχει ένα ΕΥΡΗΚΑ! στιγμή. Καταλαβαίνει ότι αν και Gamespot θέλει να εισέλθει το του πραγματική ημερομηνία γέννησης, στην πραγματικότητα μπορεί να εισέλθει κάθε ημερομηνία γέννησης που θέλει. Μόλις κατάλαβε ότι, έκανε τον εαυτό του αρκετά μεγάλος για να δείτε το βίντεο.

I’m not quite sure how I feel about this 🙂

Κυριακή αστεία: “Είναι εκτύπωση σκουπίδια”

Κατά την πρώτη μου δουλειά από το κολλέγιο στο 1991, Ήμουν τυχερός να λύνω για μια κατασκευαστική εταιρεία με 13 τοποθεσίες, εξαιρέσει τις εταιρικές HQ στο Νιου Τζέρσεϊ. Μπήκα μόνο όταν η εταιρεία τροχαίο έξω έναs καινούργιος σύστημα ERP. Ήμασταν ένα μικρό τμήμα του περίπου δέκα άτομα συνολικά, δύο από τους οποίους δεν ταξίδεψαν. Μέρος του έργου αφορούσε την αντικατάσταση σύστημα IBM 36 κουτιά με υλικό HP και HPUX. Ο καθένας που χρησιμοποιείται για πρόσβαση στο σύστημα Πράσινοι σωλήνες.

Το έργο κυλά κατά μήκος και να είμαι έστειλα στη Βαλτιμόρη με ένα νέο συνάδελφο, Jeff. Μας δουλειά ήταν στην εξουσία μέχρι το κουτί του Unix, Βεβαιωθείτε ότι έτρεχε το o/s, εγκατάσταση του συστήματος ERP, ρύθμιση παραμέτρων ERP, εκπαιδεύσουμε τους ανθρώπους σχετικά με το ERP και κάνει την εργασία συνήθειας για τους λαούς επί τόπου. (Αυτό ήταν μια δουλειά των ονείρων, Ειδικά βγαίνει κατευθείαν από το κολέγιο). Πριν θα μπορούσαμε να πάρουμε πραγματικά από το έδαφος, Χρειαζόμασταν για να αποσυμπιέσετε όλα τα πράσινα σωλήνες, βάζουμε στα γραφεία και τα σύρματα. Και το καλύτερο μέρος ήταν ότι θα έπρεπε να θέσει το βύσμα RJ11 για τους εαυτούς μας.

Για κάποιο λόγο που ποτέ δεν κατάλαβα και στην πραγματικότητα ποτέ δεν σκέφτηκα να ρωτήσω σχετικά με τη στιγμή, είχαμε κάποια αναθέτουσα εταιρεία έρθει και να τρέξει το καλώδιο σε όλες τις εγκαταστάσεις, αλλά δεν είχαμε να τους βάλει στην υποδοχές. Έτσι, υπήρχε ένα κουτί patch"" με δεκάδες unlabeled καλωδίων στο δωμάτιο υπολογιστών"" και αυτά που snaked γύρω από το κτίριο σε διάφορα μέρη στο κτίριο.

Δουλέψαμε δρόμο μας μέσα από αυτό κατά τη διάρκεια ενός Σαββατοκύριακου, δοκιμή κάθε σύρμα, τοποθέτηση σε μια γραμμή σύνδεσης (σιγουρεμένος ήταν ευθεία vs. διέσχισε), εξασφαλίζοντας τις ρυθμίσεις κομμάτι πράσινο σωλήνες και εκτυπωτές ήταν σωστές, επισήμανση καλώδια, σιγουρεμένος ότι getty"" έτρεχε σωστά για κάθε λιμάνι και πιθανώς χίλια άλλα πράγματα, ότι εγώ έχω καταστέλλεται από τότε. Όλα ήρθε μαζί αρκετά ωραία.

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

Αν δεν το ξέρετε, ή έχουν στραγγαλίσει, αντιμετώπιση Πράσινοι σωλήνες και εκτυπωτές με αυτό τον τρόπο, Υπάρχουν διάφορες επιλογές που μπορείτε να ασχοληθεί με ορίζοντας καρφίτσες διάφορα. 8-bit, 7-bit, ισοτιμία (ακόμα και/περίεργο/κανένας), πιθανώς άλλοι. Εάν μπορείτε να πάρετε μία από αυτές τις ρυθμίσεις λάθος, το σωλήνα ή εκτυπωτή εξακολουθεί να δείχνει πράγματα, αλλά θα είναι συνολικό ασυναρτησίες, ή θα είναι στο μεταξύ ασυναρτησίες με πολλά αναγνωρίσιμα πράγματα. Φυσικά, αυτές τις καρφίτσες είναι δύσκολο να δείτε και να πρέπει να καθοριστεί χρησιμοποιώντας μια μικρή επίπεδη άκρη κατσαβίδι. Και ποτέ δεν είναι τυποποιημένα.

Έχουμε δημιουργήσει το πρώτο από τα πολλά τηλεφωνήματα γρήγορη με τον τύπο NJ (ένα hater υπολογιστών που πιθανώς κατάρες μας σε αυτήν την ημέρα). Πήραμε το πράσινος σωλήνας, εργάζονται αρκετά γρήγορα, αλλά δεν μπορούσα να πάρω τον εκτυπωτή για να λειτουργήσει. Κράτησε "εκτύπωσης σκουπίδια". Θα μπορούσαμε να δημιουργήσουμε ένα νέο βύσμα RJ11, εναλλαγή μεταξύ τεμνόμενες και ευθεία. Εμείς θα διαγράψετε το λιμάνι και να αναδημιουργηθούν, στο Unix. Περάσαμε από το επίπονο έργο της βάζοντάς το να μας εξηγήσει τη διαμόρφωση καρφίτσα στον εκτυπωτή, ποτέ δεν είναι πραγματικά βέβαιος εάν έκανε σωστά.

Είναι πλέον καιρός να βγει στον αέρα, τα πάντα στη Βαλτιμόρη βουίζει, αλλά δεν μπορούμε να έχουμε τον καταραμένο εκτυπωτή στο NJ λύνω! Εμείς έχετε εξαντλήσει όλες τις δυνατότητες εκτός από την οδήγηση πίσω μέχρι NJ στην εργασία στον εκτυπωτή στο πρόσωπο. Να αποφύγει όλα ότι η οδήγηση, Ζητούμε, τέλος, τον στο fax μας από τι παίρνει όταν είναι "σκουπίδια", ελπίζοντας ότι ίσως θα υπάρξει κάποια ένδειξη στο ότι τα σκουπίδια που θα μας πει τι κάνουμε λάθος.

Όταν πήραμε το φαξ, εμείς αμέσως θα ήξερε τι ήταν λάθος. Δείτε, μας μέθοδος δοκιμής αν θα είχε ρυθμίσει έναν εκτυπωτή σωστά ήταν να εκδώσει ένα lp"" εντολή όπως αυτή:

LP/etc/passwd

Βασικά, εκτυπώσαμε το αρχείο κωδικού πρόσβασης unix. Είναι πάντα παρόντες και από το κουτί, πάντα μόνο μία σελίδα. Σας πρότυπο κωδικό πρόσβασης αρχείο Unix φαίνεται κάτι σαν αυτό:

Σμιθ:*:100:100:8A-74(γραφείο):/σπίτι/Σμιθ:/τα usr/bin/sh:*:200:0::/σπίτι/τα:/usr/bin/sh  

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

</Τέλος>

Ακόμα ένα άλλο δίκτυο πιστοποιήσεις Multi-Challenge ζήτημα και λύση

Πελάτης μου εγκαταστήσει πρόσφατα μια μαγικό συσκευή από Αρκεύθου που προφανώς αντικατέστησε τους παλιά Cisco δίκτυο φόρτου (NLB). Σε περίπου την ίδια στιγμή, εγκαταστήσαμε ένα επείγουσα επιδιόρθωση για να αντιμετωπίσει ένα πρόβλημα ροής εργασίας.

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

Αποδείχθηκε ότι Juniper είχε κάποια ρύθμιση συμπίεσης. Ένα από τα ενδεδυμένος στοιχεία στο δίκτυο ομάδα ανατρέπεται αυτός συμψηφισμούς. Που λυθεί το πρόβλημά μας.

Αυτό δεν είναι η πρώτη φορά που η συμπίεση έχει την αιτία ενός προβλήματος SharePoint για μένα. IIS συμπίεσης επηρεάζεται αρνητικά ένα 3ο κόμμα εργαλείο από τους καλούς ανθρώπους στο The Dot Net εργοστάσιο για IE 6 προγράμματα περιήγησης (IE 7 προγράμματα περιήγησης που λειτούργησε χωρίς δυσκολία).

Έτσι, Προσθέστε "συμπίεση" στον κατάλογο των κινδύνων.

</Τέλος>

Πιστωτική για: http://www.elfwood.com/art/s/h/sherry/death_colour.jpg.html

Σκέψεις σχετικά με την αλλαγή Blogging πλατφόρμα

Ξεκίνησα να μου καριέρα blogging»" χρησιμοποιώντας την πλατφόρμα της Microsoft, και αυτό ήταν καλό για μένα. Είναι εύκολο να δημοσιεύσετε, υπάρχουν καλές επιλογές και widgets για τη διαχείριση σας «διάστημα», αξιοπρεπή web αποθήκευσης και ούτω καθεξής.

Ωστόσο, Πραγματικά μόλις έπεσε η MS λύση με σχεδόν κανέναν προγραμματισμό. Ότι μόνο κλήσεις για μένα να αξιολογήσει πού είμαι και πού θα είμαι, από την άποψη της μια blogging πλατφόρμα. Υπάρχουν επίσης δύο σημαντικούς περιορισμούς που με ενοχλεί δεξιά τώρα vis-à-vis Windows Live Spaces.

Πρώτη, Λοξοτομώ παίρνω πολύ καλές στατιστικές. Υπάρχουν στατιστικά, αλλά η λεπτομέρεια είναι συχνά περικοπεί και δεν παρουσιάζονται με τρόπο που επιτρέπει για οποιοδήποτε είδος της ανάλυσης. Υπάρχει καμία δυνατότητα διαλογής ή εξαγωγής. Έχω πολλές ιδέες blog με βάση το είδος των πληροφοριών που άνθρωποι βρίσκουν (ή ειδικά αποτυγχάνουν να βρουν) όταν ψάχνουν για το blog μου. Είναι πολύ δύσκολο να χρησιμοποιήσετε διαστήματα ζωές για αυτό.

Δεύτερη, δεν φαίνεται να είναι κάποιος μηχανισμός «μεγαλύτερο κέρδος" ένα windows live χώρο blog. Στην πραγματικότητα, για να απαλλαγείτε από τις διαφημίσεις MS (από την οποία μου τις επωφελείται δεν), Θα πρέπει να καταβάλλουν πράγματι την Microsoft. (Τουλάχιστον, Ιδού πώς αντιλαμβάνομαι; Δεν ήταν σε θέση να πάρετε οριστικές απαντήσεις σ ' αυτό και θέματα όπως αυτό).

Τώρα που έχω ένα καθιερωμένο μοτίβο και το σύνολο του blogging συνήθειες, Θέλω να αξιολογήσω άλλες επιλογές. Έχω κάνει κάποια έρευνα και υπάρχουν πολλές επιλογές, αλλά είμαι περίεργος τι άλλα άτομα, ιδιαίτερα τα άλλα στην Κοινότητα SharePoint (ως αναγνώστες ή bloggers), ήθελα να το χρησιμοποιήσετε.

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

Ευχαριστώ!

<Τέλος />

Technorati Tags:

Στέλνει Email SharePoint Designer ???? σε ένα μήνυμα ηλεκτρονικού ταχυδρομείου

Κατά καιρούς ζητήσει από τους χρήστες του φόρουμ: Γιατί θέτει το SharePoint Designer ???? στο ηλεκτρονικό ταχυδρομείο μου αντί μια τιμή πεδίου?

Ένας λόγος που συμβαίνει αυτό είναι γιατί η μεταβλητή που αναφέρατε είναι null.

Αυτό μπορεί να συμβεί επειδή προσπαθείτε να αναφοράς ένα πεδίο από το τρέχον στοιχείο"" αλλά ο χρήστης δεν τέθηκε ποτέ μια τιμή σε αυτό το πεδίο φόρμας.

<Τέλος />

Συγκρίνετε / Δοκιμή για κενό ημερομηνίες σε ροή εργασίας του SharePoint Designer

Σενάριο: Σε μια ροή εργασίας του SharePoint Designer, θα πρέπει να καθοριστεί αν ένα πεδίο ημερομηνίας είναι κενό.

Πρόβλημα: SPD δεν παρέχει μια άμεση μέθοδο για να συγκρίνετε τις ημερομηνίες σε οτιδήποτε άλλο εκτός από μια ημερομηνία. Δεν μπορείτε να δημιουργήσετε μια κατάσταση όπως αυτή: "Αν [DateField] ισούται με κενό".

Λύση: Μετατρέψετε της ημερομηνίας σε συμβολοσειρά. Χρησιμοποιήστε σύγκρισης συμβολοσειρών για να προσδιορίσετε εάν η ημερομηνία είναι κενό.

Πυροβολισμούς οθόνης:

Το ακόλουθο στιγμιότυπα οθόνης δείχνουν πώς να το κάνουμε αυτό. Σε αυτό το σενάριο, ένα πεδίο σε ένα στοιχείο, «Περιβαλλοντικές άδειες:Πρώτη υπενθύμιση Ημ/νία αδείας", υποβάλλεται και η ροή εργασίας πυρκαγιές σε απάντηση.

εικόνα

εικόνα

Σημειώσεις:

Όταν προσπάθησα αυτό, Ήμουν ευχάριστα έκπληκτος να μάθω ότι λειτουργεί. Ανησύχησα ότι SharePoint Designer μπορεί να μην επιτρέπεται η εκχώρηση συμβολοσειρά (Μεταβλητή:StringReminderDateDate) αλλά το επιτρέψει.

Ήμουν επίσης που το επιτρέπουν αυτό, η αξία μπορεί να έχει τιμή null και είτε ανατινάξουν το WF κατά το χρόνο εκτέλεσης ή ίσως αύξηση της παγκόσμιας θερμοκρασίας 1/2 πτυχίο, αλλά οι ανησυχίες αυτές ήταν αβάσιμες.

</Τέλος>

Μπαρ είναι ακόμα αρκετά υψηλή για να επεκτείνει τα ΒΡΎΑ

Σήμερα, Δούλευα με έναν πελάτη και περιγράφοντας τον τρόπο να τροποποιήσει το τμήμα web ερωτήματος περιεχομένου και να εμφανίσετε επιπλέον bits του πληροφορία από έναν τύπο περιεχομένου.

"Πρώτη., Μπορείτε να ρυθμίσετε το CQWP να συνδεθείτε με τις πηγές δεδομένων, στη συνέχεια μπορείτε να εξαγάγετε στη θέση εργασίας σας, τροποποίηση <CommonViewFields>, Ανεβάστε, Αφαιρέστε το πρωτότυπο και τώρα είναι «γεμάτοι’ για να εμφανίσετε αυτές τις άλλες στήλες. Επόμενη, ανοίξει το SharePoint designer, Περιήγηση στη ρίζα της συλλογής τοποθεσίας και εντοπίστε ItemStyle.xsl. Αντιγράψετε ένα από τα πρότυπα ως ένα χρήσιμο σημείο εκκίνησης. Πηγαίνετε πίσω και να τροποποιήσετε το CQWP να κάνει χρήση αυτού του νέου προτύπου. Τέλος, τροποποιήσετε το πρότυπο για να καταστήσει τα νέα πεδία! (Μην ξεχάσετε να δείτε το πίσω έτσι ώστε άλλοι χρήστες να δείτε τα αποτελέσματα)."

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

<Τέλος />

Εμφάνιση περιεχομένου αποτελέσματα τμήμα Web ερωτήματος σε ένα πλέγμα / Πίνακας

Επισκόπηση και στόχος

Από το κουτί, MOSS’ Τμήμα Web ερωτήματος περιεχομένου (CQWP) εμφανίζει τα αποτελέσματα σε μορφή λίστας, παρόμοια με τα αποτελέσματα αναζήτησης. Είναι επίσης δυνατό να εμφανίσετε τα αποτελέσματα σε μια μορφή πλέγματος (ήτοι. Μορφή πίνακα HTML). Πλέγμα μορφές είναι καλύτερα σε ορισμένες περιπτώσεις. Περιγράφει τον τρόπο για να επιτευχθεί αυτό το αποτέλεσμα σε αυτό το άρθρο.

Επιχειρηματικό σενάριο

Έχω εργαστεί με έναν πελάτη για ένα ξεδίπλωμα ΒΡΎΑ ολόκληρη την επιχείρηση. Έχουμε σχεδιάσει το τους ταξονομία όπως ότι έργα είναι πρώτης κατηγορίας πολίτες στην ιεραρχία και έχουν τη δική τους τοποθεσία ανώτατου επιπέδου. Διαχειριστές έργου διατηρεί singleton λίστα πληροφοριών σύνοψης έργου, όπως με τίτλο, προϋπολογισμού, αναμενόμενη ημερομηνία ολοκλήρωσης, υπόλοιπα κονδύλια και άλλα πεδία σύνοψης τύπου. Από τον "Σίνγκλετον" Θέλω να πω μια προσαρμοσμένη λίστα SharePoint εγγυημένη για να περιέχουν μόνο ένα στοιχείο. Απλουστευτικά, μοιάζει με αυτό:

εικόνα

Η τεχνική προσέγγιση είναι πολύ το ίδιο όπως περιγράφεται Εδώ (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!447.entry). Το CQWP χρησιμοποιεί ένας μετασχηματισμός XSL να εκπέμπουν HTML για το πρόγραμμα περιήγησης για την απόδοση.

Οραματίζομαι πάντα το αποτέλεσμα Βουτήξτε το XSL επειδή XSL είναι ένας εφιάλτης. Εδώ είναι το μου το επιθυμητό αποτέλεσμα:

εικόνα

HTML όπως αυτό δημιουργεί αυτό το αποτέλεσμα:

<HTML>
 <οργανισμός>
 <κέντρο>
 <Πίνακας σύνορα= 1>

<!-- Ετικέτες-->
 <TR χρώμα φόντου= μπλε>
 <TD><γραμματοσειρά χρώμα= λευκό><β>Όνομα έργου</β></γραμματοσειρά></TD>
 <TD Στοίχιση= δεξιά><γραμματοσειρά χρώμα= λευκό><β>Πλήρης ημερομηνία</β></γραμματοσειρά></TD>
 <TD Στοίχιση= δεξιά><γραμματοσειρά χρώμα= λευκό><β>Προϋπολογισμού</β></γραμματοσειρά></TD>
 <TD Στοίχιση= δεξιά><γραμματοσειρά χρώμα= λευκό><β>Πραγματική δαπάνη</β></γραμματοσειρά></TD>
 <TD><γραμματοσειρά χρώμα= λευκό><β>Συνολική κατάσταση</β></γραμματοσειρά></TD>
 </TR>

<TR>
 <TD>Αίθουσα πληροφορικής εκ νέου το σύρμα.</TD>
 <TD Στοίχιση= δεξιά>02/01/08</TD>
 <TD Στοίχιση= δεξιά>22,500.00</TD>
 <TD Στοίχιση= δεξιά>19,000.00</TD>
 <TD>Σε εξέλιξη</TD>
 </TR>

<TR>
 <TD>Παροχή διακομιστές για αναβάθμιση SQL</TD>
 <TD Στοίχιση= δεξιά>04/01/08</TD>
 <TD Στοίχιση= δεξιά>7,500.00</TD>
 <TD Στοίχιση= δεξιά>0.00</TD>
 <TD>Προγραμματιστεί</TD>
 </TR>

</Πίνακας>
 </κέντρο>
 </οργανισμός>
</HTML>

Προσέγγιση

Ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε το πλέγμα:

  1. Προσδιορίζει τα συστατικά στοιχεία του πλέγματος (σειρές/στήλες).
  2. Καθορίσει και να δημιουργήσετε στήλες τοποθεσίας αναγκαία.
  3. Δημιουργία υποδικτυακοί τόποι για τα έργα και τις λίστες singleton.
  4. Προσθέσετε το CQWP σε μια σελίδα web και να ρυθμίσετε τις παραμέτρους για την αναζήτηση λιστών.
  5. Τροποποίηση της CQWP XML για να συγκεντρώσει τις πρόσθετες στήλες.
  6. Τροποποιήσετε το XSL για τη δημιουργία ενός πίνακα.

Πάω να επικεντρωθεί σε αριθμό έξι. Αριθμοί μία μέσα από τέσσερις είναι απλή και κάτι που κάθε χρήστη της CQWP έχει ήδη γίνει. Αριθμός πέντε έχει καλά τεκμηριωμένο από άλλους συμπεριλαμβανομένου αυτό εξαντλητικό άρθρο εμφόρτου οθόνη-shot από MSDN Εδώ (http://msdn2.microsoft.com/en-us/library/bb897399.aspx) και του Σολομώντα Heather blog Εδώ (http://www.heathersolomon.com/blog/articles/CustomItemStyle.aspx).

Καρύδια και τα μπουλόνια

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

Σε αυτό το σημείο, έχετε προσθέσει στη σελίδα σας CQWP και να έχετε σας <CommonViewFields> ρυθμιστεί ανάλογα με τις ανάγκες.

Ακολουθώντας τα συνήθη βήματα, Έχω αυτά τα ενδιάμεσα αποτελέσματα:

1. Δημιουργήστε έναν τύπο περιεχομένου, μια templatized προσαρμοσμένη λίστα για αυτόν τον τύπο περιεχομένου και δύο τοποθεσίες. Εδώ είναι ο τύπος περιεχομένου:

εικόνα

Εδώ είναι η δομή του site:

εικόνα

2. Προσθέστε τα CQWP μετά τη δημιουργία μου έργο δευτερεύουσες τοποθεσίες και οι μονήρεις συνοπτικοί κατάλογοι έργου:

εικόνα

3. Προσθέστε όλες τις πρόσθετες πληροφορίες που θέλω μέσω της <CommonViewFields>:

        <ιδιοκτησίας Όνομα="CommonViewFields" Τύπος="συμβολοσειρά">Project_x0020_Name;Project_x0020_Expenses;Project_x0020_Status;Project_x0020_Start_x0020_Date;Project_x0020_End_x0020_Date;Project_x0020_Budget</ιδιοκτησίας>

Σημειώστε ότι έπρεπε να κρατήσει όλα τα πεδία ιδιοτήτων σε μία γραμμή, ή αυτό δεν θα μπορούσε να λειτουργήσει (CQWP θα μου πείτε ότι το ερώτημα επιστρέφει κανένα στοιχείο δεν).

4. Σε αυτό το σημείο, είμαστε έτοιμοι να προχωρήσουμε πέρα από το άρθρο του MSDN και κτυπήματος σε άρθρο της Heather του Σολομώντα. Ακολουθήστε τα βήματα που αρχίζουν κοντά στο βήμα #5 για να δημιουργήσετε μια προσαρμοσμένη / unghosted έκδοση του ItemStyle.xsl. Ακολουθώ τις συμβουλές της ερείκης, επάνω μέσω βήμα 11 και να πάρετε αυτά τα ενδιάμεσα αποτελέσματα:

4.1: Όνομα μου πρότυπο XSL ως εξής:

<XSL:πρότυπο όνομα = "πλέγμα" ταιριάζει = "γραμμή[@Style = "Πλέγμα"]" λειτουργία = "itemstyle">

Μπορώ να τροποποιήσω την πρότεινε επίσης ελαφρώς <XSL:για-κάθε …> με την προσθήκη ενός <br /> ετικέτα για να παρέχουν μια λίστα με τα καθαρότερα:

    <XSL:για-κάθε Επιλέξτε="@*">
      P:<XSL:αξία των Επιλέξτε="Όνομα()" /><br/>
    </XSL:για-κάθε>

4.2: Μπορώ να τροποποιήσω το τμήμα web, μεταβείτε στην εμφάνιση και επιλέξτε μου πλέγμα"" στυλ:

εικόνα

Εφαρμόσετε την αλλαγή και ιδού το αποτέλεσμα:

εικόνα

Μπορούμε να δούμε από τα παραπάνω ότι τα πεδία θέλουμε (Όνομα έργου, δαπάνη, κατάσταση, κλπ) είναι διαθέσιμα για να εκπέμπουμε το HTML. Δεν είναι μόνο ότι, αλλά μπορούμε να δούμε τα ονόματα με τα οποία εμείς πρέπει να παραπέμπει σε αυτές τις στήλες στο αμέσως την XSL. Για παράδειγμα, αναφοράς κατάστασης του έργου ως "Project_x005F_x0020_Name".

Σε αυτό το σημείο, θα αναχωρήσουμε από blog ερείκης και από τους ώμους των γιγάντων αυτών, Θα προσθέσω δικό μου μικρό κομμάτι.

ContentQueryMain.xsl

ΣΗΜΕΊΩΣΗ: Όταν κάνετε αλλαγές σε τόσο ContentQueryMain.xsl όσο και ItemStyle.xsl, θα πρέπει να ελέγξετε αυτά τα αρχεία πίσω στο προτού να δείτε το αποτέλεσμα των αλλαγών σας.

Για σκοπούς λήψης πλέγμα, ΒΡΎΑ χρησιμοποιεί δύο διαφορετικά αρχεία XSL για να παράγει τα αποτελέσματα που βλέπουμε από ένα CQWP. Για τη δημιουργία το προηγούμενο κομμάτι της παραγωγής, τροποποιημένη ItemStyle.xsl. MOSS στην πραγματικότητα χρησιμοποιεί ένα άλλο αρχείο XSL, ContentQueryMain.xsl να σε συνδυασμό με ItemStyle.xsl για τη δημιουργία του το HTML. Όπως υποδηλώνει το όνομά, ContentQueryMain.xsl είναι η κύρια"" XSL που ελέγχει τη συνολική ροή της μετάφρασης. Την αναπροσεγγίζει μέσω του όλα τα στοιχεία που βρέθηκαν και τις περνάει μία προς μία για πρότυπα σε ItemStyle.xsl. Θα τροποποιήσουμε ItemStyle.xsl να δημιουργήσει το άνοιγμα <Πίνακας> ετικέτα πριν εκπέμπουν στην πρώτη γραμμή των δεδομένων και το κλείσιμο <Πίνακας> ετικέτα μετά την τελευταία γραμμή που εκπέμπουν. Για να επιτευχθεί αυτό, ContentQueryMain.xsl έχει τροποποιηθεί για να περάσει δύο παραμέτρους μας δίκτυο"" πρότυπο ItemStyle.xsl, «τελευταία γραμμή" και "τρέχουσα γραμμή". ItemStyle.xsl χρησιμοποιεί αυτά να εκπέμπουν υπό όρους την αναγκαία Ετικέτες.

Χρησιμοποιώντας την τεχνική του Σολομώντα Heather, εντοπίζουμε ContentQueryMain.xsl. Βρίσκεται στο ίδιο μέρος με ItemStyle.xsl. Αυτό το πλάνο οθόνη θα πρέπει να βοηθήσει:

εικόνα

Πρέπει να κάνετε τις ακόλουθες αλλαγές:

  • Τροποποιήσετε ένα πρότυπο xsl, "CallItemTemplate" που επικαλείται στην πραγματικότητα μας πρότυπο πλέγμα σε ItemStyle.xsl. Θα περάσουμε δύο παραμέτρους στο πλέγμα πρότυπο έτσι ώστε θα έχει τα στοιχεία που χρειάζεται για την παραγωγή υπό όρους άνοιγμα και κλείσιμο <Πίνακας> Ετικέτες.
  • Τροποποιήσετε ένα άλλο κομμάτι της ContentQueryMain.xsl, που καλεί το CallItemTemplate"" να δώσετε ένα "LastRow" παράμετρος έτσι ότι LastRow μπορεί να περάσει μας πρότυπο πλέγμα.

Εντοπίστε το πρότυπο με το όνομα "OuterTemplate.CallItemTemplate" προσδιορίζονται από τη συμβολοσειρά:

  <XSL:πρότυπο Όνομα="OuterTemplate.CallItemTemplate">

Αντικαταστήσει το σύνολο πρότυπο ως εξής:

  <XSL:πρότυπο Όνομα="OuterTemplate.CallItemTemplate">
    <XSL:Παράμ Όνομα="CurPosition" />

    <!--
      Προσθέστε το "LastRow" παράμετρος.
      Χρησιμοποιούμε μόνο όταν το στοιχείο στυλ πέρασμα σε είναι "Πλέγμα".
    -->
    <XSL:Παράμ Όνομα="LastRow" />

    <XSL:Επιλέξτε>
      <XSL:Όταν δοκιμή="@Style = 'NewsRollUpItem'">
        <XSL:εφαρμογή προτύπων Επιλέξτε="." λειτουργία="itemstyle">
          <XSL:με Παράμ Όνομα="EditMode" Επιλέξτε="$cbq_iseditmode" />
        </XSL:εφαρμογή προτύπων>
      </XSL:Όταν>
      <XSL:Όταν δοκιμή="@Style = 'NewsBigItem'">
        <XSL:εφαρμογή προτύπων Επιλέξτε="." λειτουργία="itemstyle">
          <XSL:με Παράμ Όνομα="CurPos" Επιλέξτε="$CurPosition" />
        </XSL:εφαρμογή προτύπων>
      </XSL:Όταν>
      <XSL:Όταν δοκιμή="@Style = 'NewsCategoryItem'">
        <XSL:εφαρμογή προτύπων Επιλέξτε="." λειτουργία="itemstyle">
          <XSL:με Παράμ Όνομα="CurPos" Επιλέξτε="$CurPosition" />
        </XSL:εφαρμογή προτύπων>
      </XSL:Όταν>

      <!--
              Περάσει την τρέχουσα θέση και lastrow στο πρότυπο itemstyle.xsl πλέγμα.
              ItemStyle.xsl θα χρησιμοποιήσω που να εκπέμπει το άνοιγμα και κλείσιμο <Πίνακας> Ετικέτες.
      -->
      <XSL:Όταν δοκιμή="@Style = "Πλέγμα"">
        <XSL:εφαρμογή προτύπων Επιλέξτε="." λειτουργία="itemstyle">
          <XSL:με Παράμ Όνομα="CurPos" Επιλέξτε="$CurPosition" />
          <XSL:με Παράμ Όνομα="Το τελευταίο" Επιλέξτε="$LastRow" />
        </XSL:εφαρμογή προτύπων>
      </XSL:Όταν>

      <XSL:διαφορετικά>
        <XSL:εφαρμογή προτύπων Επιλέξτε="." λειτουργία="itemstyle">
        </XSL:εφαρμογή προτύπων>
      </XSL:διαφορετικά>
    </XSL:Επιλέξτε>
  </XSL:πρότυπο>

Τα σχόλια που περιγράφουν το σκοπός των αλλαγών.

Φυσικά, το OuterTemplate.CallItemTemplate"" ίδια καλείται από ένα άλλο πρότυπο. Εντοπίστε το πρότυπο από την αναζήτηση αυτή τη συμβολοσειρά κειμένου:

<XSL:πρότυπο Όνομα="OuterTemplate.Body">

Μετακινηθείτε τις οδηγίες στο OuterTemplate.Body και την εισαγωγή της παραμέτρου LastRow ως εξής (εμφανίζεται ως ένα σχόλιο με πλάγια γράμματα):

<XSL:κλήση-πρότυπο Όνομα="OuterTemplate.CallItemTemplate">
  <XSL:με Παράμ Όνομα="CurPosition" Επιλέξτε="$CurPosition" />
  <!-- Εισαγάγετε την παράμετρο LastRow. -->
  <XSL:με Παράμ Όνομα="LastRow" Επιλέξτε="$LastRow"/>
</XSL:κλήση-πρότυπο>

Μετά από όλα αυτά, έχουμε τελικά τα πράγματα που έχει συσταθεί σωστά, έτσι ώστε να μπορεί να εκπέμψει μας ItemStyle.xsl <Πίνακας> Ετικέτες στο σωστό μέρος.

ItemStyle.Xsl

ΣΗΜΕΊΩΣΗ: Και πάλι, Ελέγξτε σε ItemStyle.xsl μετά τη καθιστώντας οποιεσδήποτε αλλαγές, ώστε να μπορείτε να δείτε το αποτέλεσμα αυτών των αλλαγών.

Έχουμε δύο καθήκοντα εδώ:

  • Αντικαταστήσει το ολόκληρο πλέγμα πρότυπο. Μπορείτε αντίγραφο/κόλλα από κάτω.
  • Προσθέστε μερικές mumbo jumbo υπάγονται στον ορισμό του προτύπου που επιτρέπει "formatcurrency" πρότυπο λύνω. (Μπορείτε να πείτε ότι έχω μια αδύναμη λαβή για XSL).

Πρώτη, κοντά στην κορυφή του ItemStyle.xsl, Προσθέστε αυτή τη γραμμή:

  <!-- Μερικές mumbo jumbo που μας επιτρέπει να εμφανίσετε U.S. νόμισμα. -->
  <XSL:δεκαδικό-format Όνομα="προσωπικό" ψηφίο="D" />

  <XSL:πρότυπο Όνομα="Προεπιλογή" αγώνα="*" λειτουργία="itemstyle">

Σημείωση ότι θα προστεθεί άμεσα πριν την <XSL:πρότυπο όνομα = "προεπιλεγμένη" …> Ορισμός.

Επόμενη, πάω πίσω για να μας πρότυπο πλέγμα. Αντικαταστήστε το ολόκληρο πλέγμα πρότυπο με τον παρακάτω κώδικα. Αυτό είναι πολύ καλά σχολίασε, αλλά μην διστάσετε να μου e-mail ή να αφήνουν σχόλια στο blog μου, αν έχετε ερωτήσεις.

  <XSL:πρότυπο Όνομα="Πλέγμα" αγώνα="Σειρά[@Style = "Πλέγμα"]" λειτουργία="itemstyle">

    <!--
      ContentMain.xsl περνάει CurPos και τελευταίο.
      Χρησιμοποιούμε αυτά να εκπέμπουν υπό όρους το άνοιγμα και κλείσιμο <Πίνακας> Ετικέτες.
    -->
    <XSL:Παράμ Όνομα="CurPos" />
    <XSL:Παράμ Όνομα="Το τελευταίο" />

    <!-- Τις ακόλουθες μεταβλητές είναι χωρίς τροποποιήσεις από το πρότυπο ItemStyle.xsl -->
    <XSL:μεταβλητή Όνομα="SafeImageUrl">
      <XSL:κλήση-πρότυπο Όνομα="OuterTemplate.GetSafeStaticUrl">
        <XSL:με Παράμ Όνομα="UrlColumnName" Επιλέξτε="«ImageUrl ενός»"/>
      </XSL:κλήση-πρότυπο>
    </XSL:μεταβλητή>
    <XSL:μεταβλητή Όνομα="SafeLinkUrl">
      <XSL:κλήση-πρότυπο Όνομα="OuterTemplate.GetSafeLink">
        <XSL:με Παράμ Όνομα="UrlColumnName" Επιλέξτε="«LinkUrl»"/>
      </XSL:κλήση-πρότυπο>
    </XSL:μεταβλητή>
    <XSL:μεταβλητή Όνομα="DisplayTitle">
      <XSL:κλήση-πρότυπο Όνομα="OuterTemplate.GetTitle">
        <XSL:με Παράμ Όνομα="Τίτλος" Επιλέξτε="@Title"/>
        <XSL:με Παράμ Όνομα="UrlColumnName" Επιλέξτε="«LinkUrl»"/>
      </XSL:κλήση-πρότυπο>
    </XSL:μεταβλητή>
    <XSL:μεταβλητή Όνομα="LinkTarget">
      <XSL:Αν δοκιμή="@OpenInNewWindow = "True"" >_blank</XSL:Αν>
    </XSL:μεταβλητή>

    <!--
      Εδώ μπορούμε να ορίσουμε μια μεταβλητή, "tableStart".  Αυτό που περιέχει τον κώδικα HTML που χρησιμοποιούμε για να ορίσουμε το άνοιγμα του πίνακα, καθώς και τις ετικέτες στηλών.  Σημειώστε ότι εάν CurPos = 1, περιλαμβάνει το HTML σε μια ετικέτα CDATA.
      Διαφορετικά, θα είναι άδειο.

      Η τιμή του tableStart είναι εκπέμπονται κάθε φορά ItemStyle καλείται μέσω ContentQueryMain.xsl.
    -->
    <XSL:μεταβλητή Όνομα="tableStart">
      <XSL:Αν δοκιμή="$CurPos = 1">
        <![CDATA[
        <τραπέζι σύνορα = 1>
          <χρώμα φόντου TR = "μπλε">
            <TD><χρώμα γραμματοσειράς = "λευκό"><β>Όνομα έργου</β></γραμματοσειρά></TD>
            <Στοίχιση TD = "δεξιά"><χρώμα γραμματοσειράς = "λευκό"><β>Πλήρης ημερομηνία</β></γραμματοσειρά></TD>
            <Στοίχιση TD = "δεξιά"><χρώμα γραμματοσειράς = "λευκό"><β>Προϋπολογισμού</β></γραμματοσειρά></TD>
            <Στοίχιση TD = "δεξιά"><χρώμα γραμματοσειράς = "λευκό"><β>Πραγματική δαπάνη</β></γραμματοσειρά></TD>
            <TD><χρώμα γραμματοσειράς = "λευκό"><β>Συνολική κατάσταση</β></γραμματοσειρά></TD>
          </TR>
        ]]>
      </XSL:Αν>
    </XSL:μεταβλητή>

    <!--
      Μια άλλη μεταβλητή, tableEnd ορίζει απλώς το κλείσιμο πίνακας ετικέτα.

      Όπως και με tableStart, είναι πάντα εκπέμπονται.  Γι ' αυτό και την αξία που αποδίδεται υπό όρους βασίζεται σε αν έχω ήδη περάσαμε την τελευταία γραμμή από ContentQueryMain.xsl.
    -->
    <XSL:μεταβλητή Όνομα="tableEnd">
      <XSL:Αν δοκιμή="$CurPos = $Last">
        <![CDATA[ </Πίνακας> ]]>
      </XSL:Αν>
    </XSL:μεταβλητή>

    <!--
      Πάντα να εκπέμψει το περιεχόμενο του tableStart.  Αν αυτό δεν είναι η πρώτη γραμμή πέρασε σε μας από ContentQueryMain.xsl, κατόπιν ξέρουμε την αξία θα είναι κενό.

      Απενεργοποίηση εξόδου διαφυγή επειδή όταν tableStart αυτό δεν είναι κενό, περιλαμβάνει πραγματική HTML που θέλουμε να καθίστανται από το πρόγραμμα περιήγησης.  Αν δεν λένε το XSL parser να απενεργοποιήσετε εξόδου διαφυγή, θα παραγάγει τα πράγματα όπως"&lt;Πίνακας&gt;" αντί του"<Πίνακας>".
    -->
    <XSL:αξία των Επιλέξτε="$tableStart" Απενεργοποίηση-εξόδου-διαφυγή="Ναι"/>


    <TR>
      <!--
      P:Project_x005F_x0020_Name P:Project_x005F_x0020_End_x005F_x0020_Date P:Project_x005F_x0020_Budget P:Project_x005F_x0020_Expenses P:Project_x005F_x0020_Status
      -->
      <TD>
        <XSL:αξία των Επιλέξτε="@Project_x005F_x0020_Name"/>
      </TD>

      <TD Στοίχιση="δικαίωμα">
        <XSL:αξία των Επιλέξτε="@Project_x005F_x0020_End_x005F_x0020_Date"/>
      </TD>

      <TD Στοίχιση="δικαίωμα">
        <XSL:κλήση-πρότυπο Όνομα="FormatCurrency">
          <XSL:με Παράμ Όνομα="αξία" 
Επιλέξτε="@Project_x005F_x0020_Budget"></XSL:με Παράμ> </XSL:κλήση-πρότυπο> </TD> <TD Στοίχιση="δικαίωμα"> <XSL:κλήση-πρότυπο Όνομα="FormatCurrency"> <XSL:με Παράμ Όνομα="αξία" Επιλέξτε="@Project_x005F_x0020_Expenses">
</XSL:με Παράμ> </XSL:κλήση-πρότυπο> </TD> <TD> <XSL:αξία των Επιλέξτε="@Project_x005F_x0020_Status"/> </TD> <!-- Όλα τα ακόλουθα είναι σχολίασε έξω να διευκρινίσει τα πράγματα. Ωστόσο, φέρει πίσω και ουσία αυτό σε ένα <TD> να δούμε την επίδρασή. --> <!-- <div id = "linkitem" Class = "στοιχείο"> <XSL:Εάν δοκιμή = "-μήκος συμβολοσειράς($SafeImageUrl) != 0"> <div class = "εικόνα-περιοχή-αριστερά"> <ένα href = "{$SafeLinkUrl}" Target = "{$LinkTarget}"> <img class = "εικόνα-σταθερού πλάτους" src = "{$SafeImageUrl}"
ALT = "{@ImageUrlAltText}"/> </ένα> </div> </XSL:Αν> <div class = "σύνδεση-ΕΙΔΟΣ"> <XSL:κλήση-πρότυπο
name="OuterTemplate.CallPresenceStatusIconTemplate"/> <ένα href = "{$SafeLinkUrl}"
Target = "{$LinkTarget}" Τίτλος = "{@LinkToolTip}"> <XSL:αξία της επιλέξτε = "$DisplayTitle" /> </ένα> <div class = "Περιγραφή"> <XSL:select="@Description αξία των" /> </div> </div> </div>
--> </TR> <!-- Εκπέμπουν το κλείσιμο πίνακας ετικέτα. Αν δεν είμαστε στην τελευταία σειρά, αυτό θα είναι κενό. --> <XSL:αξία των Επιλέξτε="$tableEnd" Απενεργοποίηση-εξόδου-διαφυγή="Ναι"/> </XSL:πρότυπο> <XSL:πρότυπο Όνομα="FormatCurrency"> <XSL:Παράμ Όνομα="αξία" Επιλέξτε="0" /> <XSL:αξία των Επιλέξτε='μορφή-αριθμός($αξία, "$DDD,DDD,DDD.DD", "προσωπικό")' /> </XSL:πρότυπο>

Πρότυπο WSS/ΒΡΎΑ των οθονών καταχώρησης δεδομένων δεν υποστηρίζουν διαδοχική αναπτυσσόμενες λίστες (ή άλλη ενδο-ανακοίνωση)

Η ΕΝΗΜΕΡΩΜΈΝΗ ΈΚΔΟΣΗ (04/2008): Αυτήν την είσοδο blog μεγάλη δείχνει μια καλή javascript βασίζεται προσέγγιση σε αυτό το πρόβλημα: http://webborg.blogspot.com/2008/04/add-functions-and-events-to-sharepoint.html

UPDATE II: (04/2008): Αυτό το ιστολόγιο εισόδου φαίνεται πολλά υποσχόμενη, καθώς και: http://www.cleverworkarounds.com/2008/03/13/free-mosswss-2007-web-part-hide-controls-via-javascript/

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

  • Κατάλογος των ΗΠΑ. μέλη
  • Κατάλογος των ΗΠΑ. πόλεις.

Ως υπεύθυνη UI πάροχοι, θέλουμε να λειτουργήσει όπως αυτό:

  • Paul επιλέγει μια ΗΠΑ. μέλος από το drop-down.
  • Αυτό προκαλεί τις πόλεις του αναπτυσσόμενου να φιλτράρετε μόνο εκείνες τις πόλεις που ανήκουν στο επιλεγμένο μέλος.
  • Paul επιλέγει μια πόλη από αυτήν τη φιλτραρισμένη λίστα.

Δεν υπάρχει καμία υποστήριξη out-of-the-box για αυτό το χαρακτηριστικό γνώρισμα. Στην πραγματικότητα, δεν υπάρχει OOB υποστήριξη για οποιοδήποτε είδος των άμεσων ενδο-φόρμα επικοινωνίας. Αυτό περιλαμβάνει, μέσω προγραμματισμού, απόκρυψη/ενεργοποίηση/απενεργοποίηση πεδία απαντώντας στην τομέα αλλαγές σε άλλα μέρη της φόρμας.

Ο πραγματικός στόχος αυτού του άρθρου για να περιγράψει τις πιθανές λύσεις και αυτές είναι οι επιλογές όπως τους ξέρω:

  1. Αναπτύξει ένα είδος συνήθειας στήλη. Ως έθιμο-στήλη-προγραμματιστής, έχετε πλήρη έλεγχο πέρα από τον κόσμο»" αυτής της συνήθειας στήλης. Μπορείτε να εφαρμόσετε ένα πέφτοντας απότομα αναπτυσσόμενο αυτόν τον τρόπο.
  2. Μπορείτε να χρησιμοποιήσετε τη ροή εργασίας. Σε ορισμένες περιπτώσεις, θέλετε να αναθέσετε αυτόματα μια τιμή στο πεδίο βάσει του πεδίου τιμής. Σε αυτή την περίπτωση, κανονικά θα προσπαθείτε να χρησιμοποιήσετε μια στήλη υπολογισμού, αλλά μερικές φορές, απλά δεν θα πάρει την εργασία γίνοντη. Ροής εργασίας του SharePoint Designer είναι ένα σχετικά διαχείριση φιλική εναλλακτική λύση σε πτώση κάτω σε κώδικα και το οπτικό στούντιο. Αν πάτε αυτή τη διαδρομή, Γνωρίζτε το ζήτημα που θίγει η αυτό το άρθρο (http://paulgalvin.spaces.live.com/blog/cns!CC1EDB3DAA9B8AA!405.entry).
  3. Δείκτες χειρισμού συμβάντων: Όπως ροή εργασίας, Αυτό είναι μια λύση της μετά-το-γεγονός. Το πρόγραμμα χειρισμού συμβάντων είναι μια συγκρότησης .NET (C#, VB.NET) στο SharePoint που περνάει τον έλεγχο. Το αντικείμενο που αναπτύσσετε έχει πρόσβαση στα δεδομένα του καταλόγου (και το μοντέλο αντικειμένου ολόκληρο) και μπορεί να κάνει κάθε αναγκαία υπολογισμού.
  4. Χρήση του SharePoint Designer για να δημιουργήσετε φόρμες Προσαρμ/νης καταχώρησης. Δεν έχω άμεση εμπειρία με αυτή την προσέγγιση, but I hear they are doing good things with NewForm.aspx these days 🙂
  5. Ρολό της δικής σας συνάρτησης εισόδου δεδομένων ASP.NET (ως αυτόνομο ιστοσελίδα ή ως τμήμα web) και που χρησιμοποιεί αντί.

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

<Τέλος />

Ναι/όχι (πλαίσιο ελέγχου) φιλτράρισμα σε τμήμα Web ερωτήματος περιεχομένου

Για το φιλτράρισμα για ένα ερώτημα για το ναι/καμία πλαίσιο ελέγχου με τίτλο «PG ορόσημο», Ρυθμίστε τις παραμέτρους CQWP όπως αυτό:

εικόνα

Αυτό είναι άλλο ένα από τα ερωτήματα αυτά προφανές-μια φορά-σας-ξέρω-αυτό αλλά hard-to-find-an-answer-to: Πώς να φιλτράρετε ένα ναι/δεν πλαίσιο ελέγχου χρήση του τμήματος web "ερώτημα περιεχομένου".

Το πρώτο αποτέλεσμα αναζήτησης Βρίσκω χρησιμοποιώντας τον όρο αναζήτησης "φίλτρο περιεχομένου ναι/όχι τμήμα web ερωτήματος" είναι επίπεδη από λάθος, έτσι σκέφτηκα ότι θα βάζουν αυτό επάνω εκεί και να δείτε αν μπορεί να αντικαταστήσει το λανθασμένο αποτέλεσμα στα αποτελέσματα αναζήτησης τυπικό.

Είναι αρκετά εύκολο: Αλήθεια τιμές = "1" και ψευδείς αξίες δεν είναι ίσο με "1" (όμορφη ρετρό, στην πραγματικότητα).

Στο παραπάνω παράδειγμα, Δημιούργησα στήλη τοποθεσίας του τύπου ναι/όχι" (πλαίσιο ελέγχου)" επώνυμη «PG ορόσημο». Προστίθεται σε μια βιβλιοθήκη doc, ανεβάσει μερικά έγγραφα, Ορίστε την τιμή για ένα ζευγάρι και να δοκιμαστεί.

<Τέλος />