اسکریپت های مربوط به گرید
- مقدار دهی به آیتم های گرید
var items = form.GetControl("c_GridName").InputControl.GetAllItems();
for (var i=0; i < items.length; i++)
{
form.GetControl("c_Param1").SetValue(items[i].Param1);
form.GetControl("c_Param2").SetValue(items[i].Param2);
}
- پنهان کردن ستون هایی از گرید
ctrl = form.GetControl("DataEntryGrid name");
$(ctrl.InputControl.CTRL_GRID).data("kendoGrid").hideColumn("Column name");
- تغییر دستی جای ردیف های گرید
var c = form.GetControl("c_DEG");
var grid = $(c.InputControl.CTRL_GRID).data("kendoGrid");
moveGridRowUp(grid);
function moveGridRowUp(grid) {
var row = grid.select();
if (row)
{
var dataItem = grid.dataItem(row);
var index = grid.dataSource.indexOf(dataItem);
var newIndex = Math.max(0, index - 1);
if (newIndex != index) {
grid.dataSource.remove(dataItem);
grid.dataSource.insert(newIndex, dataItem);
}
}
}
- اضافه کردن ردیف به دیتا انتری گرید
// gets dataentrygrid
var compgrd = form.GetControl("yourDataEntryGrid").InputControl;
var grid = $(compgrd.CTRL_GRID).data("kendoGrid");
//creates new item
var newItem = compgrd.CreateEmptyItem();
newItem.__Status = "New";
newItem.Title = "Some Title";
newItem.randomProperty = "Enter a value";
//adds new item
grid.dataSource.add(newItem);
- مقدار دهی آیتم های گرید با ایجاد شرط در DataEntryGrid's LoadCompleteScript
for (var i = 0; i < items.length; i++) {
if (items[i].column3 == "high") {
items[i].SetValue("column3", "Need to fix..");
}
}
- sort کردن در گرید
var grid = $(form.GetControl("yourDataGrid").InputControl.CTRL_GRID).data("kendoGrid");
var dsSort = [];
dsSort.push({ field: "Title", dir: "asc" });
dsSort.push({ field: "Name", dir: "asc" });
grid.dataSource.sort(dsSort);
- گرفتن مقداری از آیتم select شده در گرید و نشاندن آن در کنترلی دیگر
var item = form.GetControl("c_GridName").InputControl.GetSelectedItem();
form.GetControl("c_Label").SetValue(item.Title);
- جمع کردن مقادیر یک ستون از گرید (Quantity) و نشاندن آن در کنترلی دیگر
var sum = 0;
var items = form.GetControl("c_GridName").InputControl.GetAllItems();
for (var i=0; i < items.length; i++)
{
sum = sum + items[i].Quantity;
}
- تازه سازی گرید
form.GetControl("c_GridName").InputControl.RefreshGrid();
- پنهان کردن دکمه های گرید
form = ALL_FORMS[0].Form.FormTemplate;
gridDetail = form.GetControl('Name_Grid') ;
HideBtn = gridDetail.InputControl.CTRL_BUTTON_DELETE;
HideBtn.disabled = true
- اضافه کردن یک ردیف با شرایط خاص از یک کنترل Data entry grid به یک یک کنترل Data entry grid دیگر
var Status =form.GetControl("c_ Status ").GetValue();
var firstGrid = form.GetControl("c_firstGrid").InputControl.GetAllItems();
for (var i = 0; i < c_firstGrid.length; i++)
{
var VColumn1= c_firstGrid[i]. Column1;
var Vcolumn2= c_firstGrid[i]. Column2;
var Vcolumn3= c_firstGrid[i]. Column3;
each_item_firstGrid = c_firstGrid[i];
var Value=form.GetControl("c_Value").GetValue();
if(Value >=1)
{
var item = new Object();
item. SecondGrid_Column1 = VColumn1;
item. SecondGrid_Column2 = Vcolumn2;
item. SecondGrid_Column3 = Vcolumn3;
form.GetControl("c_ SecondGrid ").InputControl.AddNewRow(item);
}
}
- شماره ردیف به صورت اتومات
کد بالا را در قسمت scriptsدر تنظیمات کنترل گردی قراردهید .
index = 0 ;
gridPhase = form.GetControl('DataEntryGrid Name') ;
gridItems = gridPhase.InputControl.GetAllItems();
for (var i=0; i < gridItems.length; i++)
{
index += 1 ;
debugger;
itemEach = gridItems[i] ;
itemEach.SetValue('Row Number Field Name' , index);
}
سپس کد ذیل را در extra در قسمت DataLoadedScript وارد نمائید
.
index = 0 ;
for (var i=0; i < items.length; i++)
{
index += 1 ;
itemEach = items[i] ;
itemEach.Row Number Field Name = index ;
}
- مقدار دهی به آیتم های Grid با Look up زدن به لیست
if (fieldName == "Grid Name")
{
function callback(e)
{
if (e.ErrorMessage)
{
alert("Error");
}
else
{
if (e.ListItems.length > 0)
{
// alert("items found");
var I=e.ListItems[0].ID;
item.SetValue("ID", I);
var FirstValue=e.ListItems[0].Gender;
item.SetValue("Gender", FirstValue);
var SecondValue=e.ListItems[0].Age;
item.SetValue("Age", SecondValue);
}
else
{
alert("no items found");
}
}
}
criteria = [];
var ss = new pf.SearchSpec();
ss.FieldName = "ID";
ss.FieldValue = pf.GetValueFromLookup(item.Title);
ss.Operator = "Equals"; //Equals,NotEquals,Greater,GreaterOrEqual,Less,LessOrEqual,IsNull,IsNotNull,BeginsWith,Contains,In, DateRangesOverlap
ss.Type = "Text";
criteria.push(ss);
form.LoadRecords("Site URL", "List Name", "", criteria, null, null, false, 0, callback);
}