-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Переход на заданную запись

Вторник, 14 Апреля 2015 г. 09:18 + в цитатник
Здравствуйте.

Задача. При изменении записи мне необходимо её скопировать и перевести курсор на новую запись.

Решение.
1. Обработка события Dirty.
Private Sub Form_Dirty(Cancel As Integer)
    If IsNull(idDataScrewMetiz) Then
        mbRecordNew = True
    Else
        mbRecordNew = False
        mbActiveControlValueOld = Me.ActiveControl.Value
        Set mActiveX = Me.ActiveControl
        If MsgBox("Внести изменения?", vbYesNo) = vbYes Then
            mbRecordEdit = True
            CopyRecord
        Else
            mbRecordEdit = False
        End If
    End If
    Cancel = False
End Sub


2. Добавлтние записи и перевод курсора на неё.
Private Sub CopyRecord()
    Dim AdoRstCopy As ADODB.Recordset
    Dim i As Long

    Set AdoRstCopy = Me.RecordsetClone
        With Me.Recordset
            AdoRstCopy.AddNew
            For i = 1 To AdoRstCopy.Fields.Count - 1
                On Error Resume Next
                AdoRstCopy.Fields(i) = .Fields(i)
            Next i
            AdoRstCopy.Update
            midDatascrewmetiz = AdoRstCopy.Fields(0)
            .Requery
            .FindFirst "idDatascrewmetiz=" & CStr(midDatascrewmetiz)
            If .NoMatch Then MsgBox "Record not found."
        End With
    Set AdoRstCopy = Nothing
End Sub


В этой процедуре не находится запись с заданным midDatascrewmetiz, хотя она существует (только что была добавлена).

Скажите, пожалуйста, по какой причине это происходит?

http://www.sql.ru/forum/1152049/perehod-na-zadannuu-zapis


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку