Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Run-time Error 2467: Объект закрыт или не существует / 12 сообщений из 12, страница 1 из 1
29.03.2004, 11:03
    #32460274
novss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
Непонять с чего вылезает ошибка.

Есть Главная Форма (ГФ) есть подчиненная (ПФ), на главной есть кнопка выход. По нажатию этой кнопки проверяется есть ли записи в подчиненной форме, если нет - то диалоговое окно, если да - то форма благополучно закрывается.

Проверка наличия записей в подчиненной форме проверяется строчкой:

Код: plaintext
Me.inclLines.Form.RecordsetClone.RecordCount =  0  


где inclLines - Это имя внедренного объекта.

Так вот, когда записей в подчиненной нет, то все нормально - выпадает диалог и все работает. А когда записи есть, то выпадает ошибка "Run-time Error 2467: Объект закрыт или не существует".

В целях проверки сделал дополнительную кнопку по нажатию которой
Код: plaintext
Msgbox Me.inclLines.Form.RecordsetClone.RecordCount 


и нормально работает, т.е. показывает сколько нужно, т.е. обращение к объекту происходит нормально, а что же тогда не работает при нажатии кнопки Выход.
...
Рейтинг: 0 / 0
29.03.2004, 11:13
    #32460298
Deminik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
авторMe.inclLines.Form.RecordsetClone.RecordCount = 0

Могу предположить, что такой строчкой устанавливается значение Me.inclLines.Form.RecordsetClone.RecordCount, т.е. в данном примере 0=0, а когда записи есть - это выражение неверно...Может все-таки
Код: plaintext
if Me.inclLines.Form.RecordsetClone.RecordCount >  0  then...
...
Рейтинг: 0 / 0
29.03.2004, 11:23
    #32460319
novss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
Ну да,
когда писал "проверяется значение" я имел в виду If.
На всякий случай привожу полный текст кода, повешенный на кнопку Выход.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
Private Sub cmbExit_Click()

If Me.Dirty = False Then
        DoCmd.Close acForm,  "F_OrderHeader" 
End If

        
    GoSub InvoiceVerification
    
    
    DoCmd.Close acForm,  "F_OrderHeader" 
Exit Sub

    
' Проверка ввода ТТН
InvoiceVerification:
   
    If Me.inclLines.Form.RecordsetClone.RecordCount =  0  Then
                        
            If MsgBox( "Не указана ТТН, Вы хотите выйти, если Да, то потеряете внесенные данные."  vbYesNo) = vbYes Then
                
                    DoCmd.RunCommand acCmdUndo
                    DoCmd.Close acForm,  "F_OrderHeader" 
                    Exit Sub
                
                Else
                    Exit Sub
                
            End If
        
    End If

Return
    
End Sub
...
Рейтинг: 0 / 0
29.03.2004, 12:10
    #32460399
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
Попробуй так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Sub cmbExit_Click()

If Me.Dirty = True Then
     If Me.inclLines.Form.RecordsetClone.RecordCount =  0  Then
         If MsgBox( "Не указана ТТН, Вы хотите выйти, если Да, то потеряете  внесенные данные."  vbYesNo) = vbYes Then
                
                    DoCmd.RunCommand acCmdUndo
         end if
     end if                
end if
DoCmd.Close acForm,  "F_OrderHeader" 
Exit Sub

...
Рейтинг: 0 / 0
29.03.2004, 12:10
    #32460401
novss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
Что, ни у кого нет никаких идей...
...
Рейтинг: 0 / 0
29.03.2004, 12:17
    #32460415
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
авторЧто, ни у кого нет никаких идей...
Дык, может вы сначала форму закрываете, а потом пытаетесь ссылаться на нее
...
Рейтинг: 0 / 0
29.03.2004, 12:18
    #32460416
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
т.е так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private Sub cmbExit_Click()

If Me.Dirty = True Then
     If Me.inclLines.Form.RecordsetClone.RecordCount =  0  Then
         If MsgBox( "Не указана ТТН, Вы хотите выйти, если Да, то потеряете  внесенные данные."  vbYesNo) = vbYes Then
                
                    DoCmd.RunCommand acCmdUndo
         else
                    exit sub
         end if
     end if                
end if
DoCmd.Close acForm,  "F_OrderHeader" 
Exit Sub

...
Рейтинг: 0 / 0
29.03.2004, 12:22
    #32460425
Roma R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
If Me.Dirty = False Then
DoCmd.Close acForm, "F_OrderHeader"
Exit Sub
End If
GoSub InvoiceVerification
...
Рейтинг: 0 / 0
29.03.2004, 12:24
    #32460431
novss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
Many thanx 2Kelme.

2Serge Gavrilov:
вероятно я чего-то не понимаю, но где я ее закрыл, до того как обратился?

Best Regards
...
Рейтинг: 0 / 0
29.03.2004, 12:28
    #32460439
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
If Me.Dirty = False Then
DoCmd.Close acForm, "F_OrderHeader"
End If

вот тут ты её закрываешь, а из процедуры не выходишь.
...
Рейтинг: 0 / 0
29.03.2004, 12:31
    #32460445
novss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
... и правда, виноват, исправлюсь
...
Рейтинг: 0 / 0
29.03.2004, 12:32
    #32460446
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Run-time Error 2467: Объект закрыт или не существует
авторвероятно я чего-то не понимаю, но где я ее закрыл, до того как обратился?

Вы закрываете форму "F_OrderHeader", я из вашего кода не вижу, что это за форма? Может это и есть форма, которая содержит подформу ...
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Run-time Error 2467: Объект закрыт или не существует / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]