ثبت نام

کنترل DocumentGrid در پاورفرم

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

کنترل DocumentGrid:
این کنترل در پاورفرم دربردارنده ی اطلاعات اسناد از یک کتابخانه ی شیرپوینت است که فایل ها را برای شما لیست می کند. DocumentGrid ابزاری برای باز کردن، حذف و یا آپلود یک فایل در یک مکان مشخصی از شیرپوینت است..( این کنترل فایل ها را به صورت Master Detail تحت عنوان گزینه ی پیوست به یک فرم، در یک کتابخانه ی اسناد در شیرپوینت Document Library in SharePoint ذخیره می کند.)

• دکمه ی : Open فایل انتخابی شما را باز می کند، و دقیقا عملکردی مشتبه عملکرد شیرپوینت دارد و آیتم انتخابی شما در پاورفرم در حالت ReadOnly و یا ویرایش به نمایش در می آورد.

• دکمه ی : Refresh اطلاعات موجود در گریدGrid شما را دوباره لود می کند.

• دکمه ی : Removeفایل انتخابی شما را از کتابخانه ی شیرپوینت شما حذف می کند.

• دکمه ی Upload: با کلیک بر روی این گزینه شما می توانید فایل های جدیدی را به این محل اضافه کنید.( با انتخاب دکمه ی Browse شما می توانید فایل جدید خود را انتخاب کنید.)

به منظور سهولت بازیابی اسناد در کتابخانه ی اسناد شیرپوینت خود، باید یک لیست کوئری ListQuery تعریف کرده و آن را به عنوان value بر روی کنترل DocumentGrid تعریف کنید.

دراینجا چگونگی افزودن کنترل DocumentGrid در نرم افزار طراحی پاورفرم برای شما به صورت کامل توضیح داده شده.

Type:
DocumentGrid را به عنوان نوع کنترل پاورفرمی خود انتخاب کنید.

Name: یک نام منحصر به فرد برای کنترل خود انتخاب کنید.

Binding: این ویژگی برای کنترل DocumentGrid کاربردی نیست و همیشه نامحدود است و bind نمی شود.

Enable for new Records: این ویژگی امکان ثبت و یا ایجاد یک رکورد جدید را در فرم ایجاد می کند.

Enable for existing records:این ویژگی برای کار بر روی یک آیتم موجود در فرم هاست.

توجه: هنگامی که این امکان برای شما غیرفعال است، دکمه های Remove و Upload نیز غیرفعال هستند.

Required: این امکان برای کنترل DocumentGrid کاربردی نمی باشد.

Enable Formula: این گزینه حالتی را تنظیم می کند که این کنترل را هنگام اجرای فرم پاورفرم شما ارزیابی کرده و آن را فعال و یا غیرفعال خواهد نمود.

Visibility Formula: با به کارگیری جاوا اسکریپت یک فرمول معتبر را تعیین می کند که هنگام اجرا، نمایش و پنهان کردن کنترل آن را ارزیابی می کند.این حالت به یک value منطقی بازمی گردد.

به طور مثال به value زیر توجه کنید:

Value: کنترل DocumentList مقدار خود را فقط از یک لیست کوئری ListQuery پاورفرم دریافت می کند. یک کوئری لیست از پیش تعریف شده که مجموعه ای از آیتم های لیست را به یک کتابخانه ی اسناد در شیرپوینت ارجاع می دهد.لازم به ذکر است که هرکدام از آیتم های لیست با آیتم های درون کتابخانه ی اسناد شیرپوینت مطابقت دارد و هم چنین با مقدار آن کنترل مرتبط است.

فرض کنید لیست زیر در بخش طراحی تعریف شده است:

از این لیست کوئری برای ارائه ی داده ها به کنترل DocumentGrid استفاده می شود:

Default Value:برای کنترل DocumentGrid کاربرد ندارد.

Layout Properties

Width:عرض کنترل را تعیین می کند. هنگامی که مقدار آن صفر باشد حداکثر ارتفاع برای آن تنظیم می شود.

Height :ارتفاع کنترل را تعیین می کند. اگر مقدار آن صفر باشد، ارتفاع کنترل تنظیم نخواهد شد.

H.Alignment:تراز عمودی سلول های فرم شما را تحت مقادیر راست، چپ و مرکز تعیین می کند.

V.Alignment:تراز افقی سلول های فرم شما را تحت مدیریت راست، چپ و مرکز تعیین می کند.

Fore Color: برای کنترل DocumentGrid کاربرد ندارد.

Back Color: برای کنترل DocumentGrid کاربرد ندارد.

Cell Color: برای کنترل DocumentGrid کاربرد ندارد.

Font Size: سایز فونت نوشته های شما را تعیین می کند.

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

Font Bold: ضخامت فونت شما را تغییر خواهد داد.

Italics: استایل و حالت فونت شما را به حالت ایتالیک تغییر می دهد.

Lookup Details: برای کنترل DocumentGrid کاربرد ندارد. داده های کنترل از طریق ListQuery لیست کوئری بازیابی می شوند.

تنظیمات و پیاده سازی های جانبی پاورفرم

PageSize: سایر صفحه ی شما را تعیین میکند؛ اگر مقدار نوشته شده برای این سایز صفر باشد صفحه سازی برای شما صورت نمی گیرد.

ShowGroups: این ویژگی امکان گروه سازی برای گرید پاورفرم را برای شما ممکن می کند.

TargetFolder: فولدری را که شما پیوست های جدید پاورفرم شما را در آن آپلود خواهید کرد تعیین می کند. اگر مقدار آن در اینجا خالی بوده و تعیین نشده باشد؛ فولدر پیش فرض root کتابخانه ی اسناد تعریف شده در ListQuery را، برای ذخیره ی پیوست ها درنظر می گیرد.

AllowUpload: امکان آپلود کردن فایل در پاورفرم را فعال و یا غیرفعال می کند.

AllowDelete: امکان حذف آیتم در پاورفرم رارا فعال و یا غیرفعال می کند.

DataLoadedScript: کد جاوا اسکریپت پس از بارگذاری داده های DataGrid اجرا می شود. آیتم های متغیر رزرو شده که شامل آیتم های بازیابی شده هستند. مثال زیر شناسه ی اولین آیتم لیست را نشان می دهد.

SelectionChangedScript: کد جاوا اسکریپتی که پس از یک بار تغییر ردیف انتخابی اجرا می شود. متغیر"آیتم" به آیتم لیست انتخابی شما رجوع می کند. مثال زیر قسمتهای شناسه و عنوان آیتم گرید انتخاب شده را بیرون می کشد.

LoadCompletedScript: بعد از آنکه داده درون گرید پاورفرم قرار می گیرد این مورد رخ می دهد. متغیر آیتم شامل موارد بازیابی از شیرپوینت شده است.

DaysToShowNewIndicator: مدت زمان (روزها) هر نشانگر جدید را تعیین کنید که فیلدها به صورت ShowNewIndicator=true باشد نمایش داده می شود. مدت زمان با تاریج ایجاد رکورد مقایسه می شود.

NewIndicatorImageURL:
URL تصویر را برای نمایش New/Indicator مشخص می کند.

Values: : نام و مقدار به کاربرده شده برای متادیتا های یک فایل هنگامی که فایل جدیدی آپلود می شود. این مورد برای رکورد های مستردیتیلی بسیار کارآمد است. به عنوان مثال هنگامی که یک کتابخانه ی اسناد به نام Order Document ستونی به نام OrderID دارد که آن سند را به لیست سفارشات مرتبط می کند. در این مورد، شما دو مورد تحت عناوین Name=OrderID و Value=c_ID را وارد می کنید. (مقدار یا value می تواند مقادیر استاتیک یا محاسبه شده را بر اساس فیلدهای موجود بگیرد).

Fields: فیلدهایی که برای گرید ارائه می شوند. درصورت عدم کوئریدسترسی، ستون هایی ارجاعی پاورفرم از لیست کوئری ListQuery نمایش داده می شوند. هر فیلد ویژگی های زیر را دارد:

Name: نام وارد شده در ستون پاورفرم برای نمایش.

Header: هدر ستون پاورفرم.

Width: عرض ستون های پاورفرم برای هر گرید( به طور مثال 200px). برای سایزدهی اتوماتیک این بخش را خالی بگذارید.

DisplayFormat: نحوه ی نمایش مقدار درون یک گرید را نشان می دهد، ( مقداربه عنوان: ValueField و یا DisplayField برای کنترل های lookup (ID؛ #TITLE) ، تاریخ ، DateTime یا شماره) است.

FormatString: فرمت فیلدهای تاریخ و عددی را تعیین می کند. به طور مثال: MM/dd/yyy و ...

ForeColor: رنگ سلول های تکست از این طذیق تعیین می شوند.

FontBold: برجسته بودن فونت شما را تعیین می کند.

FontSize: سایز فونت نوشته های شما را تعیین می کند.

ColumnFiltering: در صورت انتخاب، در هنگام کلیک کاربر از این ستون پاورفرم، برای اهداف فیلتر و مرتب سازی ، این گرید یک منوی کشویی را نشان می دهد.

Script: برای کنترل های گرید پاورفرم اعمال نمی شود، از SelectionChangedScript و DataLoadedScript استفاده کنید.

دیگر راه حل های پیشنهادی

انتقال به اکسل همانطور که از نام آن پیداست ، این تابع داده های فرم پاورفرمی شما را به فایل اکسل صادر می کند، که آماده ذخیره یا باز شدن است. این تابع سه پارامتر را می پذیرد ، که در زیر شرح داده شده است:
ExportToExcel (آرایه ستون ها ، نام فایل رشته ، نام sheet رشته)
ستون ها ی اکسل شما مانند "فیلد" در پاورفرم و "title" های پاورفرم می باشند. در صورتی که فرم پاورفرم شما ستون های شیرپوینت را دارا نبود تمام ستون های گریدهای فرم پاورفرم شما صادر می شود.

Control Specific Events این رویداد به محض فشردن دکمه بارگذاری در کنترل DocumentGrid پاورفرم، درست قبل از آپلود شدن اسناد فعالی عمل خواهد کرد.

به طور مثال: باکس تأییدیه برای کاربر به نمایش درخواهد آمد. و از وی می پرسد که آیا اسناد را بارگذاری کنید یا نه. اگر کاربر بله را فشار دهد ، اسناد بارگذاری می شود ، در غیر این صورت آپلود اسناد بر روی پاورفرم شما صورت نخواهد گرفت.