الخميس، 7 أكتوبر، 2010

كيف يتم تخصيص قالب "موقعي MySite" في شيربوينت 2010

في هذه المقالة سيتم سرد جميع عناصر قالب الموقع "موقعي MySite" في شيربوينت 2010 SharePoint مع مكان وجود كل عنصر من عناصر الموقع دون التطرق إلى كيفية التعديل عليها, وفي مقالة لاحقة سيتم التطرق إلى عمليات التخصيص بشكل مستفيض.

الجزء الأول هو الروابط التي تظهر في القسم العلوي من الموقع كما في الشكل التالي:




هذه الروابط يتم رسمها باستخدام عنصر اسمه MySiteTopNavigation.ascx موجود في المجلد ControlTemplates, وسيتم شرح كيفية التعديل على هذه الروابط وتغيير شكلها لاحقاً, ولكن يجب الانتباه إلى أنه من غير الصحيح التعديل على نفس العنصر لأن هذا سيؤثر على جميع المواقع في بيئة شيربوينت الحالية.
الجزء الثاني هو الصفحة الرئيسية Master Page, اسم هذه الصفحة هي mysite.master وهي موجودة على الموقع الجذري لتطبيق الويب الذي يستضيف خدمة "موقعي MySite", ويمكن إيجاد هذه الصفحة إما باستخدام SharePoint Designer 2010 أو على المسار التالي:



C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\FEATURES\MySiteLayouts


الجزء الثالث هي صفحة الترحيب default.aspx التي تظهر كصفحة افتراضية للموقع, وتعتبر هذه الصفحة جزء من قالب "موقعي MySite" واسم القالب هو SPSPERS حيث توجد الصفحة default.aspx.
الجزء الرابع هو العناصر التي تظهر في صفحة الترحيب default.aspx وهي كما يلي:
  • المستندات المشتركة Shared Documents.
  • المستندات الشخصية Personal Documents.
  • آخر مواضيع المدونة Recent Blog Posts.
وجميعها عبارة عن أجزاء ويب Web Parts يتم إدراجها في صفحة الترحيب كما يلي:
  • المستندات المشتركة Shared Documents تتم إضافتها من خلال الملف onet.xml الموجود ضمن القالب SPSPERS كما يلي:


    <View
    List="Shared Documents"
    BaseViewID="1"
    MobileView="TRUE"
    WebPartZoneID="MiddleLeftZone"
    WebPartOrder="1" />



  • المستندات الشخصية Personal Documents أيضاً تتم إضافها من خلال الملف onet.xml الموجود ضمن القالب SPSPERS كما يلي:

    <View
    List="Personal Documents"
    BaseViewID="1"
    MobileView="TRUE"
    WebPartZoneID="MiddleLeftZone"
    WebPartOrder="2" />



  • آخر مواضيع المدونة Recent Blog Posts تتم إضافتها من خلال الملف onet.xml الموجود ضمن القالب SPSPERS بعد التعليمة التالية:


    <AllUsersWebPart WebPartZoneID="MiddleRightZone" WebPartOrder="1">



الجزء الخامس هو القوائم التي يتم إنشاؤها بشكل افتراضي بعد إنشاء الموقع الشخصي مباشرة حيث يتم إنشاء القوائم التالية:
  • مكتبة المستندات الشخصية Personal Documents, يتم إنشاء هذه المكتبة من خلال الملف onet.xml الموجود ضمن القالب SPSPERS ضمن قسم Configurations.
  • مكتبة المستندات المشتركة Shared Documents, يتم إنشاء هذه المكتبة من خلال الملف onet.xml الموجود ضمن القالب SPSPERS ضمن قسم Configurations.
  • مكتبة الصور المشتركة Shared Pictures, يتم إنشاء هذه المكتبة من خلال الملف onet.xml الموجود ضمن القالب SPSPERS ضمن قسم Configurations.

السبت، 2 أكتوبر، 2010

المنهج TryGetList في شيربوينت 2010 SharePoint



في شيربونيت 2007 كان الحصول على مرجع برمجي لأية قائمة يتم باستخدام SPWeb.Lists[“List Title”] وفي حال عدم وجود هذه القائمة في الموقع يظهر خطأ, أو يجب استخدام طريقة أخرى وهي باستخدام حلقة for للمرور على جميع القوائم في الموقع ومقارنة القيمة SPList.Title مع عنوان القائمة التي نريدها وكلن جميع هذه الطرق هي التفاف على مشكلة موجودة, في شيربوينت 2010 SharePoint تم إضافة منهج جديد اسمه TryGetList موجود ضمن SPWeb.Lists, وظيفة هذا المنهج هي إعادة مرجع برمجي للقائمة باستخدام عنوان القائمة في حالة أن القائمة موجودة وإلا تعيد القمية null.


الجمعة، 1 أكتوبر، 2010

المطورون السوريون ... واقع وطموحات - استراتيجات – 3

حاولت في مقالتي السابقة أن أحدد هدفاً رئيسياً يجب علينا تحقيقه خلال السنتين القادمتين وهو "نشر مفهوم مهنة البرمجة في سوريا" حيث أكدنا على ضرورة نشر هذا المفهوم بجميع الطرق الممكنة وفي هذه المقالة سنشرح كيف ودور كل منا في هذه المهمة, لكن قبل ذلك أريد توضيح تساؤل من معظم الفتيات اللواتي يعملن في نفس المجال وهو أن مصطلح المطور يشمل الذكور فقط؟ وردي هو أن أي مصطلح في أية مهنة لا علاقة له بالجنس وإنما دائماً يشمل الجنسين ويميل التفكير دائماً بالجنس الذي يعمل أكثر في هذه المهنة ولا شك عندي بأن عدد المطورين والمبرمجين الذكور قد يكون بنسبة 100-1 في سوريا, ولكني بلا شك هنا أتكلم عن الجنسين معاً بدون استثناء أحد فالجميع معني بهذا الأمر وعلى الجميع القيام بدوره على أكمل وجه لأن الأمر سينجح والجميع سينال حصته لاحقاً ومن لا يزرع لا يحصد.
نعود الآن إلى الآلية التي علينا اتباعها لنشر الوعي اللازم فيما يخص مهنة البرمجة والبنى التحتية في سوريا ودور كل منا في هذه الآلية, لا شك أن أي آلية تخضع إلى استراتيجات عامة يجب الالتزام بها, حيث تحدد هذه الاستراتيجات أهدافنا بوضوح وأدوات تنفيذها ووضع هذه الاستراتيجات يحتاج إلى الإطلاع على ماهو متوفر بين أيدينا من أدوات إضافة إلى الموارد البشرية التي يجب حثها واستثارتها كما يجب إغراؤها بالأرباح المعنوية والمادية.

الاستراتيجة الأولى – تكلم كثيراً عن الأمر

ليس عندي شك في فعالية الإعلام لتنفيذ أي عمل مهما كان هذا العمل, ففي عالمنا اليوم أي أمر تريد أن ينتشر كالنار في الهشيم, انشره على الإنترنت والقوائم البريدية ومحطات الأخبار ولو لمرة واحدة فقط واترك بعدها الأمر للجمهور وهو سيكمل المهمة عنك, للأسف لاحظت أن هذا الأمر ينجح مع الأمور التي على الأقل من وجهة نظرنا تبدو تافهة مثل أخبار الفنانين والفضائح وغيرها, وهذه لها جمهور كبير, لكننا الآن نتكلم عن أمر يجهله هذا الجمهور لذلك يجب أن اختيار استراتيجية "تكلم كثيراً عن الأمر", لا تترك مكاناً تعرفه أو شخص تكلمه إلا وتحدثه عن مهنة التطوير وماذا تعني, أبرز مدى أهمية هذه المهنة وحاول تقريب هذا المفهوم ليتواءم مع ثقافة من أمامك فليس الجميع بنفس السوية الثقافية, لذلك لا تتوقع من الجميع أن يفهموا كل ماتتحدث عنه, إحدى الأدوات التي نستخدمها في شبكة "المطورون السوريون" هي الإنترنت لنشر هذا الهدف والتعريف بالمطور السوري والتخطيط لبدء مانعتبره ثورة على واقع المطورين السوريين في سوريا, لا نوفر أي قناة تواصل وبدأنا بنشر هذا الهدف في كل محفل إعلامي منتشر كما فعلنا على Facebook, وكما فعلنا من قبله على الموقع الرسمي للـ "المطورون السوريون", أعضاء شبكة "المطورون السوريون" تحاول نشر فكر التغيير الإعلامي لدى المطورين السوريين وإعطائهم الثقة بأن الأمور ستتحسن وهنا لسنا نزرع أفكاراً لن تحدث بل نحن على يقين بأن الأمور في تحسن وقد لمسناها على أرض الواقع في سوريا, فالكثيرون يتوقون إلى التغيير وقد بدؤوا بخطواتهم الجادة. لكن يجب أن ننتبه بأن الكلام الكثير لا يعني كلاماً بدون معنى أو لج رد الكلام وإنما ذكر هذه المهنة بالطريقة الصحيحة ومفهومها الصحيح في الح افل العلمية والمقالات والكتب والمنتديات وأمام المثقفين السوريين.

الاستراتيجية الثانية – تثقيف المطور السوري

لن أدعي بأن الجمهور العام في سوريا فقط هو من يجهل ماهي مهنة التطوير ولن أدعي بأني أفضل من يعلم عن مهنة التطوير والبرمجة, ولا شك بأن الأمر لن يتم بدون أهله وأهله هم المطورون السوريون, من سيدعم هذا الأمر في سوريا هم المطورين أنفسهم ولكي يتم ذلك بالشكل الصحيح يجب على المطورين السوريين فهم حقيقة التطوير ولا يتم ذلك إلا إن كرسوا حياتهم لهذه المهنة وأصبحت هي همهم الشاغل وفرغوا وقتهم لقراءة مايتعلق بمهنتهم بالشكل الصحيح, فلكي نقنع الجمهور في سوريا يجب أن نقتنع أولاً ولكي تصلهم الفكرة بسهولة يجب أن نكون قادرين على إرسالها بشكل سهل ومتعدد المستويات, كما يجب على المطور السوري تبني ثقافة الإيمان بهذه المهنة والإيمان بأنها ستتطور نحو الأفضل في سوريا وبأن هذا الهدف يجب أن يكون هدفه الرئيسي حتى لو لم يكن يعمل في السوق السوري, ثقافة المطور السوري العلمية وتثقيفه بحالة السوق السوري وماهي فوائد اعتماد مهنة التطوير والبرمجة في سوريا التي سيجنيها المطور السوري, هذ الاستراتيجية الثانية التي يجب اعتمادها للفوز بهذا التحدي.

في المقالة القادمة سنطرح استراتيجيات أخرى نعتمدها لترسيخ مهنة التطوير والبرمجة في سوريا, وسنبقى مثابرين عليها وعلى هدفنا في "المطورون السوريون" لمهنة أرقى وسوريا أفضل.