Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Программно заменить в модуле процедуру - ее новой копией / 14 сообщений из 14, страница 1 из 1
01.06.2006, 17:45
    #33766904
Alisss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Возможно ли - программно заменить в одном из модулей процедуру, на ее новую версию хранящуюся в той же базе, но в другом модуле?
...
Рейтинг: 0 / 0
01.06.2006, 17:47
    #33766916
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
В принципе возможно, но очень не рекомендуется. Да и вообще две процедуры с одинаковым именем в одной базе - не есть хорошо (ну разве только они если Private).
...
Рейтинг: 0 / 0
01.06.2006, 17:54
    #33766952
AngelSQL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
можно использовать такие команды как ProcBodyLine, CreateEventProc, InsertLines...иногда они полезны...но с ними надо обращаться осторожно. Они не работают в пошаговом режиме...а потому, если в коде будет ошибка, можно наломать дров...
...
Рейтинг: 0 / 0
01.06.2006, 17:59
    #33766983
ILL HEAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Владимир СанычВ принципе возможно, но очень не рекомендуется. Да и вообще две процедуры с одинаковым именем в одной базе - не есть хорошо (ну разве только они если Private).а как сослаться на нее (на них) ?
наверное в этом был вопрос

тупым перебором/сравнением/заменой строк в можно
но этоже ...
...
Рейтинг: 0 / 0
01.06.2006, 18:15
    #33767047
Alisss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Проблема в следующем.
Надо внести обновления в работающую уже базу. Причем 10 раз одно и тоже, т.к. географически это в разных местах.
И хочется мороку про перезапись изменившихся модулей и форм свести к минимуму.

В идеале. я хочу всё измененное собрать в одной базе (update.mdb) и из нее сделав формочку-менюшку по шагам автоматически провести все обновления и изменения.
Изменить структуру одной из таблиц, со всеми нужными манипуляциями - удалось, руководя из вот этой самой базы update

- еще необходимо переименовать старые варианты форм, и подпихнуть новые (уже не могу сделать руководя из другой базы. как переименовать форму из одной базы, руководя этим из другой?)
- и заменить все изменившиеся процедуры в модулях
...
Рейтинг: 0 / 0
01.06.2006, 18:17
    #33767054
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Надо держать данные в одном файле, а интерфейс в другом. И заменять файл с интерфейсом полностью, а не по кусочкам.
...
Рейтинг: 0 / 0
01.06.2006, 18:20
    #33767065
Alisss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
А модуль целиком можно заменить?
Опять же - руководя этим из другой базы?
...
Рейтинг: 0 / 0
01.06.2006, 18:24
    #33767080
Alisss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Владимир СанычНадо держать данные в одном файле, а интерфейс в другом. И заменять файл с интерфейсом полностью, а не по кусочкам.
Приму к сведению на будущее - но в данный момент пить боржоми поздно, уже есть как есть и надо что-то с этим сделать.
Можно конечно тупо копировать, но боюсь - на 5 товарище я начну бокапороть.

Хотя бы формы автоматически заменить? А?
...
Рейтинг: 0 / 0
01.06.2006, 18:27
    #33767089
ILL HEAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
TransferDatabase
...
Рейтинг: 0 / 0
01.06.2006, 18:31
    #33767107
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Alisssуже есть как есть и надо что-то с этим сделать.
Перекопировать таблицы.
...
Рейтинг: 0 / 0
01.06.2006, 19:40
    #33767276
Alisss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Владимир Саныч Alisssуже есть как есть и надо что-то с этим сделать.
Перекопировать таблицы.

не, не катит :(
...
Рейтинг: 0 / 0
01.06.2006, 20:51
    #33767354
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
AngelSQLможно использовать такие команды как ProcBodyLine, CreateEventProc, InsertLines...иногда они полезны...но с ними надо обращаться осторожно. Они не работают в пошаговом режиме...а потому, если в коде будет ошибка, можно наломать дров...
Поясните пожалуйста, каким образом вы выяснили, что "Они не работают в пошаговом режиме"?
...
Рейтинг: 0 / 0
01.06.2006, 21:00
    #33767359
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Alisss...
Хотя бы формы автоматически заменить? А?
Из своей Update.mdb создайте Application (Set app = GetObject("Путь и имя БД")), с помощью app.DoCmd.DeleteObject удаляете объекты (или переименовываете app.DoCmd.Rename), а затем с помощью DoCmd.TransferDatabase переносите новые. См. Help
...
Рейтинг: 0 / 0
02.06.2006, 20:39
    #33770042
Alisss
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программно заменить в модуле процедуру - ее новой копией
Спасибо всем!
Все получилось!
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Программно заменить в модуле процедуру - ее новой копией / 14 сообщений из 14, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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