Επισκόπηση και στόχος
Από το κουτί, 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>
|
Προσέγγιση
Ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε το πλέγμα:
- Προσδιορίζει τα συστατικά στοιχεία του πλέγματος (σειρές/στήλες).
- Καθορίσει και να δημιουργήσετε στήλες τοποθεσίας αναγκαία.
- Δημιουργία υποδικτυακοί τόποι για τα έργα και τις λίστες singleton.
- Προσθέσετε το CQWP σε μια σελίδα web και να ρυθμίσετε τις παραμέτρους για την αναζήτηση λιστών.
- Τροποποίηση της CQWP XML για να συγκεντρώσει τις πρόσθετες στήλες.
- Τροποποιήσετε το 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 να απενεργοποιήσετε εξόδου διαφυγή, θα παραγάγει τα πράγματα όπως"<Πίνακας>" αντί του"<Πίνακας>".
-->
<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:πρότυπο>
|