|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Добрый день. В Access 2013 есть форма, основанная на рекордсете. Данные загружаются с сервера SQL. Если в форме скопировать одну строку и вставить ее в пустую, то строка корректно вставится, но в предыдущей строке некоторые данные пропадают, а в остальных появляется ошибка #Error. Однако, если перейти на эту строку с ошибками, что все данные появляются, а ошибка пропадает. В чем может быть причина ошибки и как ее решить? Заранее всем спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2015, 10:41 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Та же база в 2010 офисе работает корректно ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2015, 14:30 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaSТа же база в 2010 офисе работает корректно У нас не, то что Access 2013, у нас у большинства Access 2010 и Access 2007 не стоит....... А че в 2010 религия не позволяет работать? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2015, 14:39 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
ROI, у нас компания крупная. Инфраструктура уже всем политикой накатывает 13 офис. Из-за этой базы ничего отменять не будут. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 09:16 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaSROI, у нас компания крупная. Инфраструктура уже всем политикой накатывает 13 офис. Из-за этой базы ничего отменять не будут. Если у вас отсутствует лицензия даунгрейд (извеняюсь за русский). Тогда только отладка и разбор полетов. К стати Access 2013 32 или 64 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 09:36 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaS, Вы не указали на каком рекордсете: DAO или ADODB. Какой запрос: вызов процедуры или select? Я в своих разработках никогда так не делаю, т.к. в свое время (2003-й год) столкнулся с проблемаи с фильтрами, сортировкой и определением выделенных записей (а не только текущей). 100% работающим решением есть использование RecordSource. С уважением, Павел. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 10:24 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Присоединюсь. Если работать через рекордсеты, то надо брать на себя очень много забот. Аксес этого не любит. Его кредо - рекордсоурс. Если вы вручную получаете рекордсет, тогда аксес вааще не нужен - делайте на студии. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 10:31 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Павел ФурсовVerochkaS, Вы не указали на каком рекордсете: DAO или ADODB. Какой запрос: вызов процедуры или select? Я в своих разработках никогда так не делаю, т.к. в свое время (2003-й год) столкнулся с проблемаи с фильтрами, сортировкой и определением выделенных записей (а не только текущей). 100% работающим решением есть использование RecordSource. С уважением, Павел. 1 RecordSource ---это название свойства формы а не рекордСет Я не понял чего вы не используете DAO или ADODB или вызов процедуры или select К стати с уважением ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 10:36 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
П-ЛПрисоединюсь. Если работать через рекордсеты, то надо брать на себя очень много забот. Аксес этого не любит. Его кредо - рекордсоурс. Если вы вручную получаете рекордсет, тогда аксес вааще не нужен - делайте на студии. У меня формы все отвязанные рекордСет скармливаю по мере надобнысти и потребности. Полет всегда нормальный . ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 10:38 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
По порядку ROI RecordSource ---это название свойства формы а не рекордСет RecordSource - это не объект, а строка. Access сам создаст нужный объект для работы. ROI не понял чего вы не используете DAO или ADODB или вызов процедуры или select Я конечно их использую в своем коде на VBA, но никогда в качестве источника данных для формы! С уважением, Павел ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 10:44 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Павел ФурсовВы не указали на каком рекордсете: DAO или ADODB. ROIЯ не понял чего вы не используете DAO или ADODB На сабж посмотрите:) ... и нету в ДАО ни отвязанных, ни "синтетических" рекордсетов. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 10:53 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Павел ФурсовПо порядку ROI RecordSource ---это название свойства формы а не рекордСет RecordSource - это не объект, а строка. Access сам создаст нужный объект для работы. ROI не понял чего вы не используете DAO или ADODB или вызов процедуры или select Я конечно их использую в своем коде на VBA, но никогда в качестве источника данных для формы! С уважением, Павел По порядку дык по порядку 1 RecordSource - это не объект, а строка. Access сам создаст нужный объект для работы. Это свойство объекта. 2 А чего вы используете в качестве источника данных если это вам не подходит (DAO или ADODB или вызов процедуры или select) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:03 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
2571Павел ФурсовВы не указали на каком рекордсете: DAO или ADODB. ROIЯ не понял чего вы не используете DAO или ADODB На сабж посмотрите:) ... и нету в ДАО ни отвязанных, ни "синтетических" рекордсетов. Да ну а я то их 15 лет пользуююю. Вот я дебил. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:04 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
2571На сабж посмотрите:) Спасибо, просто давно не отвечал в форумах... С уваженим, Павел ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:09 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
ROI, ROIК стати Access 2013 32 или 64 - и 32 и 64. Больше 100 пользователей. У всех разные ноутбуки и операционки. ROIЯ не понял чего вы не используете DAO или ADODB или вызов процедуры или select К стати с уважением Использую подключение ADODB.В зависимости от заполненный полей в форме формируется динамический SQL-запрос, который отправляется на сервер. Данные записываются в рекордсет и он приписывается к форме. Это запрос и прописывается в RecordSource формы. ROIУ меня формы все отвязанные рекордСет скармливаю по мере надобнысти и потребности. Полет всегда нормальный . Если делать отвязанный рекордсет, то нужно все действия по изменению/удалению/добавлению прописывать для отправки на сервер, а с этим ADO справляется прекрасно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:12 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Павел Фурсов100% работающим решением есть использование RecordSource.С уважением, Павел. Что и как Вы присваиваете RecordSource формы? Можно пример? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:13 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
ROIЭто свойство объекта. К чему это? Мы же говорим о работе с данными, а не пытаемся разобраться с объектной моделью Access. ROI2 А чего вы используете в качестве источника данных если это вам не подходит (DAO или ADODB или вызов процедуры или select) Происходят ошибки, приводящие к закрытию msaccess.exe в моих сценариях с использованием фильтров, сортировки и определения выделенных строк (о чем я уже писал выше). С уважением, Павел ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:20 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaSЧто и как Вы присваиваете RecordSource формы? Можно пример? Конечно можно. Какие у нас есть доступные объекты: 1. Таблицы и запросы, находящиеся в CurrentDb. 2. Связанные таблицы и запросы к серверу, находящиеся в CurrentDb (использую для работы с SQL Server через ODBC). Их можно использовать в качестве RecordSource. Например, таблица называется Table1. Значит в качестве источнка можно указать "Table1". Или сформировать строку запроса к этой таблице: "select * from Table1". С уваженим, Павел ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:29 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaSИспользую подключение ADODB.В зависимости от заполненный полей в форме формируется динамический SQL-запрос, который отправляется на сервер. Данные записываются в рекордсет и он приписывается к форме. Это запрос и прописывается в RecordSource формы. Зачем получать Recordset? Что приписывается, а что прописывается? Можно илюстрировать вашим кодом? С уважением, Павел. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:37 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Павел Фурсов, Код: vbnet 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.
Убрала лишнее, чтобы не засорять код ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:43 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
Павел ФурсовROIЭто свойство объекта. К чему это? Мы же говорим о работе с данными, а не пытаемся разобраться с объектной моделью Access. ROI2 А чего вы используете в качестве источника данных если это вам не подходит (DAO или ADODB или вызов процедуры или select) Происходят ошибки, приводящие к закрытию msaccess.exe в моих сценариях с использованием фильтров, сортировки и определения выделенных строк (о чем я уже писал выше). С уважением, Павел Чушь , если все правильно сконструровано ничег такого не наблюдал. Есче раз ЧЮШЬ.(ИМХО) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:55 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
ROI, в принципе у меня все работает корректно. вот только копирование на компьютерах с 2013 офисом выдает такую ошибку, которая смущает пользователей ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:57 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaS, Спасибо. Я в принципе об этом и подумал. Многие так до сих пор делают (у ROI даже ошибок не возникает). Я уже высказал свою точку зрения, что так работать не надо. Используйте только RecordSource. В коде формы можно создать нужные объекты в CurrentDb или другой MDB/ACCDB, сформировать RecordSource и использовать его. Никто нас особо не ограничивает в названиях таблиц или запросов. Они могут быть созданы как временные объекты, нужные для работы самой формы. Естественно, при закрытии форма должна их удалить. Если у вас форма существует в единственном экземпляре, то объекты можно делать постоянными. Еще зависит от того, используется ли соместный доступ к CurrentDb или у каждого пользователя есть своя копия. С уважением, Павел. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 11:59 |
|
Ошибка #Error в форме, основанной на ADO рекордсете, в Access 2013
|
|||
---|---|---|---|
#18+
VerochkaSПавел Фурсов, Код: vbnet 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.
Убрала лишнее, чтобы не засорять код У меня при открытии: Всегда присутсутствует "Me.RecordSource = "" " А потом где то в коде "Set Me.Recordset = rst" ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2015, 12:01 |
|
|
start [/forum/topic.php?fid=45&msg=38993443&tid=1613150]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 352ms |
total: | 509ms |
0 / 0 |