mapinfo и postgis

MapInfo, MapBasic
KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: mapinfo и postgis

Сообщение KolesovDmitry » 01 дек 2009, 21:10

andru писал(а):А как собственно - не имея MapInfo 10 и соответственно EasyLoader10 - загрузить таблицу MapInfo в PostgreSql, да еще чтоб геометрические объекты были?
Есть несколько способов, например, можно воспользоваться утилитой ogr2ogr или сначала перевести данные в shp-формат, а потом загнать их в PostgreSQL утилитой shp2pg.

msky
Интересующийся
Сообщения: 22
Зарегистрирован: 21 май 2009, 08:30
Репутация: 0

Re: mapinfo и postgis

Сообщение msky » 09 дек 2009, 10:57

я так понял, MI делает мапбл и после этого читать информацию из PG может только сам же MI.

zimirrr
Интересующийся
Сообщения: 29
Зарегистрирован: 14 окт 2009, 17:21
Репутация: 0

Re: mapinfo и postgis

Сообщение zimirrr » 09 дек 2009, 17:14

не понял вопрос...можно поподробней?

msky
Интересующийся
Сообщения: 22
Зарегистрирован: 21 май 2009, 08:30
Репутация: 0

Re: mapinfo и postgis

Сообщение msky » 14 дек 2009, 13:51

Постараюсь...

Начинаем закачку в PostGis *.tab файлов при помощи утилитки UniversalTranslator, поставляющейся вместе с MapInfo 10. В результате закачки мы получаем несколько таблиц в БД PostGis'a. В меню MI(MapInfo 10) выбираем select DBMS table>public>таблицу. MI открывает ещё в табличном варианте(не картой). что бы данные из таблицы стали картой нажимаем кнопку make DBMS tablemappable. MI что то там делает, после чего рисует криво при криво карту и всё. QGIS или сторонние ГИС больше не открывают этот слой.

Всё верно?
и почему же он так искажает карту :(

zimirrr
Интересующийся
Сообщения: 29
Зарегистрирован: 14 окт 2009, 17:21
Репутация: 0

Re: mapinfo и postgis

Сообщение zimirrr » 14 дек 2009, 16:03

не уверен что UT нормально работает с Постгисом, я не пробывал...советую вам использовать либо Easy Loader, или утилиту ogr2ogr.

msky
Интересующийся
Сообщения: 22
Зарегистрирован: 21 май 2009, 08:30
Репутация: 0

Re: mapinfo и postgis

Сообщение msky » 15 дек 2009, 14:41

прошу прощения, описался....
я пользовался Easy Loader а не UT.

А ogr2ogr - вообще не пригоден для загрузки если у вас есть в таб файлах данные в cp1251.

malexer
Новоприбывший
Сообщения: 4
Зарегистрирован: 16 дек 2009, 20:30
Репутация: 0

Re: mapinfo и postgis

Сообщение malexer » 16 дек 2009, 20:52

Провозился пол дня пока перепробовал разные варианты и драйверы...
Удалось получить полностью рабочий вариант таким способом:
версия драйвера 8.03.0400

Пробовал выгружать данные с помощью
1. easyloader'а
2. модуля SPIT (shp to Postgres) из qgis + потом делаем таблицу mappable в mapinfo (без per row style)
данные изначально кидаем в public

первый вариант в общем то заработал, только с одно странностью - можно редактировать вектор, а атрибуты read-only прописывает почему то... побороть не удалось

второй вариант заработал на ура, все редактируется :D

но не понравилась скорость работы MapInfo :(
qgis гораздо шустрее справляется с теми же данными. открывал одновременно базу по улицам и домам (~200k объектов). Запустил команду отобразить все в mapinfo, переключился в qgis и сделал то же, отобразилось все. Переключаюсь на mapinfo - он ещё думает...
и визуально при работе конечно тоже заметна разница.

и ещё одно неудобство. Может это можно как то переключить в настройках, пока не нашел. а именно:
одновременно редактировал в qgis и mapinfo. чтоб увидеть изменение (выполненное в qgis) в mapinfo, надо нажать кнопку refresh DBMS table. а в qgis достаточно сделать небольшой ресайз и видим уже обновленные кем то другим данные...
т.е. видимо qgis при каждом ресайзе опрашивает БД на изменение, а mapinfo активно пользуется кэшем. вдвойне странно почему даже при таком раскладе qgis оказывается шустрее...
остается только сказать респект девелоперам qgis'а :)

Поправьте, если где неправ, а также делитесь опытом использования mapinfo + postgis

malexer
Новоприбывший
Сообщения: 4
Зарегистрирован: 16 дек 2009, 20:30
Репутация: 0

Re: mapinfo и postgis

Сообщение malexer » 16 дек 2009, 20:53

и ещё - не удалось выгрузить полигоны с островами :(
надо будет читать - или проблема postgis или в процессе выгрузки в БД...

msky
Интересующийся
Сообщения: 22
Зарегистрирован: 21 май 2009, 08:30
Репутация: 0

Re: mapinfo и postgis

Сообщение msky » 24 дек 2009, 08:32

если я уничтожаю все записи с кирилицой таб файлы содержащие полигоны с островами закачиваются при помощи ogr2ogr и просматриваются в QGis.

AlienPulsar
Новоприбывший
Сообщения: 7
Зарегистрирован: 13 май 2010, 09:31
Репутация: 0

Re: mapinfo и postgis

Сообщение AlienPulsar » 05 июл 2010, 14:58

msky писал(а): При нажатии кнопки Make DBMC Table Mappable, мы меняем index type на PostGis, а в выпадающем списке Index Column выбираем поле с геометрией и gist индексом. Нажимаем OK и Map info выдаёт следующие ошибки:

ODBC Error: ODBC RC=-1, ODBC SQLState=3f000, DBMS Msg=ERROR: schema "mapinfo" does not exist;
Error while executing the query.

пробовал менять одбс не помогло.

The table you have chosen cannot be made mappeble. To be made mappable, a table must contain a spatial column, or at least two numeric columns.

Прошу помочь с устранением ошибок и отображением геометрической информации в графическом виде. могу выслать SQL дамп слоя.
Такая же ошибка при попытке "Присоединить геоинформацию" с сервера gis-lab.info из базы gen

Код: Выделить всё

Сбой ODBC: ODBC RC=-1, ODBC SQLState=3F000, DBMS RC=7, DBMS Msg=ERROR: schema "mapinfo" does not exist;
Error while executing the query. 
использую odbc и как тут советовали откатился на 8.3, и результату ноль

Аватара пользователя
Pavel
Активный участник
Сообщения: 171
Зарегистрирован: 15 июл 2009, 07:45
Репутация: 7

Re: mapinfo и postgis

Сообщение Pavel » 14 июл 2010, 14:55

Уж очень интересная тема! :)
После четырех дней бодания с MI и postgresql, пытаясь их подружить, накопилось немножко вопросов.

1. Установил драйвер psqlodbc 8.3, создал подключение к БД через EasyLoader10 кинул пару таблиц. Таблицы встали на место, но вот с их редактированием не получается, типа как запрещено. Не знаю, правильно ли, но расставил галочки таким вот образом:
Изображение
И тут же попутный вопрос: откуда в БД взялась схема mapinfo? Я ее вроде не создавал...
P.S. При попытке подключиться через EasyLoader9.5 - он вылетал с ошибкой: "исходные данные не поддерживаются".

2. Почитав вот это:
чтобы сделать таблицу редактируемой, необходимо:
открыть мапинфо(10)
table->maintenance make DBMS Table Mappable -> выбираете соединение с базой -> выбираете таблицу ->
Не нашел я такого в меню "таблица"... Можно по подробнее - где это находится?
Также, через Каталог программ загрузил Каталог СУБД (DBMS Catalog). Пытался создать подключение к БД - выбрасывал с ошибкой:
Изображение

А при попытке создать новый каталог - с такой:
Изображение

3. И последний:
В меню MI(MapInfo 10) выбираем select DBMS table>public>таблицу. MI открывает ещё в табличном варианте(не картой). что бы данные из таблицы стали картой нажимаем кнопку make DBMS tablemappable. MI что то там делает, после чего рисует криво при криво карту и всё. QGIS или сторонние ГИС больше не открывают этот слой.
У себя не нашел...

Вот как-то так...
Просветите пожалуйста!
Быстро, качественно, недорого - выбирайте любые два пункта...

zimirrr
Интересующийся
Сообщения: 29
Зарегистрирован: 14 окт 2009, 17:21
Репутация: 0

Re: mapinfo и postgis

Сообщение zimirrr » 05 авг 2010, 10:58

привет павел, буду отвечать я.
1. Галочки вы поставили правильно, если у вас после этого не редактируется таблица, то возможно вы забыли поставить слой редактируемым)))
схему mapinfo вы создали EasyLoader(ом), без неё оно скорее бы не заработало
2. "table->maintenance make DBMS Table Mappable" если бы вы пользовались англицкой версией мапинфо то скорее всего бы догадались что это меню "таблица->изменить->присоединить географическую инфор..." (заметил что пропустил '->' после maintance, ну простите меня).
если юзать EasyLoader то DBMS Catalog не нужен, на новых версиях постгреса он видимо не работает (не розбирался)
3. вообще не понял вопроса

Аватара пользователя
Pavel
Активный участник
Сообщения: 171
Зарегистрирован: 15 июл 2009, 07:45
Репутация: 7

Re: mapinfo и postgis

Сообщение Pavel » 08 авг 2010, 18:53

zimirrr писал(а):привет павел, буду отвечать я.
1. ...не редактируется таблица, то возможно вы забыли поставить слой редактируемым)))

2. "table->maintenance make DBMS Table Mappable" <...> то скорее всего бы догадались что это меню "таблица->изменить->присоединить географическую инфор..."
Зачем весь этот ненужный сарказм? По делу вобще ничего не сказано... Кроме лишь того, что table->maintenance -> make DBMS Table Mappable - это про геоинформацию... Действительно, как я не догадался? Тут же все и так понятно! <sarcasm>.
Быстро, качественно, недорого - выбирайте любые два пункта...

zimirrr
Интересующийся
Сообщения: 29
Зарегистрирован: 14 окт 2009, 17:21
Репутация: 0

Re: mapinfo и postgis

Сообщение zimirrr » 10 авг 2010, 17:42

какая то у вас неадекватная реакция на помощь. как вопрос задали так вам на него и ответил...
спросите конкретней, будет вам ответ который вас устроит. и я не вижу в своем ответе ни капли сарказма, странно что вы его там увидели, научитесь относится к своим ошибкам проще.

Аватара пользователя
Pavel
Активный участник
Сообщения: 171
Зарегистрирован: 15 июл 2009, 07:45
Репутация: 7

Re: mapinfo и postgis

Сообщение Pavel » 11 авг 2010, 13:56

Может быть и не с сарказмом... Не важно...:) Меня просто не совсем устроил ответ...
Спрашиваю конкретнее:
Создано подключение к БД с правами рута. Заливается в базу слой EasyLoader'ом (скрин см. выше). Далее открывается база (с правами рута). Открывается залитый слой. И появляется вот такое:
Изображение

Это при попытке как раз поставить галочку, чтобы сделать слой редактируемым.

P.S.
zimirrr писал(а):научитесь относится к своим ошибкам проще.
Просто эти ошибки идут уже две недели... Мозг расшатан БД, начальством и английскими мануалами...:)
Быстро, качественно, недорого - выбирайте любые два пункта...

Ответить

Вернуться в «MapInfo»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 38 гостей