الثلاثاء، 25 ديسمبر 2012

حل مشكلة إعدادات الذاكرة المخبئية Object Cache في شيربوينت 2010



عند إنشاء تطبيق ويب Web Application جديد على شيربوينت 2010 ستلاحظ ظهور التحذير التالي في سجلات ويندوز

Object Cache: The super reader account utilized by the cache does not have sufficient permissions to SharePoint

databases.
To configure the account use the following command 'stsadm -o setproperty -propertyname portalsuperreaderaccount

-propertyvalue account -url webappurl'. It should be configured to be an account that has Read access to the

SharePoint databases.
Additional Data:
Current default super reader account: NT AUTHORITY\LOCAL SERVICE

لحل هذه المشكلة يجب اتباع الخطوات التالية:
1 - افتح موقع الإدارة المركزي Central Administration
2 - من المجموعة Application Management اختر Manage web applications
3 - حدد تطبيق الويب الذي يسبب المشكلة السابقة
4 - من أيقونة شريط الأدوات العلوي اختر User Policy
5 - اضغط على Add Users ومن ثم التالي Next
6 - أضف مستخدم مع الصلاحية تحكم كامل Full Control
7 - أضف مستخدماً آخر مع الصلاحية Full Read
8 - نفذ الأوامر التالي باستخدام سطر الأوامر PowerShell

كود:
$wa = Get-SPWebApplication “http://WEB_APPLICATION_URL"
$wa.Properties["portalsuperuseraccount"] = "اسم المستخدم كما يظهر في شاشة User Policy تماماً"
$wa.Properties["portalsuperuseraccount"] = "اسم المستخدم كما يظهر في شاشة User Policy تماماً"
$wa.Update()
في حال تريد إلغاء استخدام الإعدادات السابقة استخدم الأوامر التالية:

كود:
$wa = Get-SPWebApplication “http://WEB_APPLICATION_URL"
$wa.Properties.Remove("portalsuperuseraccount")
$wa.Properties.Remove("portalsuperreaderaccount")
$wa.Update()


الجمعة، 21 ديسمبر 2012

لم يتم تثبيت أحد الحقول بشكل صحيح. الرجاء الذهاب إلى قائمة إعدادات الصفحة لحذف الحقل



بعد تنفيذ عملية الترقية من شيربوينت 2007 إلى شيربوينت 2010 قد يظهر الخطأ التالي:

Field type is not installed properly. Go to the list settings page to delete this field

وهذا الخطأ يعني أن هناك مشكلة في أحد الحقول سواء ضمن أحد أنواع المحتويات Content Types أو إحدى القوائم تحتوي على حقل لم يتم تثبيته بشكل صحيح أثناء عملية الترقية, طبعاً الخطأ عام جداً ولا يشير إلى القائمة التي يحدث فيها الخطأ أو الموقع, ولكن أحد أسباب هذا الخطأ بعد الترقية من شيربوينت 2007 إلى شيربوينت 2010 هي حقل اسمه GroupID في قائمة اسمها قائمة العلاقات Relationships List, حيث أن هذا الحقل نوعه سطر نص مفرد في 2007 وعند تنفيذ عملية الترقية يصبح اسمه GroupGuid من النوع Guid كما هو واضح في الشكل التالي:


ولسبب ما عند تنفيذ عملية الترقية من 2007 إلى 2010 فإن هذا الحقل لا تتم عملية ترقيته بالشكل الصحيح فيبقى اسمه GroupID من النوع سطر نص مفرد. لذلك عند فتح صفحة "إدارة المحتوى والبينة" من قائمة إجراءات الموقع أو عند تحرير وحفظ أي صفحة فإن الخطأ السابق يظهر.

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

1. يجب الحصول على نسخة احتياطية عن الموقع الذي تعمل عليه بحيث يمكن استرجاعه بشكل صحيح في حال أن الخطوات التالية لم تعمل بشكل صحيح.
2. القائمة Relationships List هي قائمة مخفية لا تظهر إلا باستخدام SharePoint Designer 2010, حيث يتم إنشاؤها في الموقع الرئيسي لمجموعة المواقع:


3. يجب حذف هذه القائمة بالضغط على زر Delete وحتى لو ظهرت رسالة خطأ فلا بأس, اضغط على اسم القائمة واحذف كل محتوياتها.
4. ثبت البرنامج http://spdeploymentwizard.codeplex.com المجاني على نفس الخادم الذي يحتوي على بيئة عمل شيربوينت 2010. وهذا البرنامج يعمل مع شيربوينت 2007 وشيربوينت 2010 لذلك ستجد نسخة تدعم منصة العمل 32Bit والتي تخص شيربوينت 2007. ويجب تثبيت النسخة COB.SharePoint.Utilities.DeploymentWizard.Installe r_x64.msi على خادم شيربوينت 2010 الذي يحتوي على المشكلة.





5. بعد تثبيت البرنامج السابق، يجب فتحه من المسار التالي:

C:\Program Files\Chris O'Brien\SharePoint Content Deployment Wizard

6. قبل فتح الملف SPContentDeploymentWizard.exe يجب نسخ الشيفرة التالية إلى الملف SPContentDeploymentWizard.exe.config:

كود HTML:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.diagnostics>
    <switches>
      <add name="COB.SharePoint.Utilities.ContentDeploymentWizard" value="0"/>
    </switches>
    <trace autoflush="true" indentsize="2">
      <listeners>
        <add name="WizardListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="C:\Wizard.log">
        </add>  
      </listeners>
    </trace>    
  </system.diagnostics>
  <!-- Uncomment this section to use the Wizard with SharePoint 2010 - this will ensure the SharePoint 2010 assemblies are used.-->
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Microsoft.SharePoint" publicKeyToken="71e9bce111e9429c" culture="neutral" />
        <bindingRedirect oldVersion="11.0.0.0" newVersion="14.0.0.0" />
      </dependentAssembly>
      <dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Microsoft.SharePoint.Publishing" publicKeyToken="71e9bce111e9429c" culture="neutral" />
        <bindingRedirect oldVersion="11.0.0.0" newVersion="14.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

</configuration>

7. ما الهدف من هذا البرنامج؟ الهدف هو نسخ القائمة Relationships List من مجموعة مواقع Site Collections تم إنشاؤها مباشرة تحت بيئة شيربوينت 2010 مباشرة بدون ترقية بحيث تحتوي على الحقل GroupGuid, والخطوات التالية هي لأخذ نسخة عن هذه القائمة من موقع يعمل بشكل صحيح:








8. بعد تنفيذ الخطوات السابقة نكون قد نفذنا عملية تصدير للقائمة Relationships List بشكل كامل.
9. في هذه الخطوات سيتم استيراد نسخة القائمة التي حصلنا عليها في الخطوات السابقة إلى مجموعة المواقع التي تحتوي على المشكلة:



بعدها اضغط Finish لإتمام العملية.

بعد تنفيذ العملية السابقة يجب أن تكون مشكلة العمود GroupID قد تم حلها بشكل نهائي.


الأربعاء، 19 ديسمبر 2012

القائمة المنسدلة تعيد قيمة أول عنصر دائماً


في آخر مشروع عملنا عليه ظهرت مشكلة غريبة تتعلق بالقائمة المنسدلة Drop Down List, وهي أن قيمة الخاصية:

ddlCountries.SelectedItem.Text

دائماً هي نص العنصر الأول في القائمة :), طبعاً تم تجريب كل شيء يمكن تخيله وكانت المشكلة ببساطة أن جميع قيم عناصر القائمة هي نفسها أي قيمة الخاصية Value هي نفسها للجميع لذلك ولسبب ما فإن القائمة المنسدلة تعيد قيمة نص العنصر الأول دائماً

استمتع :)


الثلاثاء، 18 ديسمبر 2012

المحافظة على شكل شيربوينت 2007 عند الترقية إلى شيربوينت 2010



بعد تنفيذ عملية الترقية من شيربوينت 2007 إلى 2010, أكثر شيء يجب أن تقلق بشأنه هو التصميم حيث أن الانتقال إلى طريقة عرض وستايلات وتصاميم 2010 قد يكلف الكثير من العمل! لكن ماذا لو أن العميل يريد أن تبقى واجهات وطريقة
  • عرض الصفحات وإجراءات الموقع وكيفية إضافة أجزاء الويب على حالها بعد الترقية أي بنفس الشكل, لتنفيذ ذلك اتبع الخطوات التالية:
  • 1 - لا تنفذ الترقية الظاهرية من صفحة إعدادات الموقع
  • 2 - عند إنشاء موقع جديد تحت بيئة عمل شيربوينت 2010 الجديدة عندها سيتم استخدام الإصدار 4 لشكل الموقع الجديد حتى لو لم يتم تنفيذ الترقية الظاهرية Visual Upgrade, ولحل هذه النقطة التي قد تكون مشكلة لأنك ستضطر عندها لترقية الصفحة الرئيسية Master Page للموقع من 2007 إلى 2010 أو إنشاء صفحة رئيسية Master Page إصدار 2010 خاصة بالمواقع الجديدة. لكن يوجد حل بسيط وهو بإعادة تهيئة إصدار الموقع الجديد إلى 2007 بتنفيذ الأمر التالي على سطر الأوامر PowerShell:


$web = Get-SPWeb http://WEB_SITE_URL
$web.UIVersion = 3
$web.UIVersionConfigurationEnabled = $true
$web.Update()
ويجب الانتباه إلى أن الأمر السابق يتم تنفيذه على مستوى الموقع SPWeb وليس على مستوى مجموعة المواقع Site Collection


الأربعاء، 12 ديسمبر 2012

الحالات التي تفشل فيها عملية تثبيت شيربوينت 2013 (15) والحالات الغير مدعومة



قبل البدء بعملية تثبيت شيربوينت 2013 (15) يجب مراجعة الحالات التالية التي تفشل فيها عملية التثبيت أو أنها غير مدعومة من قبل مايكروسوفت في حال حدوث أخطاء:

1 - عند تثبيت شيربوينت 2013 على قرص Drive تمت تهيئته لاستخدام الصيغة Resilient File System(ReSF) حيث تظهر رسالة الخطأ التالية:

datetime::[940] Catalyst file system check failed: The path root D:\ is not NTFS
datetime::[940] Showing message Title: 'Setup Warning', Message: 'The install location must be on a drive formatted with NTFS. Select another drive.'
datetime::[940] Message returned: 1


2 - عند محاولة تثبيت شيربوينت 2013 على جهاز لا يعمل تحت نطاق Domain ثل جهازك الشخصي.
3 - عند تثبيت شيربوينت 2013 على خادم يُستخدم كمتحكم للنطاق Domain Controller, ويمكن دعمه فقط في بيئة العمل التطويرية وليس بيئات العمل الحقيقية.
4 - عند تثبيت شيربوينت 2013 على النسخة Windows Web Server.
5 - عند تثبيت شيربوينت 2013 على جهاز افتراضي Virtual Machine تم ضبط إعدادات الذاكرة لتكون ديناميكية Dynamic Memory (ويمكن مراجعة الرابط التالي لمعرفة الإعدادات الأفضل على بيئة افتراضية)


الأحد، 9 ديسمبر 2012

MetadataNavigationContext Page_InitComplete: No XsltListViewWebPart was found



بعد تنفيذ عملية الترقية من شيربوينت 2007 إلى شيربوينت 2010 تظهر مشكلة بعد الترقية الظاهرية Visual Upgrade من إعدادات الموقع, تظهر مشكلة عند محاولة تحرير أي صفحة ضمن مكتبة الصفحات Pages للصفحات القديمة, وعند البحث في ملفات تعقب أخطاء شيربوينت تظهر الرسالة التالية:

MetadataNavigationContext Page_InitComplete: No XsltListViewWebPart was found on this page

لحل هذه المشكلة يجب تعديل قيمة العمود tp_WebPartTypeId إلى القيمة 874F5460-71F9-FECC-E894-E7E858D9713E في الجدول AllWebParts في قاعدة بيانات المحتوى Content Database الخاصة بمجوعة المواقع Site Collection كما يلي:

UPDATE AllWebParts
SET tp_WebPartTypeId = '874F5460-71F9-FECC-E894-E7E858D9713E'
WHERE tp_WebPartTypeId IN('BAF5274E-A800-8DC3-96D0-0003D9405663','2242CCE6-491A-657A-C8EE-B10A2A993EDA') AND
(tp_DisplayName <> 'كافة المستندات' OR tp_DisplayName <> 'All Documents')


استمتع بترقية مريحة :)


الاثنين، 8 أكتوبر 2012

حل مشكلة صلاحية الوصول إلى موقع على شيربوينت من خلال خدمة البحث


Access is denied. Verify that either the Default Content Access Account has access to this repository, or add a crawl rule to crawl this repository. If the repository being crawled is a SharePoint repository, verify that the account you are using has "Full Read" permissions on the SharePoint Web Application being crawled.

الخطأ السابق من أشهر الأخطاء التي تواجه مدير بيئة عمل شيربوينت ولهذا الخطأ أسباب عديدة ويمكن حله بعدة طرق, وسنستعرض هذه الطرق واحداً تلو الآخر

الحل الأول:
يعتمد الحل الأول التعديل على مسجل ويندوز باتباع الخطوات التالية:
  1. أنشئ قيمة جديدة من النوع DWORD 32 اسمه DisableLoopbackCheck وقيمته تساوي 1 تحت السجل HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro  l\Lsa
  2. في بعض الأحيان قد تضطر لإعادة تشغيل الخادم
  3. يجب تنفيذ هذا التعديل على جميع خوادم شيربوينت


الحل الثاني:
  • يعتمد الحل الثاني على تعديل الملف hosts تحت المسار C:\Windows\System32\drivers\etc وذلك بإضافة الرقم IP الخاص بالخادم بالضيغة التالية:

SERVER_IP       SERVER_NAME


  • قد تضطر إجراء التعديل على جميع خوادم شيربوينت


  • الحل الثالث:
    يجب التأكد من أن المستخدم الافتراضي المستخدم لفهرسة البيانات لديه صلاحية Full Read على البيانات التي ستتم فهرستها, وتتم هذه العملية باتباع الخطوات التالية:
    • من موفع الإدارة المركزي Central Administration اختر Manage Service Application
    • اضغط على اسم خدمة البحث
    • ابحث عن القيمة Default content access account لمعرفة اسم المستخدم الافتراضي المستخدم لفهرسة البيانات
    • يمكن تغيير اسم المستخدم بالضغط عليه
    • يجب أن يكون لهذا المستخدم صلاحية Full Read


    الخميس، 9 أغسطس 2012

    تحميل ملف باستخدام السحب والإفلات على شيربوينت 2013


    من الميزات الجديدة في شيربوينت 15 هي إمكانية رفع الملفات إلى مكتبة المستندات أو مكتبة الصور أو أنواع المكتبات الأخر باستخدام تقنية السحب والإفلات. وتعتبر هذه الميزة من الميزات التي تسهل عملية التعامل مع شيربوينت من قبل المستخدم النهائي حيث يمكن تنفيذ رفع الملفات بدون استخدام الطريقة التقليدية التي ما زالت متوفرة كما في الشكل التالي:


    وتظهر ميزة آلية السحب والإفلات لرفع الملفات عند الدخول إلى مكتبة مستندات أو مكتبة صور, حيث يظهر الشكل التالي:


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


    وبمجرد إفلات الملف في المنطقة المحددة تبدأ عملية رفع الملف إلى مكتبة المستندات كما هو مبين في الشكل التالي:


    إضافة إلى توفير إمكانية إيقاف عملية رفع الملف وذلك بالضغط على زر CANCEL كما هو موضح في الشكل التالي, وبعدها تظهر الرسالة التالية مع الخيار DISMISS لإخفاء الرسالة:


    من الأمور الممتازة في هذه الميزة هي إمكانية استخدامها على أكثر من متصفح مثل IE, Chrome, Firefox بدون أي مشاكل في عملية رفع الملفات وخاصة أنها كما يبدو تستخدم تقنية أجاكس لتنفيذ عملية رفع الملفات. أيضاً من المزايا هي إمكانية سحب وإفلات أكثر من ملف لرفعها مرة واحدة إلى مكتبة المستندات كما هو موضح في الشكل التالي:




    SharePoint2013-OfficeWebApps


    بعد تحميل الملفات المطلوبة من الرابط التالي:


    1 - شغل الملف Setup.exe واتبع الخطوات التي تظهر على الشاشة.
    2 - ضبط إعدادات سطر الأوامر PowerShell لتنفيذ أوامر تطبيقات الأوفيس

    Import-Module OfficeWebApps

    3 - إنشاء بيئة عمل تطبيقات الأوفيس

    New-OfficeWebAppsFarm –InternalURL http://officeapps –AllowHttp -EditingEnabled

    حيث أن officeapps هو اسم الخادم

    4 - ضبط إعدادات شيربوينت 2013 لاستخدام تطبيقات الأوفيس

    New-SPWOPIBinding -ServerName officeapps_SERVERNAME_FQDN -AllowHTTP

    5 - تحديد منطقة العمل والبروتوكول

    Set-SPWopiZone internal-http

    6 - بتنفيذ الخطوة رقم 3 تكون عملية ضبط إعدادات عملية الربط بين شيربوينت 2013 وتطبيقات الأوفيس قد انتهت وبقية الخطوة الأخيرة وهي اختبار هذه الإعدادات وذلك بتحميل ملف من أحد الأنواع Word, Excel, PowerPoint, OneNote إلى مكتبة مستندات داخل موقع شيربوينت 2013

    الاثنين، 6 أغسطس 2012

    الميزات الجديدة في خادم تطبيقات الأوفيس على الويب 2013




    يحتوي الإصدار الجديد من خادم تطبيقات الأوفيس على الويب على العديد من المزايا الجديدة التي حسنت من استخدامه وأدائه ولعل أهمها النقاط التالية:
    • تتبع التغييرات Change Tracking: حيث يمكن للمستخدم فتح وثيقة أوفيس تحتوي على علامات مراجعة ضمن الوثيقة.
    • التعليقات Comments: يمكن للمستخدم باستخدام تطبيقات الأوفيس على الويب من إضافة, وتعديل وحذف والرد على التعليقات والملاحظات المدونة ضمن الوثيقة
    • التعديل المشترك Co-authoring: تسمح هذه الميزة لأكثر من مستخدم من التعديل على نفس الوثيقة ضمن تطبيقات الأوفيس على الويب.
    • تضمين خدمات تطبيقات الأوفيس على الويب: بسبب الهيكلية الجديدة لتطبيقات الأوفيس على الويب يمكن الآن تضمين خدمات تطبيقات الأوفيس على الويب ضمن تطبيقات الويب المبنية باستخدام تقنية ASP.NET وليس هناك ضرورة لوجود بيئة عمل شيربوينت لاستخدامها كما في الإصدار السابق.
    • تثبيت تطبيقات الأوفيس على الويب: في الإصدار 2013 لا يتم تثبيت تطبيقات أوفيس على الويب على نفس خادم الشيربوينت 2013, وإنما يمكن تخصيص خادم خاص بتطبيقات الأوفيس, ومن ثم يتم ضبط إعدادات شيربوينت 2013 للاستفادة من خدمات تطبيقات الأوفيس.
    • التراخيص: تم تزويد شيربوينت 2013 بآلية جديدة لضبط التراخيص بحيث يتم الاستفادة من خدمات تطبيقات الأوفيس على الويب, حيث يجب أولاً تفعيل رخصة شيربوينت 2013 ومن ثم تفعيل رخصة تطبيقات الأوفيس لتحرير الوثائق, وبالتالي فإن المستخدمين الذين لديهم رخصة تحرير الوثائق يمكنهم تحرير ملفات الأوفيس باستخدام تطبيقات الأوفيس على الويب.
    • المعاينة السريعة: عند عرض نتائج البحث يمكن للمستخدم عرض معاينة سريعة لملفات أوفيس فقط بتمرير مؤشر الفأرة فوقها.
    • مشاركة الملفات: من خلال هذه الميزة يمكن إرسال رابط عن الوثيقة إلى أي مستخدم آخر بحيث يمكنه مشاهدة محتوى الملف باستخدام تطبيقات الأوفيس على الويب.