|
|
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
Код Dim rst As Recordset Set rst = Me.RecordsetClone // тут ошибка type mismatch 13 Нахожу в хелпе Аксесса, а также и в форуме, как с этим бороться: Dim rst As DAO.Recordset Set rst = Me.RecordsetClone ..... и получаю compile error 'user-defined type not defined' на DAO.Recordset. В чем дело? Заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 12:57 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
Сейчас народ налетит и будет кричать, что клоны плохо (ну это в зависимости от того, что дальше делать собираешься). Что касаемо вопроса, в референсах DAO подключи и всё работать будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 13:07 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
Если не трудно, расшифруйте термин "подключи DAO в референсах"... Какую волшебную строчку следует написать? Я в Access почти полный чайник. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 13:58 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
В окне модуля заходим в Tools-References, потом там выбираем MIcrosoft DAO 3.6 object library и ставим галочку, всё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 14:02 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
Спасибо. Положительная динамика есть, но до совершенства далеко :-) Вот полный текст кода (между прочим, из хелпа, с незначительными изменениями) Private Sub ClientID_AfterUpdate() Dim rst As DAO.Recordset Dim strSearchName As String Set rst = Me.RecordsetClone strSearchName = Me!ClientID rst.FindFirst "Client = " & strSearchName // Client - ключевое поле //если это имеет значение.... If rst.NoMatch Then MsgBox "Record not found" Else Me.Bookmark = rst.Bookmark End If rst.Close Set rst = Nothing End Sub Все прекрасно, в переменную strSearchName заносится значение поля со списком, скажем, 'Клиент1', после чего выдается сообщение: 'Run-time error 3070 The Microsoft Jet Database Engine does not recognize 'Клиент1' as valid field or expression". Специалисты, поглядите, плиз, а то пример целиком из хелпа, и не фурыкает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 17:13 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
Попробуй добавить апострофы rst.FindFirst "Client = '" & strSearchName & "'"// Client - ключевое поле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2003, 17:19 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
Всем спасибо, все работает. Так как этот вопрос (переход на запись с помощью поля со списком) доволно часто мелькает, привожу работающий код, может, кому понадобится: Private Sub ClientID_AfterUpdate() Dim rst As DAO.Recordset Dim strSearchName As String Set rst = Me.RecordsetClone strSearchName = Me!ClientID rst.FindFirst "Client = '" & strSearchName & "'" If rst.NoMatch Then MsgBox "Record not found" Else Me.Bookmark = rst.Bookmark End If rst.Close Set rst = Nothing End Sub и хочу предупредить, на случай, если найдется еще такая бестолочь, как я - элемент 'Поле со списком' должен быть свободным (а у меня там в данных ссылка на ключевое поле стояла, и при выборе значения происходила попытка это поле изменить, хе-хе.....) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 12:43 |
|
||
|
И снова RecordsetClone
|
|||
|---|---|---|---|
|
#18+
а теперь задачка (в продолжение темы) strSearchName - элемент поле со списком. а в этом списке у тебя > 1000 записей, с тенденцией роста. при малом числе записей - проще найти в тойже таблице. а ты делаешь так - ищешь сначала в поле со списком - потом встаёшь на нужную запись в таблице. если не влом , здесь есть поле для поиска набери в нем Lik посмотри вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2003, 18:16 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=45&tid=1680236]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 338ms |

| 0 / 0 |
