<%@ Register TagPrefix="nicklee" Namespace="NickLee.Web.UI" Assembly="NickLee.Web.UI" %>
<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls" %>
<%@ Register TagPrefix="uc1" TagName="ucCopyRight" Src="../../uControls/ucCopyRight.ascx" %>
<%@ Page language="c#" Codebehind="pubProductPhase.aspx.cs" AutoEventWireup="false" Inherits="CQS.MasterData.Project.pubProductPhase" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>Product Phase</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<LINK href="../../CSS/style1.css" type="text/css" rel="stylesheet">
<LINK href="../../CSS/style2.css" type="text/css" rel="stylesheet">
<script language="javascript" src="../../JavaScript/meizz2.js"></script>
<script language="javascript" src="../../JavaScript/CommonFunction.js"></script>
<script language="javascript" src="../../AjaxFunction/ajaxfunc.js"></script>
<script language="javascript">
function ToolbarConfirm()
{
var oItem=event.srcNode;
switch (oItem.getAttribute("ID"))
{
//欲打開的頁面中一定要加入下面的話,這樣才能正常關閉
// <base target="_self">
case "ibtnAdd":
var openWnd;
openWnd=window.open("pubProductPhase_Edit.aspx?state=Add&F_SysCode="+getUrlParam("F_SysCode"),'ProductPhase','height=500,width=700,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes',null);
openWnd.moveTo((parseInt(screen.width)-700)/2,(parseInt(screen.height)-500)/2);
break;
case "ibtnBack":
window.history.back();
break;
}
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form > </td>
</tr>
</table>
<table cellSpacing="0" cellPadding="0" width="100%" border="0">
<tr>
<td width="2%" align="left" valign="bottom" class="topBg1"><IMG src="../../images/innertabtrip/topleft1.gif" alt="" width="22" height="33"></td>
<td width="92%" class="topBg1">
<div class="tblpage">
<asp:label ></TD>
</TR>
</tbody>
</TABLE>
</td>
</tr>
</table>
</form>
</body>
</HTML>
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace CQS.MasterData.Project
{
/// <summary>
/// pubProductPhase 的摘要描述。
/// </summary>
public class pubProductPhase : PageCommon
{
protected System.Web.UI.WebControls.Label lbUseInfo;
protected Microsoft.Web.UI.WebControls.Toolbar Toolbar1;
protected System.Web.UI.WebControls.DropDownList ddlQuery;
protected System.Web.UI.WebControls.TextBox tbQuery;
protected System.Web.UI.WebControls.Button btnQuery;
protected System.Web.UI.WebControls.Label lbRecords;
protected System.Web.UI.WebControls.Label lbPage;
protected System.Web.UI.WebControls.Label lbPages;
protected System.Web.UI.WebControls.TextBox tbpage;
protected System.Web.UI.WebControls.Button btnpage;
protected System.Web.UI.WebControls.DataGrid dgDataType;
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Label Label2;
protected System.Web.UI.WebControls.Label Label3;
protected NickLee.Web.UI.DataGridNavigator dgNav;
#region Web Form 設計工具產生的程式碼
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 此為 ASP.NET Web Form 設計工具所需的呼叫。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 此為設計工具支援所必須的方法 - 請勿使用程式碼編輯器修改
/// 這個方法的內容。
/// </summary>
private void InitializeComponent()
{
this.btnQuery.Click += new System.EventHandler(this.btnQuery_Click);
this.btnpage.Click += new System.EventHandler(this.btnpage_Click);
this.dgDataType.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.dgDataType_SortCommand);
this.dgDataType.UpdateCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dgDataType_UpdateCommand);
this.dgDataType.DeleteCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dgDataType_DeleteCommand);
this.dgDataType.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dgDataType_ItemDataBound);
this.dgNav.Command += new System.Web.UI.WebControls.CommandEventHandler(this.dgNav_Command);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
CommClass.PubFunction func= new CommClass.PubFunction();
void dgbind(){
//綁定并顯示數據
DataSet ds=func.GetDataTable("select * from cqsParameter where "+ getcond());
DataView dv;
dv=ds.Tables[0].DefaultView;
dv.Sort=ViewState["sortitem"]+" "+ViewState["sortdir"];
this.dgDataType.DataSource=dv;
//防止頁碼超出範圍時出錯
if (dgDataType.CurrentPageIndex>=func.GetDGPageCount(ds.Tables[0],dgDataType)){
dgDataType.CurrentPageIndex=0;
}
this.dgDataType.DataBind();
//顯示頁碼及資料筆數
lbRecords.Text=ds.Tables[0].Rows.Count.ToString();
lbPages.Text=this.dgDataType.PageCount.ToString();
lbPage.Text=(this.dgDataType.CurrentPageIndex + 1).ToString();
//設置刪除
this.SetDelBound();
}
string getcond(){
string con;
con = func.GetFieldStr("cqsParameter",ddlQuery.SelectedValue,tbQuery.Text) + " and Category='ProductPhase' ";
return con;
}
//=======================================================================================================================
private void dgDataType_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
//恢復資料,將Active標示成 A
int ID;
ID=(int)this.dgDataType.DataKeys[e.Item.ItemIndex];
if (func.ExecuteSQL("update cqsParameter set Active='A' where ID="+ ID)==false)
{
Response.Write("<script language=javascript>alert('Resume data fail!');</script>");
}
else
{
Response.Write("<script language=javascript>alert('Resume data successfully!');</script>");
this.dgbind();
}
}
private void SetDelBound()
{
//設置顯示已刪除記錄最後一列
DataGrid dg = this.dgDataType;
int i=0;
while(i<dg.Items.Count)
{
LinkButton DelButton=(LinkButton)(dg.Items[i].FindControl("lkDelete"));
string flg = getDesc("cqsParameter", "Active", "ID=" + dg.DataKeys[dg.Items[i].ItemIndex].ToString());
if(flg=="D")
{
dg.Items[i].BackColor = Color.LightGray;
dg.Items[i].FindControl("LinkEdit").Visible = false;
DelButton.Text = "Resume";
DelButton.CommandName = "Update";
DelButton.Attributes.Add("onclick", "return confirm('Are you sure resume this record?');");
}
else if(flg=="I")
{
dg.Items[i].BackColor = Color.LightBlue;
}
i =i+1;
}
return;
}
//=======================================================================================================================
private void Page_Load(object sender, System.EventArgs e)
{
//登陸頁面時進行身份驗證和權限設定
Page_login("../../");
//判斷用戶是否具有添加權限,如果沒有添加按鈕失效
Toolbar1.Items[1].Enabled = func.GetMenuPermit(Session["uID"].ToString(), Request["F_SysCode"].ToString(), "Add");
this.PagePath="pubProductPhase_Edit.aspx?state=Edit&F_SysCode="+Request["F_SysCode"].ToString()+"&ID=";
this.PageName="ProductPhase";
this.RegisterFunctionView();
this.lbUseInfo.Text=func.GetPageMsg("pubProductPhase","M0001","Chinese");
if (IsPostBack !=true){
//綁定可以查詢的欄位
func.FillDDL(ddlQuery,"select Description,FieldName from cqsQueryField where tablename='pubProductPhase' and Active='A'","Description","FieldName");
func.FillDDL2(ddlQuery,"(all*)","(all*)","T");
ViewState["sortitem"]="ID";
ViewState["sortdir"]="asc";
dgbind();
//給Toolbar中的按鈕賦點擊事件
Toolbar1.Attributes.Add("onbuttonclick","ToolbarConfirm();");
Toolbar1.Attributes.Add("_submitting","true");
}
}
private void dgDataType_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) {
//綁定數據時加上相關屬性
LinkButton DelButton= new LinkButton();
if(e.Item.ItemType==ListItemType.AlternatingItem || (e.Item.ItemType==ListItemType.Item)) {
e.Item.Attributes.Add("onMouseover", "this.bgColor='#eeeeee'");
e.Item.Attributes.Add("onmouseout", "this.bgColor='white'");
e.Item.Attributes.Add("ID","dg_"+e.Item.Cells[0].Text);
e.Item.Attributes.Add("onclick","SelectLine('dg_"+e.Item.Cells[0].Text+"')");
e.Item.Attributes.Add("style","cursor:hand");
DelButton=(LinkButton)(e.Item.FindControl("lkDelete"));
DelButton.Attributes.Add("onclick", "return confirm('Are you sure delete this record?');");
//判斷用戶是否具有編輯/刪除權限,如果沒有編輯/刪除按鈕隱藏,如果都沒有且方格沒有具它物件則方格隱藏
dg_Permit(Session["uID"].ToString(),Request["F_SysCode"].ToString(),"LinkEdit","lkDelete",null,e,dgDataType);
}
}
private void dgDataType_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e) {
//抓出要排序的欄位
string sortitem=e.SortExpression;
if (ViewState["sortitem"].ToString()==sortitem){
if (ViewState["sortdir"].ToString()=="asc"){
ViewState["sortdir"]="desc";
}else{
ViewState["sortdir"]="asc";
}
}else
ViewState["sortitem"]=sortitem;
dgbind();
}
private void dgNav_Command(object sender, System.Web.UI.WebControls.CommandEventArgs e) {
//利用NickLee控件組中的 DataNavigator 控件實現翻頁功能
dgDataType.CurrentPageIndex = (int) e.CommandArgument;
dgbind();
}
private void dgDataType_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) {
//刪除資料
int ID;
ID=(int)this.dgDataType.DataKeys[e.Item.ItemIndex];
if (func.ExecuteSQL("update cqsParameter set Active='D' ,DeleteBy ='"+ Request.Cookies["LoginID"].Value +"',DeleteOn =getdate() where ID="+ ID)==false) {
Response.Write("<script language=javascript>alert('Delete data fail!');</script>");
} else{
Response.Write("<script language=javascript>alert('Delete data successfully!');</script>");
dgbind();
}
}
private void btnpage_Click(object sender, System.EventArgs e) {
//跳到指定的頁碼
if (func.RegularNum(this.tbpage.Text,this.lbPages.Text) ==false){
return;
} else {
this.dgDataType.CurrentPageIndex =Convert.ToInt32(this.tbpage.Text)-1;
this.dgbind();
}
}
private void btnQuery_Click(object sender, System.EventArgs e) {
//按照指定的條件進行查找
dgbind();
}
}
}