powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
11 сообщений из 11, страница 1 из 1
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609257
Andrey Mamitko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,

Создаю свой ADODB.RecordSet и натравиливаю форму на него (св-во. .Recordset)
Делаю это примерно так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
With TotalRS
  .Close
  .Source = GetRecordSourceStr(ToInsert)
  .CursorType = adOpenKeyset
  .LockType = adLockBatchOptimistic
  .Open
End With

Set .Recordset = TotalRS

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

Там правда есть еще один момент: я еще указываю значение UniqieTable, но, опять же, с просто установлением свойства RecordSource все работало.

Подскажите, пожалуйста, что я не так делаю.

Спасибо.
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609269
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
реальный код показывай
сейчас

With TotalRS
End With
Set .Recordset = TotalRS

. - чья ?
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609287
Формы.
Зуб даю, что формы. Вернее не формы, помещенной в "Контейнер для подчиненных форм" (With BodyContainer.Form).

Оно ведь просто отображается, оно редактировать не дается. Наверное, флагов каких надо выставить RecordSet'у или связок каких-нибудь форме и RecordSet'у типа полей ключевых.

Вот только каких..

Может примером кода, который у Вас работает, в меня кините?
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609410
Andrey Mamitko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shuhard,
Проект, к сожалению, в офисе (пишу из дома).

Есть вероятность того, что я забыл в состав выбираемых полей включить, собственно, первичный ключ, тогда понятно, почему не редактируется.

Но ведь если бы я св-ву. RecordSource подставил такой Select (без первичного ключа), оно ведь то же бы не редактировалось? Или Access такой умный, что сам их добавляет (выхватывая из таблицы, указанной в UniqueTable)?
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609463
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TotalR.CursorLocation = adUseClient
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609504
Andrey Mamitko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И все равно не дает редактироваться
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609505
Andrey Mamitko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выяснил, что не проходит именно фокус с установлением св-ва. UniqueTable у формы. Т.е. убираю из запроса JOIN, так что б он был только по одной таблице и все работает.

Что на самом деле делает это сво-во у формы и можно ли мне самому сделать то же самое?
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609542
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т1 стр 212 нечто похожее - несогласованное обновление данных
свойство Recordseta- Inconsistent
сам не пробовал

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Public Sub OpenInconsistent()
    Dim rst As ADODB.Recordset
    
    Set rst = New ADODB.Recordset
    rst.ActiveConnection = CurrentProject.Connection
    rst.Properties("Jet OLEDB:Inconsistent") = True
    
    rst.Open _
     Source:="SELECT * FROM tblCustomers" & _
     " INNER JOIN tblOrders " & _
     " ON tblCustomers.CustomerID = tblOrders.CustomerID", _
     Options:=adCmdText
    Debug.Print rst.RecordCount
    Set rst = Nothing
End Sub
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609713
Andrey Mamitko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сам себе :

rs.Properties("Unique Table").Value = "My Table"

Вполне логично :)
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32609809
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если аксесс 2000 ADP а рекордсет адошный то все правильно.

микрософт говорит что для этого случая нужно использовать соединение с двойным провайдером

ADOConnection.ConnectionString = " Provider =MSDataShape; Data Provider =SQLOLEDB.1;Data Source= <SERVER_NAME>;User ID=<USER_NAME>;Password=<PASSWORD>;Initial Catalog=<BASE_NAME>"
ADOConnection.Open
...
Рейтинг: 0 / 0
Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
    #32709367
Bagin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey MamitkoСам себе :

rs.Properties("Unique Table").Value = "My Table"

Вполне логично :)
Такая же ерунда, но не помогло.
Напишите, пожалуйста подробнее?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не редактируются записи в форме при присвоении св-ву. .Recordset своего Recordset'а
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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