using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
namespace DBAccess
{
public class DataControl
{
public DataSet GetEquip()
{
StringBuilder sb = new StringBuilder();
sb.Append(" SELECT e.ID, e.WatchNo, e.WatchPara, e.WatchUnit, e.WatchMax, e.WatchMin ");
sb.Append(" FROM Equipment e ORDER BY e.ID DESC");
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString());
}
public DataSet GetEquipDataByDate(string strID, string strDate)
{
StringBuilder sb = new StringBuilder();
sb.Append(" SELECT t.TimeValue,w.EID,w.WatchDate,w.WatchTime,w.WatchValue ");
sb.Append(" FROM TimeDict t LEFT JOIN WatchData w ON t.TimeValue=w.WatchTime ");
sb.Append(" AND w.WatchDate=@WatchDate AND w.EID=@EID ORDER BY t.TimeValue ");
SqlParameter[] p ={
new SqlParameter("@WatchDate",strDate),
new SqlParameter("@EID",strID)
};
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
public int SetData(string strID, string strNum, string strDate, string strTime)
{
DeleteData(strID, strDate, strTime);
StringBuilder sb = new StringBuilder();
sb.Append(" INSERT INTO WatchData (EID,WatchDate,WatchTime,WatchValue,WatchDateTime) ");
sb.Append(" VALUES(@EID,@WatchDate,@WatchTime,@WatchValue,@WatchDateTime) ");
SqlParameter[] p ={
new SqlParameter("@EID",strID),
new SqlParameter("@WatchDate",strDate),
new SqlParameter("@WatchValue",strNum),
new SqlParameter("@WatchTime",strTime),
new SqlParameter("@WatchDateTime",Convert.ToDateTime(strDate).AddHours(Convert.ToInt32(strTime)))
};
return SqlHelper.ExecuteNonQuery(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
public int DeleteData(string strID, string strDate, string strTime)
{
StringBuilder sb = new StringBuilder();
sb.Append(" DELETE FROM WatchData WHERE WatchDate =@WatchDate AND EID=@EID AND WatchTime=@WatchTime ");
SqlParameter[] p ={
new SqlParameter("@EID",strID),
new SqlParameter("@WatchDate",strDate),
new SqlParameter("@WatchTime",strTime)
};
return SqlHelper.ExecuteNonQuery(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
public DataSet GetViewData(string strStart, string strEnd)
{
StringBuilder sb = new StringBuilder();
sb.Append(" select e.ID,e.WatchNo,e.WatchPara,e.WatchUnit,e.WatchMax,e.WatchMin,e.ControlPoint, ");
sb.Append(" cast(AVG(w.WatchValue) as decimal(15,2)) as AVGValue, ");
sb.Append(" CASE WHEN MAX(w.WatchValue)> e.WatchMax THEN MAX(w.WatchValue) ELSE NULL END AS MAXOverValue, ");
sb.Append(" CASE WHEN Min(w.WatchValue)< e.WatchMin THEN Min(w.WatchValue) ELSE NULL END AS MinOverValue, ");
sb.Append(" (select count(WatchValue) from WatchData where (WatchValue>e.WatchMax or WatchValue<e.WatchMin) and EID=e.ID ");
if (!string.IsNullOrEmpty(strStart))
{
sb.Append(" and WatchDate>= '" + strStart + "' ");
}
if (!string.IsNullOrEmpty(strEnd))
{
sb.Append(" and WatchDate<= '" + strEnd + "' ");
}
sb.Append(" ) as OutCount ");
sb.Append(" FROM Equipment e left join WatchData w ");
sb.Append(" ON e.ID=w.EID ");
if (!string.IsNullOrEmpty(strStart))
{
sb.Append(" and w.WatchDate>= '" + strStart + "' ");
}
if (!string.IsNullOrEmpty(strEnd))
{
sb.Append(" and w.WatchDate<= '" + strEnd + "' ");
}
if (strStart == DateTime.Now.ToString("yyyy-MM-dd") && strEnd == DateTime.Now.ToString("yyyy-MM-dd"))
{
sb.Append(" AND w.WatchDateTime<GETDATE() ");
}
sb.Append(" group by e.ID,e.WatchNo,e.WatchPara,e.WatchUnit,e.WatchMax,e.WatchMin,e.ControlPoint ");
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString());
}
public DataSet GetDailyChart(string strID, string strDate)
{
StringBuilder sb = new StringBuilder();
sb.Append(" SELECT e.ID,e.WatchNo,e.WatchUnit,e.WatchMax,e.WatchMin, ");
sb.Append(" w.WatchDate,w.WatchValue,w.WatchTime ");
sb.Append(" FROM Equipment e JOIN WatchData w ON e.ID=w.EID ");
sb.Append(" WHERE e.ID=@ID AND w.WatchDate=@WatchDate ");
if (strDate == DateTime.Now.ToString("yyyy-MM-dd"))
{
sb.Append(" AND w.WatchDateTime<GETDATE() ");
}
sb.Append(" order by WatchDate, WatchTime ASC ");
SqlParameter[] p ={
new SqlParameter("@ID",strID),
new SqlParameter("@WatchDate",strDate)
};
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
public DataSet GetWeeklyChart(string strID, string strStart, string strEnd)
{
StringBuilder sb = new StringBuilder();
sb.Append(" SELECT e.ID,e.WatchNo,e.WatchUnit,e.WatchMax,e.WatchMin, ");
sb.Append(" w.WatchDate,w.WatchValue,w.WatchTime, w.WatchDateTime ");
sb.Append(" FROM Equipment e JOIN WatchData w ON e.ID=w.EID ");
sb.Append(" WHERE e.ID=@ID AND w.WatchDate BETWEEN @StartDate AND @EndDate");
sb.Append(" order by WatchDate, WatchTime ASC ");
SqlParameter[] p ={
new SqlParameter("@ID",strID),
new SqlParameter("@StartDate",strStart),
new SqlParameter("@EndDate",strEnd)
};
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
public DataSet GetMonthlyChart(string strID, DateTime watchDate)
{
StringBuilder sb = new StringBuilder();
sb.Append(" SELECT e.ID,e.WatchNo,e.WatchUnit,e.WatchMax,e.WatchMin, ");
sb.Append(" w.WatchDate,w.WatchValue,w.WatchTime, w.WatchDateTime ");
sb.Append(" FROM Equipment e JOIN WatchData w ON e.ID=w.EID ");
sb.Append(" WHERE e.ID=@ID AND YEAR(w.WatchDate)=@Year AND MONTH(w.WatchDate)=@Month ");
sb.Append(" order by WatchDate, WatchTime ASC ");
SqlParameter[] p ={
new SqlParameter("@ID",strID),
new SqlParameter("@Year",watchDate.Year.ToString()),
new SqlParameter("@Month",watchDate.Month.ToString())
};
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
public DataSet GetYearChart(string strID, DateTime watchDate)
{
StringBuilder sb = new StringBuilder();
sb.Append(" SELECT e.ID,e.WatchNo,e.WatchUnit,e.WatchMax,e.WatchMin, ");
sb.Append(" w.WatchDate,w.WatchValue,w.WatchTime, w.WatchDateTime ");
sb.Append(" FROM Equipment e JOIN WatchData w ON e.ID=w.EID ");
sb.Append(" WHERE e.ID=@ID AND YEAR(w.WatchDate)=@Year ");
sb.Append(" order by WatchDate, WatchTime ASC ");
SqlParameter[] p ={
new SqlParameter("@ID",strID),
new SqlParameter("@Year",watchDate.Year.ToString())
};
return SqlHelper.ExecuteDataSet(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sb.ToString(), p);
}
//SELECT e.ID,e.WatchNo,e.WatchUnit,e.WatchMax,e.WatchMin,
//w.WatchDate,w.WatchValue,w.WatchTime
//FROM Equipment e join WatchData w on e.ID=w.EID
//where e.ID=@ID and w.WatchDate=@WatchDate
//order by WatchDate, WatchTime ASC
//select e.ID,e.WatchNo,e.WatchPara,e.WatchUnit,e.WatchMax,e.WatchMin,
//AVG(w.WatchValue)as AVGValue,
//CASE WHEN MAX(w.WatchValue)> e.WatchMax THEN MAX(w.WatchValue) ELSE NULL END AS MAXOverValue,
//CASE WHEN Min(w.WatchValue)< e.WatchMin THEN Min(w.WatchValue) ELSE NULL END AS MinOverValue,
//(select count(WatchValue) from WatchData where WatchValue>e.WatchMax or WatchValue<e.WatchMin and EID=e.ID) as OutCount
//from Equipment e left join WatchData w
//on e.ID=w.EID and w.WatchDate between '2012-10-1' and '2012-10-31'
//group by e.ID,e.WatchNo,e.WatchPara,e.WatchUnit,e.WatchMax,e.WatchMin
}
}
ChartShow.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
namespace WatchManager
{
public partial class ChartShow : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
txtDate.Text = DateTime.Now.ToString("yyyy-MM-dd");
Bind();
SetTimer();
}
}
protected void SetTimer()
{
if (radDaily.Checked == true && txtDate.Text == DateTime.Now.ToString("yyyy-MM-dd"))
{
Timer1.Enabled = true;
}
else
{
Timer1.Enabled = false;
return;
}
int hour = DateTime.Now.Hour;
if ((hour + 1) % 2 == 0)
{
Timer1.Interval = (60 - DateTime.Now.Minute) * 60 * 1000 + (60 - DateTime.Now.Second) * 1000;
}
else
{
Timer1.Interval = 1 * 60 * 60 * 1000 + (60 - DateTime.Now.Minute) * 60 * 1000 + (60 - DateTime.Now.Second) * 1000;
}
}
protected void Bind()
{
string strID = "0";
if (!string.IsNullOrEmpty(Request.QueryString["ID"]))
{
strID = Request.QueryString["ID"].ToString();
}
if (strID == "0")
{
Response.Redirect("DataView.aspx");
}
else
{
if (radDaily.Checked == true) { BindDaily(strID); SetTimer(); }
if (radWeekly.Checked == true) BindWeekly(strID);
if (radMonthly.Checked == true) BindMonthly(strID);
if (radYear.Checked == true) BindYear(strID);
//myChart.ChartAreas["ChartArea1"].AxisX.IntervalAutoMode = IntervalAutoMode.VariableCount;
}
}
protected void BindDaily(string strID)
{
myChart.Visible = true;
ChartWeek.Visible = false;
ChartMonth.Visible = false;
ChartYear.Visible = false;
DBAccess.DataControl dbControl = new DBAccess.DataControl();
string strDate = txtDate.Text;
myChart.DataSource = dbControl.GetDailyChart(strID, strDate);
myChart.DataBind();
myChart.ChartAreas["ChartArea1"].AxisX.LabelStyle.Interval = 1;
myChart.ChartAreas["ChartArea1"].AxisX.Title = "时间";
myChart.ChartAreas["ChartArea1"].AxisY.Title = "数值";
}
protected void BindWeekly(string strID)
{
myChart.Visible = false;
ChartWeek.Visible = true;
ChartMonth.Visible = false;
ChartYear.Visible = false;
DBAccess.DataControl dbControl = new DBAccess.DataControl();
string strStart = "";
string strEnd = "";
DateTime tempDate = Convert.ToDateTime(txtDate.Text);
for (int i = 0; i < 7; i++)
{
if (tempDate.DayOfWeek.ToString() == "Sunday")
{
strEnd = tempDate.ToShortDateString();
strStart = tempDate.AddDays(-6).ToShortDateString();
i = 8;
}
else
{
tempDate = tempDate.AddDays(1);
}
}
ChartWeek.DataSource = dbControl.GetWeeklyChart(strID, strStart, strEnd);
ChartWeek.DataBind();
ChartWeek.ChartAreas["ChartArea1"].AxisX.Title = "时间";
ChartWeek.ChartAreas["ChartArea1"].AxisY.Title = "数值";
//ChartWeek.ChartAreas["ChartArea1"].AxisX.LabelStyle.Interval = 1;
}
protected void BindMonthly(string strID)
{
myChart.Visible = false;
ChartWeek.Visible = false;
ChartMonth.Visible = true;
ChartYear.Visible = false;
DBAccess.DataControl dbControl = new DBAccess.DataControl();
ChartMonth.DataSource = dbControl.GetMonthlyChart(strID, Convert.ToDateTime(txtDate.Text));
ChartMonth.DataBind();
ChartMonth.ChartAreas["ChartArea1"].AxisX.Title = "时间";
ChartMonth.ChartAreas["ChartArea1"].AxisY.Title = "数值";
ChartMonth.ChartAreas["ChartArea1"].AxisX.LabelStyle.Interval = 5 ;
}
protected void BindYear(string strID)
{
myChart.Visible = false;
ChartWeek.Visible = false;
ChartMonth.Visible = false;
ChartYear.Visible = true;
DBAccess.DataControl dbControl = new DBAccess.DataControl();
ChartYear.DataSource = dbControl.GetYearChart(strID, Convert.ToDateTime(txtDate.Text));
ChartYear.DataBind();
ChartYear.ChartAreas["ChartArea1"].AxisX.Title = "时间";
ChartYear.ChartAreas["ChartArea1"].AxisY.Title = "数值";
ChartYear.ChartAreas["ChartArea1"].AxisX.LabelStyle.Interval = 30;
}
protected void btnSearch_Click(object sender, EventArgs e)
{
Bind();
SetTimer();
}
protected void Timer1_Tick(object sender, EventArgs e)
{
Bind();
Timer1.Interval = 2 * 60 * 60 * 1000;
}
}
}
DataView.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
CodeBehind="DataView.aspx.cs" Inherits="WatchManager.DataView" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
<script src="Scripts/TableFix.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
FixTableShow("MyTable", 0, 900, 400);
});
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<div>
<div class="BannerText">
数据统计
</div>
<div class="TopControlList">
起始时间:<asp:TextBox ID="txtStartDate" runat="server" οnfοcus="WdatePicker()" style="width:75px" ></asp:TextBox>
结束时间:<asp:TextBox ID="txtEndDate" runat="server" οnfοcus="WdatePicker()" style="width:75px"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="查询"
οnclick="btnSearch_Click" />
</div>
<div class="MainContent">
<div id="MyTable_tableLayout">
<div id="MyTable_tableFix">
<table id="MyTable_tableFixClone" border="1" cellspacing="0" cellpadding="0">
</table>
</div>
<div id="MyTable_tableHead">
<table id="MyTable_tableHeadClone" border="1" cellspacing="0" cellpadding="0">
</table>
</div>
<div id="MyTable_tableColumn">
<table id="MyTable_tableColumnClone" border="1" cellspacing="0" cellpadding="0">
</table>
</div>
<div id="MyTable_tableData">
<table id="MyTable" class="myTable" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<td><div class="widthControl1">控制点</div></td>
<th><div class="widthControl1">
仪表编号</div>
</th>
<th><div class="widthControl_gongyi">
工艺参数</div>
</th>
<th><div class="widthControl_danwei">
单位</div>
</th>
<th><div class="widthControl4">
上限</div>
</th>
<th><div class="widthControl4">
下限</div>
</th>
<th><div class="widthControl3">超限(次数)</div></th>
<th><div class="widthControl3">最大超限值</div></th>
<th><div class="widthControl3">最小超限值</div></th>
<th><div class="widthControl4">平均值</div></th>
</tr>
</thead>
<tbody>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Timer ID="Timer1" runat="server" Enabled="false" ontick="Timer1_Tick">
</asp:Timer>
<asp:Repeater ID="repData" runat="server">
<ItemTemplate>
<tr>
<td><a href="ChartShow.aspx?id=<%#Eval("ID")%>"><%#Eval("ControlPoint")%></a></td>
<td><%#Eval("WatchNo")%> </td>
<td><%#Eval("WatchPara")%> </td>
<td><%#Eval("WatchUnit")%> </td>
<td><%#Eval("WatchMax") %> </td>
<td><%#Eval("WatchMin") %> </td>
<td><%#Eval("OutCount")%> </td>
<td><%#Eval("MAXOverValue") %> </td>
<td><%#Eval("MinOverValue") %> </td>
<td><%#Eval("AVGValue") %> </td>
</tr>
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
<Triggers><asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" /></Triggers>
</asp:UpdatePanel>
</tbody>
</table>
</div>
</div>
</div>
</div>
</asp:Content>
DataView.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WatchManager
{
public partial class DataView : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
txtEndDate.Text = DateTime.Now.ToString("yyyy-MM-dd");
txtStartDate.Text = DateTime.Now.ToString("yyyy-MM-dd");
Bind();
//SetTimer();
}
}
protected void Bind()
{
string strStartDate = txtStartDate.Text;
string strEndDate = txtEndDate.Text;
DBAccess.DataControl dbControl = new DBAccess.DataControl();
repData.DataSource = dbControl.GetViewData(strStartDate, strEndDate);
repData.DataBind();
}
protected void SetTimer()
{
string strStartDate = txtStartDate.Text;
string strEndDate = txtEndDate.Text;
if (strStartDate == DateTime.Now.ToString("yyyy-MM-dd") && strEndDate == DateTime.Now.ToString("yyyy-MM-dd"))
{
Timer1.Enabled = true;
int hour = DateTime.Now.Hour;
if ((hour + 1) % 2 == 0)
{
Timer1.Interval = 5000;// (60 - DateTime.Now.Minute) * 60 * 1000 + (60 - DateTime.Now.Second) * 1000;
}
else
{
Timer1.Interval = 5000;// 1 * 60 * 60 * 1000 + (60 - DateTime.Now.Minute) * 60 * 1000 + (60 - DateTime.Now.Second) * 1000;
}
}
}
protected void btnSearch_Click(object sender, EventArgs e)
{
Bind();
SetTimer();
}
protected void Timer1_Tick(object sender, EventArgs e)
{
Bind();
Page.ClientScript.RegisterStartupScript(this.GetType(),"","<script>javascript:FixTableShow(\"MyTable\", 0, 900, 400);alert('hi');</script>");
Timer1.Interval = 5000; //2 * 60 * 60 * 1000;
}
}
}
DataManage.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
CodeBehind="DataManage.aspx.cs" Inherits="WatchManager.DataManage" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
<script src="Scripts/TableFix.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
FixTable("MyTable", 4, 900, 400);
});
function SaveData(strID, strTime, num) {
var strdate = $("#<%=txtDate.ClientID %>").val();
//var num = $("#" + strID).val();
//alert(strID + ":" + num + ":" + strdate + ":" + strTime);
var url = "SaveServ.ashx?id=" + strID + "&num=" + num + "&date=" + strdate + "&time=" + strTime;
$.ajax(
{
url: url,
async: false,
type: "POST",
cache: false,
success: function (data) {
//alert(data);
}
} );
}
function CheckValue(textbox) {
var patrn1 = /^[-|+]?(0|[1-9][0-9]*)(\.\d{1,2})?$/;
var re = new RegExp(patrn1);
if (!re.test(textbox.value)) {
textbox.value = "";
}
}
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<div>
<div class="BannerText">
数据录入
</div>
<div class="TopControlList">
日期:<asp:TextBox ID="txtDate" runat="server" οnfοcus="WdatePicker()" style="width:75px"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="查询"
οnclick="btnSearch_Click" />
</div>
<div class="MainContent">
<div id="MyTable_tableLayout">
<div id="MyTable_tableFix">
<table id="MyTable_tableFixClone" border="1" cellspacing="0" cellpadding="0">
</table>
</div>
<div id="MyTable_tableHead">
<table id="MyTable_tableHeadClone" border="1" cellspacing="0" cellpadding="0">
</table>
</div>
<div id="MyTable_tableColumn">
<table id="MyTable_tableColumnClone" border="1" cellspacing="0" cellpadding="0">
</table>
</div>
<div id="MyTable_tableData">
<table id="MyTable" class="myTable" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<td><div class="widthControl1">
仪表编号
</div>
</td>
<td >
<div class="widthControl_gongyi">
工艺参数
</div>
</td>
<td>
<div class="widthControl_danwei">
单位
</div>
</td>
<td>
<div class="widthControl1">
控制值
</div>
</td>
<td>
<div class="widthControl2">
00:00</div>
</td>
<td><div class="widthControl2">
02:00</div>
</td>
<td><div class="widthControl2">
04:00</div>
</td>
<td><div class="widthControl2">
06:00</div>
</td>
<td><div class="widthControl2">
08:00</div>
</td>
<td><div class="widthControl2">
10:00</div>
</td>
<td><div class="widthControl2">
12:00</div>
</td>
<td><div class="widthControl2">
14:00</div>
</td>
<td><div class="widthControl2">
16:00</div>
</td>
<td><div class="widthControl2">
18:00</div>
</td>
<td><div class="widthControl2">
20:00</div>
</td>
<td><div class="widthControl2">
22:00</div>
</td>
</tr>
</thead>
<tbody>
<asp:Repeater ID="repData" runat="server"
onitemdatabound="repData_ItemDataBound">
<ItemTemplate>
<tr>
<td>
<span style="display: none" id="equip<%#Eval("ID") %>">
<%#Eval("ID") %></span>
<%#Eval("WatchNo")%>
</td>
<td>
<%#Eval("WatchPara")%>
</td>
<td>
<%#Eval("WatchUnit")%>
</td>
<td>
<%#Eval("WatchMin")%>~<%#Eval("WatchMax")%></td>
<asp:Literal ID="litlTabHelper" runat="server"></asp:Literal>
<%-- <td>
<input id="equip<%#Eval("ID") %>02" οnblur="SaveData('<%#Eval("ID") %>','02',this.value)"
type="text" class="txtData" value="<%#Eval("Hour02") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>04" οnblur="SaveData('<%#Eval("ID") %>','04',this.value)"
type="text" class="txtData" value="<%#Eval("Hour04") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>06" οnblur="SaveData('<%#Eval("ID") %>','06',this.value)"
type="text" class="txtData" value="<%#Eval("Hour06") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>08" οnblur="SaveData('<%#Eval("ID") %>','08',this.value)"
type="text" class="txtData" value="<%#Eval("Hour08") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>10" οnblur="SaveData('<%#Eval("ID") %>','10',this.value)"
type="text" class="txtData" value="<%#Eval("Hour10") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>12" οnblur="SaveData('<%#Eval("ID") %>','12',this.value)"
type="text" class="txtData" value="<%#Eval("Hour12") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>14" οnblur="SaveData('<%#Eval("ID") %>','14',this.value)"
type="text" class="txtData" value="<%#Eval("Hour14") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>16" οnblur="SaveData('<%#Eval("ID") %>','16',this.value)"
type="text" class="txtData" value="<%#Eval("Hour16") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>18" οnblur="SaveData('<%#Eval("ID") %>','18',this.value)"
type="text" class="txtData" value="<%#Eval("Hour18") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>20" οnblur="SaveData('<%#Eval("ID") %>','20',this.value)"
type="text" class="txtData" value="<%#Eval("Hour20") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>22" οnblur="SaveData('<%#Eval("ID") %>','22',this.value)"
type="text" class="txtData" value="<%#Eval("Hour22") %>" />
</td>
<td>
<input id="equip<%#Eval("ID") %>24" οnblur="SaveData('<%#Eval("ID") %>','24',this.value)"
type="text" class="txtData" value="<%#Eval("Hour24") %>" />
</td>--%>
<%-- <td>02:00</td><td>04:00</td><td>06:00</td><td>08:00</td><td>10:00</td><td>12:00</td>
<td>14:00</td><td>16:00</td><td>18:00</td><td>20:00</td><td>22:00</td><td>24:00</td>--%>
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
</table>
</div>
</div>
</div>
</div>
</asp:Content>