ארכיון חודשי: בנובמבר 2007

אתה לא יכול לנצח להישג של SharePoint

במהלך היומיים האחרונים, השתתפתי בשני המפגשים במהלך אשר הצגנו את התוצאות של פרויקט SharePoint. מנהל מערכות המידע הראשי וצוותו הצטרפו הפגישה הראשונה. . זה סטנדרטי, לא בולט במיוחד, בעיקר. מחלקת ה-IT עוסקת ברור בהשקה הארגון כל פרויקט טכנולוגיה. מפגש שני להתרחב ולכלול סמנכ. מפני שיווק, מספר הדירקטורים המייצג HR, לוגיסטיקה, ייצור, פרויקטי בנייה, איכות, רכישת, התפתחותן של מחלקות אחרות (שכמה מהם לא היו אפילו ישירות מעורבים בשלב הנוכחי). . זה קהל רחב מאוד.

בחיי מוקדמת, עבדתי בעיקר על פרויקטי ERP ו- CRM. לשניהם יש תחום פתרון רחב למדי אך לא רחב כמו SharePoint. להתממש באופן מלא, פרויקטים SharePoint לגיטימי ולא בהכרח להגיע לתוך כל פינה וסדק לארגון.. כמה פתרונות ארגוניים אחרים יש סוג של להגיע? . לא הרבה.

SharePoint בבירור מייצג הזדמנות עצומה עבור אלה מאיתנו מספיק ברת מזל להיות במרחב הזה. הוא מספק הזדמנות נפלאה טכני (אשר מופעלת איכשהו את ראשו כאן תחת "טכנולוגיות עליך מאסטר"). אבל אפילו יותר טוב, SharePoint חושף אותנו אל טווח מקיף ורחב של תהליכים עסקיים באמצעות התקשרויות אלה. כמה מומחים CRM עובדים עם הצד הייצור של החברה? כמה יועצי ERP לעבוד עם משאבי אנוש על רכישת כשרון? SharePoint חורג את שניהם.

כמו כל דבר, . זה לא מושלם, . אבל זה מקום טוב ארור תהיה.

בגלל האהבה [למלא את היותך אדם/גבוה הכי אוהב], אל תשנה ' כותרת’ עמודת אתר.

- פורומים של SharePoint, לפעמים שואלים "לשנות את התווית של כותרת" או על "הסרת כותרת מרשימות".

השורה התחתונה: אל תעשה את זה!

למרבה הצער, ממשק המשתמש מאפשר שינוי בכיוון אחד את תווית העמודה כפי שמוצג:

התמונה

הכותרת היא עמודה המשוייכים לפריט"" סוג תוכן. רבים, רבים, רבים של CT להשתמש בעמודה זו, אם אתה לשנות את זה כאן, זה אדוות החוצה בכל מקום. יש סיכוי טוב שאתה לא מתכוון שזה יקרה. בטח היית חושב לעצמך, "יש לי רשימת בדיקת מידע מותאם אישית, ' כותרת’ פשוט לא הגיוני. שם עמודה, אז אני הולכת לשנות אותה ' קוד מצב’ ולהוסיף עמודה תיאור." אבל אם אתה ממשיך עם המחשבה הזאת ולשנות ' כותרת’ 'קוד מצב', כותרת כל הרשימה (כולל ספריות מסמכים) שינויים "קוד מצב" ואתה בטח לא תכננתי שזה יקרה.

הבעיה האמיתית היא כי זה שינוי בכיוון אחד. ממשק המשתמש של "יודע" את התואר"הזה" מילה שמורה. כל כך, אם תנסה לשנות את קוד המצב"" חזרה אל "Title", זה ימנע, עכשיו יש לך נצבע את עצמך לפינה using paint that never dries 🙂

אז מה יקרה אם כבר שינית אותו? לא ראיתי את התשובה. כולנו רוצים, איזו היא שיטה פשוטה וקלה כדי לשנות את התווית לחזור 'כותרת'. עכשיו, העצה הטובה ביותר היא לשנות את זה למשהו כמו "דוק/פריט כותרת". . זו תווית כללית מספיק זה לא יכול להיות צורם גם עבור המשתמשים שלך.

יש לי כמה רעיונות אחרים אשר נמצאים ברשימת המשימות שלי דברים למחקר:

  • צור קשר עם Microsoft.
  • לעשות משהו עם מודל האובייקטים, אולי בשיתוף עם תכונה.
  • להבין את סכימת מסד הנתונים ולעדכן באופן ידני את SQL. (עליך לפנות אל Microsoft לפני שאת עושה את זה בכל זאת; זה סביר תוקף החוזה התמיכה שלך).

אם מישהו יודע איך לפתור את זה, בבקשה לפרסם תגובה.

עדכון שעות אחר הצהריים המאוחרות, 11/15: מצאתי קישור זה מתאר שיטה ליצירת סוג של רשימה שאינה כוללת כותרת עמודה: http://www.venkat.org/index.php/2007/09/03/how-to-remove-title-column-from-a-custom-list/

BDC ADF והחבר שלך, CDATA

. שמתי קצת מביך ומיותר יד-קידוד של RdbCommandText בדוגמאות (לרבות תיעוד MSDN).

רציתי לציין ומוניטין BDC כי פקודות יכול להיות עטוף בתוך תג CDATA הטבעי"" טופס. כל כך, הבנייה מביך:

<רכוש שם="RdbCommandText" סוג="System.String">
Dbo בחר.MCRS_SETTLEMENT.id, dbo.MCRS_SETTLEMENT.settlement של dbo.MCRS_SETTLEMENT
איפה (מזהה &gt;= @MinId) ו (מזהה &lt;= @MaxId)
</רכוש>

יכול להיות מיוצג יותר טוב בדרך הזו:

<רכוש שם="RdbCommandText" סוג="System.String">
<![CDATA[
Dbo בחר.MCRS_SETTLEMENT.id, dbo.MCRS_SETTLEMENT.settlement של dbo.MCRS_SETTLEMENT
איפה (מזהה >= @MinId) ו (מזהה <= @MaxId)
]]>
</רכוש>

</קצה>

פריימר BDC

מבוא BDC

דוגמה פונקציונלית: מזין אוטומטי של BDC מתחבר למסד נתונים SQL עם וסיסמת המשתמש מוטבע

הייתי צריך לחווט מוס למסד נתונים של SQL באמצעות BDC. למטרות בדיקה/POC, רציתי להטביע את SQL חשבון מזהה משתמש וסיסמה ב- ADF. החל תבנית זו (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), יצרתי על ADF מתחבר מקרה ספציפי של שרת SQL, נכנס עם מזהה משתמש ספציפי שם וסיסמה, שמוצג מקטע הזה:

  <LobSystemInstances>
    <LobSystemInstance שם="ClaimsInstance">
      <מאפייני>
        <רכוש שם="AuthenticationMode" סוג="System.String">מעבר</רכוש>
        <רכוש שם="DatabaseAccessProvider" סוג="System.String">SqlServer</רכוש>
        <רכוש שם="מקור הנתונים RdbConnection" סוג="System.String">מופע serveractual בפועל</רכוש>
        <רכוש שם="קטלוג RdbConnection הראשונית" סוג="System.String">קטלוג התחלתי בפועל</רכוש>
        <רכוש שם="RdbConnection משולב אבטחה" סוג="System.String">SSPI</רכוש>
        <רכוש שם="איגוד RdbConnection" סוג="System.String">שווא</רכוש>

        <!-- אלו ערכי מפתח: -->
        <רכוש שם="מזהה המשתמש RdbConnection" סוג="System.String">שלctual מזהה משתמש</רכוש>
        <רכוש שם="סיסמה RdbConnection" סוג="System.String">סיסמה בפועל</רכוש>
        <רכוש שם="RdbConnection Trusted_Connection" סוג="System.String">שווא</רכוש>

      </מאפייני>
    </LobSystemInstance>
  </LobSystemInstances>

. זה לא עבודה מומלצת, אבל זה שימושי עבור תצורת בדיקה מהירה ופשוטה. זה היה מפתיע שקשה להבין.. מעולם לא מצאתי דוגמא פונקציונלי עם מילות מפתח לחיפוש:

  • ב- adf מוטבע וסיסמת
  • להטביע מזהה משתמש וסיסמה ב- adf
  • להטביע מזהה משתמש וסיסמה ב- bdc ב- adf
  • sharepoint bdc פריימר
  • sharepoint להטביע מזהה משתמש וסיסמה ב- adf

</קצה>

מנוי על הבלוג שלי.

SPD פעולות זרימת עבודה מותאמת אישית — שיפורים מניפולציה של מחרוזת

כשבוע לפני, התחלתי את פרוייקט codeplex מספק שיטה פשוטה למדי כלליים עבור הוספת פעולה מותאמת אישית פונקציות SharePoit מעצב זרימת עבודה. הוא מתואר כאן: http://www.codeplex.com/spdwfextensions. מעבר פשוט מתן מסגרת, היא גם שואפת לספק ערכה של פונקציות שימושיות שיהפכו SPD שימושי/גמיש/חזק יותר.

להלן התכונות המתוכנן הנוכחי עבור גירסה 1.0: https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=spdwfextensions&ReleaseId=8280

אם ישנה כל עניין בפרוייקט זה, נא להשאיר תגובה או התחל/הוסף כאן לדיון: http://www.codeplex.com/spdwfextensions/Thread/List.aspx

הנה הקבוצה הנוכחית של הפונקציות שבהן יש מקודד (למרות נבדק באופן מלא של 11/08/07):

פונקציה תיאור (אם לא זהה.הפונקציה נטו)
Num-ערכי() מחזירה את מספר "ערכים" במחרוזת לפי מפריד שיצוין.

לדוגמה: Num-ערכי במחרוזת "a,b,c" עם מפריד"," = 3.

ערך() החזרת ה-token nth במחרוזת לפי מפריד שיצוין.
אורך String.Length
החלף() String.Replace()
מכיל() String.Contains()
מחזירה את המילה "true" או את המילה "false".
מחרוזת משנה(התחלה) String.Substring(התחלה)
מחרוזת משנה(התחלה,קצה) String.Substring(התחלה,קצה)
ToUpper() String.ToUpper()
ToLower() String.ToLower()
StartsWith() String.StartsWith()
מחזירה את המילה "true" או את המילה "false".
EndsWith() String.EndsWith()
מחזירה את המילה "true" או את המילה "false".

מהירה & קל כתובת url קידוד כלי שולחן

אני אצטרך לכתובת url-לקודד בכמה חוטים השבוע, סטירה יחד כלי קטן חשבתי להראות ב- SkyDrive למען הקהילה.

לקבל את זה כאן בינארי: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncode.zip

לקבל את הפתרון visual studio כאן: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncodeVS2005.zip

הנה צילום מסך:

התמונה

מהיר וקל: להטביע היפר-קישור לתוך web part תצוגת נתונים XSLT

עדכון (01/17/08): הפוסט בבלוג הזה מדבר על היפר-קישור נוסף XSL לאל: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.

מבט כולל על וחשיבה אובייקטיבית: יצרתי תרשים עמודות פשוטה כדי לשמש רכיב בלוח מחוונים. אני לשמור את פרטי הבנייה תרשימים עבור עוד פוסט, . אבל אני לא המציא את הטכניקה הזאת (וגם לא את סימן השאלה, לצורך העניין). התברר היה באג בתרשים ובזמן תיקנתי את זה, ניצלתי את ההזדמנות כדי להמיר תוויות קצת היפר-קישורים מכוונים הרשימה הבסיסית מאחורי הגרף. לדוגמה, יש תווית עם ערך "החזק". רציתי להפוך את התווית היפר-קישור כך המשתמש יכול ללחוץ על זה ולא להסתעף הערכים הספציפיים ברשימה שערכו מצב זה "להחזיק".

צעדים:

  1. שימוש ויזואלי הסטודיו. intellisense sharepoint-מודעות.
  2. העתק של DVWP XSLT visual studio (יצירת פרוייקט ריק, להוסיף קובץ XSL לפרוייקט).
  3. להעתיק את הקישור שהרצוי לתוך הלוח.
  4. להדביק את המיקום הנכון, ה-XSL.
  5. המרת כתובת URL מפרידים ויכוח על מחרוזת השאילתה מ"&" "&המגבר;"
  6. Url-לקודד ארגומנטים בודדים.
  7. לעטוף את שם בפנים <href…> </של>

דוגמה:

. יש לי כתובת URL:

http://[שרת]/[האתר]/Lists/Open Positions/AllItems.aspx?תצוגה ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = המגייס&FilterValue1 = החזק

אני להמיר אותו לתוך:

     <של href="Lists/Open Positions/AllItems.aspx?תצוגה = % 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1 %7 d&המגבר;FilterField1 = המגייס&המגבר;FilterValue1 = החזק"> . תחזיק: </של>

אני באופן ידני הפכה את הארגומנט הראשון מ:

{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}

כדי:

%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1 %7 d

(במשחק הזה, השינויים המרובים הסד פתוח עד 7% ב וסוגר את הסד המרות ל %7 d)

הטיעונים השני והשלישי’ פרמטרים ("FilterField1 =מגייס" "FilterValue1 =. תחזיק" בהתאמה) לא צריך להיות url מקודד כי הם אינם מכילים תווים לא בטוחים.

הערות:

טכניקה זו בדרך כלל צריך לעבוד בכל מקום שאתה רוצה להטמיע היפר-קישור ב- XSLT בו ההיפר-קישור כוללת פרמטרים על כתובת ה-URL כגון:

http://[שרת]/[האתר]/Lists/Open Positions/AllItems.aspx?תצוגה ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = המגייס&FilterValue1 = החזק

. יש לי כתובת ה-URL עצמה על ידי הגישה את הרשימה המותאמת אישית וסינון באופן ידני לפי העמודה מצב (שכותרתו "מגייס" מעל).

מהיר ופשוט: הפעל זרימת עבודה של SharePoint Designer לעדכן טופס InfoPath

תרחיש: יש לי טופס של InfoPath זה קבלה-מסתיים תהליך זרימת עבודה מיושמת באמצעות SharePoint Designer. בשלב מסוים, מנהל חייב לאשר את הטופס. מאז אני לא יכול לסמוך על היסטוריית זרימת עבודה כדי לעמוד בדרישות הביקורת שלי, אני מחליט לאחסן הודעה הביקורת שלי ישירות על הטופס עצמו.

מבט כולל:

עיצוב הטופס, לפרסם אותו בתור סוג תוכן ועל הטופס עצמו אל ספריית מסמכים. מארק הרצוי שדות טופס כבלתי ניתנת לעדכון של מוס. הטופס קשורה לסוג התוכן ואת סוג התוכן "מצורפת" בספריית טפסים (או הרבה, אם אתה רוצה). לכתוב שזרימת עבודה מעדכן את השדה.

שלבים ספציפיים:

  1. יצירת ספריית מסמכים. . זה יחזיק את תבנית InfoPath שלך.
  2. צור ספריית טפסים.
  3. ליצור את הטופס של InfoPath. לכלול שדה טקסט, "ביקורת הודעה".
  4. פרסום הטופס כסוג תוכן (לא מסמך).
  5. בעת מילוי תיבות הדו-שיח פרסום:
    של) שמור את הקובץ. xsn לספריית המסמכים (שלב #1).
    b) פרסום ההודעה ביקורת"" שדה ולסמן אמיתי: "אפשר למשתמשים לערוך את הנתונים בשדה זה על-ידי שימוש בגליון נתונים או מאפייני דף".
    c) יצירת סוג תוכן חדש ולתת לו שם מתאים.
  6. גישה ספריית טפסים.
    של) עבור אל הגדרות מתקדמות שלה ולאפשר את ספריית טפסים לנהל סוגי תוכן.
    b) בחר את סוג התוכן החדש שנוצר (5c לעיל). זה יקובצו תחת "Microsoft InfoPath" (או דומה).
    c) הסרת המחדל "צורה" סוג תוכן מספריית.
    d) לסמן את הספריה שיש "הצג כדף אינטרנט" כך שהטופס תשיק של SharePoint והלקוח לא InfoPath תחנת עבודה.
  7. חזור לספריית טפסים נכונה ולחץ על "חדש" כדי פשוט לוודא שהטופס הוא פורסם כראוי ופועל כפי שאתה רוצה.
  8. תדליק את SharePoint Designer, נווט אל האתר המארח ספריית הטפסים שלך (משלב 2).
  9. ליצור זרימת עבודה חדשה מצורף אל ספריית טפסים.
  10. הוסף פעולה בודדת "להגדיר שדה של הפריט הנוכחי". אתה אמור לצפות SharePoint Designer הרשימה את השדה שלך, "ביקורת הודעה". להקצות לו ערך.
  11. לחץ על סיום. ולחזור אל ספריית הטפסים.
  12. ליצור טופס חדש ולשים ערך מבחן כלשהו לתוך ההודעה ביקורת"" שדה.
  13. . שמור את זה ולחזור אל ספריית הטפסים.
  14. לחץ לחיצה ימנית, בחר באפשרות זרימת עבודה"" ולהתחיל את זרימת העבודה שלך.
  15. זה צריך להפעיל באופן כמעט מיידי. . תעלה את הטופס (משלב 12) ואם הכל לפי התוכנית, "ביקורת הודעה" הוקצתה שיהיה ערך שסיפקת בשלב 10.

הערות:

לא כל פקדי ייתכן שתצורתה נקבעה עבור תקשורת דו-כיוונית זו. לדוגמה, לא נראה ליישם זרימת עבודה SPD שמשנה שדות טקסט שעטופה בתוך מקטעים חוזרים.

אחד של מפתח לקחת משם של הנה כי אנו באמת יצרת סוג תוכן עם תבנית המשויך. זה גם מאפשר לנו לאחסן מספר תבניות טופס של InfoPath בספריה באותו טופס.

זה דורש שרת הטפסים. זה בהחלט לא הולך לעבוד ב- WSS 3.0 הסביבה ואת בטח גם דורש סביבה ארגונית SharePoint.

ביגל נחת (באוקטובר 2007 בעיה)

(. זה למעשה קצת מיושן, אבל כפי מכריז המוטו תחנת כיבוי אש האהוב שלי, "מוטב מאוחר מאשר לעולם לא").

לבדוק את זה כאן: http://www.sharepointbeagle.com/

אם יש לך כבר, כדי להיות בטוח הירשם.

בטח, הקפד לקרוא המאמר שלי על פרויקט SharePoint בעולם האמיתי (כולל הגדרת דרישות, של ה-KPI, סוגי תוכן, לוחות מחוונים ועוד) כמו גם עמיתי מאמר על ה-web part שאילתת תוכן.

יש גם הרבה דברים טובים.

כיצד להסיר “הצג את כל תוכן האתר” קישור

אני שאלתי את השאלה הזו כמעט כל שבוע, בדרך כלל בהקשר של דיון אבטחה. יוצר מנהל/האתר יש אספקה של אתר, האבטחה, אינטרנט מסודרים חלקים ומותאמים אישית של הפעלה מהירה כדי לספק כך מושלם קבוצת אפשרויות משתמש הקצה. אבל, מחוץ לקופסה, לא ניתן להסיר את "הצג את כל תוכן האתר" קישור.

מארק ווגנר מספק את התשובה כאן (http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=36). כתיבה שלו הוא מעולה בשני מישורים. הוא מספק תשובה לשאלה, "כיצד ניתן להסיר את הצג את כל תוכן האתר" קישור? לאחר מכן, הוא עונה על שאלת המשכית מיידית: כיצד ניתן בקלות להפעיל את התצוגה לקשר את כל תוכן האתר על בסיס על-ידי אתר?

בתור בונוס: הגישה שלו עובד עבור WSS, לא רק מוס.

</קצה>

מנוי על הבלוג שלי!