2013-02-27 7 views
0

선생님을 변경 한 후, 나는 2012오류 날짜

<%@ Page Language="C#" %> 

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<script runat="server"> 

</script> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title></title> 
<style type="text/css"> 
    .style1 
    { 
     color: #800000; 
     font-size: medium; 
     font-family: "Comic Sans MS"; 
    } 
    .style2 
    { 
     text-align: center; 
     color: #0000CC; 
     font-family: "Comic Sans MS"; 
     font-size: small; 
    } 
    .style3 
    { 
     font-size: large; 
    } 
    .style4 
    { 
     text-align: center; 
     color: #800000; 
     font-family: "Comic Sans MS"; 
     font-size: small; 
    } 
    .style5 
    { 
     font-size: small; 
    } 
</style> 

<script runat="server" visible="True"> 
int TotalTTL1; 
int GetTTL1(int Train) 
{ 
    TotalTTL1 += Train; 
    return Train; 
} 
int GetTotalTTL1() 
{ 
    return TotalTTL1; 
} 

</script> 

</head> 
<body> 
<form id="form1" runat="server"> 
<div style="text-align: center"> 



<p class="style4"> 
    <strong>Three Phase Locomotive</strong></p> 
<asp:GridView ID="GridView2" runat="server" AllowSorting="True" 
    AutoGenerateColumns="False" BorderColor="#CC0000" BorderStyle="Solid" 
    BorderWidth="2px" DataSourceID="SqlDataSource2" HorizontalAlign="Center" 
    ShowFooter="True" style="margin-top: 0px"> 
    <Columns> 
     <asp:TemplateField HeaderText="Equipment" SortExpression="Equipt" 
      FooterText="Grand Total"> 
      <EditItemTemplate> 
       <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Equipt") %>'></asp:TextBox> 
      </EditItemTemplate> 
      <ItemTemplate> 
       <asp:Label ID="Label1" runat="server" Text='<%# Bind("Equipt") %>'></asp:Label> 
      </ItemTemplate> 
      <FooterStyle Font-Bold="True" /> 
      <ItemStyle HorizontalAlign="Left" VerticalAlign="Middle" /> 
     </asp:TemplateField> 
     <asp:BoundField DataField="BSL" HeaderText="BSL" ReadOnly="True" 
      SortExpression="BSL" /> 
     <asp:BoundField DataField="AQ" HeaderText="AQ" ReadOnly="True" 
      SortExpression="AQ" /> 
     <asp:BoundField DataField="KYN" HeaderText="KYN" ReadOnly="True" 
      SortExpression="KYN" /> 
     <asp:BoundField DataField="ASN" HeaderText="ASN" ReadOnly="True" 
      SortExpression="ASN" /> 
     <asp:BoundField DataField="HWH" HeaderText="HWH" ReadOnly="True" 
      SortExpression="HWH" /> 
     <asp:BoundField DataField="MGS" HeaderText="MGS" ReadOnly="True" 
      SortExpression="MGS" /> 
     <asp:BoundField DataField="GMO" HeaderText="GMO" ReadOnly="True" 
      SortExpression="GMO" /> 
     <asp:BoundField DataField="WAT" HeaderText="WAT" ReadOnly="True" 
      SortExpression="WAT" /> 
     <asp:BoundField DataField="ANGL" HeaderText="ANGL" ReadOnly="True" 
      SortExpression="ANGL" /> 
     <asp:BoundField DataField="GZB" HeaderText="GZB" ReadOnly="True" 
      SortExpression="GZB" /> 
     <asp:BoundField DataField="LDH" HeaderText="LDH" ReadOnly="True" 
      SortExpression="LDH" /> 
     <asp:BoundField DataField="JHS" HeaderText="JHS" ReadOnly="True" 
      SortExpression="JHS" /> 
     <asp:BoundField DataField="CNB" HeaderText="CNB" ReadOnly="True" 
      SortExpression="CNB" /> 
     <asp:BoundField DataField="AJJ" HeaderText="AJJ" ReadOnly="True" 
      SortExpression="AJJ" /> 
     <asp:BoundField DataField="ED" HeaderText="ED" ReadOnly="True" 
      SortExpression="ED" /> 
     <asp:BoundField DataField="RPM" HeaderText="RPM" ReadOnly="True" 
      SortExpression="RPM" /> 
     <asp:BoundField DataField="BZA" HeaderText="BZA" ReadOnly="True" 
      SortExpression="BZA" /> 
     <asp:BoundField DataField="LGD" HeaderText="LGD" ReadOnly="True" 
      SortExpression="LGD" /> 
     <asp:BoundField DataField="KZJ" HeaderText="KZJ" ReadOnly="True" 
      SortExpression="KZJ" /> 
     <asp:BoundField DataField="TATA" HeaderText="TATA" ReadOnly="True" 
      SortExpression="TATA" /> 
     <asp:BoundField DataField="BNDM" HeaderText="BNDM" ReadOnly="True" 
      SortExpression="BNDM" /> 
     <asp:BoundField DataField="BKSC" HeaderText="BKSC" ReadOnly="True" 
      SortExpression="BKSC" /> 
     <asp:BoundField DataField="SRC" HeaderText="SRC" ReadOnly="True" 
      SortExpression="SRC" /> 
     <asp:BoundField DataField="BIA" HeaderText="BIA" ReadOnly="True" 
      SortExpression="BIA" /> 
     <asp:BoundField DataField="BRC" HeaderText="BRC" ReadOnly="True" 
      SortExpression="BRC" /> 
     <asp:BoundField DataField="BL" HeaderText="BL" ReadOnly="True" 
      SortExpression="BL" /> 
     <asp:BoundField DataField="TKD" HeaderText="TKD" ReadOnly="True" 
      SortExpression="TKD" /> 
     <asp:BoundField DataField="ET" HeaderText="ET" ReadOnly="True" 
      SortExpression="ET" /> 
     <asp:BoundField DataField="NKJ" HeaderText="NKJ" ReadOnly="True" 
      SortExpression="NKJ" /> 
     <asp:TemplateField HeaderText="Total" SortExpression="TTL"> 
      <ItemTemplate> 
        <%# GetTTL1(int.Parse(Eval("TTL").ToString())).ToString()%> 
       </ItemTemplate> 
       <FooterTemplate> 
        <%# GetTotalTTL1().ToString()%> 
       </FooterTemplate> 
      <FooterStyle Font-Bold="True" /> 
     </asp:TemplateField> 
    </Columns> 
    <FooterStyle Font-Names="Tahoma" Font-Size="Small" ForeColor="Black" 
     HorizontalAlign="Center" VerticalAlign="Middle" /> 
    <HeaderStyle Font-Names="Tahoma" Font-Size="Small" ForeColor="Black" 
     HorizontalAlign="Center" VerticalAlign="Middle" /> 
    <RowStyle Font-Names="Tahoma" Font-Size="Small" HorizontalAlign="Center" 
     VerticalAlign="Middle" /> 
</asp:GridView> 
<asp:SqlDataSource ID="SqlDataSource2" runat="server" 
    ConnectionString="<%$ ConnectionStrings:EquipfailuresERConnectionString %>" 
    SelectCommand="SELECT Equipt, NULLIF([BSL],0) AS BSL, NULLIF([AQ],0) AS AQ, NULLIF([KYN],0) AS KYN, NULLIF([ASN],0) AS ASN, NULLIF([HWH],0) AS HWH, NULLIF([MGS],0) AS MGS, NULLIF([GMO],0) AS GMO, NULLIF([WAT],0) AS WAT, NULLIF([ANGL],0) AS ANGL, NULLIF([GZB],0) AS GZB, NULLIF([LDH],0) AS LDH, NULLIF([JHS],0) AS JHS, NULLIF([CNB],0) AS CNB, NULLIF([AJJ],0) AS AJJ, NULLIF([ED],0) AS ED, NULLIF([RPM],0) AS RPM, NULLIF([BZA],0) AS BZA, NULLIF([LGD],0) AS LGD, NULLIF([KZJ],0) AS KZJ, NULLIF([TATA],0) AS TATA, NULLIF([BNDM],0) AS BNDM, NULLIF([BKSC],0) AS BKSC, NULLIF([SRC],0) AS SRC, NULLIF([BIA],0) AS BIA, NULLIF([BRC],0) AS BRC, NULLIF([BL],0) AS BL, NULLIF([TKD],0) AS TKD, NULLIF([ET],0) AS ET, NULLIF([NKJ],0) AS NKJ, NULLIF(([BSL] + [AQ] + [KYN] + [ASN] + [HWH] + [MGS] + [GMO] + [WAT] + [ANGL] + [GZB] + [LDH] + [JHS] + [CNB] + [AJJ] + [ED] + [RPM] + [BZA] + [LGD] + [KZJ] + [TATA] + [BNDM] + [BKSC] + [SRC] + [BIA] + [BRC] + [BL] + [TKD] + [ET] + [NKJ]),0) AS TTL 
FROM 
( 
SELECT Equipt, Shed 
FROM ERfailures WHERE Date &gt;= '12/01/2012' AND Date &lt;= '12/31/2012' AND loco_type = '3-Phase' AND classification = 'Loco' 
) x 
PIVOT 
( 
COUNT(Shed) 
FOR Shed IN ([BSL], [AQ], [KYN], [ASN], [HWH], [MGS], [GMO], [WAT], [ANGL], [GZB], [LDH], [JHS], [CNB], [AJJ], [ED], [RPM], [BZA], [LGD], [KZJ], [TATA], [BNDM], [BKSC], [SRC], [BIA], [BRC], [BL], [TKD], [ET], [NKJ])) p"> 
</asp:SqlDataSource> 




</form> 
<p class="style5" style="text-align: center"> 
    <a href="mainpage.aspx">Back</a></p> 
</body> 
</html> 

가 지금은 라인을 변경하려면 12 월 한 달 동안 SQL에서 3 개 피벗 테이블을 dispaling 2008 데이터베이스를 다음 스크립트 (전체 aspx 페이지)을 절단 사용하고 년 1 월 2013

FROM ERfailures WHERE Date &gt;= '01/01/2013' AND Date &lt;= '01/31/2013' AND loco_type = '3-Phase' AND classification = 'Loco' 

으로는 무엇을 할 수

Input string was not in a correct format." 
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
Exception Details: System.FormatException: Input string was not in a correct format. 
Stack Trace: 


[FormatException: Input string was not in a correct format.] 
System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +9591147 
System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +119 
ASP.erequipfailurejanuary_aspx.__DataBind__control43(Object sender, EventArgs e) +106 
System.Web.UI.Control.OnDataBinding(EventArgs e) +91 
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +92 
System.Web.UI.Control.DataBind() +15 
System.Web.UI.Control.DataBindChildren() +201 
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +101 
System.Web.UI.Control.DataBind() +15 
System.Web.UI.Control.DataBindChildren() +201 
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +101 
System.Web.UI.Control.DataBind() +15 
System.Web.UI.WebControls.GridView.CreateRow(Int32 rowIndex, Int32 dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState, Boolean dataBind, Object dataItem, DataControlField[] fields, TableRowCollection rows, PagedDataSource pagedDataSource) +166 
System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) +3896 
System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +66 
System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerable data) +14 
System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +128 
System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +33 
System.Web.UI.WebControls.DataBoundControl.PerformSelect() +143 
System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +74 
System.Web.UI.WebControls.GridView.DataBind() +4 
System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +66 
System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +75 
System.Web.UI.Control.EnsureChildControls() +102 
System.Web.UI.Control.PreRenderRecursiveInternal() +42 
System.Web.UI.Control.PreRenderRecursiveInternal() +175 
System.Web.UI.Control.PreRenderRecursiveInternal() +175 
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2496" 

같은 오류를 제공합니다 이 문제를 해결 하시겠습니까? 도와주세요.

+3

오류를 제공하는 SQL 명령 자체가 아닙니다. 바인딩 할 때 GridView가 실패합니다. 값 중 하나가 올바른 형식이 아닙니다 (Int32의 경우 나타납니다). –

답변

0

문제는 사용자의 쿼리가 아닙니다. 그것은 당신이 돌아 오는 가치 중 하나입니다. 바인딩 대상에 숫자가 필요하지만 숫자가 아닌 값을 가진 열이있는 것 같습니다.

을 바탕으로

:

[FormatException을 :. 입력 문자열이 올바른 형식이 아니었다] System.Number.StringToNumber (문자열 str을, NumberStyles 옵션 NumberBuffer & 번호,하는 NumberFormatInfo 정보, 부울 parseDecimal) 9,591,147 System.Number.ParseInt32 (String를, NumberStyles 스타일,하는 NumberFormatInfo 정보) 119 ASP.erequipfailurejanuary_aspx._ 데이터 바인딩 _control43 (개체 보낸 사람, 있는 EventArgs 전자)

+0

답장을 보내 주셔서 감사합니다. 위 코드는 날짜와 함께 작동합니다. "FROM ERfailures WHERE Date> = '12/01/2012 'AND date = '12/31/2012'AND loco_type = '3 단계'AND classification = 'Loco'"그러나 날짜 만 01/01/2013 및 2013 년 12 월 31 일에 표시되지 않습니다. 왜? – user1185088

+0

Gridview에서 바닥 글 스크립트 (총 또는 TTL 필드)가 제거 된 경우 새로운 기능 (2013 년 1 월)이 추가되었습니다. – user1185088

+0

작동하는 날짜는 결과 집합에 잘못된 행을 포함하지 않기 때문에. 바인딩 대상의 열 형식을 쿼리하는 결과 집합의 데이터 형식과 일치시키는 것이 좋습니다. 열이 데이터베이스의 int가 아니면 모든 행의 값이 int가 될지 확신 할 수 없습니다. –