- محتویات اصلی صفحه
خانه
  

آدرس ها
بایگانی
 

 نوشته ها

Rights Management Services(RMS)

با توجه به اینکه SharePoint از مجوزهای دسترسی در سطح یک آیتم (Item-Level) برای اسناد نگهداری شده در مخازن اسناد پشتیبانی می کند، اما فقط این کافی نیست که تعیین کنیم چه کاربرانی حق دسترسی به یک سند خاص را داشته باشند، بلکه مهمتر این است که بتوانیم تعیین نماییم که کاربران مجوز انجام چه نوع عملیاتی را بر روی اسناد داشته باشند.

برای مثال، شخصی که مجوز خواندن یک سند Word در SharePoint را دارد، عموما مجوز پرینت گرفتن از این سند را نیز خواهد داشت. علاوه بر این اگر کاربر سندی را از SharePoint دانلود کرده باشد، شما دیگر هیچ کنترلی بر روی آن نخواهید داشت.

بنابراین اگر بخواهید کنترل های ویژه ای بر روی اسناد اعمال نمایید و مطمئن باشید که این کنترل ها قابل اجرا در هر محیطی که اسناد نگهداری می شوند هستند، نیاز به بکارگیری RMS خواهید داشت.

محدوده های محافظتی RMS فراتر از SharePoint بوده و با روش تغییر اطلاعات بصورتی غیر قابل فهم برای کاربر و با بکارگیری محدودیت های امنیتی بر روی اسناد بطوری که اگر آن سند از روی سرور SharePoint یا شبکه حذف گردد، محدودیت های امنیتی بر روی آنها باقی می مانند.

ضرورتا، بعد از اینکه فایل ها بوسیله RMS به رمز شدند، فقط کاربرانی که بوسیله سرور RMS مجاز می باشند، می توانند به اسناد دسترسی  داشته باشند. و بقیه کاربران بصورت بلاک شده هستند و حتی اگر بتوانند برخی از فایل ها را با استفاده از برنامه هایی باز نمایند فقط نسخه ای نا مفهوم از آن سند را خواهند دید.

RMS برای سازمانهایی طراحی شده است که دارای اسناد و اطلاعات حساسی بوده و نیاز دارند تا بطور مدام به نگهداری و محافظت از آنها بپردازند، این اطلاعات می توانند شامل نقشه های طراحی محصولات، مدارک پزشکی، لیست کارت های اعتباری و داده های شخصی کلاینت ها(مثل شماره های امنیتی شبکه) باشند.

RMS به سازمانها این اجازه را می دهد تا با اعمال نمودن مجموعه ای از حقوق و شروطی که قابل عمل بر روی اسناد باشند، بتوانند از داده های موجود محافظت نمایند و همینطور هر نوع فایلی با فرمت باینری را که آن حقوق بر روی آنها اعمال شده است را صرفنظر از چگونگی انتقالشان مورد حفاظت قرار دهند.

مجوزهای RMS بوسیله تعاریف و قالب هایی که به عنوان سندی از حقوق می باشند قابل مدیریت می باشند. یک قالب امنیتی از حقوق ها، تشریحی از مجوزهای خاص و شروطی می باشد که به کاربران مشخصی از محتوا ارجاع می شوند.

در زیر به مجموعه ای از مجوزها که می توانند به یک قالب امنیتی از حقوق ارجاع شوند اشاره شده است:

  •  Full Control
  •  View Rights
  •  Export (Save As)
  •  Save
  •  View
  •  Print
  •  Extract
  •  Edit
  •  Allow Macros
  •  Forward
  •  Reply
  •  Reply All

 

در پست های بعدی قصد دارم تا نحوه فعال کردن این سرویس را در SharePoint و اعمال نمودن مجوزها بر روی اسناد را خدمتتان ارائه نمایم.

 

Tip And Trick

همانطور که در دو پست قبلی در مورد data view ها توضیح داده شد ، دانستید که data view ها از XSLT برای انتقال داده ها استفاده می کنند و می توانند به منابعی از انواع Data base، XML، Web Service، Lists، Document Library، Server side Script متصل شده و داده های آنها را بازیابی نموده و نمایش دهند.

نکته ای که نیاز دانستم تا ذکر کنم این است که data view ها از یک کنترل .NET ای به نام SPDataSource برای دسترسی به داده ها استفاده می نمایند و امکاناتی که SharePoint Designer از طریق واسط کاربری برای استفاده از data view در اختیار ما می گذارد تنها بخشی از توانایی های data view ها می باشد.

SPDataSource دارای چند مد(mode) برای نمایش داده هاست که در حالت عادی ما تنها یکی از آنها را که مد List می باشد استفاده می کنیم. این مدها را می توان بصورت زیر نام برد:

  • CrossList
  • List
  • ListItem
  • ListOfLists
  • Webs

ListOfLists و Webs برای نمایش مجموعه ای از لیست ها و مجموعه ای از زیر وب ها ی مربوط به یک وب سایت مشخص مورد استفاده قرار می گیرند.

CrossList برای نمایش محتوای یک نوع لیست مشخص در داخل یک محدوده مشخص شده از Site Collection مورد استفاده قرار می گیرد.

برای استفاده از این مدها شما باید پس از اضافه نمودن data view به صفحه تان ، یک data source را بصورت نمونه به آن اضافه نمایید. سپس data view را بصورت انتخاب شده درآورده و صفحه را در حالت نمای کد قرار دهید، در داخل کد مربوط به data view شما یک المنت با عنوان <SharePoint:SPDataSource …..> خواهید یافت که داخل آن می توانید با تغییر دادن مشخصه DataSourceMode به موارد گفته شده در بالا و نوشتن Query های مورد نظر در داخل مشخصه selectcommand

اقدام به بازیابی داده هایتان نمایید. ویژگی استفاده از این روش این است که بصورت داینامیک بوده و شما یک بار این کار را انجام می دهید و دیگر نیاز نیست که برای هر لیست که در سایت های مختلف است یک data source ایجاد کرده و آنها را با هم ادغام نمایید.    

برای دیدن نمونه های بیشتر به این لینک رجوع نمایید.

نمایش داده ها از چند منبع مختلف در یک Data View

گاهی اوقات نیاز دارید تا بتوانید داده های ذخیره شده در چند منبع مختلف را بازیابی نموده و آنها را در یک dataview نمایش دهید. به عنوان مثال داده هایی را که در چند لیست مختلف در یک سایت و یا چند سایت مختلف نگهداری می شوند و ممکن است این لیست ها دارای یک فیلد مشترک بصورت Lookup باشند و یا اینکه دارای هیچ فیلد یا ستون مشترک نبوده و فقط محتوایشان یکی باشد مثل لیست وظایف(Tasks) .

در پست قبلی نحوه ایجاد یک dataview و اتصال آن به محتوای یک لیست را توضیح دادم. بعد از اینکه یک dataview به صفحه اضافه نمودید باید آنرا به سورس مورد نظر متصل نمایید. در این نمونه من می خواهم محتوای لیست وظایف را که در دو سایت مختلف نگهداری می شوند، در یک dataview نمایش دهم. برای این کار بصورت زیر عمل می نماییم: 

  1. از قاب Data Source Library در قسمت پایین بر روی Connect to another library کلیک کنید(توجه نمایید که اگر منابع یا لیست های شما در همان سایت کاریتان باشد نیاز به انجام این مرحله نمی باشد)

  1. در پنجره Manage Library بر روی دکمه Add کلیک نموده و در داخل پنجره ای که ظاهر می شود آدرس و نام آنرا مشخص نمایید. به عنوان مثال من می خواهم از دو زیر سایت Sub Site1 و Sub Site2 محتوای لیست وظایف را نمایش دهم.

  1. در قاب Data Source Library بروی علامت + کنار Linked sources کلیک نموده و از داخل آن بر روی Create a new linked source کلیک نمایید.
  2. در پنجره Data Source Properties بر روی دکمه Configure Linked Source … کلیک نموده و از پنجره ظاهر شده می توانیم سورس هایی را که ایجاد نمودیم را ببینیم(subsite1 و subsite2). بر روی هر کدام از آنها کلیک نموده و از قسمت لیست ها (SharePoint Lists) لیست وظایف آنها را انتخاب نموده و دکمه Add را می زنیم.

سپس بر روی دکمه Next کلیک می نماییم، در این قسمت ما دو انتخاب داریم :

  • اولین انتخاب برای حالتی است که ما بخواهیم محتوای دو لیست را که از نظر محتوایی یکی می باشند(مانند لیست وظایف) با همدیگر ادغام نماییم.
  • انتخاب دوم زمانی مورد استفاده قرار می گیرد که بخواهیم محتوای دو لیست مختلف را که دارای یک ستون مشترک هستند را با هم ادغام نماییم.
  1. با توجه به توضیحات بالا م باید حالت اول را انتخاب نماییم. بعد از انتخاب کلید Finish را می زنیم.

  1. در پنجره Data Source Library ، از تب General ما می توانیم یک نام برای سورس ایجاد شده تعیین نماییم.
  2. بعد از ایجاد شما می توانید از قسمت Linked Sources بر روی سورس ایجاد شده کلیک نموده و از منوی ظاهر شده Show data را بزنید. حالا در قسمت Data Source Details پس از انتخاب فیلد های مورد نظر Insert Selected Field as کلیک نموده و از داخل آن Insert multi item view را انتخاب کنید.

اکنون مشاهده می کنید که یک data view با محتوای چندین لیست ایجاد نموده اید که می توانید از امکانات data view ها برای مرتب سازی، فیلتر و ... برای محنوای آن استفاده کنید.

استفاده از Data View  ها در SharePoint

 

در تمامی نرم افزارهای موجود، چه ویندوزی و چه اینترنتی، نیاز به این وجود دارد که بتوانید از داده ها و اطلاعات موجود گزارشاتی را با اعمال فیلترهای مختلف در سطح مدیریتی و کاربری ارائه نمایید. برای اینکار حتما بایستی با نوشتن هارد-کد و با استفاده از query های زیاد در قالب یک برنامه گزارشگیری این کار را انجام دهید.

این مساله در SharePoint بسیار آسان و ساده می باشد. با استفاده از SharePoint Designer ، شما خیلی سریع می توانید اقدام به ایجاد نماهای سفارشی شده از داده ها با عنوان Data View نمایید. با Data View ها شما می توانید داده ها را از منابع مختلفی از قبیل:

  • بانک های اطلاعاتی
  • اسناد با ساختار XML
  • Web Service ها
  • لیست های SharePoint
  • مخازن اسناد
  • اسکریپت های Server-Side

مشاهده نمایید.

Data View یک نمای زنده و قابل سفارشی شدن از داده هاست که داده ها را از منابع مختلف با ساختار XML دریافت کرده و با استفاده ازXSL آنرا بصورت نمای قابل مشاهده و قابل تغییر در اختیار کاربر قرار می دهد، بطوریکه کاربر توانایی فیلتر نمودن، مرتب سازی و یا گروه بندی داده ها را دارد. همچنین شما می توانید آرایش (Layout) آنرا تقییر داده و Style های مختلف را بر روی آن اعمال کنید.

همانطور که در بالا اشاره شد، ورودی Data View ها می تواند از منابع مختلف باشد. همچنین شما می توانید داده ها را از منابع مختلفی دریافت کرده و آنها را با هم ادغام نموده و در یک Data View بصورت واحد نمایش دهید.

خوب، در این پست من قصد دارم ابتدا از منابع اطلاعاتی خود SharePoint یعنی لیست ها استفاده کنم و با اعمال فیلتر و گروه بندی آنرا برای شما توضیح دهم و کار با منابع دیگر را در آینده برایتان خواهم گفت.

ایجاد یک Data View

برای این کار شما ابتدا باید یک Data View را به صفحه اضافه نموده ، سپس Source اطلاعاتی مورد نظرتان را از Data Source Library (قسمتی که Data Source های قابل دسترس برای سایت های SharePoint را مدیریت می کند)انتخاب نموده و آنرا باز کرده و پس از انتخاب فیلدهای مورد نظر، آنها را به Data View اضافه می کنید.

خوب حالا کارهای گفته شده را از طریق SharePoint Designer مرحله به مرحله با هم انجام می دهیم:

  1. ابتدا یک صفحه .aspx ایجاد می کنیم. در منوی File بر روی گزینه New کلیک نموده و از پنجره باز شده ASPX را انتخاب کنید. یک صفحه جدید با تگ Form برایتان باز خواهد شد.

  2. از منوی Data View بر روی Insert Data View کلیک نمایید. یک Data View خالی برایتان نمایش داده خواهد شد و در سمت راست نیز Data Source Library باز خواهد شد.

  3. حالا شما باید از داخل Data Source Library منبع مورد نظرتان را انتخاب نمایید تا آنرا به Data View اضافه کنید.(در این مثال من می خوام لیست روزنگار را که یک لیست سفارشی است به عنوان data source انتخاب کنم)

پس از انتخاب، بر روی آن کلیک نموده و بر روی Show data کلیک می کنیم. به این صورت تمام فیلدهای آن برای شما نمایش داده خواهد شد، که می توانید فیلدهای مورد نظرتان را انتخاب نموده و آنها را به data view اضافه کنید.

پس از انتخاب فیلدها بر روی Insert Selected Fields as … کلیک نموده و Multiple Item View را انتخاب نمایید. خوب حالا شما یک Data View با فیلدهای انتخاب شده در صفحه تان خواهید داشت.

حالا شما می توانید از امکانات این Data View برای فیلتر کردن، گروه بندی و مرتب سازی استفاده نمایید. من می خوام این data view را بر اساس نام اشخاص و پروژه گروه بندی نمایم و سپس رکوردهایی را که فیلد پروژه و وظیفه آنها خالی می باشند را نمایش ندهم.

دسته بندی

برای این کار بر روی علامت فلش در گوشه چپ data view کلیک نموده و از پنجره باز شده Sort and Group را انتخاب می کنیم.

در این پنجره شما می توانید فیلدهای مورد نظر برای دسته بندی را انتخاب کرده و گزینه های مرتب سازی را نیز فعال نمایید و همچنین تعیین کنید که دسته ها در هنگام نمایش باز شده باشند یا نه.

فیلتر کردن

همانطور که در بالا گفته شد، می خواهیم این data view رکوردهایی را که فیلدهای پروژه و وظیفه آنها خالی هستند را نمایش ندهد. برای این کار بر روی گزینه Filter کلیک نموده و از پنجره ظاهر شده فیلترهای خود را اعمال می کنیم.

 

بیشترین چیزی که در مورد SharePoint می دانید چیست؟

تا به حال حتما کلمه SharePoint به گوشتان خورده است. SharePoint چیست؟ قبل از پاسخ، می خوام به روند پیشرفت و رشد اینترانت در زمینه تجارت اشاره کنم. اینترانت را می توان به وب سایتی که محدود به داخل یک سازمان یا کمپانی می باشد، دانست. یعنی افراد از بیرون سازمان توانایی مشاهده و دسترسی به آن را ندارند ، مگر اینکه از مجوز ویژه ای برخورد باشند.

تا به حال ایجاد کردن و کار کردن با اینترانت، کار پر دردسری در تجارت خودش تلقی می شده است. زیرا تمام صفحات وب سایت هر کدام بصورت یک صفحه وب ایستاتیک بوده و شما مجبور بودید تا افرادی را در قسمت های مختلف سازمان داشته باشید تا بتوانند کار طراحی صفحات وب را انجام دهند. ولی حالا ما برای این کار از سیستمهای مدیریت محتوا(CMS) استفاده می کنیم. یک CMS با استفاده از یک پایگاه بانک اطلاعاتی برای نگهداری اطلاعات و یک برنامه برای بازیابی داده ها در صفحات وب جهت دسترسی افراد در اینترانت استفاده می نماید.   

ü        چطور ممکن است که هر شخص بتواند با استفاده از صفحه مرورگر وب اقدام به ایجاد صفحات وب نموده و یا براحتی بتواند به اطلاعات دسترسی داشته و با آنها کار کند؟

ü        چطور ممکن است یک وب سایت ساده که برای مدیریت دانش و به عنوان سیستم مدیریت محتوا گشوده شده است توانایی پشتیبانی از هزاران نفر را داشته باشد؟

ü         در عین حال ساده بودن واسط کاربری آن، به طوری که با کمترین آموزش(در حد یک نیم روز تا دو روز بسته به زمینه کاری افراد) برای هر کسی قابل یادگیری می باشد.

Microsoft SharePoint یکی از نسخه های مایکروسافت برای اینترانت می باشد که بطور اساسی به عنوان جایگزینی برای دیگر محصولات قبلی بوده و محیطی را ایجاد نموده است که یکپارچگی کاملی را با Windows و Office دارا می باشد.

مشکلات سیستمهای نگهداری اسناد

سیستمهای فایل فعلی از مشکلات فراوانی برخوردار می باشند که در زیر به موارد مهم آن اشاره شده است:

-         صدور مجوز ها یا امنیت در موارد مختلف

-         مشکل نسخه بندی یا نگارش های مختلف اسناد

-         حذف، جابجایی و تغییر نام فایل ها

-         سازماندهی نامناسب پوشه فایل ها

-         زائد بودن و نامناسب بودن داده ها در ذخیره سازی

-         سخت بودن استفاده از اسناد Word، صفحات گسترده Excel، بانک اطلاعاتی Access

-         عدم یکپارچگی جریان های کاری

مزایای استفاده از SharePoint

مرکزیت یافتن امنیت، مجوزها، اطلاعات، دانش، ارتباطات گروهی، نسخه بندی اسناد، کامل کردن نسخه های پیش نویس و قابلیت منتشر نمودن از جمله مزیت های SharePoint می باشد. از دیگر مزایای آن می توان به کنترل نحوه ذخیره سازی، سازمان دهی، ذخیره سازی فایل ها در فرمت های مختلف Word، Excel و Access و یکپارچگی جریان های کاری اشاره نمود.

SharePoint چگونه این کارها را انجام می دهد؟

SharePoint از کامپوننت های مختلفی برای انجام این کارها استفاده می نماید:

§         یکپارچگی در logon: کاربرانی که وارد ویندوز می شوند می توانند بطور اتوماتیک به SharePoint نیز login نمایند.

§         قالب های امنیتی مرکزی: سادگی کنترل های امنیتی توسط کاربران IT و وجود یک روش قابل مدیریت بطوریکه افراد توانایی کامل در تغییر و ایجاد مجوزهای امنیتی را دارا می باشند.

§         راحتی ایجاد سایت و زیر سایت: اگر یک چیز برای تایید کردن محیط SharePoint وجود داشته باشد، آنرا می توان     راحتی در استفاده بیان نمود.تا به حال هیچ کدام از نرم افزارهای مایکروسافت مانند SharePoint قابلیت یادگیری آسان را نداشته اند.

§         مخازن اسناد: مخازن اسناد در SharePoint برای مرکزیت دادن ذخیره سازی اسناد بوده و از امکان نسخه بندی نگارش های مختلف اسناد در آن می توان بهره مند شد.

§         تقویم گروههای کاری : یکی از اشکالاتی که در Outlook وجود دارد، نداشتن توابعی برای گروها می باشد یعنی  تمام سرویس های آن شخصی بوده و امکان اتصال با گروهها را ندارد. بطوریکه تقویم SharePoint می تواند برای افراد و گروهها بصورت واحد مورد استفاده قرار گرفته(به عنوان مثال می توان فعالیت افراد روی پروژه ها را در نمای تقویم مشاهده نمود) و با ایجاد تنظیمات بر روی آن می توان بصورت اتوماتیک پیام هایی را برای افراد صادر نمود. همچنین امکان مشاهده تقویم SharePoint ازداخل Outlook نیز فراهم می باشد.  

§         جریان های کاری : وجود قابلیت ایجاد جریان های کاری بصورت کدنویسی و بدون کد (از طریق SharePoint Designer) یکی از امکانات SharePoint می باشد.

همانطور که در بالا خواندید، اینها امکانات چشمگیری هستند که در SharePoint وجود داشته و دلایلی می باشند که برای استفاده SharePoint در سازمانهایی که هنوز از آن استفاده نمی کنند، توصیه می شود.

مطلب دیگری که آقای فره وشان با عنوان شیرپوینت چیست؟ در وبلاگشان نوشته اند نیز خواندنی است. حتما یه سر بزنید.

 

نقشه سایت(Site Directory) در SharePoint

در این پست قصد دارم تا در مورد امکان ایجاد نقشه سایت در SharePoint و نحوه تغییر آن بر اساس نیاز سایت خدمتتان توضیح دهم.

هنگامیکه یک مجموعه سایت(Site Collection) را با قالب Collaboration Portal ایجاد می کنید، بصورت پیش فرض سایتی با عنوان Sites به مجموعه سایتتان اضافه می شود . این سایت شامل سه تب با عناوین Categories، Top Site و Site Map می باشد.

محتوای Categories و Top Site بر اساس اطلاعاتی که در لیست Sites وجود دارد شکل می گیرد در حالی که Site Map بصورت داینامیک بر اساس ساختار و اطلاعات سایت تشکیل می گردد.

در این سایت دو لیست اصلی به نامهای Sites و Tabs وجود دارند که تمامی تنظیمات مربوط به صفحه نقشه سایت در این دو لیست انجام می شود. در لیست Sites، فیلدهای مربوط به طبقه بندی موضوعی تعریف می شود. و در لیست Tabs مشخص می شود که چه تب هایی را در صفحه نقشه سایت می خواهیم داشته باشیم.

هر کدام از تب ها در صفحه نقشه سایت، یک صفحه .aspx هستند که در مخزن صفحات نگهداری می شوند که به طور پیش فرض صفحات  category.aspx، topsites.aspx و sitemap.aspx وجود دارند که مربوط به هر سه تبی می باشد که در بالا به آنها اشاره گردید. در این صفحه همچنین یک صفحه دیگر به نام categoryresults.aspx وجود دارد که در واقع صفحه ایست که بعد از کلیک نمودن بر روی هر کدام از موضوعات طبقه بندی در تب Category ظاهر شده و لیست سایت ها را نشان می دهد.

v      تب Categories

همانطور که از عنوان این تب مشخص است، در این قسمت شما می توانید تمامی سایت های ایجاد شده را بر اساس طبقه بندی های خاصی مشاهده نمایید. این تب بصورت پیش فرض شامل سه دسته موضوعی Division، Region و Tasks and Tools برای طبقه بندی می باشد. هر کدام از اینها نیز دارای تعدادی طبقه بندی زیرین می باشند، به عنوان مثال Region دارای سه انتخاب Local، National و International است.

در واقع هر کدام از این موضوعات طبقه بندی، یک ستون در لیست Sites هستند(Sites > View All Site Content > Sites > Settings > List Settings) که از نوع Choice بوده و دارای مقادیری به عنوان زیر موضوع در تب Categories مشاهده می شوند.

این لیست شامل چند نما (View) می باشد. نمای Categories مشخص می کند که چه چیزی در صفحه category.aspx یا تب Categories نمایش داده شود. به طور مثال اگر نمای Categories را باز کنید (Sites > View All Site Content > Sites > Settings > List Settings > Views > Categories)  مشاهده می کنید که سه ستون Division، Region و Tasks and Tools  در حالت انتخاب شده هستند که در تب Categories نمایش داده می شوند.

نمای مهم دیگری که در این لیست وجود دارد، نمای  Site Creation Categories می باشد.  این نما تعیین می کند که کدام طبقه بندی موضوعی در صفحه ایجاد سایت جدید ظاهر شود. به عنوان مثال اگر بر روی Site Actions > Create Site جهت ایجاد یک سایت جدید کلیک کنید، در پایین صفحه چند دکمه انتخابی را خواهید دید که مربوط به ستونهای Devision و Region هستند که در نمای Site Creation Categories انتخاب شده اند.

 

v      لیست تمامی سایت های موجود در Site Directory

وقتی که سایت جدیدی ایجاد می کنید و تعیین می کنید که این سایت در لیست Site Directory  ایجاد شود و برای آن مشخص می کنید که در کدام طبقه بندی موضوعی قرار گیرد، این سایت بعد از ایجاد شدن به صورت یک آیتم جدید در لیست Sites اضافه می شود.

پس بطور کلی تمام تنظیمات مربوط به دسته بندی سایت ها در لیست Sites که در مسیر (Sites > View All Site Content > Sites( قرار دارد، انجام می شود و شما می توانید با ایجاد ستونهای مورد نظر در این لیست و انتخاب آنها در نماهای موجود، این طبقه بندی را ایجاد نمایید.

 

 

 

دیاگرام ارتباطات و وابستگی های مجوزها در SharePoint

یک نگاه به معماری مجوزهای SharePoint بیاندازید. در SharePoint، 33 نوع مجوز مختلف وجود دارد که در 3 گروه دسته بندی می شوند: مجوزهای در سطح شخص، لیست و سایت. ترکیب این مجوز ها با هم بصورت نقش(سطح دسترسی) تعریف می شوند که به افراد و گروه ها اختصاص داده می شود.

بنابراین شما می توانید برای اشخاص و گروهای مختلف دسترسی های خاصی را بصورت نقش تعریف نمایید. هنگام تعریف این دسترسی ها باید وابستگی ها و تعلقات آنها را خوب بشناسید، تا بر اثر دادن یک دسترسی، مجوزهای دیگری را واگذار نکنید.

به عنوان مثال اگر شما مجوز "Manage Alerts" (مدیریت هشدارها) در سطح سایت را داشته باشید، بطور پیش فرض مجوز های "Create Item Alerts" ، "View List Items" و "Open List Items" در سطح لیست و مجوزهای "View Site Pages" و "Open" در سطح سایت خواهید داشت.

با نگاه کردن به دیاگرام زیر می توانید به این ارتباطات آگاه شوید.

سفارشی سازی خروجی Content Query Web Part

در پست قبلی توضیحاتی در مورد Content query Web part خدمتتان ارائه کردم. همانطور که در اون پست گفتم، Content query Web part برای نمایش خروجی، دارای تعدادی Style پیش فرض است که بطور مثال می تواند شامل عکس یا بولت با فونت و اندازه مختلف باشد. یکی از ویژگی های CQWP این است که امکان سفارشی نمودن نمایش در خروجی را برای طراحان فراهم نموده است یعنی با داشتن زمینه HTML و Script نویسی می توانید خروجی مورد دلخواه خود را ایجاد نمایید.

در این پست من نمونه ای را برای نمایش عناوین اخبار همراه با تاریخ ایجادشان را از صفحات اخبار(News article Pages) ایجاد می کنم، ولی شما می توانید برای انواع مختلف از اطلاعات مثل اعلانات، رویدادها و غیره در SharePoint ایجاد نمایید.

صفحات اخبار، صفحات .aspx ای هستند که در کتابخانه صفحات(Page library) نگهداری شده و دارای Content Type ای به نام Article page می باشند. Content Type ها در واقع یه راهکار جدید در SharePoint هستند که به شما اجازه می دهند تا انواع مختلف از اسناد را در یک کتابخانه اسناد(Document Library) نگهداری کنید. شما می توانید چندین Content Type را به یک کتابخانه اسناد اضافه نموده و برای هر Content Type ، فیلدهای خاص و قالب های مختلف و جریان های کاری را بصورت مجزا تنظیم نمایید.

این دو تا نمونه هایی از Content Query Web Part می باشند که من آنها را در پروژه Noodle House مربوط به Jumeirah ایجاد کرده ام.

ItemStyle.xsl

بیشتر کارهای مربوط به سفارشی سازی در داخل یک فایل XSL به نام ItemStyle انجام می شوند که این فایل در داخل یک کتابخانه اسناد به نام Style Library واقع در مسیر ریشه مجموعه سایتها قرار دارد(/Style Library/XSL Style Sheets/ItemStyle.xsl). فایل فوق را با ادیتوری مثل Microsoft Office SharePoint Designer باز نموده و انرا در حالت Check out قرار دهید تا بتوانید تغییرات لازم را اعمال نمایید.

xsl:template

در داخل فایل XSL فوق، شما المنت هایی را بصورت xsl:template می بینید که در واقع همان Style های پیش فرض موجود در Content Query Web Part می باشند.

برای شروع راحتترین راه این است که یک کپی از template ای که به Style مورد نظرتان نزدیک است ایجاد نموده و آنرا تغییر دهید.

  • یک کپی از المنت xsl:template name="Default" match="*" mode="itemstyle">> ایجاد کنید.
  • مشخصه نام را به "Announcement" تغییر دهید.
  • مشخصه Row را بصورت "Row[@Style='Announcement']" تغییر دهید.

حالا اگر فایل را ذخیره نموده و آنرا به حالت Check in درآورید و یا آنرا Publish نمایید، خواهید دید که Style جدید به لیست Style ها در Content Query Web Part اضافه شده است.

لینک عنوان خبر

این فیلد که در بیشتر Template ها وجود دارد، بصورت متغیر با نام DisplayTitle تعریف کرده است که در آن عنوان را بصورت لینک به آن مورد ایجاد نموده است و سپس از آن استفاده کرده است.

<a href="{$SafeLinkUrl}" target="{$LinkTarget}" title="{@LinkToolTip}">

<xsl:value-of select="$DisplayTitle"/>

</a>

 

تاریخ ایجاد

مرحله بعدی، تغییر XSL برای نمایش تاریخ ایجاد خبر می باشد. برای این کار شما می توانید یک کپی از کد بالا که برای نمایش عنوان می باشد برداشته و بصورت زیر آنرا تغییر دهید:

<a href="{$SafeLinkUrl}" target="{$LinkTarget}" title="{@LinkToolTip}">

<xsl:value-of select="@Created"/>

</a>

 

شما می توانید از فرمتهای مختلفی برای نمایش تاریخ استفاده نمایید. من از توابع موجود در ddwrt که بیشتر در Data View Web Part ها کاربرد دارد استفاده نموده ام. که برای استفاده از این توابع ابتدا باید آنرا در المنت ریشه، یعنی xsl:stylesheet بصورت زیر تعریف نمایید:

xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime"

سپس با ایجاد یک متغیر در داخل template و تعیین فرمت مورد نظر برای تاریخ می توانید از آن استفاده کنید:

<xsl:variable name="Created">
         
<xsl:value-of select="ddwrt:FormatDateTime(string(@Created) ,1033 ,'MMMM dd, yyyy hh:mm tt')" />
</xsl:variable>

حالا به جای استفاده از کد بالا برای نمایش تاریخ ایجاد، کد زیر را استفاده می کنیم که در آن به جای پارامتر @Created از $Created که اشاره به متغیر تعریف شده است، استفاده شده است.

<a href="{$SafeLinkUrl}" target="{$LinkTarget}" title="{$DisplayTitle}">
  <xsl:value-of select="$Created"/>
</a>

 

ایجاد لینک Archive

لینک Archive بصورت Footer در CQWP تعریف شده است. راه اصولی برای تعریف Header و Footer در CQWP این است که تغییراتی در فایل ContentQueryMain.xsl ایجاد نمود. برای این مورد شما می توانید مطلب کاملی را که توسظ Dave Scheele نوشته شده مطالعه نمایید.

راه حل میانبری که من برای این کار پیدا کرده ام این است که از کد زیر در داخل Template استفاده نمایید. این کد با اضافه کردن یک شرط و چک نمودن اینکه در سطر اول می باشد، Header مربوطه را اضافه کرده و با چک نمودن اینکه در سطر پایانی می باشد، Footer را اضافه می نماید.

<xsl:if test="count(preceding-sibling::*)=0">
<!--Put header contents here-->
</xsl:if>

 

<xsl:if test="count(following-sibling::*)!=0">
<!--Put footer contents here-->
</xsl:if>

 

نمایش فیلدهای Custom

شما می توانید هر کدام از فیلدهایی را که ایجاد کرده اید را در CQWP نمایش دهید ولی به همین راحتی نیست که مانند فیلد Title در کد به آن اشاره نمایید. برای این کار شما باید بعد از انجام تغییرات مورد نظر در فایل ItemStyle.xsl و ذخیره آن، وب پارت خود را Export نموده و سپس آنرا با بصورت .webpart ذخیره نمایید.

حالا این فابل را با ادیتور باز نموده و مشخصه CommonViewFields پیدا نمایید، در این قسمت می توانید فیلد مورد نظر را با ذکر نام و نوع، آنرا تعریف نمایید.

<property name="CommonViewFields" type="string">نام فیلد, نوع</property>

بعد از اینکه فیلدهای مورد نظر را تعریف نموده اید فایل را ذخیره نمایید و سپس آنرا در صفحه سایتتان Import کنید.

در مورد Customize کردن خروجی Content Query Web Part می توانید مطالب خوبی را در لینک زیر پیدا کنید.

http://blogs.msdn.com/ecm/archive/2006/10/25/configuring-and-customizing-the-content-query-web-part.aspx

http://www.heathersolomon.com/blog/articles/customitemstyle.aspx

یکپارچگی Reporting Service با SharePoint

SQL Server با استفاده از تکنولوژی Reporting Service یک بستر کامل برای ایجاد گزارشات در اختیار کاربران قرار داده است. این تکنولوژی شامل توانایی های زیادی در عرصه Business Intelligence بوده و به کمک ابزاری به نام SQL Server Business Development Studio که از خانواده Visual Studio می باشد، امکان طراحی گزارشات مختلف را برای توسعه دهندگان فراهم نموده است.

امکان یکپارچه شدن SharePoint  و Reporting Service  با آمدن SQL Server 2005 Service Pack 2  فراهم شده و کاربران و استفاده کنندگان براحتی می توانند گزارشات مورد نظر خود را از طریق مخازن اسناد در SharePoint مشاهده و آنها را مدیریت نمایند.

استفاده کردن از این امکان در SharePoint بسیار ساده است، اما قبل از استفاده نیازمند تعدادی پیکربندی و نصب کامپوننت های خاصی بر روی Reporting Services و Office SharePoint server 2007 می باشد.

و یژگی ها و مزایای یکپارچگی

این یکپارچگی باعث بوجود آمدن مزیت های زیادی در عرصه تکنولوژی وب شده است. قبل از ارائه شدن SP2 توسط مایکروسافت، گزارشاتی که از طریق Reporting Service ایجاد می شدند، در داخل Report server منتشر شده و فقط قابل اجرا در داخل همان محیط بودند. تنها نقطه رابط بین SharePoint و Reporting Service وجود دو وب پارت مجزا به نام Report Explorer و Report Viewer بودند که امکان مشاهده گزارشات را در محیط SharePoint  فراهم کرده بودند. با این وجود دارای مشکلات و کمبودهایی بود که در زیر به آنها اشاره شده است:

-          منبع محتوای گزارشات بصورت مجزا از منبع محتوای SharePoint بود.

-          گزارشات بر روی Report Server بوده و در محیط SharePoint فقط نمایش داده می شدند.

-          مدیریت امنیتی گزارشات بوسیله Report Server انجام می شده است، بنابراین از لحاظ امنیتی یکپارچگی وجود نداشت.

-          عدم وجود امکان مدیریت گزارشات از طریق واسط کاربری بعلت جدا بودن محیط اجرایی هر کدام از یکدیگر.

-          امکان فیلتر کردن محتوا، فقط از طریق پارامترهای تعریف شده در Reporting Service امکان پذیر بود.

 

با آمدن Service Pack 2 و یکپارچه شدن آن با SharePoint ، قابلیت های زیر بوجود آمده است:

-          امکان مدیریت و مشاهده گزارشات از طریق واسط کاربری

-          ذخیره سازی گزارشات در داخل کتابخانه اسناد، که امکان استفاده از ویژگی های SharePoint از قبیل جریان های کاری ، نسخه بندی و دیگر ویژگی های به اشتراک گذاری بوجود آمده است.

-          گزارشات و تمام منابع اختصاص داده شده به آنها در داخل بانک اطلاعاتی SharePoint ذخیره شده و بصورت خودکار و همزمان با همان گزارشات که در Report Server ذخیره شده اند تطبیق داده می شوند.

-          وجود یک مدل امنیتی واحد برای گزارشات همانند سایر اسناد موجود در کتابخانه اسناد.

-          امکان فیلتر شدن محتوا با استفاده از امکانات فیلترسازی موجود در مخازن اسناد و یا filtering Web Parts به غیر از پارامترهای تعریف شده در Reporting Service وجود دارد.

 

برای ایجاد این یکپارچگی نصب کامپوننت های زیر الزامی می باشد:

·         SQL Server 2005 Reporting Services

·         SQL Server 2005 Service Pack 2

·         Office SharePoint Server 2007

·         Microsoft SQL Server 2005 Reporting Services Add-in for Microsoft SharePoint Technologies    

 

البته نصب و پیکر بندی نمودن به دو صورت Stand-alone و Farm انجام می شود که هر کدام دارای تنظیمات خاصی بر روی سرورها می باشند که در پست های بعدی مراحل نصب هر کدام را به طور مجزا توضیح خواهم داد.

Minimal Master Page

چطور یک Master Page ابتدایی(Minimal Master Page) را ایجاد کنیم؟

یکی از کارهایی که شما بعد از کامل کردن و پیکر بندی نمودن یک سایت با Microsoft Office Sharepoint server 2007 انجام می دهید، ایجاد یک یا چند Master Page می باشد. یک Master Page می تواند شامل ارجاعاتی به اجزایی باشد که شما می توانید آنرا بین چندین صفحه در سراسر سایت به اشتراک بگذارید، که این اجزاء می توانند شامل منوها، کنترل های جستجو، کنترل های logon و بنرها باشند. یکMaster Page  همچنین می تواند شامل  cascading style sheet (CSS) و ECMAScript (JScript, JavaScript) باشد که در واقع می توانند تعاریف ظاهر سایتتان را شامل شوند.

بنابراین شما می توانید با توجه به نیازهایتان، از Master Pageهای مختلفی برای ساختار سلسله مراتبی سایتتان استفاده نمایید تا از این طریق سطوح مختلف یک پورتال یا سایت از هم تمییز داده شوند.

گالری Master Page ها

وقتی که یک Site Collection را در Office SharePoint Server 2007 ایجاد می کنید، یک  master page gallery هم ایجاد می شود، که شامل تمام master page ها و layout های مربوطه برای سایت است. خود  Sharepoint  شامل چند master page آماده مانند BlueBand.master می باشد که می توانند در ایجاد پورتال ها مورد استفاده قرار گیرند. این master page ها از طریق آدرس زیر قابل دسترسی هستند:

C:\Program%20Files\Common%20Files\Microsoft%20Shared\web%20server%20extensions\12\TEMPLATE\FEATURES\PublishingLayouts\MasterPages\

شما می توانید هر کدام از اینها را مورد استفاده قرار داده و یا می توانید آنها را Customize نموده و یا نمونه جدید برای سایتتان استفاده کنید.

چرا از یک Minimal Master Page استفاده کنیم؟

ایجاد و کامل کردن یک master page جدید برای سایتتان، نیازمند یک طراحی و صرف زمان زیادی می باشد. با استفاده از روشی که خواهید دید، شما می توانید از دوباره نویسی و استفاده کدهای به قول خودمان فرسوده در این master page جلوگیری نمایید.

این مقاله به شما نشان می دهد که چطور یک minimal master page ایجاد نمایید، که فقط شامل توابع ضروری برای Office SharePoint Server 2007 باشد. بنابراین شما می توانید یک platform برای ایجاد master page دلخواهتان داشته باشید.

شاید شما بخواهید از یک master page نمونه مثل BlueBand برای ایجاد یک master page جدید استفاده کنید. اگر تغییرات شما زیاد نباشد و در حد اضافه شدن یک لوگو یا یک بنر باشد ، راه حل خوبی است ولی اگر غیر از این باشد برایتان سخت خواهد بود و باعث صرف شدن زمان زیاد و بوجود آمدن مشکلاتی خواهد شد، که در آخر هم نتیجه مطلوبی نخواهید گرفت.

کد نمونه زیر فقط شامل چیزهایی است که جزء نیازهای ضروری برای یک master page  در Office SharePoint Server 2007 می باشد. این اجزاء ضروری شامل content placeholder ها و کنترل هایی است که برای کار کردن با صفحات layout ،که در نصب اولیه Office SharePoint Server 2007 بصورت پیش فرض وجود دارند، می باشد.

نیازهای یک master page  در Office SharePoint Server 2007 بصورت زیر می باشد:

title, branding, logon functionality, search functionality, breadcrumb functionality, and basic structural elements such as page areas, separators, borders, consoles, and description placeholders.

برای ایجاد یک master page می توانید از  Office SharePoint Designer 2007 به عنوان محیط طراحی استفاده نمایید. همچنین می توانید از محیط های ویرایش متن ویا از یک IDE مثل Microsoft Visual Studio ، برای ایجاد آن استفاده کنید.

Master page های Office SharePoint Server 2007 بر اساس مشخصه SPWeb.CustomMasterUrl از کلاس SPWeb در Windows SharePoint Services می باشند.

برای ایجاد یک minimal master page

1.        SharePoint Designer خود را باز کنید.

2.        از طریق منوی File بر روی New کلیک نموده و بعد بر روی گزینه SharePoint Content کلیک کنید ، سپس از پنجره باز شده به تب Page بروید.

3.        بر روی گرینه Master Page دوبار کلیک نمایید تا master page جدید ایجاد شود.

4.        بر روی Design کلیک کنید تا master page را در حالت طراحی نمایش دهد.شما فقط یک header و چند تا content placeholders در آن مشاهده می کنید.

5.        بر روی Code کلیک کنید تا در نمای کد قرار بگیرید.

6.        کد زیر را کپی نموده و آنرا جایگزین کد master page کنید.

 

 

<%-- Identifies this page as a .master page written in Microsoft Visual C# and registers tag prefixes, namespaces, assemblies, and controls. --%>

<%@ Master language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<%@ Import Namespace="Microsoft.SharePoint" %>

<%@ Register Tagprefix="SPSWC" Namespace="Microsoft.SharePoint.Portal.WebControls" Assembly="Microsoft.SharePoint.Portal, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<%@ Register Tagprefix="PublishingWebControls" Namespace="Microsoft.SharePoint.Publishing.WebControls" Assembly="Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<%@ Register Tagprefix="PublishingNavigation" Namespace="Microsoft.SharePoint.Publishing.Navigation" Assembly="Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

 

 

<%@ Register TagPrefix="wssuc" TagName="Welcome" src="~/_controltemplates/Welcome.ascx" %>

<%@ Register TagPrefix="wssuc" TagName="DesignModeConsole" src="~/_controltemplates/DesignModeConsole.ascx" %>

<%@ Register TagPrefix="PublishingVariations" TagName="VariationsLabelMenu" src="~/_controltemplates/VariationsLabelMenu.ascx" %>

<%@ Register Tagprefix="PublishingConsole" TagName="Console" src="~/_controltemplates/PublishingConsole.ascx" %>

<%@ Register TagPrefix="PublishingSiteAction" TagName="SiteActionMenu" src="~/_controltemplates/PublishingActionMenu.ascx" %>

<%-- Uses the Microsoft Office namespace and schema. --%>

<html>

  <WebPartPages:SPWebPartManager runat="server"/>

  <SharePoint:RobotsMetaTag runat="server"/>

 

  <%-- The head section includes a content placeholder for the page title and links to CSS and ECMAScript (JScript, JavaScript) files that run on the server. --%>

  <head runat="server">

    <asp:ContentPlaceHolder runat="server" id="head">

      <title>

        <asp:ContentPlaceHolder id="PlaceHolderPageTitle" runat="server" />

      </title>

    </asp:ContentPlaceHolder>

    <Sharepoint:CssLink runat="server"/>

    <asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server" />

  </head>

 

  <%-- When loading the body of the .master page, SharePoint Server 2007 also loads the SpBodyOnLoadWrapper class. This class handles .js calls for the master page. --%>

  <body onload="javascript:_spBodyOnLoadWrapper();">

    <%-- The SPWebPartManager manages all of the Web part controls, functionality, and events that occur on a Web page. --%>

    <form runat="server" onsubmit="return _spFormOnSubmitWrapper();">

      <wssuc:Welcome id="explitLogout" runat="server"/>

      <PublishingSiteAction:SiteActionMenu runat="server"/> 

      <PublishingWebControls:AuthoringContainer id="authoringcontrols" runat="server">

        <PublishingConsole:Console runat="server" />

      </PublishingWebControls:AuthoringContainer>

      <%-- The PlaceHolderMain content placeholder defines where to place the page content for all the content from the page layout. The page layout can overwrite any content placeholder from the master page. Example: The PlaceHolderLeftNavBar can overwrite the left navigation bar. --%>

      <asp:ContentPlaceHolder id="PlaceHolderMain" runat="server" />

        <asp:Panel visible="false" runat="server">

        <%-- These ContentPlaceHolders ensure all default SharePoint Server pages render with this master page. If the system master page is set to any default master page, the only content placeholders required are those that are overridden by your page layouts. --%>

<asp:ContentPlaceHolder id="PlaceHolderSearchArea" runat="server"/>

<asp:ContentPlaceHolder id="PlaceHolderTitleBreadcrumb" runat="server"/>

<asp:ContentPlaceHolder id="PlaceHolderPageTitleInTitleArea"  runat="server"/>

<asp:ContentPlaceHolder id="PlaceHolderLeftNavBar" runat="server"/>

<asp:ContentPlaceHolder ID="PlaceHolderPageImage" runat="server"/>

<asp:ContentPlaceHolder ID="PlaceHolderBodyLeftBorder" runat="server"/>

<asp:ContentPlaceHolder ID="PlaceHolderNavSpacer" runat="server"/>

<asp:ContentPlaceHolder ID="PlaceHolderTitleLeftBorder" runat="server"/>

<asp:ContentPlaceHolder ID="PlaceHolderTitleAreaSeparator" runat="server"/>

<asp:ContentPlaceHolder ID="PlaceHolderMiniConsole" runat="server"/>

<asp:ContentPlaceHolder id="PlaceHolderCalendarNavigator" runat ="server" />

<asp:ContentPlaceHolder id="PlaceHolderLeftActions" runat ="server"/>

<asp:ContentPlaceHolder id="PlaceHolderPageDescription" runat ="server"/>

<asp:ContentPlaceHolder id="PlaceHolderBodyAreaClass" runat ="server"/>

<asp:ContentPlaceHolder id="PlaceHolderTitleAreaClass" runat ="server"/>

<asp:ContentPlaceHolder id="PlaceHolderBodyRightMargin" runat="server" />

</asp:Panel>

    </form>

  </body>

</html>

 

7.        از طریق منوی File بر روی Save As کلیک نموده و یک نام منحصر با پسوند .master به آن می دهیم، سپس آنرا در master page gallery   (/_catalogs/masterpage) مربوط به Site Collection ذخیره نمایید.

 

1 - 10 بعدی

 شرکت راهکار خلاق

  زبان فارسی برای شرپوینت 2007
  تاریخ هجری شمسی برای شرپوینت
  پروژه های اجرا شده توسط راهکار خلاق
  منابع آموزشی شرپوینت
  راهکارهای اجرا شده در شرپوینت

 ‭(Hidden)‬ مدیریت