PDA

View Full Version : خطا در دیتا گرید



arsalansalar
یک شنبه 28 مهر 1387, 09:32 صبح
با سلام
بچه ها من کد زیر و نوشتم برای اینکه بین 2 تاریخ هر چی چک هست پیدا کند و آن را در یک دیتا گرید بریزد و سپس مقادیر آن را جمع کند و در یک تکست باکس بریزد.
اگر در تاریخ های که مشخص شده چک وجود داشته باشد نمایش می دهد ولی اگر چکی وجود نداشته باشد یعنی NULL باشد خطای را می دهد که عکسش را گذاشتم.
اگر راهنمایی کنید ممنوم می شوم.
کد:

con = New OleDbConnection("provider=microsoft.jet.oledb.4.0 ; data source=" & Application.StartupPath() & "\jma.mdb")
con.Open()
Dim da As New OleDbDataAdapter("select mab from chek2 where val(da)>=" + TextBox42.Text + " and val(da)<=" + TextBox1.Text + " and val(ma) >= " + TextBox43.Text + " and val(ma) <= " + TextBox2.Text + " and val(sa) >= " + TextBox44.Text + " and val(sa) <= " + TextBox3.Text + " Order By id desc", con)
Dim ds As New DataSet
da.Fill(ds, "chek2")
DataGrid2.DataSource = ds
DataGrid2.DataMember = "chek2"
Dim x As Integer
Dim dt As DataTable
dt = ds.Tables("chek2")
x = dt.Compute("sum(mab)", Nothing)
Sum_Farda_Chek.Text = x.ToString

reza6384
یک شنبه 28 مهر 1387, 14:00 عصر
سلام. دو راه دارید :

1.



if IsDbNull(dt.Compute("sum(mab)", Nothing)) then
x = 0
else
x = x = dt.Compute("sum(mab)", Nothing)
End If


2.



x = TryCast(dt.Compute("sum(mab)", Nothing),Integer)