‏إظهار الرسائل ذات التسميات إدارة الشيربوينت. إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات إدارة الشيربوينت. إظهار كافة الرسائل

السبت، 14 نوفمبر 2015

ماذا لو ... ؟ (2)


ماذا لو اتصل عليك احد مستخدمي الشيربوينت ليشتكي من ان حالة عناصر قائمة ما  (List) لا تتغير  و انه لم يعد يستقبل اي بريد تنبيهي من الشيربوينت بخصوص حالة العنصر كما كان الوضع طبيعيا منذ يوم فقط ... ؟
طبعا سيبدأ المستخدم بالخوف من الشيربوينت وربما بان يكره العمل عليه وحينها  ستكون الحالة صعبة بالفعل :)

في مثل هذه الحالة انصح بالعمل وفق المنهجية التالية لاكتشاف سبب الاشكال و كيفية حله و تجنبه مستقبلا :

1- قم بجمع كل ما يمكن جمعه من معلومات عن المشكلة من خلال التواصل مع المستخدم وان لزم الامر قم بالدخول على شاشته عن بعد ... 

2- بعد ان تعرفت من خلال الخطوة السابقة على القائمة التي توجد بها مشكلة و لانك تعرف جيدا جميع مكونات بيئة الشيربوينت لديك :) سترى ان القائمة قد تم ربطها مع نموذج الكتروني باستخدام InfoPath وايضا باجراء عمل شيربوينت (SharePoint workflow)  تم بناؤه عن طريق  SharePoint Designer . (افترضت ذلك لان موضوعنا هنا لا يتعلق باجراءات العمل المعقدة التي تبنى من خلال الاكواد البرمجية )

3- تحديد المشتبه بهم المحتملين في القضية :) 
* وذلك بالتاكد من ان خادم البريد الالكتروني يعمل بشكل صحيح ؟
* هل توجد ما مشكلة في الشبكة ؟
* هل خدمة workflow service تعمل على خادم الشيربوينت ام لا ؟

 4- قم بفتح قائمة Workflow History List والتي تحتوي على كل حالة الخطوات التي حدثت  على الاجراء. بصراحة الكثير لا يعرف هذه القائمة المهمة جدا والتي غالبا ما يكون رابط الدخول عليها كالتالي   http://[servername]/[sitename]/lists/Workflow%20History


هذه القائمة تساعد كثيرا في اكتشاف الاخطاء حيث انها تظهر خطوات الاجراء التي تفشل بشكل متكرر.

غالبا سيكون سبب الاشكال تحديث فني جديد تم على الاجراء عن طريق SharePoint Designer او InfoPath . في هذه الحالة سيكون الحل في اعادة رفع اجراء سليم (redeployment) .عندها اقترح عليك اعادة النظر في اجراءات الاختبار لديكم و التي تسبق الرفع على بيئة الانتاج !

الجمعة، 13 نوفمبر 2015

ماذا لو... ؟ (1)


السلام عليكم
احببت ان اشارككم سلسلة من المواضيع الجديدة بعنوان "ماذا لو... ؟" والمقصود ان نقوم بدراسة بعض الحالات المتكررة التي قد يتعرض لها مدير او مبرمج الشيربوينت اثناء عمله اليومي.
والسؤال اليوم هو : ماذا لو لم تجد معرف الارتباط "correlation id" في سجلات الشيربوينت (SharePoint Diagnostic Logs) ؟

كثيرا ما نتعرض الى شاشة مثل التالية :)



هذا امر قد يكون اعتيادي لكن ما قد يسبب لديك مشكلة ان تقوم بالبحث في سجلات التدقيق الخاصة بجميع خواد المزرعة لكنك تتفاجئ ان معرف الارتباط الذي ظهر لك في الشاشة السابقة غير موجود نهائيا !!
هذا لو اعتبرنا انك تقوم بجلب وقراءة سجلات التدقيق بشكل صحيح :)
طيب في هذه الحالة لابد ان يتبادر الى ذهنك في الوهلة الاولى انه لسبب او لاخر قد تكون سجلات الشيربوينت Diagnostic Logs غير مفعلة !
للتاكد من ذلك قم بالدخول على شاشة لوحة التحكم التالية :


ستجد ان اي من انواع السجلات التي يمكن تسجيلها غير مفعل ! فما عليك الا تفعيلها. طبعا لابد ان تكون قبل ذلك قد قمت بتوفير المساحة اللازمة للقرص الصلب مع العلم ان مدة اسبوعين هي المدة الادني المنصوح بها للحفاظ على سجلات الشيربوينت ضمن المجلد المخصص لها قبل ان يتم حذفها آليا من قبل المهام الشيربوينت المجدولة (Timer Jobs) ....

الأحد، 10 مايو 2015

كيف تنشأ مزرعة SharePoint على Azure في وقت قياسي؟

  

تقدم البنية التحتية كخدمة او Infrastructure as a service  المقدمة من Azure واحدة من امتع الخدمات بالنسبة لمحترفي الشيربوينت, وهي تطبيق يتيح امكانية انشاء مزرعة الشيربوينت من 3 او 9 خوادم في اقل من ساعة ...
لنبدأ اكتشاف ذلك سويا :
1- قدم بالدخول على حسابك في https://portal.azure.com وان لم يكن لديك اشتراك بامكانك الحصول على اشتراك تجريبي من خلال الرابط التي : 
http://azure.microsoft.com/en-us/pricing/free-trial/

2- بعد الدخول الى البوابة الخاصة بـ Azure ستفتح لك الشاشة التالية :


2- اضغط على ايقونة MarketPlace لتظهر لك شاشة للبحث عن لتطبيقات المتاحة , حينها ادخل عبارة البحث التالية "SharePoint Server Farm"




3- قم باختيار تطبيق "SharePoint Server Farm" وستظهر لك نافذة جانبية للبدء بصناعة المزرعة


4- قم بتعباة البيانات المطلوبة وهي اسم مجموعة الموارد و اسم حساب المدير العام و كلمةالمرور , لاحظ وجود مبربع "Enable High Availability" في حالة اختياره سوف تحصل على مزرعة من 9 خوادم تضمن التواجدية العالية للمزرعة اما انا فسأختار فقط المزرعة من 3 خوادم


5- اختر اسم النطاق و مواصفات الخوادم التي تريد , حسب ميزانيتك طبعا :)



6- قم بتعباة بيانات خادم SQL Server و خادم الشيربوينت




7- قم بانشاء وحدة التخزين للبيئة او استخدم احدى الوحدات الموجودة لديك سابقا كما فعلت انا :



8- واخير اضغط على زر الانشاء وانتظر انتهاء Azure من تجهيز 3 خوادم لك : خادم Domain Controller , خادم قواعد بيانات و خادم شيربوينت :






9 - بعد جهوزية البيئة ستلاحظ ظهور الخوادم الافتراضية التالية : 






10- للدخول عن بعد على احد الخوادم اضغط على زر Connect و سيتم تنزيل ملف من نوع rdp على جهازك , قم بفتحه و ادخل حساب المدير العام 



لاحظ ان شيربونت جاهز للاستخدام !  قم بفتح لوحة تحكم الشيربوينت :


11- قم بالدخول على تطبيق الويب الذي تم انشاؤه بشكل ألي :










ما عليك الان الا الاستفادة من بيئة شيربوينت متكاملة, طبعا اذا كانت 3 خوادم لا تكفيك بامكانك عدم استخدام نموذج "SharePoint Server Farm" و عندها ستحتاج تجهيز كل خادم بشكل يدوي كما يحدث عادة لديك في البيئة الداخلية لمؤسستك ...

بالتوفيق.

الأحد، 19 أبريل 2015

اعداد و ادارة خدمات اكسس في شيربوينت 2013


اهمية خدمة اكسس في الشيربوينت تاتي من اهمية اكسس نفسه (اعني الذي في حزمة الاوفيس المكتبية) لدى المستخدمين.لكن الاهم من ذلك ان خدمة اكسس في الشيربوينت تحل مشاكل كثيرة قد يتسبب فيها اكسس المكتبي لدى المؤسسة التي حسب عدد الموظفين فيها قد تجد اضعاف ذلك العدد من ملفات اكسل و اكسس يستخدمونها في اغراض العمل.
بعض تلك المشكلات هي :
- وجود تطبيقات لدى المستخدمين بعيدة تماما عن التحكم و الادارة من قبل ادارة تقنية المعلومات.
- سيأتي اليوم الذي ترمى فيه تلك التطبيقات بين احضان قسم التقنية في المؤسسة ليقال لهم تعاملوا معها  :)
- لا وجود لخطط نسخ احتياطي و استرجاع لتلك التطبيقات
- عادة يصعب ما يصعب جدا مشاركتها مع الاخرين والعمل عليها بشكل جماعي
- في الغالب لا يمكن ترقيتها 
- اذا كانت تستخدم طريقة الدخول بحساب وكلمة مرور فانها لن تكون معتمدة على الية الدخول الموحد للمؤسسة Single Sign On او حتى عل حسابات المجلد النشط Active Directory

و بالمناسبة كنت في موضوعين سابقين شرحت كيفية عمل تطبيق اكسس على اوفيس 365 لكن لمن لا يملك اشتراك فيه ويود ان يعد خدمة الاكسس في مركز البيانات الخاص به اقول ما يلي, هناك 3 امور لابد من الاعتناء بها اثناء التخطيط المسبق قبل تفعيل الخدمة وهي :

1- التكلفة : 

 * خادم SQL Server : قد يكون لديك خادم  sql server 2008 r2 sp1 لكن ذلك لا يكفي لتشغيل خدمات اكسس على الشيربوينت لانها تستخدم ميزات جديدة لا توفرها نسخة 2008 مثل Full text Search لذلك لابد من نسخة 2012
* يفضل تخصيص sql server instance  خاص بخدمات اكسس لدواع سيتم شرحها لاحقا في النقطة (2) ...

2- نموذج الحماية : 

* تستخدم تطبيقات اكسس للاتصال بخادم sql طريقة المصادقة SQL Authentication وهي تعتبر اقل حماية من NT Authentication. لذلك فان هناك مؤسسات لا تحبذها.

3- ادارة الخدمة :

* لابد ان تعرف ان لكل تطبيق اكسس يتم انشاء قاعدة بيانات خاصة به على مستوى خادم SQL Server لذلك مع المرور الوقت سيكون لديك عدد كبير من قواعد البيانات لكن بامكاني ان اقول ان ذلك لن يسبب في مهام اضافية كثيرة لمدير قواعد البيانات لان تطبيق الاكسس يقوم تلقائيا بانشاء قاعدة البيانات و الحساب و الصلاحيات اللازمة له على SQL Server
* في ما يخص النسخ الاحتياطي فانه يعتمد على خطة النسخ الاحتياطي الخاصة بـخادم SQL لديك 

بعد ما تعرفت على ما سبق و قررت تفعيل الخدمة في مزرعة الشيربوينت لديك فما عليك الا عمل الخطوات التالية :

1- تثبيت SQL Server 2012 : 

* عند اعداد Security Mode قم باختيار Mixed Mode
* حساب الخدمة الذي ستستخدمه خدمات اكسس على الشيربوينت لابد ان يكون الادوار التالية على خادم SQL :  ( db creator , security admin) 
* اثناء عملية التثبيت و عند اختيار الميزات التي سيتم تفعيلها قم بتفعيل Full-Text Search Feature
* بعد الانتهاء من التثبيت قم بتفعيل خاصية "contained database" حيث انها ضرورية لفصل قواعد بيانات التطبيقات عن بعضها البعض من ناحية الحماية , يعني لا يمكن لحساب واحد الاتصال باكثر من قاعدة بيانات بالاضافة الى ان ذلك يسمح بتعديل خاصية Collation على مستوى قاعدة البيانات الواحدة , طبعا اذا كان لديك تطبيقات بـ Collation  مختلفة :


* قم ايضا بتفعيل خاصية "Allow Triggers to Fire Others" كما يلي :



2- اعداد خدمة اكسس :

* قم بتبيت البرامج التالية على جميع خوادم الشيربوينت في مزرعتك :






مع العلم ان الثلاث الاولى يفترض انها موجودة مسبقا لديك لان شيربوينت يحتاجها.

* الان على مستوى IIS في خواجم الشيربوينت قم بتفعيل خاصية Load User Profile كما في الصورة التالية, هذه الخطوة مهمة لفصل الحسابات المشغلة للتطبيقات :



3- تفعيل خدمة اكسس على الشيربوينت :
* قم بتفعيل الخدمات التالية التي يحتاجها الاكسس من خلال لوحة التحكم Central Admin :
             - Access Services 2010
             - Access Services
             - App Management Service
             - Microsoft SharePoint Foundation Subscription Settings Service
             - Secure Store Service

* بعد تفعيل الخدمات السابقة قم بانشاء مجموعة مواقع SiteCollection خاص بتطبيقات Access Apps و انشئ ايضا موقع فريق "Team Site"
* قم باستخراج مفتاح من نوع Secure Store Service Key حيث تحتاجه خدمة اكسس لتعمل بشكل صحيح
* قم بفتح خدمة اكسس المفعلة الان على لوحة التحكم كما في الصورة التالية و قم برطها بخادم قواعد البيانات الخاص بها:

                




* بعد ما سبق يتكون قادرا على عمل تطبيقات اكسس على مزرعتك الداخلية و ليس فقط على اوفيس 365 كما اشرت في موضوعين سابقين :



الخاتمة :
من الايجابيات المميزة لتفعيل خدمات Access في الشيربوينت:
- باعتبار ان الجدوال التي يتم تصميمها بالاكسس هي في النهاية عبارة عن جداول SQL Server لذلك فبامكاننا الاستفادة من جميع ما تقدمه قواعد بيانات SQL Server من ميزات. لعل اهمها استخراج التقاريرالمتقدمة و الربط مع اكسل و حتى التطبيقات الخارجية كتطبيقات ASP.NET  او PHP  او غير ذلك ...
- امكانية استخدام الاكسس من خلال متصفح الانترنت ايضا
- مركزية التحكم في البيانات
- مركزية التحكم في الصلاحيات
- شاشة مستخدم اكثر احترافية
- التعرف على كثافة الاستخدام من عدمه
- امكانية الرفع على متجر تطبيقات الاوفيس
- امكانية الترقية و الاستفادة من الميزات الجديدة
...



الثلاثاء، 14 أبريل 2015

معلومات تهمك عن تحديث الحلول البرمجية بطريقة In-place Update


معلوم انه بالامكان عمل تحديث للحلول البرمجية المرفوعة على الشيربوينت من خلال امر الباورشل التالي Update-SPSolution و بالتالي فاننا لا نحتاج ازالة الحل و رفعه من جديد مما يترتب عنه  فقدان بيانات مرفوعة في الحل . لكن لابد من التنبه الى التحديث بهذه الطريقة لا يدعم ايا من التعديلات التالية في الحل :

- حذف او اضافة ميزة Feature
- تعديل معرف الحل Solution ID
- تغيير مجال الميزة Feature Scope
- تعديل Feature Receiver
- اضافة , حذف او تعديل عنصر في ملف Manifest file
اضافة , حذف او تعديل خاصية في ملف Feature.xml

يعنى انه في الحالات السابقة لابد من عمل ازالة و تثبيت جديد للحل.

الأربعاء، 11 فبراير 2015

التحديثات العامة لشهر فبراير 2015


تم اطلاق تحديثات الشيربوينت 2013 العامة لشهر فبراير February 2015 Public Updates وهي كالتالي :



SharePoint Foundation: http://support2.microsoft.com/kb/2920801

SharePoint Server 2013: http://support2.microsoft.com/kb/2920801

Project Server 2013: http://support2.microsoft.com/kb/2920796

Office Web Apps 2013 Server: http://support2.microsoft.com/kb/2956101

Office 2013 February 2015 Cumulative Updates: http://support2.microsoft.com/kb/3032763

بالنسبة للتحديثات العامة الجديد لـ SharePoint Server 2013 فانها تحتاج ان يكون لديك مثبتا التحديث العام لشهر مارس 2013  او حزمة الخدمة SP1 .

ملاحظة : ما انصح به عادة هو عدم المسارعة بتثبيت التحديث الى حين الاطمئنان على سلامته هو كذلك من الاخطاء و ملاحظة ارتياح في "مجتمع الشيربوينت"  بشانه :)

السبت، 13 ديسمبر 2014

سلسلة شرح تطبيقات الخدمات (1) : تحليلات الشيربوينت 2013


1- مقدمة : 

لمن لم يتعامل مع تطبيق الخدمة SharePoint Search Analytics في نسخة 2010 افيدكم ان هذا التطبيق تم دمجه ضمن مكونات تطبيق البحث في نسخة شيربوينت 2013 نظرا لعلاقته الوثيقة بالبحث.
يوجد مكونين اساسيين للتحليلات في الشيربوينت 2013 :

- تحليلات البحث Search Analytics :  يعتمد هذا المكون بالاساس على ملفات ULS Logs لمعرفة "عن ماذا يبحث المستخدمون" ثم يستخرج هذا المكون تلك المعلومات و يحفظها في مجلد عمل "working folder". كما يقوم بتحليل المحتوى الذي في فهرس البحث (Search Index).
المسار الافتراضي لمجلدات العمل الخاصة بهذا المكون هو 

C:\Program Files\Microsoft Office Servers\15.0\Data\Office Server\Analytics_c35af7f5-ace4-4f7f-92cb-9637a6f9b444\AE\AnalyticsProcessingComponent1\SearchAnalytics


اذا حاولت فتح احد الملفات التي في مجلد العمل ستجد انه غير قابل للقراءة لانه مضغوط و على شكل ثنائيات "Binaries"

- تحليلات الاستخدام Usage Analytics: يقوم المكون بتحليل سلوك المستخدم للشيربوينت. و تعتمد بالاساس على متجر الاحداث "event store" المسجل في خوادم الويب WFE و الذي تحفظ فيه نقرات المستخدمين على الملفات و دخولهم على المواقع.  ثم يستخرج هذا المكون تلك المعلومات و يحفظها في مجلد عمل "working folder ". كما يقوم بتحليل المحتوى الذي في فهرس البحث (Search Index).

C:\Program Files\Microsoft Office Servers\15.0\Data\Office Server\Analytics_c35af7f5-ace4-4f7f-92cb-9637a6f9b444\AE\AnalyticsProcessingComponent1\UsageAnalytics

2 - ادارة التحليلات : 

لا يمكن ادارة مكون التحليلات الا من خلال PowerShell لانه لا توجد امكانية لعمل ذلك من خلال لوحة التحكم Central Admin. 
ولذلك اذا اردت التحكم الكامل في هذا المكون لابد من جلب جميع المكتبات االتالية الى جلسة الباورشل PowerShell Session : 



اما لمعرفة اعدادات تحليلات البحث قم بتنفيذ ما يلي:

Get-AnalysisConfiguration searchanalytics

ولتعرف اعدادات تحليلات الاستخدام قم بتنفيذ كود الباورشل التالي: 
Get-AnalysisConfiguration usageanalytics

ستلاحظ ان الخاصية المسؤولة عن استخراج الشيربوينت لتقارير التحليل كل 24 ساعة هي خاصية : ProcessingDate
يعتمد الشيربوينت في مكون تحليل الاستخدام على متابعة مجموعة من الاحداث اهما :
- View
- Recommendation display
- Recommendation Click
...
كما يمكنك انشاء عدد 12 حدث جديد غير التي يستخدمها الشيربوينت , فعلى سبيل اذا كنت تريد متابعة ثناء المستخدمين على الصفحة الرئيسية للانترانيت قم باضافة زر الى الشاشة وسمه " اعجبتني الصفحة" وفي حالة ضغط الزائر للصفحة عليه تقوم باستدعاء الحدث الذي انشأته سلفا من خلال اكواد جافاسكربت. وهكذا يصبح بامكانك استخراج تقارير احصائية بهذا الخصوص. كما ستلاحظ ان النقرات على ذلك الزر ستحفظ في ملفات Event Store كما في الصورة التالية :



3 -استخراج التقارير : 

هناك 3 طرق لاستخراج التقارير:
- تقارير جاهزة في الشيربوينت Out of the box reports
- تقارير باستخدام حلول PowerPivot مخصصة 
- تقارير مخصصة بالباورشل

بالنسبة للنوع الاول بالامكان الوصول اليه من خلال شاشة اعدادات الموقع Site Settings كما في الصور التالية 

* تحليلات الاستخدام :  


* تحليلات البحث : 



التقارير السابقة تكون على شكل ملفات اكسل مميزة تعرض حتى رسوم بيانية خاصة:




اترك لكم تجربة الانواع الاخرى من التقارير , طبعا كل حسب ميولاته :)
 لكن من باب التشويق اود اخباركم انه بالامكان الحصول على تقارير باستخدام الحلول البرمجية المعتمدة على PowePivot للوصول الى اجزاء ويب WebParts تعرض رسوم بيانات متقدمة جدا ...

الأربعاء، 3 ديسمبر 2014

سلسلة الاتمتة في ارض الشيربوينت (2) : استنساخ خادم الشيربوينت


كمدير للشيربوينت تحتاج ان لاتكرر الاعمال المتشابهة كما ذكرنا سابقا لان ذلك مرهق لك و مكلف للمؤسسة كما اشرت الى ذلك في موضوع سابق.
لذلك عندما تحتاج اضافة خوادم شيربوينت الى مزرعة موجودة او عندما تحتاج الى تجهيز خوادم افتراضية تعمل عليها فرق العمل على منصة الشيربوينت كالمبرمجين و المحللين و المديرين للشيربوينت ما عليك الا تجهيز نسخة واحدة لتقوم باستنساخها متى ما احتجت اليها .
لكن كيف ذلك؟
يتلخص الحل في الخطوات التالية : 
1- قم بانشاء الخادم الافتراضي الاول و امنح لحسابات التشغيلService Accounts  التي ستستخدمها الصلاحيات اللازمة عليه.
2- قم بتفعيل الانترنت على الخادم ان كان مسموحا بذلك في مؤسستك (هذه النقطة اختيارية)
3- قم باعداد الخادم من حيث تثبيت اخر تحديثات الامان windows security  
updates
4- قم بتثبيت Sql Server ان كنت ستستخدم الخادم كمزرعة كاملة بمفرده.
5- قم بتثبيت متطلبات تثبيت الشيربوينت SharePoint Prerequisites
6- هذه النقطة مهمة جدا من حيث الفهم : وهي ان تقوم بتثبيت الشيربوينت الى ان تصل الى الشاشة الاخيرة قبل تشغيل Configuration Wizard  وهي التالية


الغ علامة CheckBox التي بالاحمر ثم اضغط على "Close".
8- قم بتثبيت حزمة اللغات Language Pack الذي تحتاجه
7- قم باستنساخ الخادم "Clone the server" الى العدد الذي تحتاجه من الخوادم الاضافية  باستخدام الادواة المتاحة لديك ,مع مراعات تغيير اسم الجهاز  "Computer Name".
8- الان قم بالدخول على احد الخوادم المستنسخة , ستلاحظ انك تستطيع الدخول عليها بنفس الحسابات الاولى التي استخدمتها في الخادم الاول , كما ستجد كل الاعدادات التي جهزتها مسبقا.
9- ما عليك الان سوى اكمال عملية اعداد الشيربوينت من خلال تشغيل SharePoint Products Configuration Wizard لربطه بالمزرعة التي تريد:


لكن لسائل ان يسال لماذا نتوقف في الخطوة  -6- عن اكمال تثبيت الشيربوينت و لا نواصل عمل الاعدادات ؟ 
الجواب هو ان عملية الاعداد التي في الخطوة 9 تعتمد بشكل كبير على اسم الخادم خصوصا عندما يكون عليه sql server , لذلك فانك اذا حاولت الاستنساخ من خادم قد انهيت عليه مرحلة الاعداد, فان النسخة المستنسخة لن تعمل. اعني لن يعمل الشيربوينت على الخادم المستنسخ الجديد.
امل ان اكون قد افدت...


السبت، 22 نوفمبر 2014

سلسلة الاتمتة في ارض الشيربوينت (1) : القهوة الصباحية !



السلام عليكم
عنوان غريب شوي  :) 
المهم , نحن نعلم ان الروتين يعتبر من اكثر ما يزعج محترفي التقنية فالروتين و المهام المتكررة يوميا المتواصل لسنوات قد يقتل فينا الابداع و التفكير المتجدد. بالاضافة الى ان المهام المكررة تعتبر مكلفة للمؤسسات من حيث ساعات العمل.
لذلك نصيحتي لا تستسلم للروتين اليومي وحاول ان تصنع سكربتات تقوم بالاعمال الروتينية بدلا منك :) يعني بالعربي مثل الروبوت.
كمثال عن ذلك : ياتي محترف الشيربوينت الصباح ليبدأ مهامه بفحص سلجات الاحداث الخاصة بالشيربوينت : Event Logs For SharePoint. بالتالي فان المرور على كل تلك الاحداث و قراءة الجديدة منها يعتبر مهمة شاقة ... فما الحل ؟

الحل الذي يتمناه كل SharePoint Admin   هو يشرب قهوة ساخنة في حين يقوم النظام بعرض الاخطاء الجديدة فقط. 
لعمل هذا الامر نحتاج فقط تشغيل السكريبت التالي :


$date= (get-date).adddays(-1)
$errors= get-eventlog application -after $date -entrytype "Error" | ?{$_.source -match "SharePoint"}
$EGroup = $error | group InstanceID
$Code = $Egroup[0].name
$MSG = Get-Eventlog Application -InstanceID $code -Newest 1
write-host "There are Currently $($errors.count) SharePoint errors in the last 24 hrs"
write-host "Of witch the majority are error code:  $code and there have been $($Egroup[0].count) of these."
write-host "The error message is as follow $($msg.Message)"

كنتيجة لذلك سترى ان النظام سيعرض على شاشتك :
- عدد الاخطاء التي حدثت خلال الـ 24 ساعة الماضية 
- اكثر خطأ متكرر و الكود الخاص به
- رسالة الخطأ المتكرر


بل اكثر من ذلك بامكانك جعلك النظام يتكلم و يسمعك صوته بدلا من الكتابة على الشاشة , لن اكتب لك الكود هنا للتشويق لكن ساخبرك بالمكتبة الصوتية التي تستخدمها : SAPI.spVoice

اترك لكم التجربة ....

الثلاثاء، 4 نوفمبر 2014

سلسلة النسخ الاحتياطي و الاسترجاع : تصدير حزم الحلول WSP

بهذا السكربت السهل بامكانك تصدير جميع ما في المزرعة من حلول -SharePoint Solution Package - WSP تم رفعها على تطبيقات الويب لديك.
لانه لابد من اخذ نسخ احتياطية منها ضمن خطة النسخ الاحتياطي لاي مزرعة شيبروينت , طبعا يفضل ان يتم تنفيذ السكربت ضمن مهمة ويندوز مجدولة بحيث يتم ذلك اليا وفق الجدول الزمني الذي تحتاجه: كل يوم , كل اسبوع , كل شهر , او كل سنة اذا كان لا يهم ضياع عمل السنة السابقة :)

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue 
Get-SpSolution | forEach-Object {
$_.SolutionFile.SaveAs("c:\wspbackup\$($_.Name)")
}

لا تنس ان تختار مسار الحفظ المناسب لك...

الخميس، 30 أكتوبر 2014

منح صلاحيات باورشل لمستخدم على جميع قواعد بيانات المحتوى


اذا كنت تريد صلاحيات Power Shell Access لاحد المستخدمين لعمل اوامر على قواعد بيانات المحتوى ما عليك الا تنفيذ السكربت التالي

if((Get-PSSnapin | Where {$_.Name -eq "Microsoft.SharePoint.PowerShell"})-eq $null)
{Add-PSSnapin Microsoft.SharePoint.PowerShell;}
cls
$username = Read-Host "Enter username";
Get-SPDatabase | ForEach-Object {Add-SPShellAdmin -UserName $username -database $_.Id}

الخميس، 23 أكتوبر 2014

سلسلة تقارير الباورشل : تقرير احجام قواعد بيانات المحتوى

هنا تقرير اخر لاحجام  "Content Databases Sizes". حيث يعرض قواعد بيانات المحتوى التي في المزرعة مع ذكر السعة Size التي استهلكها كل منها على مستوى خادم قواعد البيانات بالميجابايت MB.
لاكيد انه تقرير مهم جدا حيث يسمح بمتابعة الاحجام للمحافظة على احجام معقولة لقواعد البيانات حتى تبقى ضمن SharePoint Boundaries حسب ما يوضحه رابط تك نت التالي :

- Content Databases Limits - Software boundaries and limits for SharePoint 2013






Add-PSSnapin microsoft.sharepoint.powershell -ErrorAction SilentlyContinue

# SHARED VARS
$timestamp = get-date -format "yyyyMMdd_hhmmtt"
$date = get-date -format "yyyyMMdd"


#By DB
$filenameStart = "SizeByContentDatabase.csv"
$outfile = ("C:\Scripts_output\{0}_{1}.csv" -f $filenamestart, $timestamp)

$header = "Date,DBName,Size,SiteCollectionCount"
write-host $header 
$header | out-file $outfile

Start-SPassignment -global
$dblist = get-spcontentDatabase
foreach ($db in $dblist)
   #output the DB size 
   $size = $db.DisksizeRequired /1024/1024
   $dbname = $db.name
   $siteCount = $db.sites.count
   $line = "$date,$dbname,$size,$siteCount"
   

   write-host $line -foregroundcolor "yellow"
   $line | out-file $outfile -append 
}




سلسلة تقارير الباورشل : تقرير احجام مجموعات المواقع


استكمالا لسلسلة التقارير اعرض اليكم تقرير  احجام مجموعات المواقع "Site Collections Sizes". حيث يعرض كل مجموعات المواقع التي في المزرعة مع ذكر السعة Size التي استهلكها كل منها على مستوى خادم قواعد البيانات.
الاكيد انه تقرير مهم جدا حيث يسمح بمتابعة الاحجام للمحافظة على احجام معقولة لقواعد البيانات حتى تبقى ضمن SharePoint Boundaries حسب ما يوضحه رابط تك نت التالي :

Software boundaries and limits for SharePoint 2013 - Site Collections Limits

التقرير المستخرج يكون على هيئة ملف CSV كتالي و فيه الاحجام بالميجا بايت MB : 




Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

$timestamp = get-date -format "yyyyMMdd_hhmmtt"
$date = get-date -format "yyyyMMdd"
$filenameStart = "SizeBySiteCollection"
$outfile = ("C:\Scripts_output\{0}_{1}.csv" -f $filenamestart, $timestamp)

$WebappList = get-spwebapplication 

$header = "Date,SiteCollectionUrl,Size,DBName"
write-host $header 
$header | out-file $outfile

foreach ($WebApp in $WebAppList){
$sites = $webapp.sites
foreach ($site in $sites)
{
  $url = $site.url
   $size = $site.usage.storage /1024/1024
  $db = $site.contentdatabase.name
  
  $line = "$date,$url,$size,$db"
  write-host $line
  $line | out-file $outfile -append    
  Start-Sleep -Milliseconds 100 #give the server a small break between iterations
}
}