اگر با فرمساز پاورفرم در پلتفرم شیرپوینت کار کرده باشید حتما متوجه شدید چه امکاناتی با کدنویسی میتوانید به فرمتان اضافه نمایید. اگر میخواهید تمامی پرکاربرد ترین
.فرمول های پاورفرم را در یکجا داشته باشید این مقاله برای شما نوشته شده
فرمول های مربوط به دکمه:
1 2 3 |
form.SaveAndExit(); form.CancelRecord(); form.SaveRecord(); |
فرمول های مربوط به یوزرها:
1 2 3 4 5 6 7 |
form.CurrentUser(); form.LoginName(); form.UserFullName(); form.UserID(); |
فرمول درج خودکار شماره ردیف در گرید:
1 2 3 4 5 6 7 8 9 |
var items = form.GetControl("dg_Results").InputControl.GetAllItems(); = 0; for (var i=0; i < items. ; i++){ Row= Row + 1 ; items[i].SetValue('Row',Row); } |
نمایش و عدم نمایش section ها براساس یوزرهای گروه شیرپوینتی:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
if (form.UserInGroup("Group Name")) { form.ShowSection("Section Key"); } else { form.HideSection("Section Key "); } |
منتقل کردن کاربر به آدرس مورد نظر (ریدایرکت):
1 2 3 4 5 6 7 |
f = function(){ location.href = "https://parastoohozuri.ir/blog/" ; } form.Form.SaveRecord(f); alert(" سپاس از همراهی شما اطلاعات ثبت شد."); |
پنهان کردن ستون های گرید در یک مرحله خاص:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
var vSteporder = form.DataItem.StepOrder; var ctrl =form.GetControl("firstGrid"); if(vSteporder == 0){ $(ctrl.InputControl.CTRL_GRID).data("kendoGrid").hideColumn("ProductStatus"); $(ctrl.InputControl.CTRL_GRID).data("kendoGrid").hideColumn("PrdComments"); $(ctrl.InputControl.CTRL_GRID).data("kendoGrid").hideColumn("Description"); } else{ $(ctrl.InputControl.CTRL_GRID).data("kendoGrid").showColumn("ProductStatus"); $(ctrl.InputControl.CTRL_GRID).data("kendoGrid").showColumn("PrdComments"); $(ctrl.InputControl.CTRL_GRID).data("kendoGrid").showColumn("Description"); |
نمایش و عدم نمایش تب ها در یک مرحله خاص:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
form.HideTab(0); form.HideTab(1); var step=form.DataItem.StepOrder; if (step == 1 || step == 2) { form.SelectTab(1); form.ShowTab(1); } else { form.SelectTab(0); form.ShowTab(0); } |
مقداردهی فیلدی از گرید براساس تغییر مقدار فیلدی دیگر در گرید:
1 2 3 |
if(fieldName == 'EngExpert'){ item.SetValue('StepOrder',2); } |
نمایش ارور به هنگام تکمیل نکردن فیلدیی در گرید هنگام ذخیره فرم:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
var grid = form.GetControl("InitialreviewGridProduction").InputControl.GetAllItems(); for (var i = 0; i < grid.length; i++){ if (grid[i].ProductStatus ==""){ var vkhali="Yeskhali"; break; } } if( vkhali =="Yeskhali"){ alert("لطفا تایید یا رد بودن هر آیتم را در ستون نظر تولید مشخص نمایید") } if( vkhali !="Yeskhali" ){ form.SaveAndExit(); } |
انتقال آیتمی از یک گرید به گریدی دیگر:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
var grid = form.GetControl("HistoryGrid").InputControl.GetAllItems() ; var SelectID = form.GetControl("HistoryGrid").InputControl.GetSelectedItem().ID for (var i=0; i < grid.length; i++) { gridID = grid[i].ID ; if (gridID == SelectID ){ Var_Title = grid[i].Title ; Var_Row = grid[i].Row ; Var_Brand= grid[i].Brand; Var_situation= grid[i].situation; Var_Count= grid[i].Count; Var_Conflicttime= grid[i].Conflicttime; Var_Department= grid[i].Department; Var_RespUnit= grid[i].RespUnit; } } var item = new Object(); item.Title = Var_Title ; item.Row = Var_Row; item.Brand = Var_Brand ; item.situation = Var_situation ; item.Count = VarVar_Department ; item.RespUnit = Var_RespUnit ; form.GetControl("firstGrid").InputControl.AddNewRow(item); |
گرفتن خروجی اکسل از گرید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
var grid = form.GetControl("c_Procurement").InputControl; var cols = []; cols.push({field:"Generalformnumber", title:"شماره درخواست"}); cols.push({field:"Row", title:"ردیف"}); cols.push({field:"Title", title:"کد کالا"}); cols.push({field:"DesProducts", title:"شرح کالا"}); cols.push({field:"Mark", title:"مارک"}); cols.push({field:"typee", title:"تیپ"}); cols.push({field:"Specifications", title:"مشخصات فنی"}); cols.push({field:"PieceCode", title:"کد قطعه"}); cols.push({field:"Desc", title:"توضیحات"}); cols.push({field:"MeasurementUnit", title:"واحد سنجش"}); cols.push({field:"RequestValue", title:"مقدار درخواست"}); cols.push({field:"PrjNumber", title:"سفارش"}); cols.push({field:"DateRequired", title:"تاریخ نیاز"}); cols.push({field:"Responsible", title:"مسئول"}); cols.push({field:"Finalreason", title:"توضیحات"}); grid.ExportToExcel(cols, "OrdersExport.xls", "SheetName"); |
غیرقابل ویرایش کردن ستون های یک گرید در یک مرحله خاص:
1 2 3 4 5 |
var vSteporder=form.DataItem.StepOrder; if(( e.FieldName == 'Title' || e.FieldName == 'Specifications'|| e.FieldName == 'PieceCode'|| e.FieldName == 'PrjNumber'|| e.FieldName == 'DateRequired'|| e.FieldName == 'RequestValue'|| e.FieldName == 'MeasurementUnit'|| e.FieldName == 'Desc') && ( vSteporder== 1 || vSteporder== 2 ) ){ e.Cancel=true;} |
انتقال چندین رکورد از یک گرید باکمک check box به گریدی دیگر:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
var grid = form.GetControl("c_Control13").InputControl.GetAllItems() ; for (var i=0; i < grid.length; i++) { var Tick=grid[i].Transfer; if (Tick == "1"){ Var_Average = grid[i].Averageconsumption ; Var_Desc = grid[i].Desc; Var_MeasurementUnit = grid[i].MeasurementUnit; Var_RequestValue = grid[i].RequestValue; Var_DateRequired = grid[i].DateRequired; Var_PrjNumber = grid[i].PrjNumber; Var_PieceCode = grid[i].PieceCode; Var_Specifications = grid[i].Specifications; Var_typee = grid[i].typee; Var_DesProducts = grid[i].DesProducts; Var_Mark = grid[i].Mark ; Var_Title = grid[i].Title ; var item = new Object(); item.Averageconsumption = Var_Average ; item.Desc = Var_Desc; item.MeasurementUnit = Var_MeasurementUnit ; item.RequestValue = Var_RequestValue ; item.DateRequired = Var_DateRequired ; item.PrjNumber= Var_PrjNumber ; item.PieceCode = Var_PieceCode ; item.Specifications = Var_Specifications ; item.typee = Var_typee ; item.DesProducts = Var_DesProducts; item.Mark = Var_Mark ; item.Title = Var_Title ; form.GetControl("c_Control5").InputControl.AddNewRow(item); } } |
قراردادن یک رکورد پیش فرض در گرید:
1 2 3 4 5 6 7 8 9 10 |
form = ALL_FORMS[0].Form.FormTemplate; if(form.IsNewRecord()){ for (var i = 0; i < 10; i++) { var item = new Object(); form.GetControl("c_Entry").InputControl.AddNewRow(item); } } |
حذف رکورد انتخاب شده در گرید:
1 |
form.GetControl("dg_Details").InputControl.DeleteSelectedItem() |
lookup زدن به چندین لیست برای نمایش اطلاعات در گرید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
if (fieldName == "RowNumber"){ function callback(e){ if (e.ErrorMessage) { alert(e.ErrorMessage); } else { if (e.ListItems.length > 0) { item.SetValue('ProductName' ,e.ListItems[0].PanelName); item.SetValue('Title' ,e.ListItems[0].Typep); item.SetValue('Numberdevices' ,e.ListItems[0].PanelQ); item.SetValue('Numberitem' ,e.ListItems[0].Cell); } else { // alert("no items found"); } } } } criteria = []; var ss = new pf.SearchSpec(); RowNumber = item.RowNumber; ss.FieldName = "FRow"; ss.FieldValue = RowNumber; ss.Operator = "Equals"; ss.Type = "Text"; var dd= new pf.SearchSpec(); dd.FieldName = "Title"; dd.FieldValue = form.GetControl("c_PrjNumberTxt").GetValue(); dd.Operator = "Equals"; dd.Type = "Text"; criteria.push(ss); criteria.push(dd); form.LoadRecords("http://portal……../", "پروژهها - اطلاعات", "", criteria, null, null, false, 0, callback); } |
تغییر رنگ:
1 |
form.GetControl('c_G1QScore').SetCellColor("#fc0328"); |
سه متد مقدارگیری از یک کنترل:
1 2 3 4 5 |
GetValue() GetValue_Name () Getvalue_Value() |
خواندن دو پست دیگر در خصوص آموزش پاورفرم و کنترل های آن را به شما کاربران عزیز پیشنهاد می کنم.
خواهشمند است با نظرات خودتان کمک کنید این مقاله را پربارتر کنیم و تمامی فرمول های پرکاربرد پاورفرم را یکجا داشته باشیم.
2 پاسخ
خیلی مفید و کاربردی
خوشحالم که براتون مفید بوده