<%@ Control Language="C#" AutoEventWireup="true" CodeFile="AMA_IMD_Control.ascx.cs" Inherits="RTD_UserControl_AMA_IMD_Control" %>
<link href="../Styles/ExtFontSytle.css" type="text/css" rel="stylesheet" />
<script type="text/javascript">
var changes = function (value, metaData, r) {
var date = new Date(r.data.ENDTIME)
if (date.getTime() < new Date()) {
var mystyle = 'background-color: #808080;';
metaData.style = mystyle + "";
return value;
}
else {
// var mystyle = 'background-color:#FFFFFF;';
metaData.style = mystyle + "";
return value;
}
};
var resetNewUserForm = function (form) {
// Reset Form Fields
form.getForm().reset();
App.NewIDLEINTERVALTF.setDisabled(false);
// Re-enable UserIdTF to allow inputs while creating New Users
App.NewIDTF.setDisabled(true);
// Enable/Disable buttons
App.NewUserSaveBtn.setDisabled(true);
App.NewUserDeleteBtn.setDisabled(true);
App.NewUserCreateBtn.setDisabled(false);
};
var assignNewbatchToolControlFields = function (record) {
App.NewIDTF.setValue(record.data.ID);
App.NewCONTROLIDTF.setValue(record.data.CONTROLID);
App.NewINTERVALTF.setValue(record.data.INTERVAL);
App.NewCONTROLLOGICALTF.setValue(record.data.CONTROLLOGICAL);
App.NewCONTROLVALUETF.setValue(record.data.CONTROLVALUE);
App.NewCONTROLINTERVALTF.setValue(record.data.CONTROLINTERVAL);
App.NewLEADINGTIMETF.setValue(record.data.LEADINGTIME);
App.NewINITIALTIMETF.setValue(record.data.INITIALTIME);
App.NewSTARTTIMETF.setValue(record.data.STARTTIME);
App.NewENDTIMETF.setValue(record.data.ENDTIME);
App.NewSETTINGAREATF.setValue(record.data.SETTINGAREA);
// App.NewIDTF.setValue(record.data.ID);
//if (record.data.ISALLOWNEXT == 'Prefer' || record.data.ISALLOWNEXT == 'NonPrefer') {
// App.NewIDLEINTERVALTF.setDisabled(true);
//}
//else
//{
// App.NewIDLEINTERVALTF.setDisabled(false);
//}
// App.NewIDTF.setDisabled(true);
//// Enable/Disable buttons
//App.NewUserSaveBtn.setDisabled(false);
//App.NewUserDeleteBtn.setDisabled(false);
//App.NewUserCreateBtn.setDisabled(true)DCE7F4;
};
</script>
<ext:Panel ID="PortBindingPanel" Layout="BorderLayout" runat="server">
<Items>
<ext:FormPanel ID="CriteriaPanel" Title="Criteria Selection Area" Frame="true" Border="false" Width="600" Region="North"
Collapsible="true" CollapseDirection="Left" CollapsedCls="Collapse_NoBorder" BodyPadding="5" AutoScroll="true"
FrameHeader="false" BodyStyle="background-color:#DCE7F4"
runat="server">
<FieldDefaults LabelStyle="color:green; padding-left: 5px; border:0px" />
<TopBar>
<ext:Toolbar ID="CriteriaTopBar" Height="25" Margin="0" Border="true" EnableOverflow="true" runat="server" Frame="false" BodyStyle="border:0px;border-right:1px solid #99BCE8">
<Items>
<ext:Checkbox ID="chkCollapseIndicatorTop" Checked="true" runat="server" />
<ext:Label Text="Collapse after Query" StyleSpec="color:green; padding-left: 5px;" runat="server"/>
<ext:ToolbarFill />
<ext:Button ID="btnTopQuery" Text="Query" Icon="ApplicationGo" runat="server">
<Listeners>
<Click Handler="
;
Ext.net.Mask.show({ msg : 'Loading page...' });
#{DirectMethods}.QueryData('DataGrid');
#{DirectMethods}.HideMask();
" />
</Listeners>
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
<Items>
<ext:FieldSet ID="fsDataPeroid"
Title="Query Items"
Layout="TableLayout"
Collapsible="true"
Collapsed="false"
StyleSpec="Padding: 6px"
Visible="true"
Cls="my-fieldset-header-text"
runat="server"
>
<LayoutConfig>
<ext:TableLayoutConfig Columns="15" />
</LayoutConfig>
<Items>
<ext:Panel Border="false" Layout="VBoxLayout" Width="10" BodyStyle="background-color:#DCE7F4" runat="server" />
<ext:Panel Border="false" Layout="VBoxLayout" Width="10" BodyStyle="background-color:#DCE7F4" runat="server">
</ext:Panel>
<ext:Panel Border="false" Layout="TableLayout" Width="300" Height="50" BodyStyle="background-color:#DCE7F4" runat="server">
<LayoutConfig>
<ext:TableLayoutConfig Columns="4" />
</LayoutConfig>
<Items>
<ext:Label Text="ControlId:" StyleSpec="color:green; padding-left: 4px" Height="15" runat="server" Border="false" />
<ext:TextField ID="controlID" Disabled="false" ColSpan="4" StyleSpec="margin: 1px" runat="server"></ext:TextField>
</Items>
</ext:Panel>
<ext:Panel Border="false" Layout="VBoxLayout" Width="10" Height="50" BodyStyle="background-color:#DCE7F4" runat="server" />
<ext:Panel Border="false" Layout="VBoxLayout" Width="25" Height="50" BodyStyle="background-color:#DCE7F4" runat="server" />
<ext:Panel Border="false" Layout="VBoxLayout" Width="25" Height="50" BodyStyle="background-color:#DCE7F4" runat="server">
</ext:Panel>
<ext:Panel Border="false" Layout="TableLayout" Width="500" Height="50" BodyStyle="background-color:#DCE7F4" runat="server">
<LayoutConfig>
<ext:TableLayoutConfig Columns="4" />
</LayoutConfig>
<Items>
<ext:FileUploadField ID="SettingsFile" EmptyText="Select a Setting Excel File" FieldLabel="Import" ButtonText="" Icon="TableRefresh" BlankText="文件路径不能为空" runat="server" >
<Listeners>
<ValidityChange Handler="#{UploadButton}.setDisabled(false)"/>
</Listeners>
</ext:FileUploadField>
<ext:Button ID="UploadButton" Text="Upload" Disabled="false" OnDirectClick="UploadSettings" runat="server" >
</ext:Button>
<ext:Button Text="Reset" runat="server">
<Listeners>
<Click Handler="#{DirectMethods}.Reset();" />
</Listeners>
</ext:Button>
<ext:Button Text="Export" runat="server">
<Listeners>
<Click Handler="Ext.net.Mask.show({ msg : 'Loading page...' });
#{DirectMethods}.QueryData('Excel', { isUpload : true });
#{DirectMethods}.HideMask();" />
</Listeners>
</ext:Button>
</Items>
</ext:Panel>
</Items>
</ext:FieldSet>
</Items>
</ext:FormPanel>
<ext:FormPanel ID="BatchToolEditorFP" Title="IMD_Control" Frame="true" Width="350" Region="East"
Collapsible="true" CollapseDirection="Right" BodyPadding="10" AutoScroll="true" runat="server">
<FieldDefaults LabelAlign="Right" LabelStyle="color: green;" />
<TopBar>
<ext:Toolbar Height="25" Margin="0" Border="true" EnableOverflow="true" runat="server">
<Items>
<ext:Button ID="NewUserSaveBtn" ClientIDMode="Static" Text="Save" Icon="Disk" Disabled="false" runat="server">
<Listeners>
<Click Handler="
App.NewIDTF.setDisabled(true);
var requiredFieldsProvided = requiredFieldsInputted('NewCONTROLIDTF,NewINTERVALTF,NewSTARTTIMETF,NewENDTIMETF,NewSETTINGAREATF','CONTROLID,INTERVAL,STARTTIME,ENDTIME,SETTINGAREA');
if (requiredFieldsProvided) {
var Id = App.NewIDTF.getValue();
#{DirectMethods}.UpdateUser(Id);
// Reload GridPanel Store to make data refreshed immediately
#{NewUserListGP}.store.reload();
}
" />
</Listeners>
</ext:Button>
<ext:ToolbarSeparator />
<ext:Button ID="NewUserCreateBtn" ClientIDMode="Static" Text="Add" Icon="Add" runat="server">
<Listeners>
<Click Handler="
var requiredFieldsProvided = requiredFieldsInputted('NewCONTROLIDTF,NewINTERVALTF,NewSTARTTIMETF,NewENDTIMETF,NewSETTINGAREATF','CONTROLID,INTERVAL,STARTTIME,ENDTIME,SETTINGAREA');
if (requiredFieldsProvided) {
#{DirectMethods}.CreateNewUser();
// Reload GridPanel Store to make data refreshed immediately
#{NewUserListGP}.store.reload();
}
" />
</Listeners>
</ext:Button>
<ext:ToolbarSeparator />
<ext:Button ID="NewUserDeleteBtn" ClientIDMode="Static" Text="Delete" Icon="Delete" Disabled="false" runat="server">
<Listeners>
<Click Handler="
Ext.Msg.confirm('Confirmation', 'Are you sure to delete this selected Setting ?<br/>' +
'<br/>',
function(btn) {
if (btn == 'yes') {
var Id = App.NewIDTF.getValue();
// Delete User
#{DirectMethods}.NewDeleteprotBindingControl(Id);
// Reload GridPanel Store to make data refreshed immediately
#{NewUserListGP}.store.reload();
// resetTheForm
resetNewUserForm(#{BatchToolEditorFP});
}
})
" />
</Listeners>
</ext:Button>
<ext:ToolbarSeparator />
<ext:Button ID="NewUserResetBtn" ClientIDMode="Static" Text="Reset" Icon="PageRefresh" runat="server">
<Listeners>
<Click Handler="resetNewUserForm(#{BatchToolEditorFP});" />
</Listeners>
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
<Items>
<ext:FieldSet Title="Basic Info" Layout="TableLayout" StyleSpec="Padding: 10px;"
Collapsible="true" Collapsed="false" DefaultAnchor="100%" runat="server">
<LayoutConfig>
<ext:TableLayoutConfig Columns="1" />
</LayoutConfig>
<Items>
<ext:TextField ID="NewIDTF" ClientIDMode="Static" FieldLabel="ID" AllowBlank="false" Width="271" Disabled ="true" runat="server" />
<ext:TextField ID="NewCONTROLIDTF" ClientIDMode="Static" FieldLabel="ControlId*" AllowBlank="false" Width="271" runat="server" />
<ext:TextField ID="NewINTERVALTF" ClientIDMode="Static" FieldLabel="Interval*(H)" AllowBlank="false" Width="271" runat="server" />
<%-- <ext:TextField ID="NewCONTROLLOGICALTF" ClientIDMode="Static" FieldLabel="ControlLogical" AllowBlank="true" Width="271" runat="server" />--%>
<ext:ComboBox ID="NewCONTROLLOGICALTF" ClientIDMode="Static" FieldLabel="ControlLogical" AllowBlank="true" Width="271" TypeAhead="true" runat="server">
<Items>
<ext:ListItem Text="weekly" Value="weekly" />
<ext:ListItem Text="monthly" Value="monthly" />
</Items>
</ext:ComboBox>
<ext:TextField ID="NewCONTROLVALUETF" ClientIDMode="Static" FieldLabel="ControlValue" AllowBlank="true" Width="271" runat="server" />
<ext:TextField ID="NewCONTROLINTERVALTF" ClientIDMode="Static" FieldLabel="ControlInterval" AllowBlank="true" Width="271" runat="server" />
<ext:TextField ID="NewLEADINGTIMETF" ClientIDMode="Static" FieldLabel="LeadingTime" AllowBlank="true" Width="271" runat="server" />
<%-- 2025/12/04 <ext:TextField ID="NewINITIALTIMETF" ClientIDMode="Static" FieldLabel="InitialTime" AllowBlank="true" Width="271" runat="server" />--%>
<ext:DateField ID="NewINITIALTIMETF" ClientIDMode="Static" FieldLabel="InitialTime" AllowBlank="true" Width="271" Format="yyyy/MM/dd H:i" runat="server" />
<%-- 2025/12/04 <ext:TextField ID="NewSTARTTIMETF" ClientIDMode="Static" FieldLabel="StartTime*" Note="格式:'yyyy/mm/dd hh24:mi'" EmptyText="yyyy/mm/dd hh24:mi" AllowBlank="false" LabelWidth="100" Width="271" runat="server" />--%>
<ext:DateField ID="NewSTARTTIMETF" ClientIDMode="Static" FieldLabel="StartTime*" Note="格式:'yyyy/mm/dd hh24:mi'" EmptyText="yyyy/mm/dd hh24:mi" Format="yyyy/MM/dd H:i" AllowBlank="false" LabelWidth="100" Width="271" runat="server" />
<%-- 2025/12/04 <ext:TextField ID="NewENDTIMETF" ClientIDMode="Static" FieldLabel="EndTime*" Note="格式:'yyyy/mm/dd hh24:mi'" EmptyText="yyyy/mm/dd hh24:mi" AllowBlank="false" LabelWidth="100" Width="271" runat="server" />--%>
<ext:DateField ID="NewENDTIMETF" ClientIDMode="Static" FieldLabel="EndTime*" Note="格式:'yyyy/mm/dd hh24:mi'" EmptyText="yyyy/mm/dd hh24:mi" Format="yyyy/MM/dd H:i" AllowBlank="false" LabelWidth="100" Width="271" runat="server" />
<%-- <ext:ComboBox ID="NewCATEGORYTF" ClientIDMode="Static" FieldLabel="Category*" AllowBlank="false" Width="271" TypeAhead="true" runat="server">
<Items>
<ext:ListItem Text="InUseEnd_Reuse" Value="InUseEnd_Reuse" />
<ext:ListItem Text="InUseEnd_Recycle" Value="InUseEnd_Recycle" />
<ext:ListItem Text="RecycleEnd_Reuse" Value="RecycleEnd_Reuse" />
<ext:ListItem Text="RecycleEnd_Downgrade" Value="RecycleEnd_Downgrade" />
</Items>
</ext:ComboBox>
<ext:ComboBox ID="NewFAILCONTROLTF" ClientIDMode="Static" FieldLabel="FailControl*" AllowBlank="false" Width="271" TypeAhead="true" runat="server">
<Items>
<ext:ListItem Text="Y" Value="Y" />
<ext:ListItem Text="N" Value="N" />
</Items>
</ext:ComboBox> --%>
<ext:ComboBox ID="NewSETTINGAREATF" ClientIDMode="Static" FieldLabel="Setting Area*" AllowBlank="true" Width="271" TypeAhead="true" runat="server" >
<Items>
<ext:ListItem Text="CMP" Value="CMP" />
<ext:ListItem Text="COPPER" Value="COPPER" />
<ext:ListItem Text="DIFF" Value="DIFF" />
<ext:ListItem Text="ETCH" Value="ETCH" />
<ext:ListItem Text="IMP" Value="IMP" />
<ext:ListItem Text="LITHO" Value="LITHO" />
<ext:ListItem Text="TF" Value="TF" />
<ext:ListItem Text="WET" Value="WET" />
<ext:ListItem Text="YE" Value="YE" />
<ext:ListItem Text="WAT" Value="WAT" />
<ext:ListItem Text="OQA" Value="OQA" />
</Items>
</ext:ComboBox>
</Items>
</ext:FieldSet>
</Items>
</ext:FormPanel>
<ext:GridPanel ID="NewUserListGP" ClientIDMode="Static" Icon="ApplicationViewList" Title="IMD_Control" ColumnLines="true" AutoDoLayout="true" Region="Center" runat="server" MultiSelect="true">
<Store>
<ext:Store ID="PortParameterlListStore" runat="server">
<Model>
<ext:Model runat="server">
<Fields>
<ext:ModelField Name="ID" />
<ext:ModelField Name="CONTROLID" />
<ext:ModelField Name="INTERVAL" />
<ext:ModelField Name="CONTROLLOGICAL" />
<ext:ModelField Name="CONTROLVALUE" />
<ext:ModelField Name="CONTROLINTERVAL" />
<ext:ModelField Name="LEADINGTIME" />
<ext:ModelField Name="INITIALTIME" />
<ext:ModelField Name="STARTTIME" />
<ext:ModelField Name="ENDTIME" />
<ext:ModelField Name="SETTINGAREA" />
<ext:ModelField Name="CREATEUSER" />
<ext:ModelField Name="CREATETIME" />
<ext:ModelField Name="UPDATETIME" />
<ext:ModelField Name="UPDATEUSER" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel runat="server">
<Columns>
<ext:Column Text="ID" Sortable="true" DataIndex="ID" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Control id" Sortable="true" DataIndex="CONTROLID" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Interval" Sortable="true" DataIndex="INTERVAL" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Control logical" Sortable="true" DataIndex="CONTROLLOGICAL" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Control value" Sortable="true" DataIndex="CONTROLVALUE" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Control interval" Sortable="true" DataIndex="CONTROLINTERVAL" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Leading time" Sortable="true" DataIndex="LEADINGTIME" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Initial time" Sortable="true" DataIndex="INITIALTIME" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Start time" Sortable="true" DataIndex="STARTTIME" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="End time" Sortable="true" DataIndex="ENDTIME" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Setting Area" Sortable="true" DataIndex="SETTINGAREA" Width="100" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Create user" Sortable="true" DataIndex="CREATEUSER" Width="130" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Create time" Sortable="true" DataIndex="CREATETIME" Width="120" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Update user" Sortable="true" DataIndex="UPDATEUSER" Width="110" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
<ext:Column Text="Update time" Sortable="true" DataIndex="UPDATETIME" Width="110" runat="server" >
<Renderer Fn ="changes"></Renderer>
</ext:Column>
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel Mode="Single" runat="server">
<Listeners>
<Select Handler="
var Id = record.data.ID;
// Remove ALL items first
assignNewbatchToolControlFields(record);
" />
</Listeners>
</ext:RowSelectionModel>
</SelectionModel>
<View>
<ext:GridView StripeRows="false" runat="server">
</ext:GridView>
</View>
<BottomBar>
<ext:PagingToolbar runat="server">
<Items>
<ext:Label Text="Page size:" runat="server" />
<ext:ToolbarSpacer Width="10" runat="server" />
<ext:ComboBox Width="80" runat="server">
<Items>
<ext:ListItem Text="10" />
<ext:ListItem Text="20" />
<ext:ListItem Text="30" />
<ext:ListItem Text="50" />
<ext:ListItem Text="100" />
</Items>
<SelectedItems>
<ext:ListItem Value="30" />
</SelectedItems>
<Listeners>
<Select Handler="#{NewUserListGP}.store.pageSize = parseInt(this.getValue(), 10); #{NewUserListGP}.store.reload();" />
</Listeners>
</ext:ComboBox>
</Items>
<Plugins>
<ext:ProgressBarPager runat="server" />
</Plugins>
</ext:PagingToolbar>
</BottomBar>
</ext:GridPanel>
</Items>
</ext:Panel>
using Report;
using Report.ExtNet;
using Report.Utility;
using Ext.Net;
using Ext.Net.Utilities;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class RTD_UserControl_AMA_IMD_Control : System.Web.UI.UserControl
{
Report.UserObject _userInfo = new UserObject();
AMA_IMD_Control IMD_Control = new AMA_IMD_Control();
private Ext.Net.Store ste = new Ext.Net.Store();
ReportHelper.SettingTypeEnum _targetSettingTypeEnum = ReportHelper.SettingTypeEnum.Unknown;
private DataTable dt = new DataTable();
ExportToExcel ete = new ExportToExcel();
bool isQuery = false;
private string[] Grid_column_name = { "CONTROLID", "INTERVAL", "CONTROLLOGICAL", "CONTROLVALUE", "CONTROLINTERVAL", "LEADINGTIME", "INITIALTIME", "STARTTIME", "ENDTIME" , "SETTINGAREA" };
private string[] Grid_column_text = { "CONTROLID", "INTERVAL", "CONTROLLOGICAL", "CONTROLVALUE", "CONTROLINTERVAL", "LEADINGTIME", "INITIALTIME", "STARTTIME", "ENDTIME" , "SETTINGAREA" };
private int[] Grid_column_width = { 100, 100, 100, 100, 100, 100, 100, 100, 100,100 };
DataTable DtImportExcel = null;
protected void Page_Load(object sender, EventArgs e)
{
// Check Session
if (!X.IsAjaxRequest)
{ _userInfo = Report.UserObjectExtension.CheckLogonSession(); }
_userInfo = (Report.UserObject)System.Web.HttpContext.Current.Session["ValidUserObject"];
// Assign Stores
// BindUserStore();
QueryData("DataGrid");
}
protected void Page_PreRender(object sender, EventArgs e)
{
QueryUserControl.MFGQueryButton(new List<Control> { this.FindControl("BatchToolEditorFP"),
this.FindControl("SettingsFile"),
this.FindControl("UploadButton"),
this.FindControl("EditButton"),
this.FindControl("ResetID"),
this.FindControl("ExportID")
});
}
[DirectMethod]
public void CreateNewUser()
{
AssignUserObjectProperties();
IMD_Control.CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
IMD_Control.CreateUser = _userInfo.FullName;
// Declare & initialize
OracleHelper db = OracleHelper.GetInstance();
//int i, j;
//bool isnumber_d = int.TryParse(IMD_Control.DISPATCHCOUNT, out i);
//bool isnumber_a = int.TryParse(IMD_Control.ASSIGNCOUNT, out j);
//string sqlCmd = "INSERT INTO RTD_RecipeGroupSettingCONTROL( AreaName, MachineName, AvailableBuffer, MinBatch,MinLoadRatio, CreateTime, CreateUser) " +
// "VALUES ('{0}', '{1}', '{2}', '{3}', '{4}', '{5}','{6}') ";
//sqlCmd = string.Format(sqlCmd, RecipeGroupSetting.AreaName, RecipeGroupSetting.MachineName, RecipeGroupSetting.AvailableBuffer, RecipeGroupSetting.MinBatch, RecipeGroupSetting.MinLoadRatio,DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), _userInfo.FullName);
if ((IMD_Control.CONTROLID == "") || (IMD_Control.INTERVAL == "") )
{
string errorMessage = "One of the below listed filed is empty:<br/>" +
"<br/>- [CONTROLID]" +
"<br/>- [INTERVAL]" ;
//"<br/>- [RecipeGroup]" +
//"<br/>- [GroupType]";
// Show Error
ExtNetHelper.Alert("Required Information Missing", errorMessage, Ext.Net.Icon.Error);
}
//else if (!isnumber_d || !isnumber_a || i < 0 || j < 0)
//{
// string errorMessage = "DISPATCHCOUNT or ASSIGNCOUNT has to be a positive integer";
// //"<br/>- [RecipeGroup]" +
// //"<br/>- [GroupType]";
// // Show Error
// ExtNetHelper.Alert("Required Information Missing", errorMessage, Ext.Net.Icon.Error);
//}
//else if
// ((Convert.ToInt32(IMD_Control.ASSIGNCOUNT) < 0) || (Convert.ToInt32(IMD_Control.DISPATCHCOUNT) < 0))
//{
// string errorMessage = "DISPATCHCOUNT or ASSIGNCOUNT has to be a positive integer";
// //"<br/>- [RecipeGroup]" +
// //"<br/>- [GroupType]";
// // Show Error
// ExtNetHelper.Alert("Required Information Missing", errorMessage, Ext.Net.Icon.Error);
// }
else
{
// Execute to update
//db.ExecuteNonQuery(sqlCmd);
DbUtils.Insert<AMA_IMD_Control>(IMD_Control);
// Show Result
ExtNetHelper.Notify("Action Done", "New Setting successfully!");
}
}
[DirectMethod]
public void NewDeleteprotBindingControl(int id)
{
// Declare & initialize
bool isSuccess = DbUtils.DeleteById<AMA_IMD_Control>(id);
if (isSuccess) ExtNetHelper.Notify("Action Done", "Selected Setting successfully!");
else ExtNetHelper.Notify("Action Done", "Selected Setting deleted error!");
}
[DirectMethod]
public void UpdateUser(int id)
{
AssignUserObjectProperties(id);
IMD_Control.UpdateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
IMD_Control.UpdateUser = _userInfo.FullName;
//int i, j;
//bool isnumber_d = int.TryParse(IMD_Control.DISPATCHCOUNT, out i);
//bool isnumber_a = int.TryParse(IMD_Control.ASSIGNCOUNT, out j);
if ((IMD_Control.CONTROLID == "") || (IMD_Control.INTERVAL == ""))
{
string errorMessage = "One of the below listed filed is empty:<br/>" +
"<br/>- [CONTROLID]" +
"<br/>- [INTERVAL]" ;
//"<br/>- [RecipeGroup]" +
//"<br/>- [GroupType]";
// Show Error
ExtNetHelper.Alert("Required Information Missing", errorMessage, Ext.Net.Icon.Error);
}
//else if (!isnumber_d || !isnumber_a || i < 0 || j < 0)
//{
// string errorMessage = "DISPATCHCOUNT or ASSIGNCOUNT has to be a positive integer";
// //"<br/>- [RecipeGroup]" +
// //"<br/>- [GroupType]";
// // Show Error
// ExtNetHelper.Alert("Required Information Missing", errorMessage, Ext.Net.Icon.Error);
//}
//else if ((Convert.ToInt32(IMD_Control.ASSIGNCOUNT) < 0) || (Convert.ToInt32(IMD_Control.DISPATCHCOUNT) < 0))
//{
// string errorMessage = "DISPATCHCOUNT or ASSIGNCOUNT has to be a positive integer";
// //"<br/>- [RecipeGroup]" +
// //"<br/>- [GroupType]";
// // Show Error
// ExtNetHelper.Alert("Required Information Missing", errorMessage, Ext.Net.Icon.Error);
//}
else
{
DbUtils.Update<AMA_IMD_Control>(IMD_Control);
// Show Result
ExtNetHelper.Notify("Action Done", "The Setting updated successfully!");
}
}
private void AssignUserObjectProperties(int ID = 0)
{
//_userInfo.ID = this.UserIdTF.Text.Trim().ToUpper();
IMD_Control.ID = ID;
IMD_Control.CONTROLID = this.NewCONTROLIDTF.Text.Trim();
IMD_Control.INTERVAL = this.NewINTERVALTF.Text.Trim();
IMD_Control.CONTROLLOGICAL = this.NewCONTROLLOGICALTF.Text.Trim();
IMD_Control.CONTROLVALUE = this.NewCONTROLVALUETF.Text.Trim();
IMD_Control.CONTROLINTERVAL = this.NewCONTROLINTERVALTF.Text.Trim();
IMD_Control.LEADINGTIME = this.NewLEADINGTIMETF.Text.Trim();
IMD_Control.INITIALTIME = this.NewINITIALTIMETF.Text.Trim();
IMD_Control.STARTTIME = this.NewSTARTTIMETF.Text.Trim();
//IMD_Control.STARTTIME = this.NewSTARTTIMETF.SelectedDate.ToString().Trim();
IMD_Control.ENDTIME = this.NewENDTIMETF.Text.Trim();
IMD_Control.SETTINGAREA = this.NewSETTINGAREATF.Text.Trim();
//auto_InUseEndRecycleEnd.WaitingTime = this.NewWAITINGTIMETF.Text.Trim();
}
[DirectMethod]
public void NewDeleteRecipeGroupSettingControl(int id)
{
// Declare & initialize
bool isSuccess = DbUtils.DeleteById<AMA_IMD_Control>(id);
if (isSuccess) ExtNetHelper.Notify("Action Done", "Selected Setting successfully!");
else ExtNetHelper.Notify("Action Done", "Selected Setting deleted error!");
}
[DirectMethod(Timeout = 2400000)]
public void QueryData(string format)
{
isQuery = false;
string queryString = null;
if (!string.IsNullOrEmpty(controlID.Text.ToString()))
{
queryString += " and controlid like " + "'" + "%" + controlID.Text.ToString() + "%" + "'";
}
//if (!string.IsNullOrEmpty(productID.Text.ToString()))
//{
// queryString += " and product like " + "'" + "%" + productID.Text.ToString() + "%" + "'";
//}
//if (!string.IsNullOrEmpty(responsibleOwnerID.Text.ToString()))
//{
// queryString += " and responsibleOwner like " + "'" + "%" + responsibleOwnerID.Text.ToString() + "%" + "'";
//}
dt = DbUtils.GetAll<AMA_IMD_Control>(queryString);
if (format == "Excel")
{
if (dt.Rows.Count >= 1000000)
{
X.Msg.Alert("Alert", "单次Query資料筆數超过1000000筆, Excel无法正常导出! 请选择细分项做筛选!").Show();
HideMask();
return;
}
ete.ExportDataTableToExcel(this.Page, dt, "AMA_IMD_CONTROL", Grid_column_name, Grid_column_text, Grid_column_width);
}
ste = (Ext.Net.Store)X.GetCmp("PortParameterlListStore");
ste.RemoveAll();
ste.Data = dt;
ste.DataBind();
isQuery = true;
// ExtNetHelper.BindStore("RecipeGroupSettingControlListStore", DbUtils.GetAll<RecipeGroupSetting>(queryString));
if (this.chkCollapseIndicatorTop.Checked)
{
this.CriteriaPanel.Collapse();
}
}
[DirectMethod]
public void Reset()
{
this.SettingsFile.Reset();
}
public void UploadSettings(object sender, DirectEventArgs e)
{
string filePath = this.SettingsFile.FileName.ToUpper();
if (string.IsNullOrEmpty(filePath) || !filePath.Contains(".XLSX"))
{
ExtNetHelper.Alert("Error Message", "请检查是否选择了正确的文件格式 Excel 2007+ file.");
}
else
{
try
{
DtImportExcel = new DataTable();
DtImportExcel = this.SettingsFile.FileContent.ReadToDataTableByEPPlus();
if (DtImportExcel.Rows.Count <= 0)
{
ExtNetHelper.Alert("Error Message", "文件内容为空!");
return;
}
if (DtImportExcel.Rows.Count > 0)
{
// Update settings
DtImportExcel.Columns.Add("CREATETIME");
DtImportExcel.Columns.Add("UPDATETIME");
DtImportExcel.Columns.Add("CREATEUSER");
foreach (DataRow dr in DtImportExcel.Rows)
{
dr["CREATETIME"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
dr["CREATEUSER"] = _userInfo.FullName;
dr["UPDATETIME"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
int err_cnt = DtImportExcel.UpdateData("AMA_IMD_CONTROL", true);
if (err_cnt == 0)
{
// Show result
ExtNetHelper.Notify(_targetSettingTypeEnum.ToString() + " Data", DtImportExcel.Rows.Count.ToString() + " record(s) updated.");
}
else
{
// Show result
X.Js.Call("alert", err_cnt + "笔资料上传失败! " + (DtImportExcel.Rows.Count - err_cnt) + "笔资料上传成功!");
}
}
else
{
// Show result
ExtNetHelper.Alert("Action Failed", "The uploading setting file contains NO record, please upload another one instead!", Ext.Net.Icon.Exclamation);
}
}
catch (Exception ex)
{
new Exception("export to datatable error: " + ex.Message);
}
finally
{
this.PortParameterlListStore.Reload();
}
}
}
[DirectMethod]
public void HideMask()
{
X.Mask.Hide();
}
}
以上是完整程序,你再想想我时间控件为啥是0001的显示
最新发布