Yoni Goldberg

SharePoint Expert, Human Workflow specialist. WWW.GOLDBERGYONI.COM

Archive for the ‘Uncategorized’ Category

מעל 40 טיפים לפיתרון מוצלח, חלק 3 מתוך 4-SharePoint Workflow

with 3 comments

 

לחץ כאן לחלק 1 –טיפים ליישום ללא קוד
לחץ כאן לחלק 2 –עוד טיפים ליישום ללא קוד
לחץ כאן לחלק 3 – אפילו עוד טיפים ליישום ללא קוד
לחץ כאן לחלק 4 – טיפים לפיתוח באמצעות קוד

 

19. clip_image002_thumb טיפ מספר 19: צור רשימת משימות באמצעות FEATURE

במערכת מהסוג הזה ישנם הרבה דפים שמציגים מידע מרשימת המשימות (דו”חות, הצגת המשימות האישיות לכל משתמש, הצגת המשימות לכל בקשה וכו’), לעתים רבות קורה שבמהלך הפיתוח או לאחר עליית המערכת לאוויר רוצים להחליף את רשימת המשימות (למשל אם משהו השתבש ברשימה הקיימת) לרשימה אחרת אלא שאז כל הדפים שמתשאלים את רשימת המשימות “נשברים” היות והרשימה שאליה הם פנו כבר לא רלוונטית. ראיתי מקרים בהם היו צריכים לשנות דפים רבים רק בגלל החלפת רשימת משימות. לכן מתוך דפים שמתשאלים את רשימת המשימות כדאי לפנות באמצעות שם הרשימה ולא ה-GUID. אולם ישנם מקרים בהם נהיה חייבים להשתמש ב-GUID לדוגמא כשאנו טוענים את דף העריכה של משימה אחד הפרמטרים שיש להעביר לדף הוא ה-GUID של רשימת המשימות ולכן כדאי ליצור את רשימת המשימות לא ידנית אלא באמצעות FEATURE – באופן זה נוכל תמיד ליצור את אותה רשימה עם אותו שם וגם אותו GUID וכך שרוצים ליצור רשימת משימות חדשה פשוט מוחקים את הישנה ומפעילים את ה-FEATURE מחדש.

Read the rest of this entry »

Advertisements

מעל 40 טיפים לפיתרון מוצלח, חלק 4 מתוך 4-SharePoint Workflow

with 3 comments

 
 
בחלק זה טיפים לפיתוח באמצעות קוד
לחץ כאן לחלק 1 –טיפים ליישום ללא קוד
לחץ כאן לחלק 2 –עוד טיפים ליישום ללא קוד
לחץ כאן לחלק 3 – אפילו עוד טיפים ליישום ללא קוד
לחץ כאן לחלק 4 – טיפים לפיתוח באמצעות קוד
 
27. clip_image002 טיפ מספר 27: הזהר מזרימה של מכונת מצבים (State Machine)

אמנם נכון ש-VS מאפשר לך לפתח מכונת מצבים ל-SHAREPOINT אבל שים לב למגבלה חמורה לפני שאתה יוצא אל הדרך: אין באפשרותך ליצור סבב אישורים של כמה אנשים בתוך זרימת מצבים, כלומר לא תוכל למשל להגדיר 2 מצבים: מצב אחד בו קבוצת מנהלים א’ מאשרת ולאחר שהם אישרו הבקשה עוברת למנהל על.

28.  clip_image002 טיפ מספר 28: תהליך שיודע לחזור לאחור
חזרה לאחור בתהליך היא בקשה מבוקשת למדי אולם זרימת עבודה סידרתית (SEQUENTIAL WORKFLOW) אינה תומכת בה באופן טבעי, אפשר אמנם לממש דרישה כזו באמצעות STATE MACHINE אך לשיטה זו מגבלות חמורות יותר. אז מה בכל זאת עושים? תוכל להשתמש בלולאה ולשים בה את כל הפעילויות, בכל פעם שמישהו רוצה להחזיר לאחור נתחיל שוב את הלולאה. הכי קל להסביר עם דוגמא: נניח ויש 4 מנהלים המאשרים אחד אחרי השני. כל מנהל יכול לבקש להחזיר את התהליך לאחור. נשים את כל המנהלים בתוך לולאה (כל מנהל מאשר הוא למעשה פעילות של יצירת משימה שלאחריה פעילות של הקשבה לשינוי במשימה) שתנאי הסיום של הלולאה יהיה שכל המנהלים אישרו או שאחד דחה, כלומר הלולאה תרוץ כל עוד יש מנהלים שצריכים לאשר. עכשיו נניח שמנהל מספר 3 מבקש להחזיר את התהליך למנהל מספר 2, התהליך ממשיך קדימה למנהל מספר 4 אך לא נכנס לשלב זה (על ידי השמת תנאי) היות ואנו צריכים לחזור למנהל מספר 2, כעת הלולאה תתחיל שוב, נדלג על מנהל 1(על ידי השמת תנאי) ונגיע למנהל מספר 2 – בדיוק מה שרצינו.

clip_image006

לולאה בתהליך מאפשרת לדמות מצב של חזרה לאחור, בתמונה כל הפעילויות של האישור נמצאות בתוך לולאה

Read the rest of this entry »

Written by Yoni Goldberg

November 27, 2011 at 8:43 am

Posted in Uncategorized

מעל 40 טיפים לפיתרון מוצלח, חלק 2 מתוך 4-SharePoint Workflow

with 6 comments

לחץ כאן לחלק 1 –טיפים ליישום ללא קוד
לחץ כאן לחלק 2 –עוד טיפים ליישום ללא קוד
לחץ כאן לחלק 3 – אפילו עוד טיפים ליישום ללא קוד
לחץ כאן לחלק 4 – טיפים לפיתוח באמצעות קוד

 

10. clip_image008_thumb[1] טיפ מספר 10: תן למעצבי התהליך ב-VISIO סביבת עבודה

אם קיימים באירגון אנליסטים/מעצבים/מיישמים שמעצבים את מודל זרימת עבודה ב-VISIO, למודל עשויות להיות גירסאות רבות, כמה עורכים במקביל ודיונים – מה יותר מתאים מלשמור את מודל זרימת העבודה כמסמך באתר SHAREPOINT ואפילו ליצור סביבת עבודה למסמך (Document Workspace)? באופן זה תהנה מכל יכולות ה-COLLABORATION של ניהול מסמכים בעיצוב זרימת העבודה. מעבר לזה, כל המשתתפים בעיצוב התהליך יוכלו לראות את זרימת העבודה ללא צורך בתוכנה על המחשב ישירות מתוך הדפדפן. בנוסף, כאשר מעצב תהליך יסיים, אפשר להגדיר שגורם בכיר יאשר לו את זרימת העבודה (WF ש ירוץ על המסמך).

clip_image004_thumb[1]

סביבת עבודה לקובץ עם מודל זרימת עבודה ב-VISIO

clip_image006_thumb[1]

צפיה במודל מתוך הדפדפן, כל המשתתפים יכולים לצפות בגירסאות השונות ללא צורך בתוכנה מקומית

 

11. clip_image003 טיפ מספר 11: שמירת טיוטא של מסמך/טופס ובחירה מתי להתחיל סבב אישורים

אנו נרצה לאפשר למשתמש שלנו שרוצה למלא טופס או מסמך (למשל בקשת חופשה) לבצע שמירה מבלי להתחיל סבב אישורים. למה? כי לפעמים לוקח יומיים או שבוע למלא בקשה ובטרם הבקשה מוכנה לא נרצה להתחיל בסבב אישורים. כשהבקשה תהיה מוכנה המשתמש ילחץ על כפתור מתוך הטופס להתחיל סבב אישורים. באופן טבעי דרישה כזו נפתרת על ידי ‘הפעלה ידנית של זרימת עבודה’ (כלומר לא להגדיר שזרימת עבודה תחל בעת שמירה של פריט אלא רק בהפעלה ידנית) אך זה דורש להוציא את המשתמש מהחוויה של הטופס וללמוד להפעיל זרימת עבודה במערכת SHAREPOINT. רוב הלקוחות לא יאהבו את זה. אז מה עושים? (1) מגדירים ברשימה שדה בשם IsDraft שאומר האם הטופס במצב טיוטא, בהתחלה ערכו של השדה חיובי (2) נגדיר שזרימת העבודה מתחילה בעת שמירה של פריט (כלומר מתחילה מייד כשנוסף פריט חדש). באופן זה כאשר המשתמש שומר טיוטא התהליך כבר התחיל (3) בתוך התהליך בהתחלה נאזין לערך השדה IsDraft ולא נתקדם קדימה עד שערכו ישתנה לערך שלילי. באופן זה ניתן למשתמש להתחיל את סבב האישורים כשנוח לו מבלי לצאת מהטופס.

 

Read the rest of this entry »

SharePoint 2010 launching event – download my presentation

leave a comment »

I had the honor to participate and present in the virtual launching event of SharePoint 2010 in Israel. My session was about SharePoint composites and its targeted for architects or other who wants to have an overlook of the core capabilities and tools regarding application building (designing forms, authoring workflows, connectivity, design, lists) and applications management. The PowerPoint slides along with the demo videos embedded are available for download here.

Written by Yoni Goldberg

July 27, 2010 at 5:11 pm

Posted in Uncategorized

Tagged with ,

List validation accepts excel functions

leave a comment »

List validation in SharePoint 2010 is another great step toward the development of “Zero Code” enterprise applications. ‘Excel style’ validation formulas can be defined to determine the validity of new list items, once a user try to add new list item, the formula is executed against the item columns. It should be noted, that excel functions are also valid for the validation formulas, this gives the user much more power in defining the validation rules. For example, in a calendar, to prevent employee from catching a meeting room for days, one can define a validation rule: The maximum meeting length is less than 2 days using the excel function “DateDif”:

Read the rest of this entry »

Written by Yoni Goldberg

May 25, 2010 at 10:41 am

Draft & Publish functionality for ASP.NET web parts

with 3 comments

One of my favorite features in SharePoint is the ability to edit a web part page in a draft version, design the page layout conveniently and then finally publish all the changes in a click. In ASP.NET web parts, this feature is not coming out of the box (changes are propagating immediately and can be seen by all users). For that reason, designers & content authors are unable to complete a page design before making the changes visible. In this article I will show how to extend the Web Parts framework and create a Publishing Control that will add Draft & Publish functionality.

Read the rest of this entry »

Written by Yoni Goldberg

May 5, 2010 at 6:26 pm

ASP.NET web parts demo for download

with 4 comments

This is a sample application I’ve created for a presentation about ASP.NET Web Parts (Personalization) in a big Israeli financial institute. The application emphasizes how to build customized and personalized portal using ASP.NET web parts framework, inside you’ll find example for a web parts page (IGoogle style) with different types of web parts including Asynchronous web parts (using ASP.NET AJAX 3.5), cached web parts, web parts skinning, web parts verbs and all the other necessary nuts and bolts. Download is available here.

Written by Yoni Goldberg

May 5, 2010 at 6:12 pm