ورود

View Full Version : سوال: چطوری مشکل Operation is not allowed when the object is closed رو در ADODC حل کنم



Castel_XD
یک شنبه 07 آذر 1389, 12:25 عصر
چطوری مشکل Operation is not allowed when the object is closed رو در ADODC حل کنم؟؟



Private Sub checkIs(sh As String)
Dim r As Integer
Dim a As Boolean
For i = 0 To 44
If bt(0).Tag = "false" Then
If checkVT(Int(i), Int(DataGrid2.Columns(i + 5).Value)) Then
r = r + 1
End If
End If
Next

Ado2.RecordSource = "UPDATE balak SET em_f= " & r & " where s_balak like " & sb
Ado2.Refresh

End Sub

look20
یک شنبه 07 آذر 1389, 23:14 عصر
با سلام هر وقت بخاهید ارتباط که

Operation is not allowed when the object is closed


این پیغام میگه موقعی اجازه عملیات مربوطه را دارید که ارتباط Close باشهپس با این کد ارتباط رو Close میکنیم

If ado2.Recordset.State = 1 Then ado2.Recordset.Close
بعد از دستور ado2.Recordset.Open در ادامش استفاده کن تا جواب بگیری
اینم یه نمونه
http://iamyou.persiangig.com/Del%20record.rar
فکر کنم فایل ضمیمه رو ببینید متوجه بشید

Castel_XD
دوشنبه 08 آذر 1389, 09:16 صبح
دستور SQL که تو مقدار Ado2.recordset.open نوشتم اجرا نمیشه.

چیکار باید کرد؟؟؟




Private Sub Th_Click()

For i = 0 To 10 'DataGrid1.VisibleRows - 1
DataGrid1.Row = i
Ado2.RecordSource = "SELECT * FROM balak where s_balak like " & Ado1.Recordset.Fields("s_balak")
Ado2.Refresh
Call checkIsTrue(Ado1.Recordset.Fields("s_balak"))
Next

End Sub



Private Sub checkIsTrue(sh As String)
Dim r As Integer
Dim a As Boolean
For i = 0 To 44
If bt(0).Tag = "false" Then
If checkVT(Int(i), Int(DataGrid2.Columns(i + 5).Value)) Then
r = r + 1
End If
End If
Next
If Ado2.Recordset.State = 1 Then Ado2.Recordset.Close
'Ado2.RecordSource =
Ado2.Recordset.Open "UPDATE balak SET emz_f= " & r & " where s_balak like " & sb
Ado2.Refresh
'Set DataGrid1.DataSource = Ado2

End Sub

ali-najm
سه شنبه 18 بهمن 1390, 21:41 عصر
شما با کانکشن باز کردید بانک رو ابتدا رکوردست رو ببند بعد کار رو انجام بده
مثلا
If Me.Adodc1.Recordset.State = 1 Then Me.Adodc1.Recordset.Close
..... Me.Adodc1.Recordset.Open "INSERT INTO fix
بانک اطلاعاتی رو با open باز کن و قبل از باز شدن چک کن ببین adodc1با recordset باز است یا نه اگه باز است با دستور if بالا نوشتم ببندش

ali_najm2003@yahoo.com