|
|
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Есть у меня к Вам один вопрос по MS Access 2000. Создаю запрос на создание таблицы в другой базе. Все создается, все замечательно, но при запуске этого запроса Аксес выводит MsgBox'ы (если таблица уже есть, то 3 штуки, если такой таблицы нет, то 2 штуки). Вопрос собственно говоря в том, как сделать, чтобы на эти сообщения автоматом нажималась кнопочка "Да" или они не выводились вообще? "Сервис->Параметры->Правка и поиск" и там отключить эту функцию, не предлагать, т.к. такое решение вопроса не устраивает. Надо чтобы при запуске одного определенного запроса эти сообщения либо не выводились вообще, либо на них автоматом бы нажимались нужные кнопки ("да"). Запрос запускается нажатием на кнопку из формы. Если кто знает как это реализовать, то буду благодарен за помощь. Мыл: Tigeer@yandex.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 03:35 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
DoCmd.SetWarnings False ' код запуска запроса DoCmd.SetWarnings True Или использовать метод Execute. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 10:15 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
DoCmd.SetWarnings False плох: если после него программа вывалится на эррор, то будет не найти концов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 12:27 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
To IgorM: Спосибо, точно, как же я пропустил в книжке этот код. :) И если не сложно, можешь дать пример использования метода Execute. Я не программер, просто делаю все это для облегчения своей работы вот и учусь чуть-чуть. To Владимир Саныч: Будет примерно так: DoCmd.SetWarnings False DoCmd.RunQuery ....................... DoCmd.SetWarnings True Неужели тут тоже можно где-то вывалиться на еррор? Хотя можно везде вывалиться туда. А как тогда это сделать? Может как-нить послать этим сообщениям {Enter} на кнопку "Да"? Буду признателен за помощь. А пока пойду пробовать SetWarnings ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 14:49 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
> А как тогда это сделать? Дык - при помощи Execute. Пример: CurrentDb.Execute "MyQuery" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 15:11 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
Неужели тут тоже можно где-то вывалиться на еррор Вот на DoCmd.RunQuery вывалишься - и будет у тебя прога с SetWarnings False всю оставшуюся жизнь работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 18:27 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
То Владимир Саныч and Лох Позорный: Спасибо. Я понял, только у меня таблица должна создаваться не в этой базе, а в другой. Я не программер, так что как работать с ODBC или DAO не знаю (пока не знаю). Ну и создавать подулючения я тоже не умею. Проблема в том, что после использования этого метода появляется окно с сообщением, что такая таблица уже есть. Только она в эту базу прилинкована. Ладно щас объясню задачу. Я работаю экономистом в одной фирме. У нас 2 завода, а скоро будет 3. На каждом заводе у диспетчеров написана база данных (не я писал) с помощью которой они выписывают накладные. Нам приходят отчеты в печатном виде. Потом мне приходится эту информацию вводить вручную (ну хочет у нас руководство иметь полную картину). Диспетчеры максимум что умеют, так это запустить базу, кликнув на ярлычке на рабочем столе и сыграть в косынку. Мне же необходим электронный отчет. Я сделал отдельную базу (интерфейс), куда прилинковал все необходимые таблички, сделал запрос, который вытягивает нужную информацию в один запрос, а далее, с помощью запроса на создание таблички, я создаю новую таблицу в другой базе (ессно, за нужный период) и эту базу они должны будут прислать в офис. Далее с помощью еще одного запроса на добавление, я добавляю присланные данные в свою базу и таким образом получаю полную картину с 2-х заводов. Надеюсь, что объяснил более-менее понятно. Таким образом в моей базе всего лишь прилинкованные таблички, запрос на выборку, запрос на создание таблицы и форма, где выбирается период и нажимается одна единственная кнопка "сформировать отчет". Так что думаю, что схема с SetWarnings False/True меня вполне устроит. Ну коли уж я залез на этот форум и начал спрашивать, то может поможите еще с одной фигней. Если 1С бух. Вся инфа храниться в dbf файлах. Я их линкую с базе и все нормально, казалось бы, но есть одна большая проблема. Если в записях русские буквы (а там именно все по-русски), то ни черта не понять. Все на "китайском" языке. Я понимаю, что тут проблема с кодировками, но как это исправить я так и не понял. :( Если кто знает как это вылечить, то буду рад помощи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2003, 23:16 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
А зачем каждый раз создавать заново таблицу с одним и тем же названием? Почему нельзя стирать и добавлять записи в одной и той же таблице? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 00:32 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
То Сладимир Саныч: Дык а какая разница-то? Здесь я пишу только одну строчку кода и делаю один запрос, а если удалять и заново писать, то надо 2 строчки кода и 2 запроса соответственно. Но в любом случае, это уже лирика и дело только в подходе. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 02:13 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
Да никакой разницы. Все равно что винт переформатировать каждый раз когда надо содержимое текстового файла изменить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 02:33 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
То Лох Позорный: У меня что, будет реальное ускорение работы от того, что я не буду создавать заново таблицу? Я думаю, что вряд ли это столь критично. Надо всего таблицу из около 200 строк сделать. К тому же, это делается 1 раз в день и все. Так что здесь мне все равно. Это не мощное приложение, которое надо оптимизировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 05:44 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
> Дык а какая разница-то? У Вас основная проблема, если помните, - это подтверждения, от которых надо избавиться. Вот эту задачу я и попытался Вам решить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 10:26 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
То Владимир Саныч: Ограмное спасибо, основная задача решена, все работает. Только я не понял, зачем стирать данные из таблицы, а потом их туда вставлять. Ведь все равно будут сообщения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 14:59 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
> Только я не понял, зачем стирать данные из таблицы, а потом их туда вставлять. Стирать надо старые данные. Вы же тоже стираете старые данные, только Вы их стираете вместе со старой таблицей. > Ведь все равно будут сообщения. Ну, если в данных какая-нибудь ошибка, тогда действительно будут. Но эти сообщения не надо отключать, об ошибках в данных надо знать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 15:05 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 17:07 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
Только я не понял, зачем стирать данные из таблицы, а потом их туда вставлять. Ведь все равно будут сообщения. Для тех кто в танке. Код: plaintext 2 Владимир Саныч У Вас основная проблема, если помните, - это подтверждения, от которых надо избавиться. Вот эту задачу я и попытался Вам решить. Если мне не изменяет мой склероз, то запрос на создание таблицы через Execute вывалит даже не msgbox на потдверждение, а вообще ошибку. Так что или удаление таблицы, потом запрос на создание, или удаление данных, потом добавление данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 23:31 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
> Если мне не изменяет мой склероз, Ты мне уже второй раз плагиируешь эту фразу. > то запрос на создание таблицы через Execute вывалит даже не msgbox на потдверждение, а вообще ошибку. Точно. А через RunSQL - два мсджбокса (один на удаление старой таблицы и один на создание новой). > Так что или удаление таблицы, потом запрос на создание, или удаление данных, потом добавление данных. При этом удаление таблицы можно делать двумя способами: либо с On Error Resume Next, либо с проходом в цикле по всем таблицам и проверкой наличия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2003, 23:45 |
|
||
|
Запрос на создание таблицы: отключение подтверждений
|
|||
|---|---|---|---|
|
#18+
То Лох Позорный: Да-да, ты прав, Execute действительно вываливает ошибку. :( То что можно удалить данные и добавить или удалить таблицу и создать я догнал, но решил не мучаться с этим, а просто использовать SetWarn...... и т.д. Завтра, вернее уже сегодня, пойду на работу и там попробую это реализовать все. То IgorM: Спасибо за ссылки, ценная информация. Опять же, на работе попробую. То Владимир Саныч: Со стиранием все понятно, сеньксь. То All: Я все понял. Можно реализовать либо с запросами на удаление записей и добавлением, либо с созданием новой таблицы. Я выбрал второе. Скорее всего профи скажут, что это через одно место, но меня это пока устраивает. :) Ну и еще вопрос, если можно. Какую строчку кода надо написать, чтобы после формирования отчета выполнялось сжатие и восстановление базы данных? Заранее прЫзнателен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2003, 01:37 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32182788&tid=1681101]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
39ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 342ms |

| 0 / 0 |
