בפוסט הקודם הצגתי אותם בקצרה – עכשיו הזמן לתת להם את הכבוד המגיע להם!
שאילתת תוכן (CQWP או הגמל והאופניים…)
(התמונה במקור)
שאילתת התוכן ב- MOSS 2007 תמיד הזכירה לי את התמונה הזו – גמל זה אחלה, ויש לו כמה פיצ'רים מדהימים, אבל תמיד יבוא הרגע שתצטרך גם אופניים…
ומה הנמשל? ב-MOSS 2007 ה- WP הזה נתן מענה יפה להצגת תוכן אגרגטיבי מבוסס על שאילתה דינמית בתוך אוסף אתרים, כמו הצגת כל הפריטים האחרונים שנוספו היום, או מסמכים העונים לתנאים מסויימים וכו'.
אבל אם כבר יש כזה WP, מתבקש שיהיו לו עוד כמה פיצ'רים – ואלה היו חסרים… ואכן, אחד מסימני ההצלחה של ה- WP הזה היתה התפתחות "תעשייה" קטנה של שיפורים סביבו, כגון ה- Enhanced CQWP של ישי שגיא, או ה- Roller CQWP של מירון פרידמן (אם להזכיר רק את הישראלים…)
אבל מעבר לפיצ'רים החסרים, ה- WP סבל כידוע מכמה בעיות, שחלקן נפתרו בגירסה החדשה וחלקן לא – אז הנה בקיצור רשימת המכולת של הבעיות העיקריות (לדעתי):
| מגבלה
|
סטטוס ב- 2010
|
פתרון חליפי ב-2007
|
| שאילתה מוגבלת לאוסף אתרים נוכחי
|
לא נפתר
|
שימוש ב- data view WP, או בשאילתת חיפוש – Search Results WP או פתרון צד 3 – ראו כאן
|
| חובה לבחור סוג רשימה (List Type)
|
לא נפתר
|
ייצוא לקובץ .webpart, עריכה וייבוא – ראו כאן
|
| אין אפשרות להגדיר תנאי של תאריך מחושב
|
נפתר!
|
כנ"ל
|
| אין אפשרות לסנן תוצאות באופן דינמי
|
נפתר!
|
כנ"ל
|
| אין אפשרות לקבוע אילו שדות מידע של הפריט יוצגו כשם, קישור וכו'
|
נפתר!
|
כנ"ל
|
ועכשיו כמה צילומי מסך…
סינון עפ"י פרמטרים + תאריך מחושב
הצגת שדות מידע
כאן ניתן לקבוע אילו שדות מידע של הפריט ישמשו עבור 4 השדות הסטנדרטיים המוצגים ב- WP – קישור, תמונה, כותרת ותיאור. שימו לב כי לא ניתן עדיין לקבוע שיוצגו שדות אחרים, כמו למשל תאריך שינוי, מחבר וכדומה – יש רק 4 שדות, אבל ניתן לקבוע את הערך שיאוחזר עבור כל שדה.
כדי להמחיש את זה, יצרתי שאילתת פשוטה שמאחזרת את כל התמונות והסרטים באתר:
אחר כך ביצעתי שינוי קטן בשדות התצוגה – בשדה Image, במקום ערך ברירת המחדל (שמציג אייקון סתמי) השתמשתי בשדה Thumbnail Preview (שדה קיים בספריית התמונות והסרטים):
וזו התוצאה שהתקבלה (לסרטים אין כברירת מחדל תמונה מקדימה, ולכן האיקסים האדומים – SP2010 מאפשר להגדיר תמונה שכזו כשדה מידע על כל סרט שמעלים, פשוט לא היה לי כוח לזה…):
טוב, לא כ"כ מרשים, אבל תחשבו על השימושים שאפשר לעשות עם זה!
עורך תוכן – Content Editor
כאן השיפור המשמעותי הוא ביכולות עיצוב התוכן, שעברו מהפיכה של ממש – למעשה, היכולות מתקרבות לאלו של Word ו- PowerPoint, וה- Ribbon החדש מדבר בעדו:
מראה כללי
עורך טקסט
עורך תמונה
עורך טבלה
<< חזרה לטבלת החידושים ב- SharePoint 2010
פעם שמעתי שיש פה ושם מפתח SharePoint אחד או שניים שלא טורחים לבדוק את ביצועי הקוד שלהם (כי אין כלים מתאימים או תירוצים כאלו) – אז אם יש אמת בשמועות האלו, SP2010 מציע פתרון די מקיף לאותו מיעוט זניח של מפתחים, הלא הוא Developer Dashboard. טוב, זה לא נראה "נוצץ" כמו ה-
Idera SharePoint performance manager (לשעבר Sonar) אבל זה בחינם!
אז מה הוא עושה?
-
פירוט (במילי-שניות) של זמן טעינת כל רכיב בדף (Get http)
-
פירוט של שאילתות ה- DB (כגון stored procedures)
-
פירוט של Service Calls ושל SPRequests
-
הצגת Webparts offsets (ראו בהמשך)
-
הצגת שגיאות והתראות
איך הוא נראה?
משהו כזה:
איך מפעילים אותו?
בתמונה למעלה ניתן לראות אייקון קטן בצד ימין למעלה שלחיצה עליו מפעילה את הרכיב בחצי המסך התחתון.
דא עקא, האייקון לא נמצא שם כברירת מחדל. לשם כך יש להפעיל פקודת stsadm או PowerShell (משום מה ההפעלה היא לא ע"י Feature באתר - אני צופה בעיות עם הרעיון הזה, כי זה אומר שמפתח יצטרך הרשאות מנהל חווה בשרת להריץ את הפקודה הזאת – אולי זה ייפתר בגירסת ה- RTM, או צד שלישי, נראה…)
יש לציין כי ישנם 3 מצבים של ה- DevDb:
-
מופעל (On) – במצב זה ה- DevDb מוצג תמיד בכל דף (לא ממש נוח)
-
מופעל עפ"י דרישה (OnDemand) – במצב זה מוצג אייקון קטן בראש הדף (ראו תמונה למעלה) וליצה עליו מפעילה/מכבה את ה- DevDb
-
לא מופעל (Off) – מצב זה נועד לבטל אחד משני המצבים הקודמים
שלושת המצבים האלו מוגדרים במאפיין בפקודה בהתאם:
stsadm
מופעל תמיד -
stsadm -o setproperty -pn developer-dashboard -pv On
הפעלה עפ"י דרישה -
stsadm -o setproperty -pn developer-dashboard -pv OnDemand
כיבוי -
stsadm -o setproperty -pn developer-dashboard -pv Off
PowerShell
[Microsoft.SharePoint.Administration.SPWebService]::
ContentService.DeveloperDashboardSettings.DisplayLevel = On/OnDemand/Off;
[Microsoft.SharePoint.Administration.SPWebService]::
ContentService.DeveloperDashboardSettings.Update();
וככה הוא נראה מקרוב בדף מייצג
השתמשתי בדף החביב עליי, המכיל 4 webparts שונים:
ולאחר הפעלת ה- DevDb מתקבל המסך הבא, המחולק לשמאל ולימין:
שמאל
ניתן לראות כי זמן הבקשה הכולל היה 715 מילי-שניות, והוא מחולק לעשרות תתי-בקשות במבנה היררכי
שימו לב היטב לשמות ה- events המוצגים – אלו נקראים "monitored scopes" ולכל רכיב ניתן להגדיר , ע"י שימוש ב- class החדש שנקרא SPMonitoredScope . ראו להלן מה נדרש לעשות בקוד שלכם כדי שגם הרכיב שלכם יופיע!
ימין
שימו לב לשורות המוקפות באדום – זהו זמן ה"Offset" של ה- webpart הכבדים יחסית - כלומר, כמה זמן עבר מרגע שנטען "רכיב האב" שלו, עד שהוא עצמו הואיל בטובו לעלות. הסיבה היא ש- WP אלו מכילים תמונות, זה הכל…
חוץ מזה, בראש הדף (בחלק "כללי") ניתן לראות את ה- correlation ID שמאפשר לאתר את ה- ULS Log המתאים!
מה שיפה הוא שלוחצים על אחד הקישורים הכתומים, נפתח חלון Tracing מפורט כמו זה:
מה עוד אפשר לעשות איתו?
דבר ראשון, לנצל את ה- class החדש שנקרא SPMonitoredScope – ברגע שמשלבים אותו בקוד, הרכיב יוצף ל-DevDb ותוכלו לנטר אותו, לדוגמה:
using (SPMonitoredScope GetListsBtnScope =
new SPMonitoredScope("GetListsBtn_Click"))
{
//your code goes here
(מקור: Steve Peschka)
דבר שני, בחור יצירתי בשם Jaap Vossers העלה כבר לפני כמה חודשים רכיב ויזואליזציה של ה- DevDb ויש לי תחושה שזה יהפוך לפריט חובה למפתחים (אותו מיעוט זניח שכיום טרם מבצע בדיקות ביצועים לקוד שלו…)
לעיון נוסף
- Razi bin Rais - פירוט + צילומי מסך, כולל דוגמה ל- Feature שיפעיל/יכבה את ה- DevDb
- Geoff Varosky - פירוט כולל הפעלה ע"י קוד, צילומי מסך והפעלת additional tracing
אחרי כל ההשערות, מייקרוסופט הכריזה על תאריך סופי להשקת מוצרי 2010 - התאריך צפוי להיות 12.5.10 (עוד חודשיים+), וגירסת ה- RTM עצמה תהיה זמינה כבר באפריל.
אז יש לנו עוד חודש לשחק עם הבטא, ואז להתקין הכל מחדש...
מי שמשעמם לו מוזמן להירשם לאירוע עצמו בראשות Stephen Elop, רק לא לשכוח להביא כריות - זה לא סטיב באלמר...
הדבר הראשון שעשיתי כשפתחתי אתר SP2010 חדש (אחרי שהתגברתי על כל נושא ההתקנה – פוסט נפרד וארוך…) היה לראות אילו Web Parts חדשים נוספו.
אז הבשורות הטובות הן שקודם כל שינו את הממשק למסך פשוט המחולק לקטגוריות, שכאשר לוחצים על אחת מהן מוצגים ה- WP המשוייכים לאותה קטגוריה. דבר שני – נוספו WP חדשים, אבל לא יותר מדי (=אפשר לעכל עם קצת מאמץ).
הנה צילום מסך לדוגמה של רשימת הקטגוריות לבחירה – שימו לב שאני עובד עם גירסת Enterprise (בטא) הכוללת הכל, בגירסת ה- Standard ייכללו פחות WP מן הסתם.
במקרה הזה נבחרה קטגוריית החיפוש שמכילה לא מעט WP, אבל אפשר לראות קטגוריות חדשות כמו Document Sets, Media ועוד, עליהן ארחיב לכשירחיב. בינתיים בחרתי להציג חמישה WP מובילים (לדעתי) בקצרה, ובהמשך יוקדש פוסט נפרד ליכולות של כל אחד מהם:
1. הצגת מדיה (Media WP)
ה- WP הזה חדש לגמרי, ומאפשר הצגת סרטון (או תמונה) מוטבע בדף. הסרטון יכול להגיע ישירות מהמחשב המקומי או מספריית מדיה ייעודית (עוד משהו חדש, נקרא Asset Library), וניתן להגדיר האם יורץ אוטומטית עם העלאת הדף, האם ירוץ ב- loop ועוד.
(זה הסרטון הקטן היחיד שהיה לי במחשב, Sorry…)
2. שאילתת תוכן (Content Query WP - CQWP)
ה- WP הזה היה להיט בגירסת 2007, אבל עדיין נדרשה עבודה כדי להפוך אותו למשהו יעיל באמת.
הפעם MS השקיעו מיוזמתם והוסיפו ל- WP הזה כמה יכולות מרשימות כמו סינון לפי תאריך מחושב (כגון today+5 - סוף סוף!), סינון לפי פרמטר ב- URL (!!!) ועוד.
להרחבה + צילומי מסך
3. עורך תוכן (Content Editor WP)
גם זה היה להיט רב שימושי ב- 2007, וגם אליו הוסיפו יכולות של עריכת תוכן מתקדמת יותר, כגון טיפול בתמונות, טבלאות ועוד:
להרחבה + צילומי מסך
4. סטטיסטיקות שימוש (Web Analytics WP)
זה WP חדש-דנדש, שמנצל את שירות ניתוח השימוש (Web Analytics Service) שמופעל ברקע (דורש הגדרות נפרדות). ניתן להציג בכל דף סטטיסטיקת שימוש באתר הנוכחי או בכל אוסף האתרים, להוסיף מסננים ועוד:
וככה זה נראה באתר…
(שימו לב ל- Header – במקור היה כתוב שם Adventure Works – לקח לי רבע שעה רק לאתר את הפונט שהם השתמשו בו (משהו ביזארי שנקרא Poor Richard – שככה יהיה לי טוב!)
5. קטגוריות סינון חיפוש (Refinement Web Part)
טוב, זה הכרה רשמית בתוסף ה- Faceted Search האהוב, שעכשיו הופך לחלק אינטגרלי מ- SP2010. אין מה להכביר במילים, התמונה מדברת בעד עצמה (הרחבה בפוסט נפרד בעתיד):
כמו בבלוג הקודם שלי (MOSS was my middle name…) גם כאן אני אשתדל לתת מידע ניהולי וטכני על SharePoint 2010 (שכולל את WSS 4.0). כידוע, SP2010 הוא כבר הדור הרביעי של המוצר, אותו אני מלווה מאז גירסת SPPS/Tahoe ב- 2001.
מכיוון שכרגע הגירסה הקיימת היא גירסת בטא (RC) – התוכן בהתאם, אז צפו לעדכונים שוטפים. כנראה שרוב מה שאכתוב יהיה רלוונטי רק בעוד חצי שנה ויותר, אבל מי יודע אם יהיה לי זמן אז...
גם הפעם קהל היעד של הבלוג הוא ממשתמשי הקצה, דרך מנהלי מידע וידע ועד לאנשי ה- IT\סיסטם, אלא שהפעם אני אתייחס מדי פעם גם לנושאי הפיתוח, לאור השדרוג המשמעותי של Visual Studio 2010. וגם הפעם הפוסטים ייכתבו בלשון הקודש (יש אפשרות לתרגום לארמית למי שיבקש...) + הרבה צילומי מסך, במטרה לעזור לי ולכם להבין קצת יותר טוב מה מסתתר במוצר החדש-ישן שנקרא SharePoint 2010.
כדי להכריח את עצמי לכתוב על מה שחשוב ולא על מה שבא לי, יצרתי את הטבלה הבאה שמתיימרת להקיף את כל מה שחשוב להכיר ב- SP2010. עם הזמן אני אכתוב פוסט ייעודי לכל נושא (יודגש בירוק), בינתיים הוספתי קישורים למידע הרלוונטי ביותר מאת חכמי אומות העולם בכל נושא:
*לא זו לא שגיאת כתיב - לדעתי רשתות חברתיות הן ברובן שטות אופנתית שתיכחד מתישהו, אבל אני משתדל לשמור על אובייקטיביות...