ארכיון חודשי: בפברואר 2011

שינוי אתר קבוצות עמודה ב- SharePoint Designer 2010

יצרתי שורה ארוכה של עמודות אתר באמצעות SharePoint Designer 2010 הבוקר הבנתי שנתתי להם כל הקבוצה הלא נכון.  זה היה באופן מביך קשה להבין.  . לא ידעתי היכן ללחוץ...

image

כל הזמן רצה לחץ פעמיים על השורה עצמה או לחץ על לחצן הגדרות העמודות ברצועת הכלים.

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

image

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

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

לערוך באופן ידני את הקובץ SPD XOML לנקות את המשתנים

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

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

הראשונה, אתה צריך לאתר את הקובץ XOML בפועל.  כתבתי על הנושא הזה כאן: http://www.mstechblogs.com/paul/how-to-find-and-edit-spd-2010-workflow-xoml-files.  מצאתי פעם, פתח את הקובץ XOML ואתר במשתנה שברצונך להסיר.  במקרה זה, הוספתי את פעילות "להתחיל את תהליך האישור" לזרימת העבודה שלי פעמיים.  אני רוצה להסיר זרימת עבודה משתנה בשם "isItemApproved" שכן זה אינו משמש עוד יש כפילויות משתנה בשם "isItemApproved1". 

פשוט לעשות חיפוש טקסט עבור המשתנה.  המסך שלי נראה ככה:

image 

אם אתה מבצע חיפוש סביב בקובץ XOML, תוכל לראות כי "IsItemApproved1" משמש במקומות רבים ושונים, ואילו המקורי "IsItemApproved" הוא פשוט להגדיר פעם אחת אף פעם לא.

למחוק אותו ולאחר מכן שמור את הקובץ.

החלק הבעייתי בלבד היא שהייתי חייב למעשה לסגור SPD לגמרי ופתח אותו מחדש לפני SPD הודה כי למחוק את השדה.

בטח, מחיקת שדות לא הדבר היחיד שאתה יכול לעשות עם XOML ולא יורשה בלוג על נושאים אחרים כמו זה בעתיד.

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

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

כיצד למצוא ולערוך SPD 2010 קבצי XOML זרימת העבודה

. עשיתי מחקר דרך קלה כדי להסיר חבורה של זרימת עבודה משתנים מבלי להיאלץ לבלות את אחר הצהריים בפגישה מלא blown SPD לחץ על עינויים.  אני חשבתי לערוך את XOML ישירות, וזה הצהרתי זרימות עבודה XML קובץ המשמש כבסיס SPD.  איך מצאתי את זה.

הראשונה, ללכת האפשרות ' כל הקבצים ' תחת אובייקטים באתר הניווט.  אתה צריך את ההרשאות המתאימות כדי לראות את זה, אז אם זה חסר לך, פנייה אל האדם admin נכון להעניק לך את priv.  דבר זה נראה:

image

 

כל הקבצים מציגה רשימה של. כל הקבצים:

image

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

image

לחץ על תוך התיקיה הנכונה,  אתה רואה רשימה של כל הדברים הטובים מעניין המרכיבות את זרימת הצהרתי SPD.  לחץ לחיצה ימנית על הקובץ .xoml, בחר באפשרות "פתח עם –> SharePoint Designer (פתוח כ- XML)"כדי לערוך את XOML ישירות:

image

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

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

קבלת תשובות חזרה על הפעילות תהליך אישור להתחיל

אני משחק עם הפעילות של זרימת עבודה של SharePoint Designer מהודר "להתחיל את תהליך האישור" חדשה, היה במהירות שידית כי מיד לא יכולתי לענות על השאלה, "היה זה מאושר או לא?”. 

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

SNAGHTML2350fe72

גם לרשום את זה אם אתה מוסיף יותר מאחד מהם, SPD צירוף של "1", וכן הלאה על כל המשתנים. 

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

אני נותן קרדיט Microsoft עבור בעקבות "הוא" המוסכמה למתן משתנה בוליאני.  אמנה זו עושה את זה די ברור איזה סוג של נתונים הוא אמור להיות שם.

בחקר, . מצאתי את המאמר מועיל: http://office.microsoft.com/en-us/sharepoint-designer-help/workflow-actions-in-sharepoint-designer-2010-a-quick-reference-guide-HA010376961.aspx.  זה לא באמת בבעיה זו ספציפית, אבל יש מידע טוב בנושא, כך שאני אלך לשם. אם ברצונך ללמוד עוד אודות פעילות ספציפית זו ואחים שלו.

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

SharePoint Designer 2010 הפונקציה MOD

אני עובד על כמה יומן שבו העובדים יכולים לבקש חופשה, הזמן חולה, ועוד. חוק אימות אחד דורש כי עליך תמיד לבקש זמן ב 4 במרווחי זמן של שעה.  זה די קל לשימוש – מודולו פונקציה.  מודולו פונקציה מפרט את השארית במחלקה.  אם יש ללא שארית, מודולו הוא אפס, אחרת, . זה מה שנשאר.  למשל, 8 mod 4 = 0 (8 / 4 = 2 אין שברים).  מצד שני, 8 mod 5 הוא 3.

הייתי צריך לעשות את זה פעם עם SPD 2007 פעם ובסוף למעשה באמצעות טופס של InfoPath כדי לפתור, אז זה היה מטופל בקצה הקדמי בזמן.  במקרה הנוכחי, אולי יש טופס InfoPath בתמונה, אבל זה לא ברור עדיין.  כל כך, . עבדתי בחוץ טכניקה כדי להבטיח שהזמן בקשות הן תמיד בתוך 4 ביממה במרווחים.  . אני הולך לעשות את החשבון, שמור אותו בתוך מחרוזת, ואז כמה מחרוזת משנה את הדברים. 

שאני עוצר SPD 2010 ולהפתעתי (ואני נבוך) יש מודולו פונקציה כבר:

image

אני מופתע לטובה שוב. כי אני צריכה משהו שכבר קיים מחוץ לקופסה.  זה נראה כמו פונקציה מוזר ל- Microsoft לכלול בתערובת.  יש לו סוג של "זה קל, "אז בוא תכניס אותו להרגיש את זה.  אני מזדהה עם זה, כפי שאני עושה זה את עצמי כל הזמן.  הפרויקט CodePlex יש חבורה של פונקציות קטנים הנובעים העיקרון ItsEasy.  באותו זמן, מיקרוסופט ממשיכה לתמוך ראיות האפקט "95% של הדרך" עם המוצר.  הם ליישם את הפונקציה Mod, אבל לא הפונקציה round, למשל.

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

פרוייקט CodePlex – סייר SP2010

במסגרת מאמץ מתמשך כדי ללמוד את הפרטים הטכניים ברמה נמוכה של SharePoint 2010, יצרתי "SharePoint Explorer"סוג של הכלי.  הרעיון אינו חדש.  נעשה שימוש בפרוייקט זה יותר מפעם אחת: http://sharepointexplorer.codeplex.com/.  הרעיון שלי הוא ליצור גירסה SharePoint כי משתמש מחובר רכיבי web part כדי להציג כל הפרטים ברמה נמוכה מודל האובייקט יכול לספק. 

בבלוג זה משמש הן הכרזה של הפרוייקט, כמו גם קריאה עבור מתנדבים.  אם אתה מעוניין לעבוד על הפרויקט הזה, . תודיע לי בדוא (galvin.paul@gmail.com) אנו נעבוד אותו.

. הנה הפרויקט: http://sp2010explorer.codeplex.com/

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

SharePoint Designer 2007 פרוייקט CodePlex הרחבות של זרימת עבודה

אני לשים יחד את הפרוייקט CodePlex השני שלי (פרטים יימסרו ביום רביעי השבוע, פחות או יותר-) והיה לי מבט על הפרויקט הראשון שלי, "SharePoint Designer זרימת הרחבות". מביך לראות את זה זה הורדו מעל ונבהלתי 4,800 פעמים:

image

בעיקרון שכחתי את הפרויקט הזה בחודש האחרון 12 חודשים. אני מתביישת כי בעיקרו של דבר נטשו אותו.

אני הולך לקבל עוד נראה ולהזכיר לעצמי מה זה כל על.

אם מישהו יהיה מעוניין לעבוד על זה, . תודיע לי ואני נוכל לראות על שיתוף פעולה על זה. 4,800 הורדות לא סכום ענק, . אבל זה יותר ממה שחשבתי וזה כנראה שווה מאמץ להרים את זה, נושאת אותו קדימה.

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

ייצוא-SPWeb אומר לי "InvalidData” אך הנתונים תקף

אני בתהליך של כותב מאמר עבור אנשים טובים ב www.sharepointbriefing.com כולל פריסת רשימת מחוות פיתוח חוות ייצור.  אני עדיין מורגלים להשתמש stsadm ויש צורך לשבור ההרגל, כך יריתי עד SharePoint 2010 מעטפת ניהול שיחק סביב באמצעות ייצוא-SPWeb לגבות רשימת שלי.  איזה מוזר דבר קשה המנגרובה!

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

image

שגיאה זו, "InvalidData: (Microsoft.Share…CmdletExportweb"") היה הורג אותי.  אני נבוך ב כמה זמן נאבקתי עם זה.

אני בעבר הפעל לתוך קיר עם PowerShell stsadm בשימוש לעקוף אותו.  ניסיתי את זה שוב הפעם וברחתי תוצאות טובות.

ביליתי הרבה זמן שטיפול האפשרות –Identity ולאחר מכן לבסוף עם –ItemURL.  מתברר כי האפשרות ItemURL דורשת נתיב מלא של הרשימה או הספריה לך  ברצונך לייצא ללא http://סיביות שרת.  כל כך, למרות העובדה הארגומנט זהות המצביעים לאתר משנה, ItemURL הוא לא ביחס את זיהוי אך ביחס אוסף האתרים.

היה נחמד cmdlet לספר לי מה היה חוקי המינימלי (זהות במקרה זה) מה היה לא חוקי (ItemUrl).  נגיעות קטנות אלה מסייעות לאנשים לחבק את המוצר.  לא בזבוזים ממשלתיים גדולים נגד SharePoint, but a little one at least 🙂

יש לקוות לפוסט זה יציל מישהו מעט צער בעתיד.

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin

עבודה עם TreeNodeBinding ב ASP.פקד NET Treeview

אני עובד על מה אני מקווה יהיה בקרוב שפורסמו CodePlex project מספק קצת משולב נחמד של web parts מדבר זה לזה באמצעות חיבורי ספק/הצרכן כדי לחקור את אתר SharePoint במצעים.  (זה בהחלט עשו לפני, אבל זה פרוייקט למידה ככל דבר אחר).  זה נועד לשמש תחליף תצוגת סייר windows SharePoint 2010 ספריות מסמכים.

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

<כתובת url של sitecollection =’http://demo2010a:9090′>
 
<אינטרנט
     כותרת = 'שלום עולם החול' 
     תבנית =' אתר המאפשר לצוותים לארגן במהירות, מחבר, ושיתוף של מידע, BLAH דבר BLAH'>

     <רשימת
        כותרת ='BCC_Health_Services_FAQs’
        תבנית ='CustomList’
       
listid =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</רשימת>

     <רשימת
        כותרת = 'BCC_Notifications' 
        תבנית = 'CustomList' 
        listid =’
http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1-877 c-41 c 0-9063-b9612be80d5e’>
     </רשימת>

  </אינטרנט>

</sitecollection>

ציפיתי לנקות מעלה כי ה-XML לפני כל הוא אמר, לעשות.

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

האתגר שלקחתי כאן היה להתחבר בתצוגת העץ פקד מקור נתונים XML במקום באופן ידני ולהכשיר פריטי treenodes שלי כפי לי לעבור את העץ.  עשיתי זאת משום אני בכוונה מציג דברים קשים יותר על עצמי (זהו פרויקט למידה אחרי הכל) משום שיש לי מושג מעורפל זה בונה את צמתי העץ כפי לי לעבור את העץ אינו רעיון טוב לטווח ארוך.

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

 

image

זו אינה שימושית.  היא מסייעת המחלקה TreeNodeBinding בו.  אפשר להשתמש זה לספר הפקד Treeview כיצד הוא צריך לפרש את ה-XML.  הנה דוגמה:

tnb = TreeNodeBinding חדש();
tnb.DataMember = "רשימה"; // זהו תווית ה-xml עבור אתר.
tnb.TargetField = "listid";
tnb.ValueField = "כותרת";
tnb.ToolTipField = "תבנית";

איגוד זה מספר treeview כי כאשר הוא מוצא <רשימת> צומת ב- XML, החל האיגודים עבור TargetField, ValueField, ToolTipField.  במאי יישום, אלה למפות באופן הבא:

  • TargetField: כאשר מישהו לוחץ על ערך צומת, זהו מה תקבל עבור SelectedNode.Value.  זהו לבלבל עם...
  • ValueField: זהו מה ברצונך Treeview כדי להציג למשתמש.
  • ToolTipField: ערך ה-XML הרצוי כתיאור.

להוסיף TreeNodebinding איגודי נתונים של תצוגת העץ, באפשרותך לקבל פלט כמו זה:

 

image

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

</קצה>

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

עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin