|
MS Access 2010 - макросы данных
|
|||
---|---|---|---|
#18+
Изучаю новую фишку Access 2010 - макросы данных. Это то же что триггеры. Но возникла проблема. Есть обучающий ролик от MS по поводу таких макросов http://office.microsoft.com/ru-ru/access-help/VA100305331.aspx В общем, всё просто и понятно. Я создал таблицу один в один как в ролике, но этот макрос у меня не работает. Если сделать все строго как в ролике, то выдает в журнал ошибку: «Не удалось выполнить макрокоманду ИзменитьЗапись, поскольку используемый по умолчанию псевдоним представляет запись, доступную только для чтения.», если в качестве псевдонима написать отсебятину, то выдаёт ошибку «Не удалось найти псевдоним». Если написать псевдоним Проекты (то есть совпадает с названием таблицы), то выдает ошибку «Не удалось выполнить макрокоманду ИзменитьЗапись, поскольку псевдоним "Проекты" представляет запись, доступную только для чтения.» В ролике просто говорится: «Оставьте пока поле псевдоним пустым». Очевидно что у меня возникает почему-то блокировка текущей записи, но я не понимаю почему. Руками-то я её меняю отлично. Другие макросы данных (типа вставки новой записи и проч.) работают. Я в затруднении. У кого какие мысли? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2010, 16:24 |
|
MS Access 2010 - макросы данных
|
|||
---|---|---|---|
#18+
Вот что я нашёл здесь: здесь : What is the default data context? In a data macro, the "default data context" is what you are using when you refer to a field without using a table name qualifier. When a BeforeChange, BeforeDelete, AfterInsert, AfterUpdate, or AfterDelete event data macro is triggered, a new default data context is created, which can be used inside that block. This new context is what I like to refer to as the “incoming default data context” or, for brevity, the “incoming record.” Note that in event data macros, the incoming default data context is always read-only. This is a change in behavior from the Beta 2 release. Выделение моё. То есть действительно, имеем дело с записью в режиме только для чтения. Но как применить к ней метод ИзменитьПоле? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2010, 17:15 |
|
MS Access 2010 - макросы данных
|
|||
---|---|---|---|
#18+
Нашёл обсуждение вопроса здесь (на английском языке). У пользователя та же проблема что и у меня: I am trying to recreate the data access macro in 2010 that is in a video at http://office.microsoft.com/en-us/access-help/video-create-a-data-macro-VA100305331.aspx?CTT=3 He is using the After update event to automatically modify a PercentComplete field to 100 or 0 when the ProjectStatus field gets changed to Complete or Not Started. I get an error that says the target is read only--which I guess makes sense to me because I am in the record that I am trying to update. But how does he do it? I saw another thread that said to change it to the Before Change event. I tried that, but could not get anything to occur (no change to the information or error message). If anyone has any ideas, I'd appreciate it. Thanks. По итогам обсуждения: а) видео, очевидно, снято до выхода финальной версии MS Access 2010, где ещё не выставлялся атрибут read-only при такой операции б) выходом будет использовать событие До изменения (Before update), a не После обновления (After update). ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2010, 17:35 |
|
MS Access 2010 - макросы данных
|
|||
---|---|---|---|
#18+
chvaвыходом будет использовать событие До изменения (Before update) Читать вместо Before update — Before change ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2010, 22:24 |
|
MS Access 2010 - макросы данных
|
|||
---|---|---|---|
#18+
chvaИзучаю новую фишку Access 2010 - макросы данных. Это то же что триггеры. Но возникла проблема. Есть обучающий ролик от MS по поводу таких макросов http://office.microsoft.com/ru-ru/access-help/VA100305331.aspx В общем, всё просто и понятно. Я создал таблицу один в один как в ролике, но этот макрос у меня не работает. Если сделать все строго как в ролике, то выдает в журнал ошибку: «Не удалось выполнить макрокоманду ИзменитьЗапись, поскольку используемый по умолчанию псевдоним представляет запись, доступную только для чтения.», если в качестве псевдонима написать отсебятину, то выдаёт ошибку «Не удалось найти псевдоним». Если написать псевдоним Проекты (то есть совпадает с названием таблицы), то выдает ошибку «Не удалось выполнить макрокоманду ИзменитьЗапись, поскольку псевдоним "Проекты" представляет запись, доступную только для чтения.» В ролике просто говорится: «Оставьте пока поле псевдоним пустым». Очевидно что у меня возникает почему-то блокировка текущей записи, но я не понимаю почему. Руками-то я её меняю отлично. Другие макросы данных (типа вставки новой записи и проч.) работают. Я в затруднении. У кого какие мысли? Просмотрите эту книгу. В главе про макросы все описано подробно. Какие блоки команд в каких макросах можно записывать и что они делают. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2010, 19:11 |
|
|
start [/forum/search_topic.php?author=%D0%B1%D0%B0%D0%B1%D1%83%D1%88%D0%BA%D0%B8%D0%BD+%D0%B7%D0%B0%D0%B9%D1%87%D0%B8%D0%BA&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
11ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 9563ms |
total: | 9728ms |
0 / 0 |