28-09-12, 12:35 PM
محتويات المقالة :
- *اعداد البيئة التطويرية للشيربوينت .
- *برمجة وتطوير مكونات معينة للشيربوينت مثل webparts و lists و workflows.
- *تصفح وتشغيل مشاريع الشيربوينت.
- *نشر مكونات ومشاريع الشيربوينت.
اصبح *Microsoft SharePoint في السنوات الأخيرة احد اسرع خطوط التطور والإنتاج في شركة مايكروسوفت , فهو في الواقع *عبارة عن مجموعة من المنتجات والتقنيات المترابطة معاً والتي تقدم خدمات عظيمة في مجالات التوثيق document وادارة المحتويات content management والبحث search وتطبيقات الويب بشكل عام .
نستطيع أن نعرف الشيربوينت بانه Platform مرن جداً لتطبيقات الويب *يسمح لنا بتطوير ونشر كل شيئ ابتداءً من الwebparts المستقلة وانتهاءً بمشاريع الويب الكبيرة . وعلى الرغم من أنه يمكن استعمال الشيربوينت لاستضافة مواقع الويب التي هي موجهة للزوار لكن المجال الأنسب له هو في المواقع التي تتضمن عضويات مسجلين وبشكل محدد اكثر تلك المواقع التي تخدم احتياجات الموظفين ضمن منظمة أو شركة ما. حيث أن الشيربوينت يزود تلك المواقع بكل ما تلزم ويقدم لها تكامل مميز مع Microsoft Office اضافة إلى دعمه لكودات التحقق الداخلي والتصديق authorization وامكانية الوصول للبيانات الخارجية external data ويقدم ايضاً دعم مميز للworkflows.
سنسلط الضوء في هذه المقالة على ادوات SharePoint التطويرية في Visual Studio 2010 وسنوضح كيفية بناء مشاريع الشيربوينت وتنقيحها ونشرها.
معلومة : اضافة إلى استعمال الفيجوال ستديو 2010 يمكنك انشاء مشاريع وحلول الشيربوينت باستعمال SharePoint Designer 2010 المجاني والذي يقدم نظرة سطحية منطقية عالية المستوى ويخفي كثير من الأمور الخلفية بعكس الفيجوال ستديو 2010 . يتضمن SharePoint Designer بعض ادوات WYSIWYG المميزة من اجل تصفح وتعديل المكونات بسهولة في مواقع الشيربوينت .
يمكننا اعتبار SharePoint Designer بأنه خيار رائع لغير المطورين (IT Professionals و المستخدمين end-users) لكن بكل الأحوال فهو يبقى مفيد كثيراً حتى للمطورين عند بناء مهام ترتيبة ومخططات للصفحة page layouts و master pages والتي يكون تطويرها في SharePoint Designer اسهل بكثير من الفيجوال ستديو . لذلك كثير من المطورين المتمرسين لا يستغنون عن هذه الأداة الرائعة .
تحضير البيئة التطويرية للSharePoint 2010
كان احد اكثر السلبيات للإصدارات السابقة من الشيربوينت أنها تتطلب استعمال windows server من اجل تطوير مشاريع الشيربوينت محلياً وذلك بسبب أن SharePoint 2007 وما قبله يحتاجون لنظام تشغيل سيرفر فكان يجب عليك أن تمتلك ويندوز سيرفر من اجل تنفيذ أي عملية تنقيح ومراجعة وتجريب لمشاريع الشيربوينت محلياً.
تم اخذ هذا الأمر بعين الإعتبار في SharePoint 2010 فيمكنك الان تنصيب الشير بوينت على ويندوز 7 او على الفيستا (sp1 فما فوق) اضافة لWindows Server 2008 . لكن لسوء الحظ سوف تحتاج لمواصفات عالية بعض الشيئ على الجهاز المحلي الذي تريد التطوير عليه لأن الشيربوينت 2010 يحتاج لنظام تشغيل 64 بت ويفضل أن يكون لديك 4GB للذاكرة RAM من اجل تنصيب SharePoint Foundation , اما اذا اردت تنصيب SharePoint Server فتحتاج من 6GB إلى 8GB من الذاكرة RAM .
معلومة : الفرق بين SharePoint Server و SharePoint Foundation
اتانا الشيربوينت 2010 باصدارين رئيسيين : SharePoint Server و SharePoint Foundation . كان الأخير يدعى سابقاً ب Windows SharePoint Services (WSS) وهو الإصدار المجاني للشيربوينت وهو مخصص للشركات والمشاريع الصغيرة ويتضمن دعم للwebparts وتطبيقات الويب وادارة الوثائق document management ومكونات الويب الإجتماعية والتعاونية مثل المدونات blogs و wikis و الcalendars والنقاشات discussions .
اما من الناحية الاخرى فقد تم اصدار SharePoint Server للمؤسسات الضخمة والمشاريع المتقدمة , وتتطلب هذه النسخة تكلفة لمنتج السيرفر نفسه اضافة إلى Client access license (CAL) لكل مستخدم .
تتضمن هذه النسخة من الشير بوينت جميع مميزات نسخة SharePoint Foundation اضافة لتزويدها بمواقع شيربوينت متعددة وتصفح متطور وبحث مفهرس index search ووصول للbackend data وتتميز ايضاً في دعم personalization و Single Sign ON .
اذا لم تكن تبني مشروع يتطلب المميزات المتقدمة للSharePoint Server فالافضل لك أن تستعمل SharePoint Foundation والذي يتطلب موارد اقل للجهاز . ولذلك لأن كل شيئ تبنيه في SharePoint Foundation يمكن ان يعمل على SharePoint Server.
تنصيب المتطلبات
اذا كان لديك ويندوز سيرفر فإن تنصيب الشيربوينت عليه هو امر سهل جداً . فنبدأ عملنا بتشغيل اداة فحص المتطلبات PrerequisiteInstaller.exe والتي تفحص وتنصب الإحتياجات المطلوبة بشكل تلقائي .
اما اذا كنت تريد التنصيب على انظمة ويندوز 7 او فيستا فالامر اصعب بقليل حيث أنه لا توجد لحد هذه اللحظة اداة مماثلة للمتطلبات فيجب عليك تنصيبها جميعا بشكل يدوي.
هناك متطلب اخر يجب أن تنصبه مهما كان نظام التشغيل الذي تعمل عليه وهو WCF Hotfix للويندوز والذي يمكنك تحميله من هذه الروابط :
Windows Vista أو *Windows Server 2008:
http://go.microsoft.com/fwlink/?linkID=160770
Windows 7 *أو *Windows Server 2008 R2:
http://go.microsoft.com/fwlink/?LinkID=166231
اما بالنسبة للشيربوينت نفسه فيمكنك تحميله من الروابط التالي:
SharePoint Foundation 2010
http://www.microsoft.com/downloads/en/de...laylang=en
SharePoint Server 2010
http://technet.microsoft.com/en-us/evalc...88573.aspx
بعد أن تقوم بتحميل الشيربوينت سوف يكون لديك ملف SharePoint.exe في حال حملت SharePoint Foundation أو OfficeServer.exe في حال حملت SharePoint Server . يجب أن نقوم بفك ضغط هذه الملفات لذلك قم بانشاء مجلد جديد مثل c:\SharePoint وقم بنسخ الملف الذي حملته اليه ومن ثم افتح قائمة ابدأ و شغل cmd ونفذ الأمر التالي:
في حال قمت بتحميل SharePoint Server فنفذ نفس الخطوات السابقة بوضع OfficeServer.exe بدلاً من SharePoint.exe .
ملاحظة : في حال كنت تنصب الشيربوينت من CD/DVD فهذه الخطوة غير ضرورية لان الملفات تكون مفكوكة الضغط وجاهزة.
في حال كنت تنصب الشيربوينت على ويندوز سيرفر فقم بتشغيل PrerequisiteInstaller.exe وبعدها انتقل للقسم التالي من الشرح (تنصيب SharePoint 2010) اما اذا كنت تنصب الشيربوينت على ويندوز 7 او ويندوز فيستا فيجب عليك تنصيب المتطلبات التالي يدوياً :
ملاحظة : كثير من هذه المتطلبات تنصب بشكل تلقائي عند تنصيبك للفيجوال ستديو 2010 و SQL Server 2008.
.NET Framework 4 : تنصب تلقائياً مع الفيجوال ستديو 2010
Windows PowerShell 2.0: تنصب تلقائياً مع الفيجوال ستديو 2010.
Windows Installer 4.5 Redistributable: تنصب تلقائياً مع الفيجوال ستديو 2010
Microsoft FilterPack 2.0: *يمكن أن تجده في نفس الملفات
c:\SharePoint\PrerequisiteInstallerFiles\FilterPac k\FilterPack.msi.
Microsoft Sync Framework: تنصب تلقائياً مع الفيجوال ستديو*2010
SQL Server 2008 Native Client: تنصب تلقائياً مع SQL Server 2008.
Windows Identity Foundation Runtime Framework
http://www.microsoft.com/downloads/en/de...laylang=en
ADO.NET Data Services: تنصب تلقائياً مع الفيجوال ستديو 2010
Chart Controls:
http://www.microsoft.com/downloads/en/de...laylang=en
Microsoft ADOMD.NET:
http://www.microsoft.com/downloads/en/de...laylang=en.
بعد ذلك يبقى خطوة اخيرة وهي الذهاب لwindows features عن طريق لوحة التحكم - Programs and Features وثم اجعل الخيارات كالصور التالية :
لمعلومات اكثر عن المتطلبات انظر للمواضيع التالية:
متطلبات SharePoint Foundation 2010
http://technet.microsoft.com/en-us/libra...88751.aspx
متطلبات SharePoint Server 2010
http://technet.microsoft.com/en-us/libra...62485.aspx
تنصيب*SharePoint 2010
الان بعد أن قمنا بتنصيب المتطلبات فيمكننا تنصيب SharePoint Foundation أو SharePoint Server . اذا كنت تعمل على ويندوز سيرفر يمكنك ببساطة تشغيل الinstaller : setup.exe اما اذا كنت تنصب على ويندوز 7 أو فيستا فسوف تحصل على الخطأ التالي عندما تحاول تشغيل setup.exe :
لازاله هذا الخطأ نحتاج لتعديل ملف الإعدادات config.xml والموجود في مجلد c:\SharePoint\files\Setup ونضيف السطر التالي*
tag <configuration>ل :
عندما نضيف هذا السطر زنحفظ التغييرات نقوم بتشغيل setup.exe ونتبع التعليمات في الinstaller ونختار Standalone installation *(تنصيب سيرفر جديد مستقل بالإعدادات الإفتراضية) وبعد انتهاء التنصيب سوف يتم تشغيل SharePoint Products Configuration Wizard وعند الإنتهاء من الwizard بنجاح سوف يتم فتح موقع الشيربوينت الإفتراضي في نافذة جديدة كما هو مبين:
تصفح واستكشاف SharePoint 2010
عندما ترى SharePoint *للمرة الاولى وتحاول استكشافه فانك سوف تتفاجأ وتصدم فيه وذلك لأن كثير من المصطلحات المستعملة في الشيربوينت ستكون غريبة عليك وغير اعتيادية حتى لو كنت محترف في ASP.NET . وقبل أن نبدأ بتطوير مشروع للشيربوينت فمن المفيد أن نفهم معاني بعض مكونات SharePoint مثل انواع المحتوى Content types و المميزات Features والevent receivers والقوائم lists والworkflows والweb parts .
تم تطوير الServer Explorer في الفيجوال ستديو ليقدم القدرة على استكشاف موقع الشيربوينت وتصفح مكوناته .
يجب عليك تشغيل الفيجوال ستديو بصلاحيات الأدمن حتى تتصل وتعمل connect لموقع الشيربوينت وحتى تطور وتجرب الSharePoint solution . ولعمل ذلك اضغط على اختصار الفيجوال ستديو 2010 بالزر الأيمن واختار Administrator Run as *.
ملاحظة : حتى تشغل الفيجوال ستديو 2010 بصلاحيات الأدمن دائماً قم بالضغط بالزر الأيمن على الإختصار واختار الخصائص properties وبعدها اختار تبويب Compatibility وضع صح على Run This Program as an Administrator .
افتح الServer Explorer عن طريق اختيار view وثم Server Explorer . يمكنك عمل connect *للشيربوينت فقط في حال كنت منصب الشيربوينت محلياً ويتم وضع الكونيكشن له تحت خيار SharePoint Connection بشكل افتراضي. يمكنك اضافة كونيكشن ل remote server *عن طريق الضغط على خيار SharePoint Connection بالزر الأيمن واختيار Add Connection.
عندما تختار مكون الشيربوينت في الServer Explorer فسوف يتم عرض خصائص ذلك المكون في صفحة الخصائص properties مع العلم أن هذه المعلومات هنا قابلة للقراءة فقط read-only .
توضح الصور التالية الServer Explorer والخصائص لموقع الشيربوينت.
لقد رأينا حتى الان كيفية عمل كونكت واستعراض لموقع الشيربوينت فدعنا نفهم قليلاً بعض المصطلحات الأساسية المستخدمة في الSharePoint .
- انواع المحتوى Content types : تقدم طريقة لتعريف انواع خاصة ومتميزة مثل اعلان أو document ما . يمتلك content type عدة حقول fields مرتبطة معه والتي تعرف الmetadata للمحتوى , فمثلاً نوع المحتوى document الموضوع في الصورة التالية لديه حقول مثل عنوان الdocument وتاريخ اخر تعديل له .
يمتلك نوع المحتوى content type ايضاً عدة properties والتي تعرف بعض الخصائص مثل القالب المستخدم للعرض والتعديل وانشاء instance لذلك الcontent type.
- المميزات Features : هي مجموعة *من الموارد التي تمثل وظائف معينة بشكل منطقي logical set . فمثلاً يأتي مع الشيربوينت عدة features مثل قوائم الوثائق document lists والمكتبات document libraries وقوائم الإستفتاءات survey lists *.
تحتوي الfeatures على قوالب templates وصفحات pages وتعريفات قوائم list definitions و workflows ويمكن ايضاً ان تحتوي على موارد اخرى مثل الصور وملفات الجافا سكريبت و CSS.
تحتوي الfeatures ايضاً على event receivers والتي هي عبارة عن event handlers يتم استدعاءها عندما يتم تفعيل الfeatures *أو تعطيلها او تنصيبها أو ازالتها أو تحديثها . ويمكن ايضاً اضافة الevent receivers إلى عناصر الشيربوينت الأخرى مثل القوائم lists أو المواقع SharePoint Sites.
- *القوائم lists : وهي اساسية جداً للشيربوينت وتستعمل في كل مكان تقريباً فالfeatures مثل الإستفتاءات surveys و الissues والمكتبات document libraries كلها مبنية على القوائم lists.
يحدد تعريف القائمة list definition الحقول والforms والviews (صفحات .aspx) واتواع المحتوى content types المرتبطة بالقائمة list. ويدعى التطبيق المعين للlist definition *ب list instance.
- *Workflows : تستعمل الworkflows في SharePoint 2010 من اجل عمل اتمتة automate لمهام العمل business processes . الSharePoint Workflows هي حقيقة مبنية على نفس محرك الworkflow (Windows Workflow Foundation أو WF) والتي ظهرت في .NET 3.5 .
يمكن للworkflows أن ترتبط مع موقع شيربوينت معين أو قائمة list أو حتى نوع محتوى content type.
- *Web Parts : هي عبارة عن web server controls يتم استضافتها في صقحة الweb Parts في الشيربوينت ويمكن للمستخدمين أن يعيدو صياغة صفحة الweb Parts كما يريدون , فيستطيعون اختيار عرض واحد أو اكثر من الweb Parts *في تلك الصفحة .
يمكن للweb Parts أن تعرض أي شيئ ببساطة كstatic label يزود بعض المحتويات لصفحة الويب وحتى form *كامل لادخال البيانات لعرض وتقديم خط بيانات العمل line of business data.
انشاء مشروع SharePoint
اصبحت تمتلك حتى الان خلفية جيدة عن المفاهيم والمصطلحات الأساسية في SharePoint ويمكنك الان انشاء اول solution لك في الشير بوينت .
قم باختيار File من الفيجوال ستديو 2010 *وثم New وبعدها Project وثم اختار اللغة البرمجية التي تريد أن تعمل معها Visual C# أو Visual Basic .
سوف يتم عرض انواع مشاريع الشيربوينت كما في الصورة التالية :
هناك عدة قوالب لمشاريع الشيربوينت موجودة في الفيجوال ستديو 2010 واغلب هذه المكونات يمكنك انشاءها ايضا كعناصر مستقلة في SharePoint Solution .
لهذا الامر نختار new Empty SharePoint Project .
عندما تضغط OK سوف يتم تشغيل SharePoint Customization Wizard الموضح في الصورة التالية:
بامكانك هنا تحديد موقع ومستوى الحماية للتجريب ولعمل الdebugging . قم باختيار Deploy s *Farm Solution واضغط Finish .
معلومة : تعمل Sandbox Solutions في بيئة ذات وثوق جزئي partially trust مع access *لمجموعة ثانوية محددة من الوظائف . تراقب بيئة الSandbox مجموعة من الإجراءات التي تتعلق في الأداء ومن ضمنها الوقت التنفيذي للCPU واستهلاك الذاكرة ووقت تنفيذ استعلامات قاعدة البيانات .
لا يمكن تفعيل Sandbox Solution مالم يتم تمريرها في عملية validation . كل هذه الأمور تقدم ثقة وطمأنينة للSharePoint Administrator بأن اي مكون خطر تالف لن يؤثر على بقية بيئة الSharePoint .
سوف تلاحظ ظهور خيارين في الSolution Explorer عندما يتم انشاء مشروع الشيربوينت , وهذه الخيارات موجودة في كل مشاريع الشيربوينت ولا يمكن حذفها أو نقلها أو اعادة تسميتها .
يمكن لخيار ومجلد *Features أن يحتوي على SharePoint Feature واحد أو اكثر وكما ذكرنا سابقاً فالFeatures هي مجموعة *من الموارد التي تمثل وظائف معينة بشكل منطقي logical set , فعندما تضيف عنصر جديد في اي وقت مثل Visual Web Part أو Content type فسوف يتم اضافتها للFeatures تحت مجلد Features اما لFeature موجودة سابقاً أو أو سيتم انشاء Feature جديدة حسب نطاق العنصر item scope . سوف نناقش الFeatures في قسم لاحق في هذه المقالة .
يحتوي مجلد Package على ملف منفرد يعمل كالية نشر لمشروغ الشيربوينت . تمتلك الPackage امتداد WSP وهي مماثلة لملف التنصيب من ناحية منطقية وتحتوي على مجموعة من الFeatures والSite Definition بالإضافة لassemblies اضافية تم وضعها في موقع الشيربوينت . سوف نناقش الPackeges في القسم الاخير من هذه المقالة .
حتى نضيف مكون أو عنصر لهذا الsolution نضغط بالزر الأيمن على الproject في الSolution Explorer ونختار Add وثم New Item . وكما نرى في الصورة التالية فإن الشيربوينت وضع لنا عدة ضخم من الخيارات لمكونات الشيربوينت . نختار عنصر جديد ل Application Page وندخل myPage.aspx كاسم له ونضغط OK.
الApplication Page هي احدى انواع صفحات الويب لASP.NET والتي توجد في مواقع الشيربوينت . اغلب الصفحات التي يتعامل معها المستخدمون للشيربوينت هي في الواقع صفحات المحتويات Content Pages . ومع أن الفيجوال ستديو لا يحتوي على خيار او قالب لصفحات المحتوى Content Pages إلا أنه يمكن انشاءها وتعديلها عن طريق ادوات مثل SharePoint Designer أو باستعمال الObject Model للSharePoint Foundation .
يمكن اضافة صفحات المحتويات Content Pages إلى مكتبة الصفحات SharePoint Page Library ويمكن لهذه الصفحات أن تحتوي على dynamic Web Parts .
ملاحظة: يتكون الobject model *في SharePoint Foundation 2010 *من اكثر من 70 *Namespace ويقدم API تسمح لك بتفيذ المهام *الإدارية والخاصة *بالمستخدم بشكل برمجي *. توجد معظم الكلاسات في الاسمبلي Microsoft.SharePoint.dll و Microsoft.SharePoint.Client.dll ويمكن استعمال هذه الكلاسات للعمل مع بيئة SharePoint Foundation أو SharePoint Server محلياً.
على الرغم من أن الApplication Pages لا *يمكنها تنفيذ عدد من الأمور التي تستطيع صفحات المحتويات Content Pages تنفيذها فالأخيرة تملك دعم افضل بكثير لكودات التطبيقات المعينة لذلك تستعمل الApplication Pages *للوظائف الإدارية .
لا بد انك لاحظت أن الApplication Pages لا تضاف إلى الroot مباشرة عند انشاءها بل هي تضاف إلى مجلد فرعي اسمه بنفس اسم مشروعك ضمن مجلد جديد يدعى Layouts والذي لا يمكنك تغييره لكن تستطيع اسم المجلد الفرعي وقتما تشاء . يجب ان تعلم أن مجلد Layouts هو مثال على SharePoint Mapped Folder والذي هو اساساً اختصار لمجلد الشيربوينت الإعتيادي ويوفر علينا عناء تحديد المسار الكامل full path للمجلد في الsolution .
يمكنك اضافة Mapped Folder لمشروعك عن طريق الضغط بالزر الأيمن على الproject واختيار Add وثم SharePoint Mapped Folder وبعدها ستلاحظ ظهور صندوق حوار يحتوي على جميع مجلدات شيربوينت المتوفرة كما هو مبين في الصورة التالية :
يتم عمل render لصفحات الApplication باستعمال SharePoint master page اثناء وقت التشغيل لأنها تحتوي على عدة Content controls للASP.NET كPlaceholder لمواقع مختلفة في الmaster page . يمكنك اضافة أي محتويات ثابتة و HTML Controls و ASP.NET Web Controls في صفحة الApplication بالإضافة لامكانية تعديل الcode behind للصفحة .
يمكنك بناء وتشغيل المشروع كأي مشروع اخر بالضغط على F5 (Debug Mode) وسوف يقوم الفيجوال ستديو بعمل Package ونشر بشكل تلقائي للApplication Page إلى SharePoint Installation *المحلي .
بعدها ستشاهد الصفحة الرئيسية للشيربيونت على المتصفح وحتى نرى صفحة الApplication Page التي اضفناها نضع الرابط التالي في المتصفح بشكل يدوي :
http://ServerName/_layouts/ProjectName/MyPage.aspx
يمكنك عمل debug لصفحة الApplication بنفس الطريقة التي تعمل فيها debug لأي web form اخر في ASP.NET.
الكاتب
عبد العظيم بخاري
http://www.el-bukhari.com/2010/10/2010-sharepoint.html
- *اعداد البيئة التطويرية للشيربوينت .
- *برمجة وتطوير مكونات معينة للشيربوينت مثل webparts و lists و workflows.
- *تصفح وتشغيل مشاريع الشيربوينت.
- *نشر مكونات ومشاريع الشيربوينت.
اصبح *Microsoft SharePoint في السنوات الأخيرة احد اسرع خطوط التطور والإنتاج في شركة مايكروسوفت , فهو في الواقع *عبارة عن مجموعة من المنتجات والتقنيات المترابطة معاً والتي تقدم خدمات عظيمة في مجالات التوثيق document وادارة المحتويات content management والبحث search وتطبيقات الويب بشكل عام .
نستطيع أن نعرف الشيربوينت بانه Platform مرن جداً لتطبيقات الويب *يسمح لنا بتطوير ونشر كل شيئ ابتداءً من الwebparts المستقلة وانتهاءً بمشاريع الويب الكبيرة . وعلى الرغم من أنه يمكن استعمال الشيربوينت لاستضافة مواقع الويب التي هي موجهة للزوار لكن المجال الأنسب له هو في المواقع التي تتضمن عضويات مسجلين وبشكل محدد اكثر تلك المواقع التي تخدم احتياجات الموظفين ضمن منظمة أو شركة ما. حيث أن الشيربوينت يزود تلك المواقع بكل ما تلزم ويقدم لها تكامل مميز مع Microsoft Office اضافة إلى دعمه لكودات التحقق الداخلي والتصديق authorization وامكانية الوصول للبيانات الخارجية external data ويقدم ايضاً دعم مميز للworkflows.
سنسلط الضوء في هذه المقالة على ادوات SharePoint التطويرية في Visual Studio 2010 وسنوضح كيفية بناء مشاريع الشيربوينت وتنقيحها ونشرها.
معلومة : اضافة إلى استعمال الفيجوال ستديو 2010 يمكنك انشاء مشاريع وحلول الشيربوينت باستعمال SharePoint Designer 2010 المجاني والذي يقدم نظرة سطحية منطقية عالية المستوى ويخفي كثير من الأمور الخلفية بعكس الفيجوال ستديو 2010 . يتضمن SharePoint Designer بعض ادوات WYSIWYG المميزة من اجل تصفح وتعديل المكونات بسهولة في مواقع الشيربوينت .
يمكننا اعتبار SharePoint Designer بأنه خيار رائع لغير المطورين (IT Professionals و المستخدمين end-users) لكن بكل الأحوال فهو يبقى مفيد كثيراً حتى للمطورين عند بناء مهام ترتيبة ومخططات للصفحة page layouts و master pages والتي يكون تطويرها في SharePoint Designer اسهل بكثير من الفيجوال ستديو . لذلك كثير من المطورين المتمرسين لا يستغنون عن هذه الأداة الرائعة .
تحضير البيئة التطويرية للSharePoint 2010
كان احد اكثر السلبيات للإصدارات السابقة من الشيربوينت أنها تتطلب استعمال windows server من اجل تطوير مشاريع الشيربوينت محلياً وذلك بسبب أن SharePoint 2007 وما قبله يحتاجون لنظام تشغيل سيرفر فكان يجب عليك أن تمتلك ويندوز سيرفر من اجل تنفيذ أي عملية تنقيح ومراجعة وتجريب لمشاريع الشيربوينت محلياً.
تم اخذ هذا الأمر بعين الإعتبار في SharePoint 2010 فيمكنك الان تنصيب الشير بوينت على ويندوز 7 او على الفيستا (sp1 فما فوق) اضافة لWindows Server 2008 . لكن لسوء الحظ سوف تحتاج لمواصفات عالية بعض الشيئ على الجهاز المحلي الذي تريد التطوير عليه لأن الشيربوينت 2010 يحتاج لنظام تشغيل 64 بت ويفضل أن يكون لديك 4GB للذاكرة RAM من اجل تنصيب SharePoint Foundation , اما اذا اردت تنصيب SharePoint Server فتحتاج من 6GB إلى 8GB من الذاكرة RAM .
معلومة : الفرق بين SharePoint Server و SharePoint Foundation
اتانا الشيربوينت 2010 باصدارين رئيسيين : SharePoint Server و SharePoint Foundation . كان الأخير يدعى سابقاً ب Windows SharePoint Services (WSS) وهو الإصدار المجاني للشيربوينت وهو مخصص للشركات والمشاريع الصغيرة ويتضمن دعم للwebparts وتطبيقات الويب وادارة الوثائق document management ومكونات الويب الإجتماعية والتعاونية مثل المدونات blogs و wikis و الcalendars والنقاشات discussions .
اما من الناحية الاخرى فقد تم اصدار SharePoint Server للمؤسسات الضخمة والمشاريع المتقدمة , وتتطلب هذه النسخة تكلفة لمنتج السيرفر نفسه اضافة إلى Client access license (CAL) لكل مستخدم .
تتضمن هذه النسخة من الشير بوينت جميع مميزات نسخة SharePoint Foundation اضافة لتزويدها بمواقع شيربوينت متعددة وتصفح متطور وبحث مفهرس index search ووصول للbackend data وتتميز ايضاً في دعم personalization و Single Sign ON .
اذا لم تكن تبني مشروع يتطلب المميزات المتقدمة للSharePoint Server فالافضل لك أن تستعمل SharePoint Foundation والذي يتطلب موارد اقل للجهاز . ولذلك لأن كل شيئ تبنيه في SharePoint Foundation يمكن ان يعمل على SharePoint Server.
تنصيب المتطلبات
اذا كان لديك ويندوز سيرفر فإن تنصيب الشيربوينت عليه هو امر سهل جداً . فنبدأ عملنا بتشغيل اداة فحص المتطلبات PrerequisiteInstaller.exe والتي تفحص وتنصب الإحتياجات المطلوبة بشكل تلقائي .
اما اذا كنت تريد التنصيب على انظمة ويندوز 7 او فيستا فالامر اصعب بقليل حيث أنه لا توجد لحد هذه اللحظة اداة مماثلة للمتطلبات فيجب عليك تنصيبها جميعا بشكل يدوي.
هناك متطلب اخر يجب أن تنصبه مهما كان نظام التشغيل الذي تعمل عليه وهو WCF Hotfix للويندوز والذي يمكنك تحميله من هذه الروابط :
Windows Vista أو *Windows Server 2008:
http://go.microsoft.com/fwlink/?linkID=160770
Windows 7 *أو *Windows Server 2008 R2:
http://go.microsoft.com/fwlink/?LinkID=166231
اما بالنسبة للشيربوينت نفسه فيمكنك تحميله من الروابط التالي:
SharePoint Foundation 2010
http://www.microsoft.com/downloads/en/de...laylang=en
SharePoint Server 2010
http://technet.microsoft.com/en-us/evalc...88573.aspx
بعد أن تقوم بتحميل الشيربوينت سوف يكون لديك ملف SharePoint.exe في حال حملت SharePoint Foundation أو OfficeServer.exe في حال حملت SharePoint Server . يجب أن نقوم بفك ضغط هذه الملفات لذلك قم بانشاء مجلد جديد مثل c:\SharePoint وقم بنسخ الملف الذي حملته اليه ومن ثم افتح قائمة ابدأ و شغل cmd ونفذ الأمر التالي:
كود :
c:\SharePoint\SharePoint.exe /extract:c:\SharePoint
في حال قمت بتحميل SharePoint Server فنفذ نفس الخطوات السابقة بوضع OfficeServer.exe بدلاً من SharePoint.exe .
ملاحظة : في حال كنت تنصب الشيربوينت من CD/DVD فهذه الخطوة غير ضرورية لان الملفات تكون مفكوكة الضغط وجاهزة.
في حال كنت تنصب الشيربوينت على ويندوز سيرفر فقم بتشغيل PrerequisiteInstaller.exe وبعدها انتقل للقسم التالي من الشرح (تنصيب SharePoint 2010) اما اذا كنت تنصب الشيربوينت على ويندوز 7 او ويندوز فيستا فيجب عليك تنصيب المتطلبات التالي يدوياً :
ملاحظة : كثير من هذه المتطلبات تنصب بشكل تلقائي عند تنصيبك للفيجوال ستديو 2010 و SQL Server 2008.
.NET Framework 4 : تنصب تلقائياً مع الفيجوال ستديو 2010
Windows PowerShell 2.0: تنصب تلقائياً مع الفيجوال ستديو 2010.
Windows Installer 4.5 Redistributable: تنصب تلقائياً مع الفيجوال ستديو 2010
Microsoft FilterPack 2.0: *يمكن أن تجده في نفس الملفات
c:\SharePoint\PrerequisiteInstallerFiles\FilterPac k\FilterPack.msi.
Microsoft Sync Framework: تنصب تلقائياً مع الفيجوال ستديو*2010
SQL Server 2008 Native Client: تنصب تلقائياً مع SQL Server 2008.
Windows Identity Foundation Runtime Framework
http://www.microsoft.com/downloads/en/de...laylang=en
ADO.NET Data Services: تنصب تلقائياً مع الفيجوال ستديو 2010
Chart Controls:
http://www.microsoft.com/downloads/en/de...laylang=en
Microsoft ADOMD.NET:
http://www.microsoft.com/downloads/en/de...laylang=en.
بعد ذلك يبقى خطوة اخيرة وهي الذهاب لwindows features عن طريق لوحة التحكم - Programs and Features وثم اجعل الخيارات كالصور التالية :
لمعلومات اكثر عن المتطلبات انظر للمواضيع التالية:
متطلبات SharePoint Foundation 2010
http://technet.microsoft.com/en-us/libra...88751.aspx
متطلبات SharePoint Server 2010
http://technet.microsoft.com/en-us/libra...62485.aspx
تنصيب*SharePoint 2010
الان بعد أن قمنا بتنصيب المتطلبات فيمكننا تنصيب SharePoint Foundation أو SharePoint Server . اذا كنت تعمل على ويندوز سيرفر يمكنك ببساطة تشغيل الinstaller : setup.exe اما اذا كنت تنصب على ويندوز 7 أو فيستا فسوف تحصل على الخطأ التالي عندما تحاول تشغيل setup.exe :
لازاله هذا الخطأ نحتاج لتعديل ملف الإعدادات config.xml والموجود في مجلد c:\SharePoint\files\Setup ونضيف السطر التالي*
tag <configuration>ل :
PHP كود :
<Setting Id=”AllowWindowsClientInstall” Value=”True”/>
تصفح واستكشاف SharePoint 2010
عندما ترى SharePoint *للمرة الاولى وتحاول استكشافه فانك سوف تتفاجأ وتصدم فيه وذلك لأن كثير من المصطلحات المستعملة في الشيربوينت ستكون غريبة عليك وغير اعتيادية حتى لو كنت محترف في ASP.NET . وقبل أن نبدأ بتطوير مشروع للشيربوينت فمن المفيد أن نفهم معاني بعض مكونات SharePoint مثل انواع المحتوى Content types و المميزات Features والevent receivers والقوائم lists والworkflows والweb parts .
تم تطوير الServer Explorer في الفيجوال ستديو ليقدم القدرة على استكشاف موقع الشيربوينت وتصفح مكوناته .
يجب عليك تشغيل الفيجوال ستديو بصلاحيات الأدمن حتى تتصل وتعمل connect لموقع الشيربوينت وحتى تطور وتجرب الSharePoint solution . ولعمل ذلك اضغط على اختصار الفيجوال ستديو 2010 بالزر الأيمن واختار Administrator Run as *.
ملاحظة : حتى تشغل الفيجوال ستديو 2010 بصلاحيات الأدمن دائماً قم بالضغط بالزر الأيمن على الإختصار واختار الخصائص properties وبعدها اختار تبويب Compatibility وضع صح على Run This Program as an Administrator .
افتح الServer Explorer عن طريق اختيار view وثم Server Explorer . يمكنك عمل connect *للشيربوينت فقط في حال كنت منصب الشيربوينت محلياً ويتم وضع الكونيكشن له تحت خيار SharePoint Connection بشكل افتراضي. يمكنك اضافة كونيكشن ل remote server *عن طريق الضغط على خيار SharePoint Connection بالزر الأيمن واختيار Add Connection.
عندما تختار مكون الشيربوينت في الServer Explorer فسوف يتم عرض خصائص ذلك المكون في صفحة الخصائص properties مع العلم أن هذه المعلومات هنا قابلة للقراءة فقط read-only .
توضح الصور التالية الServer Explorer والخصائص لموقع الشيربوينت.
لقد رأينا حتى الان كيفية عمل كونكت واستعراض لموقع الشيربوينت فدعنا نفهم قليلاً بعض المصطلحات الأساسية المستخدمة في الSharePoint .
- انواع المحتوى Content types : تقدم طريقة لتعريف انواع خاصة ومتميزة مثل اعلان أو document ما . يمتلك content type عدة حقول fields مرتبطة معه والتي تعرف الmetadata للمحتوى , فمثلاً نوع المحتوى document الموضوع في الصورة التالية لديه حقول مثل عنوان الdocument وتاريخ اخر تعديل له .
يمتلك نوع المحتوى content type ايضاً عدة properties والتي تعرف بعض الخصائص مثل القالب المستخدم للعرض والتعديل وانشاء instance لذلك الcontent type.
- المميزات Features : هي مجموعة *من الموارد التي تمثل وظائف معينة بشكل منطقي logical set . فمثلاً يأتي مع الشيربوينت عدة features مثل قوائم الوثائق document lists والمكتبات document libraries وقوائم الإستفتاءات survey lists *.
تحتوي الfeatures على قوالب templates وصفحات pages وتعريفات قوائم list definitions و workflows ويمكن ايضاً ان تحتوي على موارد اخرى مثل الصور وملفات الجافا سكريبت و CSS.
تحتوي الfeatures ايضاً على event receivers والتي هي عبارة عن event handlers يتم استدعاءها عندما يتم تفعيل الfeatures *أو تعطيلها او تنصيبها أو ازالتها أو تحديثها . ويمكن ايضاً اضافة الevent receivers إلى عناصر الشيربوينت الأخرى مثل القوائم lists أو المواقع SharePoint Sites.
- *القوائم lists : وهي اساسية جداً للشيربوينت وتستعمل في كل مكان تقريباً فالfeatures مثل الإستفتاءات surveys و الissues والمكتبات document libraries كلها مبنية على القوائم lists.
يحدد تعريف القائمة list definition الحقول والforms والviews (صفحات .aspx) واتواع المحتوى content types المرتبطة بالقائمة list. ويدعى التطبيق المعين للlist definition *ب list instance.
- *Workflows : تستعمل الworkflows في SharePoint 2010 من اجل عمل اتمتة automate لمهام العمل business processes . الSharePoint Workflows هي حقيقة مبنية على نفس محرك الworkflow (Windows Workflow Foundation أو WF) والتي ظهرت في .NET 3.5 .
يمكن للworkflows أن ترتبط مع موقع شيربوينت معين أو قائمة list أو حتى نوع محتوى content type.
- *Web Parts : هي عبارة عن web server controls يتم استضافتها في صقحة الweb Parts في الشيربوينت ويمكن للمستخدمين أن يعيدو صياغة صفحة الweb Parts كما يريدون , فيستطيعون اختيار عرض واحد أو اكثر من الweb Parts *في تلك الصفحة .
يمكن للweb Parts أن تعرض أي شيئ ببساطة كstatic label يزود بعض المحتويات لصفحة الويب وحتى form *كامل لادخال البيانات لعرض وتقديم خط بيانات العمل line of business data.
انشاء مشروع SharePoint
اصبحت تمتلك حتى الان خلفية جيدة عن المفاهيم والمصطلحات الأساسية في SharePoint ويمكنك الان انشاء اول solution لك في الشير بوينت .
قم باختيار File من الفيجوال ستديو 2010 *وثم New وبعدها Project وثم اختار اللغة البرمجية التي تريد أن تعمل معها Visual C# أو Visual Basic .
سوف يتم عرض انواع مشاريع الشيربوينت كما في الصورة التالية :
هناك عدة قوالب لمشاريع الشيربوينت موجودة في الفيجوال ستديو 2010 واغلب هذه المكونات يمكنك انشاءها ايضا كعناصر مستقلة في SharePoint Solution .
لهذا الامر نختار new Empty SharePoint Project .
عندما تضغط OK سوف يتم تشغيل SharePoint Customization Wizard الموضح في الصورة التالية:
بامكانك هنا تحديد موقع ومستوى الحماية للتجريب ولعمل الdebugging . قم باختيار Deploy s *Farm Solution واضغط Finish .
معلومة : تعمل Sandbox Solutions في بيئة ذات وثوق جزئي partially trust مع access *لمجموعة ثانوية محددة من الوظائف . تراقب بيئة الSandbox مجموعة من الإجراءات التي تتعلق في الأداء ومن ضمنها الوقت التنفيذي للCPU واستهلاك الذاكرة ووقت تنفيذ استعلامات قاعدة البيانات .
لا يمكن تفعيل Sandbox Solution مالم يتم تمريرها في عملية validation . كل هذه الأمور تقدم ثقة وطمأنينة للSharePoint Administrator بأن اي مكون خطر تالف لن يؤثر على بقية بيئة الSharePoint .
سوف تلاحظ ظهور خيارين في الSolution Explorer عندما يتم انشاء مشروع الشيربوينت , وهذه الخيارات موجودة في كل مشاريع الشيربوينت ولا يمكن حذفها أو نقلها أو اعادة تسميتها .
يمكن لخيار ومجلد *Features أن يحتوي على SharePoint Feature واحد أو اكثر وكما ذكرنا سابقاً فالFeatures هي مجموعة *من الموارد التي تمثل وظائف معينة بشكل منطقي logical set , فعندما تضيف عنصر جديد في اي وقت مثل Visual Web Part أو Content type فسوف يتم اضافتها للFeatures تحت مجلد Features اما لFeature موجودة سابقاً أو أو سيتم انشاء Feature جديدة حسب نطاق العنصر item scope . سوف نناقش الFeatures في قسم لاحق في هذه المقالة .
يحتوي مجلد Package على ملف منفرد يعمل كالية نشر لمشروغ الشيربوينت . تمتلك الPackage امتداد WSP وهي مماثلة لملف التنصيب من ناحية منطقية وتحتوي على مجموعة من الFeatures والSite Definition بالإضافة لassemblies اضافية تم وضعها في موقع الشيربوينت . سوف نناقش الPackeges في القسم الاخير من هذه المقالة .
حتى نضيف مكون أو عنصر لهذا الsolution نضغط بالزر الأيمن على الproject في الSolution Explorer ونختار Add وثم New Item . وكما نرى في الصورة التالية فإن الشيربوينت وضع لنا عدة ضخم من الخيارات لمكونات الشيربوينت . نختار عنصر جديد ل Application Page وندخل myPage.aspx كاسم له ونضغط OK.
الApplication Page هي احدى انواع صفحات الويب لASP.NET والتي توجد في مواقع الشيربوينت . اغلب الصفحات التي يتعامل معها المستخدمون للشيربوينت هي في الواقع صفحات المحتويات Content Pages . ومع أن الفيجوال ستديو لا يحتوي على خيار او قالب لصفحات المحتوى Content Pages إلا أنه يمكن انشاءها وتعديلها عن طريق ادوات مثل SharePoint Designer أو باستعمال الObject Model للSharePoint Foundation .
يمكن اضافة صفحات المحتويات Content Pages إلى مكتبة الصفحات SharePoint Page Library ويمكن لهذه الصفحات أن تحتوي على dynamic Web Parts .
ملاحظة: يتكون الobject model *في SharePoint Foundation 2010 *من اكثر من 70 *Namespace ويقدم API تسمح لك بتفيذ المهام *الإدارية والخاصة *بالمستخدم بشكل برمجي *. توجد معظم الكلاسات في الاسمبلي Microsoft.SharePoint.dll و Microsoft.SharePoint.Client.dll ويمكن استعمال هذه الكلاسات للعمل مع بيئة SharePoint Foundation أو SharePoint Server محلياً.
على الرغم من أن الApplication Pages لا *يمكنها تنفيذ عدد من الأمور التي تستطيع صفحات المحتويات Content Pages تنفيذها فالأخيرة تملك دعم افضل بكثير لكودات التطبيقات المعينة لذلك تستعمل الApplication Pages *للوظائف الإدارية .
لا بد انك لاحظت أن الApplication Pages لا تضاف إلى الroot مباشرة عند انشاءها بل هي تضاف إلى مجلد فرعي اسمه بنفس اسم مشروعك ضمن مجلد جديد يدعى Layouts والذي لا يمكنك تغييره لكن تستطيع اسم المجلد الفرعي وقتما تشاء . يجب ان تعلم أن مجلد Layouts هو مثال على SharePoint Mapped Folder والذي هو اساساً اختصار لمجلد الشيربوينت الإعتيادي ويوفر علينا عناء تحديد المسار الكامل full path للمجلد في الsolution .
يمكنك اضافة Mapped Folder لمشروعك عن طريق الضغط بالزر الأيمن على الproject واختيار Add وثم SharePoint Mapped Folder وبعدها ستلاحظ ظهور صندوق حوار يحتوي على جميع مجلدات شيربوينت المتوفرة كما هو مبين في الصورة التالية :
يتم عمل render لصفحات الApplication باستعمال SharePoint master page اثناء وقت التشغيل لأنها تحتوي على عدة Content controls للASP.NET كPlaceholder لمواقع مختلفة في الmaster page . يمكنك اضافة أي محتويات ثابتة و HTML Controls و ASP.NET Web Controls في صفحة الApplication بالإضافة لامكانية تعديل الcode behind للصفحة .
يمكنك بناء وتشغيل المشروع كأي مشروع اخر بالضغط على F5 (Debug Mode) وسوف يقوم الفيجوال ستديو بعمل Package ونشر بشكل تلقائي للApplication Page إلى SharePoint Installation *المحلي .
بعدها ستشاهد الصفحة الرئيسية للشيربيونت على المتصفح وحتى نرى صفحة الApplication Page التي اضفناها نضع الرابط التالي في المتصفح بشكل يدوي :
http://ServerName/_layouts/ProjectName/MyPage.aspx
يمكنك عمل debug لصفحة الApplication بنفس الطريقة التي تعمل فيها debug لأي web form اخر في ASP.NET.
الكاتب
عبد العظيم بخاري
http://www.el-bukhari.com/2010/10/2010-sharepoint.html