запросы из ArcView в БД

0 голосов
спросил 28 Март, 08 от neznau (920 баллов) в категории Программные продукты Esri
Добрый вечер.

Можно ли в ArcView сделать следующую штуку...
Предположим есть карта Москвы, на карте отмечены различные объекты (здания, площади, мосты, улицы), для каждого обекта есть описание, так называемые атрибуты. Ну так вот, можно ли сделать так, чтобы в ArcView, при наведении указателя мыши на какой-либо объект в отдельном окошке появлялись данные об этом объекте? Т.е. при наведении мыши происходил запрос к БД (внешней, на другом компьютере) о выборке данных удовлетворяющих таким то условиям. Другими словами, есть ли обработка событий мыши в AcrView? Наведение мыши на объект, нажатие левой кнопки мыши по объекту, нажатие кнопки мыши и проведение её по карте с появлением контура выделения данных на карте (как обычное выделение файлов в windows)?
Можно ли отлавливать такие события и обрабатывать их так, как я хочу?

Спасибо.

9 Ответы

0 голосов
ответил 31 Март, 08 от Albert1 (10,780 баллов)
можно (какой вопрос, такой и ответ)
0 голосов
ответил 31 Март, 08 от neznau (920 баллов)
т.е. другими словами, можно организовать такой проект в arcview, в котором вся информация об объектах будет храниться в другом приложении (БД или что-то еще), а arcview будет просто использовать эти данные?
0 голосов
ответил 31 Март, 08 от geologic (39,860 баллов)
Так обычно и делается, для того и ГИС.  Хоть по сети хоть по интернету, вопрос  доступа и своевременности.

Именно ArcView?
0 голосов
ответил 31 Март, 08 от neznau (920 баллов)
да, именно arcview.
Еще вопрос. Это (подклбючение к БД (MySQL, Oracle, Cache), отправка SQL-запроса, получение результатов запроса) можно делать на Avenue, не вручную через SQL connect, а автоматически?
0 голосов
ответил 31 Март, 08 от geologic (39,860 баллов)
Наверняка, а зачем? В связи с тем, что ODBC там read-only, им никто из разработчиков не пользуется. Обычно генерят свои dbf как буфер обмена, и дело в шляпе. Мы два года угробили на всякие приблуды, пока к тому же не пришли. Уж больно у запросов ArcView синтаксис нежизнестойкий, к тому ж заточен все равно под dbf - 10 знаков и т.п

Но можно, работает - если аккуратно генерить.
0 голосов
ответил 01 Апр, 08 от neznau (920 баллов)
в смысле?
Вы создаете временный dbf-файл, копируете в неё ВСЕ данные из внешней БД, а далее запросы отправляете уже не во внешнюю БД, а в созданную, которая в dbf файле?

я правильно понял? умнО :)
0 голосов
ответил 01 Апр, 08 от geologic (39,860 баллов)
да нет, конечно, не все данные. Просто наиболее популярные запросы проводятся заранее и хранятся в dbf-файлах некоего стандартного формата. Встает вопрос насколько они актуальны, но я не встречал систем реального времени на AV - пакет все же учебный, и обновления раз в неделю, допустим, вполне хватало. Но вас больше волновали клики... Если они будут достаточно хаотичными, то это не подойдет.

Просто когда будете делать, учтите внутреннюю особенность - когда AV проводит запрос ODBC, он все равно пишет его во временный dbf. Мы решили - нафига нам лишние посредники... :)
0 голосов
ответил 01 Апр, 08 от neznau (920 баллов)
блин, я ничего не понимаю...

Могу я программно через скрипт на av подключиться к СУБД, послать туда запрос и получить ответ????
Как подключиться к СУБД? Нужно ли для этого ArcSDE?
0 голосов
ответил 03 Апр, 08 от Prospektor (620 баллов)
Не худо-бы сходить на страницу скриптов ESRI для AW по фильтру "access". Кое-что из из выложенных там наработок давненько применяется в не очень навороченных задачах.
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...