Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
VAD
Зарегистрирован: 01.03.2009 Сообщения: 6 Откуда: Питер
|
Добавлено: Вс Янв 24, 2010 11:32 pm Заголовок сообщения: Запись координат объектов в текстовый файл |
|
|
Здравствуйте!!! Необходима ваша помощь по следующему вопросу. Имеется таблица (проекция долгота/широта). Из нее необходимо выбрать все точечные объекты. Далее координаты выбранных объектов необходимо записать в текстовый файл построчно
Выбрал так:
Select * from trassa
Where Str$(Obj)="Point"
??? |
|
Вернуться к началу |
|
|
reasonat
Зарегистрирован: 01.07.2009 Сообщения: 224 Откуда: Екатеринбург
|
Добавлено: Пн Янв 25, 2010 12:22 pm Заголовок сообщения: |
|
|
Open File file_name
For Output As #1
Fetch First From Selection
sel_obj = Selection + ".obj"
Do While not EOT(Selection)
Print #1, ObjectGeography(sel_obj, OBJ_GEO_POINTX) + ", " + ObjectGeography(sel_obj, OBJ_GEO_POINTY)
Fetch Next From Selection
Loop
Close File #1 |
|
Вернуться к началу |
|
|
Arhara
Зарегистрирован: 18.02.2009 Сообщения: 400 Откуда: Moscow, RF
|
Добавлено: Пт Янв 29, 2010 2:31 pm Заголовок сообщения: |
|
|
кроме того есть путь экспорта таблицы в текстовый файл:
Код: |
Syntax 1 (for exporting MIF/MID files, DBF files, or ASCII text files)
Export table
Into file_name
[ Type
{ "MIF" |
"DBF" Charset char_set ] |
"ASCII" Charset char_set ] [ Delimiter "d " ] [ Titles ] } ]
"CSV" [ Charset char_set ] [ Titles ] } ]
[ Overwrite ]
|
|
|
Вернуться к началу |
|
|
Alex_47
Зарегистрирован: 01.07.2009 Сообщения: 66 Откуда: Н.Новгород
|
Добавлено: Сб Янв 30, 2010 8:31 pm Заголовок сообщения: |
|
|
{sel_obj = Selection + ".obj"} Насколько я понял SEL_OBJ это строковая переменная не ушто это работает? |
|
Вернуться к началу |
|
|
reasonat
Зарегистрирован: 01.07.2009 Сообщения: 224 Откуда: Екатеринбург
|
Добавлено: Пн Фев 01, 2010 10:06 am Заголовок сообщения: |
|
|
это Alias |
|
Вернуться к началу |
|
|
VAD
Зарегистрирован: 01.03.2009 Сообщения: 6 Откуда: Питер
|
Добавлено: Пн Фев 08, 2010 11:18 pm Заголовок сообщения: |
|
|
Спасибо, все получилось!!! |
|
Вернуться к началу |
|
|
xax_nv
Зарегистрирован: 28.10.2011 Сообщения: 43 Откуда: г. Нижневартовск
|
Добавлено: Ср Май 02, 2012 1:08 pm Заголовок сообщения: |
|
|
Приветствую всех!
Пришлось поднять этот топик.
Мне нужно получить координаты точечных объектов из MI в Access.
Фрагмент кода:
Set MapInfo = GetObject(, "MapInfo.Application")
MapInfo.Do "Set CoordSys Nonearth units ""m"" Bounds (0.1,0.1) ( 40000,40000)"
MapInfo.Do "Set Distance Units ""m"""
TableName = MapInfo.Eval("SelectionInfo(1)")
MapInfo.Do ("Select * From " & TableName & " Where col3 <> 0")
counter = Val(MapInfo.Eval("SelectionInfo(3)"))
MapInfo.Do ("Fetch First From Selection")
sel_obj = Selection + ".obj"
For j = 1 To counter
kadnum = MapInfo.Eval(TableName & ".col1")
n = MapInfo.Eval(TableName & ".col3")
Y = MapInfo.Eval("ObjectGeography(sel_obj, OBJ_GEO_POINTX)")
X = MapInfo.Eval("ObjectGeography(sel_obj, OBJ_GEO_POINTY)")
Получаю ошибку:
"Преобразовать данные не удалось. ObjectGeography: не правильный тип аргумента 2"
Что не правильно в коде?
Версия MI 7.0 |
|
Вернуться к началу |
|
|
Андрей Могильный
Зарегистрирован: 21.03.2006 Сообщения: 864
|
Добавлено: Ср Май 02, 2012 4:44 pm Заголовок сообщения: |
|
|
OBJ_GEO_POINTX - это константа, описанная в MapBasic.def. Интерпретатор MapBasic в Mapinfo естественно не знает ее значения. Выясните значение и подставляйте его в вызов, а не название константы. |
|
Вернуться к началу |
|
|
xax_nv
Зарегистрирован: 28.10.2011 Сообщения: 43 Откуда: г. Нижневартовск
|
Добавлено: Ср Май 02, 2012 5:03 pm Заголовок сообщения: |
|
|
Андрей, добрый вечер! А где найти значение? В MapBasic.def я не нашел, правда смотрел в МВ 9.0. |
|
Вернуться к началу |
|
|
xax_nv
Зарегистрирован: 28.10.2011 Сообщения: 43 Откуда: г. Нижневартовск
|
Добавлено: Ср Май 02, 2012 5:25 pm Заголовок сообщения: |
|
|
Проблема решена, нашел значение констант в МВ 4.5 |
|
Вернуться к началу |
|
|
|