Jul 12, 2013, 7:25 AM
[CLOSED] [Help] Grid Selection doesn't work after refresh data with local filtering.
Hi. all
I hav problem that grid selection dosen't work
Step1. Some column filter by gridfilter feature local mode.
Step2. Reload data
Step3. selection doesn't work when I select one row or other row selected.
Below my UI source code.
Thanks.
I hav problem that grid selection dosen't work
Step1. Some column filter by gridfilter feature local mode.
Step2. Reload data
Step3. selection doesn't work when I select one row or other row selected.
Below my UI source code.
Thanks.
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Mini.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<%@ Register Src="~/Areas/Close/Views/CEProcessClose/PriceList.ascx" TagPrefix="uc1" TagName="PriceList" %>
<%@ Register Src="~/Areas/Close/Views/CEProcessClose/ItemList.ascx" TagPrefix="uc1" TagName="ItemList" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Index
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<script>
var ProcessClose = new MiniController("ProcessClose", "Close/CEProcessClose/Save");
Ext.override(ProcessClose, {
add: function () {
if (!this.doCheckDup()) return;
var selections = this.getGrid().getSelectionModel().getSelection();
if (selections.length == 0) {
Mini.Msg.alert("선택된 항목이 없습니다");
return false;
}
ItemList.setItems(selections);
PriceList.setPartProcessID(selections[0].data.FromPartProcessID);
App.AddWindow.show();
},
doCheckDup: function () {
var tempPartProcessID = 0;
var selections = this.getGrid().getSelectionModel().getSelection();
Ext.each(selections, function (item) {
if (tempPartProcessID == 0) {
tempPartProcessID = item.data.FromPartProcessID;
}
else if (tempPartProcessID != item.data.FromPartProcessID) {
Mini.Msg.alert("동일한 공정의 제품을 선택후 마감입력 하세요");
tempPartProcessID = -1;
return false;
}
});
if (tempPartProcessID < 0)
return false;
else
return true;
},
onBeforeSelect: function (a, b, c, d, e, f) {
var aa = 0;
}
});
</script>
<ext:Viewport runat="server" Layout="FitLayout">
<Items>
<ext:GridPanel runat="server" ID="ProcessCloseGrid" Layout="FitLayout">
<Store>
<ext:Store runat="server" ID="ProcessCloseStore" GroupField="PartName">
<Proxy>
<ext:AjaxProxy Url="~/Close/CEProcessClose/RemainList">
<Reader>
<ext:JsonReader IDProperty="PK" Root="data" />
</Reader>
<Listeners>
<Exception Fn="Mini.ExceptionFn" />
</Listeners>
</ext:AjaxProxy>
</Proxy>
<Model>
<ext:Model runat="server" IDProperty="PK" ClientIdProperty="PK" >
<Fields>
<ext:ModelField Name="PK" Type="Int" />
<ext:ModelField Name="LotID" Type="String" />
<ext:ModelField Name="ToPartProcessID" Type="Int" />
<ext:ModelField Name="FactoryID" Type="Int" />
<ext:ModelField Name="FromPartProcessName" Type="String" />
<ext:ModelField Name="FromPartProcessID" Type="Int" />
<ext:ModelField Name="ToPartProcessName" Type="String" />
<ext:ModelField Name="SupplierID" Type="Int" />
<ext:ModelField Name="SupplierName" Type="String" />
<ext:ModelField Name="PartID" Type="Int" />
<ext:ModelField Name="PartColorID" Type="Int" UseNull="true"/>
<ext:ModelField Name="PartPrintID" Type="Int" UseNull="true"/>
<ext:ModelField Name="PartName" Type="String" />
<ext:ModelField Name="ColorName" Type="String" />
<ext:ModelField Name="PrintName" Type="String" />
<ext:ModelField Name="OKQty" Type="Int" />
<ext:ModelField Name="DefectQty" Type="Int" />
<ext:ModelField Name="LostQty" Type="Int" />
<ext:ModelField Name="WDate" Type="Date" />
<ext:ModelField Name="Note" Type="String" />
<ext:ModelField Name="Incomed" Type="Boolean" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<TopBar>
<ext:Toolbar runat="server">
<Items>
<ext:Button runat="server" Icon="Reload" Text="새로고침" OnClientClick="ProcessClose.reload();" />
<ext:Button runat="server" Icon="Add" Text="마감" OnClientClick="ProcessClose.add();" />
</Items>
</ext:Toolbar>
</TopBar>
<ColumnModel>
<Columns>
<ext:Column runat="server" DataIndex="PartName" Text="품명" Width="150" />
<ext:Column runat="server" DataIndex="ColorName" Text="색상" Width="100" />
<ext:Column runat="server" DataIndex="PrintName" Text="인쇄" Width="100" />
<ext:Column runat="server" DataIndex="LotID" Text="LotID" Width="120" />
<ext:Column runat="server" DataIndex="FromPartProcessName" Text="공정명" Width="100" />
<ext:Column runat="server" DataIndex="SupplierName" Text="업체명" Width="100" />
<ext:NumberColumn runat="server" DataIndex="OKQty" Text="양품수량" Width="70" Format="0,000" Align="Right"/>
<ext:NumberColumn runat="server" DataIndex="DefectQty" Text="불량수량" Width="70" Format="0,000" Align="Right"/>
<ext:NumberColumn runat="server" DataIndex="LostQty" Text="시료/유실" Width="70" Format="0,000" Align="Right"/>
<ext:DateColumn runat="server" DataIndex="WDate" Text="일자" Width="80" Format="yyyy-MM-dd"/>
<ext:Column runat="server" DataIndex="Note" Text="비고" Width="100" />
<ext:Column runat="server" DataIndex="ToPartProcessName" Text="후공정명" Width="100" />
<ext:CheckColumn runat="server" DataIndex="Incomed" Text="후공정입고" Width="100" />
</Columns>
</ColumnModel>
<Features>
<ext:GridFilters runat="server" Local="true">
<Filters>
<ext:StringFilter DataIndex="LotID" />
<ext:StringFilter DataIndex="FromPartProcessName" />
<ext:StringFilter DataIndex="ToPartProcessName" />
<ext:StringFilter DataIndex="SupplierName" />
<ext:StringFilter DataIndex="PartName" />
<ext:StringFilter DataIndex="ColorName" />
<ext:StringFilter DataIndex="PrintName" />
<ext:StringFilter DataIndex="Note" />
<ext:DateFilter DataIndex="WDate" />
<ext:BooleanFilter DataIndex="Incomed" />
</Filters>
</ext:GridFilters>
<ext:Grouping runat="server" HideGroupedHeader="true" />
</Features>
<View>
<ext:GridView runat="server" />
</View>
<SelectionModel>
<ext:CheckboxSelectionModel runat="server">
<Listeners>
<BeforeSelect Fn="ProcessClose.onBeforeSelect" />
</Listeners>
</ext:CheckboxSelectionModel>
</SelectionModel>
</ext:GridPanel>
</Items>
</ext:Viewport>
<ext:Window runat="server" ID="AddWindow" Width="1000" Height="600" Modal="true" Hidden="true" Layout="VBoxLayout"
Title="마감입력">
<LayoutConfig>
<ext:VBoxLayoutConfig Align="Stretch" />
</LayoutConfig>
<Items>
<ext:Panel runat="server" Flex="2" Layout="FitLayout">
<Content>
<uc1:PriceList runat="server" ID="PriceList" />
</Content>
</ext:Panel>
<ext:Panel runat="server" Flex="3" Layout="FitLayout">
<Content>
<uc1:ItemList runat="server" ID="ItemList" />
</Content>
</ext:Panel>
</Items>
</ext:Window>
</asp:Content>
Last edited by Daniil; Jul 18, 2013 at 7:25 AM.
Reason: [CLOSED]