Feb 18, 2009

Про MS Access

По работе выпало плотное общение с продуктом MS Access и с VBA в том числе. Причины сего "замечательного" события, а также моё мнение по этому поводу, я опущу. Отмечу только, что последний раз я обоих видел много лет назад, здавая какой-то курсовик в институте. Доставшийся в наследство код, тоже не впечатлял особыми изысками и принцип копипаста (copy & paste), видимо, пользовался у автора огромной популярностью. Поддерживать такое хозяйство желания небыло никакого.
Первым делом обьявил несколько публичных констант и вынес их в отдельный модуль. Далее оформил повторяющиеся участки кода в пару функций и вызывал их, естественно с разными параметрами, по мере надобности. Впоследствии вынес их в тот же отдельный модуль. Такими нехитрыми действиями я добился того, что внесение изменений в одном месте, распространяеться сразу на все модули проекта, и не надо ползать по всем углам, выискивая, где же я чего забыл. Особо сильно порадоваля своей инициативе при переносе базы на комп пользователя. У него там сетевой диск под другой буковй замонтирован, DNS тоже по другому обозван. Ну а мне что, открыл модуль, поменял 2 строчки и Алга.
Но радость была недолгой. Понадобился новый отчёт, с новой базой, а потом и ещё один. Конечно в Access можно, всего в несколько кликов, импортировать обьекты (например этот универсальный модуль или таблицу аудита) из предидущего проекта. Но после нескольких таких экспортирований, и последующих обновлений, соответственно утыкаемся носом в ту же проблему похожего кода в разных местах. Но гугл и тут не подкачал, выдал толковую статейку про то, как можно подключать существующую базу в качестве библиотеки для нового проекта. Вот теперь всё как у взрослых, так можно и поработать :)

No comments: