آی تی نرد

اشتراک اطلاعات و تجربیات در زمینه ی توسعه ی دات نت و البته شیرپوینت

راهکار مدیریت اجرای(شروع) گردش کارها در شرپوینت 2010

راهکار مدیریت شروع و اجرای گردش کارها در شرپوینت 2010 بیشتر با هدف حل مشکل عدم شروع گردش کار برای کاربر ناشناس ایجاد شد. همونطور که شاید بدونید در حالت نرمال امکان تعریف گردش کار برای کاربر ناشناس در شرپوینت وجود ندارد. البته برای روشن شدن کاربرد اصلی این راهکار بهتره یه مثال واقعی بزنم:

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

برای رفع این ضعف(البته شاید واقعا ضعف نباشه چون مایکروسافت عمدا این امکان رو از شرپوینت 2007 به بعد برداشت، احتمالا به دلایل امنیتی) من راهکاری نوشتم که این مشکل رو حل و مرتفع میکنه.

این راهکار وظیفه ی مدیریت شروع و رویداد شروع(Start event) گردش کارها رو بر عهده داره مخصوصا برای کاربر ناشناس. لیست زیر برخی از ویژگی ها و امکانات این راهکار رو شرح میده:

  1. اسکوپ راهکار در سطح سایت هست و نه مجموعه سایت بنابراین امکان استفاده از راهکار در تمامی ساب سایت ها به صورت مجزا هم هست.
  2. نصب و پیکره بندی بسیار راحت، فقط کافیه نصب کنید و پس از فعال سازی ویژگی اون، راهکار آماده ی استفاده هست(نیازی به ایجاد لیست اضافه و یا تنظیم خاصی نداره).
  3. امکان تعریف چندین تنظیم گردش کار، برروی یک لیست.
  4. قابلیت تعیین OnBehalf یا شخص شروع کننده ی گردش کار به جای کاربر ناشناس.
  5. امکان توقف موقت تنظیم گردش کار برروی لیست.
  6. امکان مدیریت شروع تمام گردش کارها و نه فقط گردش کارهایی که برای کاربر ناشناس تنظیم شده است.

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

بیشتر...

ابزاری برای Pack و Unpack کردن فایلهای wsp شرپوینت

اکثر راهکارهای تولید شده برای استفاده در شرپوینت در قالب یک فایل wsp هست. این فایل فشرده شامل فایل های مورد نیاز برای نصب و توزیع راهکار در شرپوینت می باشد. شما به عنوان برنامه نویس این راهکار ممکن هست نیاز به تغییر برخی از محتویات نهایی و کامپایل شده ی این فایل داشته باشید برای مثال obfuscate کردن اسمبلی های موجود به منظور جلوگیری از خواندن کدهای موجود در این اسمبلی ها و موارد دیگر.

بدین منظور می بایست این فایل wsp رو از حالت فشرده خارج و بعد از اعمال تغییرات مورد نظر مجددا اون رو به حالت فشرده و wsp بازگردانید. هر چند که این فایل از طریق برنامه هایی مانند Winrar قابل باز شدن هست اما قابل فشرده سازی مجدد نیست و در صورت فشرده کردن آن فایل wsp دیگر قابل نصب و توزیع در شرپوینت نخواهد بود.

به همین منظور شما با استفاده از ابزار ساده ای که من نوشتم میتونید به راحتی این عملیات رو انجام بدید(البته حداقل دات نت فریم ورک 3.5 مورد نیاز هست).

روش کار هم بسیار ساده هست، دو تب برای Unpack و Pack کردن در پنجره ی اصلی برنامه وجود دارد که با کشیدن و رها کردن فایل wsp در تب Unpack مابقی اطلاعات ورودی مورد نیاز به صورت پیشفرض مقدار دهی خواهد شد و شما فقط کافیه که روی دکمه ی Unpack کلیک کنید تا محتویات فایل به صورت unpack شده در کنار فایل اصلی قرار بگیره بعد تغییرات مورد نیاز رو اعمال کنید و در تب pack روی دکمه ی pack کلیک کنید تا مجددا فایل wsp ایجاد بشه(البته حواستون باشه overwrite نشه).

بیشتر...

روش نصب و فعال سازی راهکارهای(wsp) غیر سندباکسی در شیرپوینت 2010

نصب راهکارهایی که سندباکس نیستند و نیاز به دسترسی بالا دارند می بایست از طریق مدیر فارم و شیرپوینت نصب و دپلوی بشند. منظور از راهکار در این جا همون فایهای کامپایل شده ی wsp شیرپوینت هست.

خب ابتدا SharePoint 2010 Managment Shell رو از پوشه ی Microsoft SharePoint 2010 Products در منوی استارت باز کنید(البته run as admin). این در واقع همون Powershell معمولی هست البته با snapin لود شده ی شیرپوینت.

حالا دستور "Add-SPSolution" رو تایپ و اینتر رو بزنید، در پارامتر LiteralPath آدرس فایل wsp رو وارد کنید و مجددا کلید اینتر رو بفشارید، حالا دیگه راهکار نصب شده است. اما به منظور دپلوی و یا توزیع اون در سایتهای شرپوینت می بایست وارد Central Administration و سپس:

Central Administration -> System Settings -> Farm Management -> Manage Farm Solutions

بشید. در این صفحه شما لیست تمامی راهکارهای نصب شده برروی فارم رو مشاهده میکنید که وضعیت توزیع اونها رو هم در ستون "Status" میتونید ببنید، در حال حاضر راهکاری که تازه نصب کردید در وضعیت توزیع نشده قرار داره، که با کلیک برروی اون و با توجه به scope اون که ممکنه در سطح وب اپلیکیشن و یا فارم و ... باشه اون رو دپلوی و توزیع کنید.

بیشتر...

افزودن قابلیت راست به چپ به ویرایشگر tinymce 3.5.x در BlogEngine.net

در حالت پیشفرض این ویرایشگر در BlogEngine.Net فاقد دکمه های "راست به چپ و "چپ به راست" می باشد. که همونطور که میدونید نبودن این دو دکمه برای نوشتن مطالب به زبان های راست به چپ واقعا عذاب آور هست. بنابراین در این پست روش سریع و راحت حل این مشکل رو شرح دادم.

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

\BlogEngine\editors\tiny_mce_3_5_8\plugins

بعد از اطمینان از وجود این پلاگین، فایل:

\BlogEngine\admin\tinyMCE.ascx

بیشتر...