0
텍스트 상자에서 제공 한 날짜 범위를 기준으로로드되는 gridview가 있습니다. 그것은 벌금을 작동하지만 데이터베이스에 레코드가 존재하지 않는 데이터 범위를 ENT하면 FORMAT EXCEPTION ERROR가 발생합니다. 그것은 내가 어디에 데이터베이스 열에 확인란을 바인딩 한 라인에 오류가 발생합니다.서식 예외가 발생했습니다
코드 :
<asp:GridView ID="GridViewSmsComplaints" AllowPaging="True" PageSize="4" runat="server" AutoGenerateColumns="False" CssClass="mGrid" BorderColor="#333333" Width="550px" OnPageIndexChanging="GridViewSmsComplaints_PageIndexChanging" >
<Columns>
<asp:BoundField HeaderText="ID" DataField="ID" />
<asp:BoundField HeaderText="Recieving Date" DataField="RecievingDate" />
<%-- <asp:BoundField HeaderText="ToMobileNo" DataField="ToMobileNo" /> --%>
<asp:BoundField HeaderText="FromMobileNo" DataField="FromMobileNo" />
<asp:BoundField HeaderText="Message" DataField="Message" >
<ItemStyle Wrap="True" />
</asp:BoundField>
<asp:TemplateField HeaderText="IsComplaint">
<ItemTemplate>
<asp:CheckBox ID="ckboxIsComplaint" runat="server" Checked='<%# Convert.ToBoolean(Eval("IsComplaint").ToString()) %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
SP :
ALTER PROCEDURE [dbo].[SearchSmsComplaintsByDate_SP]
@DateFrom Datetime = null,
@DateTo DateTime = null
AS
BEGIN
Begin Try
IF(@DateFrom is null AND @DateTo is null)
Begin
Set @DateFrom = Convert(date,(Select min(ReceivedMessages.ReceivedDateTime) from ReceivedMessages))
Set @DateTo = Convert(date,(Select max(ReceivedMessages.ReceivedDateTime) from ReceivedMessages))
SELECT [ID]
,REPLACE(convert(varchar, ReceivedMessages.ReceivedDateTime, 106), ' ','/') as RecievingDate
,[FromMobileNo]
,[Message]
,[IsComplaint]
FROM [CmsSMSDb].[dbo].[ReceivedMessages]
where Convert(date,ReceivedDateTime)>= @DateFrom AND Convert(date,ReceivedDateTime)<= @DateTo
AND IsComplaint!=1
End
Else IF(@DateFrom is not null AND @DateTo is not null)
Begin
SELECT [ID]
,REPLACE(convert(varchar, ReceivedMessages.ReceivedDateTime, 106), ' ','/') as RecievingDate
,[FromMobileNo]
,[Message]
,[IsComplaint]
FROM [CmsSMSDb].[dbo].[ReceivedMessages]
where Convert(date,ReceivedDateTime)>= @DateFrom AND Convert(date,ReceivedDateTime)<= @DateTo
AND IsComplaint!=1
End
End Try
Begin Catch
Select ERROR_MESSAGE() as ErrorMsg
End Catch
END