
- •Оглавление
- •Введение
- •Что такое MapInfo Professional и как она работает
- •Обзор настольной картографии
- •Обзор возможностей
- •Как успешно обучиться работе с MapInfo
- •Пользование технической поддержкой
- •Строка сообщений
- •Справочная система
- •Пользование технической поддержкой
- •Перед тем, как позвонить
- •Что нового в MapInfo Professional 7.5
- •Усовершенствования вывода на печать
- •Усовершенствования в работе с базами данных
- •Дополнения в топоцентрические системы координат
- •Улучшения в работе с картами
- •Улучшения в работе отдельных модулей
- •Улучшения в меню
- •Улучшения отдельных программ
- •Изменения в программе EasyLoader
- •Улучшения в MapBasic
- •Новые функции MapInfo Professional 7.8
- •Добавлена поддержка клиента WFS
- •Улучшенная поддержка растров
- •Улучшения работы с картами
- •Добавление пользовательских символов
- •Изменения в режиме Автотрассировки
- •Улучшение 3D изображения
- •Изменения и дополнения новых систем координат
- •Улучшения печати
- •Улучшение работы с базами данных
- •Новые и усовершенствованные утилиты
- •Улучшения в документации
- •Усовершенствования в лицензиях
- •Системные требования для MapInfo Professional
- •Обработка соединений с базами данных
- •Перед установкой MapInfo Professional
- •Работа с Просмотрщиком MapInfo 7.5 CD
- •Установка MapInfo Professional 7.5
- •Полная установка
- •Выборочная установка
- •Установка MapInfo в сети
- •Выделение пользователей
- •Установка данных
- •MapInfo и Microsoft IntelliMouse ™
- •Проблемы при установке
- •Как удалить MapInfo Professional из системы
- •Настройка режимов MapInfo Professional
- •Доступ к Режимам
- •Настройка Режимов
- •Настройка системных режимов
- •Режимы окна Карты
- •Режим Окно Легенды
- •Стартовые режимы
- •Установка порядка записи адреса
- •Настройки каталогов
- •Параметры вывода графики
- •Режим Принтеры
- •Настройка стилей оформления
- •Запуск и закрытие MapInfo Professional
- •Запуск MapInfo
- •Использование Рабочего набора Startup.wor
- •Как открыть таблицу
- •Выход из MapInfo Professional
- •Закрытие MapInfo и Рабочий набор Mapinfow.wor
- •Знакомство с МapInfo Professional
- •Работа с инструментальными панелями
- •Использование Рабочих Наборов
- •MapInfo Professional начинается с данных
- •Что такое база данных и другие основные термины
- •Открытие таблиц и файлов
- •Окна просмотра в MapInfo Professional
- •Отображение данных в окне Карты
- •Отображение данных в окне Списка
- •Отображение данных в окне Графика
- •Отображение данных в окне Отчета
- •Другие окна для отображения данных
- •Что такое слои и объекты
- •Что такое слой
- •Объекты карты как часть слоев
- •Как управлять слоями
- •Что такое Косметический слой?
- •Как сделать слой “изменяемым”
- •Выбор объектов на слое
- •Получение информации о слое
- •Работа с тематическими слоями
- •Работа со слоями растров и поверхностей в Управлении слоями
- •Работа со сшитыми слоями
- •Как открыть сшитый слой
- •Сохранение и экспорт результатов работы
- •Сохранение Рабочего Набора
- •Как закрыть таблицу
- •Сохранение Таблицы или Сохранение копии таблицы
- •Экспорт данных в новый формат
- •Использование Каталога программ
- •О дополнительных программах MapInfo Professional
- •Доступ и загрузка программ из Каталога программ
- •Добавление (Регистрация) Программы к Каталогк программ
- •Правка Заголовка программы и ее Описания
- •Удаление программы из Каталога программ
- •Использование Инструментальной панели Программы
- •Как поместить данные на карту
- •Когда надо геокодировать, а когда создавать точки
- •Создание TAB-файла из данных
- •Создание TAB-файлов из таблиц Excel (.XLS)
- •Создание TAB-файлов из базы данных Access
- •Создание TAB-файлов из данных dBase
- •Создание TAB-файлов для данных Lotus 1-2-3
- •Регистрирование таблиц ASCII
- •Импорт GML-файлов в таблицу TAB
- •Работа с удаленными данными СУБД
- •С чего начать?
- •Общая процедура геокодирования
- •Режимы геокодирования
- •Методы геокодирования
- •Поиск точного совпадения адресов
- •Размещение геокодированных точек
- •Сравнение названий улиц
- •Сравнение номеров домов
- •Сравнение областей
- •После геокодирования
- •Использование программы Вывод координат
- •Выбор негеокодированных записей
- •Размещение новых геокодированных точек
- •Результирующие коды
- •Раскодирование таблицы
- •Приближение к 100% геокодированию
- •Описки в данных
- •Уточняющие границы поиска адреса
- •Простая подстановка, ограниченная пробелами
- •Сокращение после знака
- •Допустимые пробелы
- •Неправильная нумерация домов
- •Абонентские ящики
- •Неправильное название города
- •Как пользоваться кодами результатов
- •Примеры кодов
- •Создание точечных объектов из формата Широта/Долгота
- •Создание точечных объектов из таблиц Excel или Lotus
- •Создание точечных объектов из формата Широта/Долгота
- •Создание точечных объектов в другой проекции
- •Рассеивание точек
- •Создание точек, обозначающих пересечения
- •Показ данных на карте
- •Вывод на печать
- •Настройка параметров страницы
- •Настройки печати Графика/Списка/3D-Карты
- •Дополнительные настройки печати
- •Проблемы при печати
- •Обработка данных
- •Работа с таблицами MapInfo
- •Добавление данных к таблице
- •Обновление части таблицы
- •Добавление записей в таблицу
- •Разделение данных из одной колонки в несколько колонок
- •Создание новых таблиц
- •Изменение структуры таблиц
- •Копирование и переименование таблиц
- •Удаление таблицы
- •Упаковка таблицы
- •Просмотр таблиц в окне Списка
- •Создание отчетов Crystal Reports
- •Необходимые условия для обработки пространственных данных в СУБД
- •Поддержка Oracle Spatial
- •Доступ к удаленным базам данных с помощью ODBC
- •Создание новых источников данных (ODBC)
- •Открытие таблиц СУБД
- •Ввод SQL-запросов вручную
- •Создание прямого доступа к удаленной базе данных
- •Сохранение связанной таблицы
- •Работа с таблицами СУБД
- •Производительность при прямом доступе к большим таблицам СУБД
- •Запрет на редактирование пространственного объекта
- •Инструменты рисования и редактирования
- •Инструменты рисования
- •Команды рисования и редактирования
- •Рисование объектов
- •Применение окна Линейки
- •Стили графических объектов
- •Рисование полигонов и полилиний
- •Преобразование полилиний в полигоны
- •Рисование символов
- •Изменения стиля символа на Карте
- •Поддерживаемые шрифты
- •Работа с растровыми символами
- •Ввод и работа с текстом на Карте
- •Редактирование объектов
- •Перемещение и изменение размеров объектов Карты
- •Изменение формы объектов
- •“Совмещение узлов” для выбора узлов и центроидов
- •Сглаживание полилиний
- •Преобразование полигонов в полилинии
- •Выборки по запросам
- •Выборка данных в MapInfo Professional
- •Характеристики выборок
- •Выбор на экране
- •Инструменты, используемые для выбора
- •Команда Отменить выбор
- •Выбор с помощью запросов в MapInfo Professional
- •Команда Выбрать
- •Создание выражений
- •Выбор объектов с помощью команды Выбрать
- •Интерактивный выбор объектов
- •Команда SQL-запрос
- •Сохранение запросов
- •Шаблоны запросов
- •Вычисляемые колонки
- •Создание псевдонимов колонок
- •Обобщение данных
- •Группирование и упорядочивание данных
- •Объединение таблиц командой SQL-запрос
- •Внешнее объединение
- •Поиск информации внутри колонки с помощью функции InStr
- •Выбор записей таблицы, отсутствующих в другой таблице
- •Выбор четных или нечетных записей из таблицы
- •Поиск всех записей с дублирующимися значениями в колонках
- •Рассчет расстояния до фиксированной точки
- •Выбор улиц из таблицы StreetPro
- •Ввод SQL запросов вручную
- •MapInfo в действии
- •Тематические слои
- •Типы тематических карт
- •Карты отдельных значений
- •Карты диапазонов значений
- •Карты размерных символов
- •Карта плотности точек
- •Карты столбчатых диаграмм
- •Карты круговых диаграмм
- •Работа с тематическими картами и легендами
- •Настройка тематической карты
- •Сохранение тематических настроек
- •Использование операции обновления колонки в тематической картографии
- •Работа с Легендами
- •Что такое картографические легенды?
- •Что такое тематические легенды?
- •Работа с картами растровых поверхностей
- •Работа с 3DКартой и Картой-призмой
- •Меню 3DКарта
- •Карта-призма
- •Создание буферов из данных
- •Что такое буферные зоны
- •Создание буфера
- •Методы создания буферов
- •Типы буферов
- •Редактирование объектов с помощью “изменяемого объекта”
- •Обобщение данных
- •Объединение объектов с участием изменяемого объекта
- •Разрезание объектов
- •Объединение объектов и территориальное планирование
- •Объединение выбранных объектов
- •Слияние в таблице
- •Создание полигонов Вороного
- •Объекты Группа точек и Коллекция
- •Обработка и действия с объектами
- •Замыкание объектов
- •Проверка полигонов
- •Коррекция топологии
- •Совмещение и генерализация
- •Удаление фрагментов объектов
- •Работа с графиками
- •Как выбрать правильный тип графика
- •Термины используемые при построении графиков
- •3D Графики
- •Площадные графики
- •Столбчатые графики
- •Пузырьковые графики
- •Колонки
- •Гистограммы
- •Линейные графики
- •Круговые диаграммы
- •Точечные графики
- •Графики поверхности
- •Создание графика
- •Использование Мастера графиков
- •Правка графика
- •Как построить графики нескольких переменных из разных таблиц
- •Выборки из графика и связанных с ним таблиц
- •Сохранение графика
- •Шаблоны графиков и другие вспомогательные файлы
- •Использование графиков, созданных в ранних версиях MapInfo
- •Изменение стиля оформления карты
- •Изменение стиля региона
- •Изменение стиля линии
- •Изменение стиля Символа
- •Изменения стиля текста
- •Подписывание карты
- •Работа с подписями
- •Текст подписи
- •Автоматическое подписывание
- •Изменение подписей вручную
- •Использование текстовых объектов в качестве подписей
- •Удаление подписей
- •Сохранение подписей
- •Работа с отчетами
- •Что такое окно Отчета?
- •Работа в окне Отчета
- •Перед тем как создать отчет
- •Создание нового Отчета
- •Работа с легендами в Отчете
- •Перемещение рамок в Отчете
- •Выравнивание объектов Отчета
- •Масштабирование Карты в Отчете
- •Создание дубля окна Карты
- •Создание картографической легенды
- •Картографические легенды
- •Создание картографической легенды
- •Создание картографической легекды
- •Другие атрибуты легенды
- •Изменение картографической легенды
- •Добавление раздела к картографической легенде
- •Печать и экспорт результатов
- •Печать Отчетов
- •Экспорт отчета
- •Работа с растровыми изображениями
- •Допустимые форматы растров в MapInfo
- •Настройки цветов для растровых изображений
- •Как открыть растровое изображение
- •Открытие незарегистрированных изображений
- •Открытие полностью или частично зарегистрированных растровых изображений
- •Открытие зарегистрированного изображения
- •Регистрация координат растрового изображения
- •Перевод векторных координат в растровое изображение
- •Изменение контрольных точек
- •Печать/экспорт полупрозрачных изображений
- •Содержимое растровой таблицы
- •Что такое система координат и проекция
- •Что такое проекция?
- •Что такое система координат?
- •Допустимые типы систем координат и проекций
- •Выбор проекций
- •Выбор проекции для разных задач
- •Конвертация координат
- •Преобразование градусов/минут/секунд в десятичные градусы
- •Конвертация десятичных градусов в градусы, минуты, секунды
- •Работа с проекциями
- •Как показать карту в другой проекции
- •Как сохранить карту в другой проекции
- •Часто задаваемые вопросы о проекциях
- •Создание собственной системы координат
- •Применение файла MAPINFOW.PRJ
- •Топоцентрическая (региональная) система координат
- •Редактирование файла "Mapinfow.prj"
- •Создание новой картографической проекции
- •Пример создания проекции
- •Аффинные преобразования
- •Географические карты и планы
- •Таблицы океанов и координатной сетки
- •Внедрение OLE-объектов из MapInfo
- •Термины и понятия OLE
- •Кнопки и команды меню
- •Инструменты OLE
- •Меню и инструменты объекта MapInfo Map
- •Меню Правка
- •Меню Показ
- •Меню Таблица
- •Меню Карта
- •Показать по-другому
- •Меню Справка
- •Сохранение Карты в документе
- •Изменение размера и положения картографического объекта
- •Сравнение объекта MapInfo Map и объекта Data Map
- •Использование таблиц MapInfo в картах объекта Data Map
- •Связь MapInfo с Интернетом
- •Активные объекты
- •Использование инструмента Геолинк
- •Использование инструмента Геолинк в окне Списка
- •Программа HTML-Карта
- •Что такое районирование и как его применять?
- •Список районов
- •Районирование
- •Создание выражений
- •Составление простых выражений
- •Составление сложных выражений
- •Задание констант
- •Символьные строки
- •Очередность выполнения операторов
- •Функции
- •Работа с окном MapBasic
- •Доступ к окну MapBasic
- •Примеры программ MapBasic
- •Дигитайзер в MapInfo
- •Полный список горячих клавиш
- •Элементы системы координат
- •Проекции и их параметры
- •Топоцентрическая (региональная) система координат
- •Формат обмена данными MapInfo
- •Заголовок файла формата MIF
- •Секция данных в файлах формата MIF
- •Файл формата MID
- •Типы штриховок (в версиях до MapInfo Professional 7.5)
- •Новые типы штриховок (добавлены в MapInfo Professional 7.5)
- •Определение собственного референц-эллипсоида
- •Служебные файлы MapInfo Professional и вспомогательные файлы настроек
- •Изменения в реестре
- •Список изменений по версиям
- •Оператор Objects Move
- •Оператор Objects Offset
- •Функция Offset()
- •Функция SphericalOffset()
- •Функция CartesianOffset()
- •Функция OffsetXY()
- •Функция SphericalOffsetXY()
- •Функция CartesianOffsetXY()
- •Функция LayerInfo( )
- •Оператор Register
- •Оператор Server Create Map
- •Функция TableInfo( )
- •Словарь
- •ИНДЕКС

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Ключевые слова
MapInfo поддерживает следующие ключевые слова: Any, All, In и Between. При построении выражений их надо вводить с клавиатуры.
Слово Any означает, что надо выбрать один из элементов, например:
54. КОД_РЕГИОНА = any(”33”, ”52”, ”86”)
Выражение 53 принимает значение "True" для любой записи, относящейся к Владимирской и Нижегородской областям, а также к Ханты-Мансийскому АО.
Следующий пример иллюстрирует действие оператора All:
55. КОД_РЕГИОНА <> all(”33”, ”52”, ”86”)
Это выражение означает, что программа должна выбрать записи, НЕ относящиеся к Владимирской и Нижегородской областям и ХМАО. Сравним с действием другого опреатора:
56. КОД_РЕГИОНА <> any(”33”, ”52”, ”86”)
Записи для Владимирской области будут выбраны, т.к. они не относятся ни к Нижегородской области, ни к ХМАО. По той же причине выбираются записи для Нижегородской области и ХМАО – и выбрано будет все.
Рассмотрим пример использования In:
57. КОД_РЕГИОНА in(”33”, ”52”, ”86”)
Данное выражение дает такой же результат, что и в примере 53. Заметим, что “In” эквивалентно “=any”, а “Not” in эквивалентно “<>all”. Наконец, примеры 57 и 58 показывают применение Between...and:
58.СТОИМОСТЬ between 50000 and 100000
59.(СТОИМОСТЬ between 50000 and 100000) or (СТОИМОСТЬ between 150000 and 200000)
Эти выражения имеют те же значения, что 42 и 43 соответственно. Оператор Between...and можно применять и к строкам (аналогично примерам 47, 49 и 50).
Очередность выполнения операторов
При работе с выражениями MapInfo необходимо знать, какие действия будут выполняться первыми. Правилами установлена некоторая очередность вычислений. Таблица, приведенная ниже, показывает, в какой последовательности выполняются действия. Операторы, имеющие одинаковую очередность, выполняются слева направо. Возведение в степень выполняется справа налево. Например, 2 ^ -3 ^ -4 = 2 ^ ( - (3 ^ (-4)))
в первую очередь |
круглые скобки |
|
возведение в степень |
|
отрицательное число |
|
умножение и деление |
|
сложение и вычитание |
|
географические операторы |
|
операторы сравнения |
|
Not |
в последнюю очередь |
And |
Or |
Например, выражение 3+4*2 равно 11, т.к. операция умножения совершается первой:
3+4*2=
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
502 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
3+8=
11
Если поставить скобки, то сначала будет выполняться операция сложения:
(3+4)*2=
7*2=
14
Рассмотрим выражения 59, 60 и 61, в результате которых должны быть выбраны все записи за июль или сентябрь 1989 года:
60. Year(ДОСТАВЛЕНО)=89 and Month(ДОСТАВЛЕНО)=7 or Month(ДОСТАВЛЕНО)=9
Поскольку оператор And выполняется раньше, чем Or, MapInfo обрабатывает выражение “Year(ДОСТАВЛЕНО)=89 and Month(ДОСТАВЛЕНО)=7”, как будто оно заключено в скобки.
61.(Year(ДОСТАВЛЕНО)=89 and Month(ДОСТАВЛЕНО)=7) or Month(ДОСТАВЛЕНО)=9
Вэтом случае будут выбраны записи за июль 1989 года или сентябрь любого года. Но нас такой ответ не удовлетворяет. Поэтому необходимо добавить ко второму выражению скобки:
62.Year(ДОСТАВЛЕНО)=89 and (Month(ДОСТАВЛЕНО)=7 or Month(ДОСТАВЛЕНО)=9)
Вданном выражении MapInfo "знает", что во второй части выражения надо выбирать как записи, удовлетворяющие условию “Month(ДОСТАВЛЕНО)=7”, так и записи
“Month(ДОСТАВЛЕНО)=9”.
Внимание: Если Вы не уверены, в какой последовательности производятся действия, используйте скобки для группирования элементов.
Функции
Функции производят с исходными значениями данных некоторые преобразования для получения новых значений. В общем случае функции имеют вид:
<название функции>(параметры)
Большинство функций MapInfo работают с одним или двумя параметрами. Параметр может представлять собой колонку или выражение.
Для работы с географическими функциями MapInfo использует ключевые слова “obj” или
“object”, принимающая значения: Area, CentroidX, CentroidY, ObjectLen и Perimeter. Они дают команду MapInfo выбирать значения графических объектов, а не атрибутивную информацию.
Abs
Синтаксис: Abs(числовое_выражение)
Назначение: функция возвращает абсолютное значение числового выражения. Если выражение имеет значение большее или равное нулю, Abs() возвращает значение без изменений. Если же значение выражения меньше нуля, Abs возвращает значение выражения, умноженное на (-1).
Рассмотрим выражение: |
|
|
63. Abs(numA-numB) |
|
|
|
|
|
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
503 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
(возвращает абсолютную разницу между numA и numB, независимо от того, что больше).
Следующее примеры демонстрирует работу функции Abs():
Abs(5) = 5
Abs(-3) = 3
Abs(-0.02) = 0.02
Area
Синтаксис: Area(obj, единицы_измерения)
Назначение: функция возвращает площадь географического объекта. Площадь можно определять только у следующих видов объектов: полигонов, эллипсов, прямоугольников и скругленных прямоугольников. Точечные и линейные объекты, а также дуги и текст по определе-нию не имеют площади, поэтому Area() возвратит 0.
Если Вы выбрали в меню функций имя Area(), в окно выражения помещаются в скобках два параметра: ключевое слово “obj” и текущие единицы измерения в двойных кавычках. При составлении выражений обычно предлагается использовать квадратные километры (sq km). Если Вы хотите получить площадь в других единицах измерения, наберите их название в двойных кавычках.
Единицы измерения |
Название |
|
|
квадратные мили |
“sq mi” |
квадратные километры |
“sq km” |
квадратные дюймы |
“sq in” |
квадратные футы |
“sq ft” |
квадратные топографические футы |
“sq survey ft” |
квадратные ярды |
“sq yd” |
квадратные миллиметры |
“sq mm” |
квадратные сантиметры |
“sq cm” |
квадратные метры |
“sq m” |
квадратные чейны |
“sq ch” |
квадратные линки |
“sq li” |
акры |
“acre” |
гектары |
“hectare” |
|
|
Выберем все строки таблицы, соответствующие объектам с площадью более, чем 59 квадратных км:
64.Area(obj,”sq km”)>59
Атеперь выберем все строки таблицы, соответствующие объектам с плотностью населения менее 250 человек на квадратный км:
65.НАСЕЛЕНИЕ/Area(obj,”sq km”)<250
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
504 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Вычислим плотность населения в объекте:
66.НАСЕЛЕНИЕ/Area(obj,”sq mi”)
Можно получить площадь в гектарах:
67.Area(obj,”hectare”)
Аможно получить площадь и в квадратных милях:
68.Area(obj,”sq mi”)
CentroidX
Синтаксис: CentroidX(obj)
Назначение: функция возвращает координату X центроида объекта, которая является значением широты на картах.
Если координаты представляют широту и долготу, то значение возвращается в десятичных градусах. В противном случае, значение вычисляется в единицах, заданных для выбранной таблицы.
Пусть требуется выбрать все объекты к востоку от Нью-Йорка:
69.CentroidX(obj)>-73.997890
Атеперь найдем объекты, расположенные к западу от Нью-Йорка:
70.CentroidX(obj)<-73.997890
CentroidY
Синтаксис: CentroidY(obj)
Назначение: функция возвращает координату Y центроида объекта, которая является значением широты на картах.
Если координаты представляют широту и долготу, то значение возвращается в десятичных градусах. В противном случае, значение вычисляется в единицах, заданных для выбранной таблицы.
Пусть требуется выбрать все объекты к северу от Нью-Йорка:
71.CentroidY(obj)>40.750450
Атеперь найдем объекты, расположенные к югу от Нью-Йорка:
72.CentroidY(obj)<40.750450
Асейчас выберем все объекты к северо-востоку от Нью-Йорка:
73.CentroidX(obj)>-73.997890 and CentroidY(obj)>40.750450
Первое предложение этого выражения выбирает объекты к востоку от Нью-Йорка, а второе – к северу от него. Поскольку предложения соединены оператором And, объект должен удовлетворять обоим условиям.
Инаконец, выберем все объекты, расположенные к северу или к востоку от Нью-Йорка:
74.CentroidX(obj)>-73.997890 or CentroidY(obj)>40.750450
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
505 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Первое предложение этого выражения выбирает объекты к востоку от Нью-Йорка, а второе – к северу от него. Поскольку предложения соединены оператором Or, объект должен удовлетворять хотя бы одному из условий.
Chr$
Синтаксис: Chr$(числовое_выражение)
Назначение: Функция возвращает строку, состоящую из одного элемента, которая соответствует коду заданного элемента (символа), определенного числовым выражением. В большинстве систем это положительное число [0; 255].
Допустим, Вам требуется вывести на экран подписи в две строки. С помощью функции Chr$() можно вставить специальный символ перевода строки в текст подписи. ANSIзначение этого символа равно 13. Пусть в первой строке надписи Вам нужно вывести название области, а во второй – численность населения. Для этого потребуется создать следующее выражение:
75.Proper$(ОБЛАСТЬ)+Chr$(13)+НАСЕЛЕНИЕ
Внекоторых языках семейства BASIC Chr$(10) используется для перехода к новой строке. В MapBasic Вы можете использовать как Chr$(13), так и Chr$(10).
Cos
Синтаксис: Cos(числовое_выражение)
Назначение: функция возвращает значение косинуса числового выражения, которое представляет собой угол в радианах.
CurDate
Синтаксис: CurDate()
Назначение: функция возвращает текущую дату.
Например, одну из колонок поместим текущую дату:
76. CurDate()
Если нужно внести в колонку текущую дату, можно использовать данную функцию в сочетании с командой ОБНОВИТЬ КОЛОНКУ.
Чтобы выбрать все записи о поступлениях, принятых 30 и более дней назад, ставим выражение:
77. ДОСТАВЛЕНО<=CurDate()-30
Day
Синтаксис: Day(поле_типа_дата)
Назначение: функция возвращает день из выражения даты – целое число, изменяющееся в пределах [1; 31].
Выберем все записи, относящиеся к первому числу любого месяца:
78. Day(date)=1
Теперь выберем все записи, относящиеся к пятницам, не падающим на 13-ое число:
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
506 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
79. Weekday(date)=6 and Day(date)<>13
Это выражение состоит из двух предложений. Первое использует функцию Weekday() для выбора записей, в которых день недели равен пятнице. Второе предложение использует функцию Day() для выбора записей, в которых число не равно (< >) 13. Поскольку эти предложения связаны ключевым словом And, то для того, чтобы попасть в выборку, запись должна удовлетворять обоим условиям.
Distance
Синтаксис: Distance(x1, y1, x2, y2, единицы_измерения)
x1 и y1 – широта и долгота первой точки; x2 и y2 – широта и долгота второй точки;
единицы_измерения – текущие единицы измерения длины.
Назначение: функция вычисляет расстояние между двумя точками.
Когда Вы выбираете Distance() в списке функций, в окне выражения появляются скобки с ключевым словом “obj” и текущими единицами длины в двойных кавычках. При составлении выражений обычно предлагается использовать километры (km). Если вы хотите вы-числить расстояние в других единицах, укажите эти единицы в кавычках.
Можно производить вычисления в следующих единицах измерения:.
Название |
Единицы измерения |
“mi” мили
“km” километры
“in” дюймы
“ft” футы
“survey ft” топографические футы
“li” линки
“yd” ярды
“mm” миллиметры
“cm” сантиметры
“m” метры
“nmi” |
морские мили |
Пусть, например, требуется найти расстояние между некоторыми объектами и Нью-Йорком, координаты которого равны 40.750450 с.ш. и 73.997890 з.д.:
80.Distance(-73.997890, 40.750450, CentroidX(obj), CentroidY(obj),”mi”)
Атеперь выберем все объекты, удаленные не более, чем на 20 миль, к западу от НьюЙорка:
81.CentroidX(obj)<-73.997890 and Distance(-73.997890, 40.750450, CentroidX(obj), CentroidY(obj),”mi”)<=20
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
507 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Это выражение состоит из двух предложений. Первое определяет, что объект должен лежать к западу от Нью-Йорка. Второе предложение задает ограничение на расстояние: не более 20 миль. Поскольку эти предложения связаны оператором And, то для того, чтобы попасть в выборку, объект должен удовлетворять обоим условиям.
Format$
Синтаксис: Format$ (числовое_выражение, шаблон)
Шаблон – это строка, задающая формат результата, возвращаемого функцией.
Назначение: функция возвращает строку, в которой число имеет вид, который был изначально задан пользователем.
Format$() возвращает строку символов, содержащую форматированную строковую запись числа (значения первого параметра). Шаблон форматирования снабжает число символами (например, $, %, точка, запятая), которые делают результирующую строку более читаемой. Допустим, у нас имеется число 12345.67, при помощи Format$() мы можем получить
"$12345.67".
В параметре "числовое_выражение" содержится число, вид которого Вам нужно изменить. Параметр "шаблон" представляет собой строку с символами, которые определяют вид числового выражения. Данный параметр должен включать в себя специальные символы: #, 0, %, точку (.) запятую (,) или точку с запятой (;) – именно они определяют вид конечного результата. В таблице ниже приводится список всех символов, используемых для представления чисел.
Шаблон |
Действие |
|
|
# |
В результате будет получена одна или несколько цифр от исходного |
|
значения. Если шаблон содержит один или несколько символов # слева |
|
от разделителя целой и дробной части числа и значение числа |
|
изменяется от 0 до 1, то в результате мы получим число, которое будет |
|
начинаться не с 0, а с разделителя целой и дробной части (точки или |
|
запятой). |
0 |
Данный символ работает аналогично предыдущему. Если в шаблоне |
|
содержится один или несколько символов 0 слева от разделителя целой |
|
и дробной части числа, а значение числа изменяется в пределах (0; 1), |
|
то в результате мы получим число, которое начинается с 0. |
. (точка) |
Данный символ используется в комбинации с символом #. Если в |
|
шаблоне имеется точка, то число символов # справа от точки задает |
|
количество десятичных знаков после запятой в отформатированной |
|
строке. |
, (запятая) |
Если Вам потребуется разделять тысячи и использовать для этой цели |
|
запятую, то включите в параметр знак запятой. В результате Вы |
|
получите “10,000,000” вместо “10000000”. |
% |
В результате мы получим величину, умноженную на 100 (например, 0.75 |
|
будет представлять собой "75%"). Если Вам необходимо использовать |
|
знак процента, но Вам не нужно, чтобы программа выполняла данное |
|
действие, просто поместите перед знаком процента обратную |
|
наклонную черту (\). |
|
|
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
508 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Шаблон |
Действие |
|
|
E+, e+ |
Такое представление можно встретить в научной литературе. Значение |
|
1234 изменится на "1.234e+03". Если показатель степени является |
|
положительным числом, то после знака “e” появится знак "+". В случае |
|
дробных чисел (0; 1) после "е" будет стоять "-". |
E-, e- |
Данный параметр работает аналогично предыдущему. Разница состоит |
в том, что знак "+" после "е" не появляется.
;(точка с запятой) Если в параметр "шаблон" Вы включите символ точки с запятой, Вы сможете различать положительные и отрицательные числа по их виду. Поместите точку с запятой после одного массива символов (представленных в данной таблице) перед вторым массивом. Тогда символы второго массива будут работать с отрицательными числами. Для того, чтобы отрицательные числа появлялись со знаком "-", включите знак "-" во второй массив символов.
-Когда шаблон строки включает в себя и положительные и отрицательные форматы, результат не будет автоматически включать знак "-". Если Вам нужно включить знак "-" в свой результат, надо включить "-" во вторую часть набора символов. Смотрите примеры ниже.
\Если в шаблоне присутствует такая наклонная черта, то знак, расположенный после нее, работать не будет. Таким образом, Вы можете включать в результат символы, используемые в данной таблице, при этом изменения вида чисел производиться не будет.
Примеры: Ниже приведены примеры использования параметра "шаблон" функции Format$( ). В средней колонке представлены примеры значений числового параметра, а в правой - возвращаемый функцией Format$( ) результат.
|
Шаблон |
Числовое значение |
Format$( ) возвращает |
|
|
|
|
|
|
|
|
|
“,#” |
12345 |
|
”12,345” |
|
|
“,#” |
-12345 |
|
”-12,345” |
|
|
“$#” |
12345 |
|
”$12345” |
|
|
“$#” |
-12345 |
|
”-$12345” |
|
|
“$,#” |
12345 |
|
”$12,345” |
|
|
“$,#” |
-12345 |
|
”-$12,345” |
|
|
“$,#.##” |
12345.678 |
|
”$12,345.68” |
|
|
“$,#.##” |
-12345.678 |
|
”-$12,345.68” |
|
|
“$,#.##;($,#.##)” |
12345.678 |
|
”$12,345.68” |
|
|
“$,#.##;($,#.##)” |
-12345.678 |
|
”($12,345.68)” |
|
|
“,#.###” |
12345.6789 |
|
”12,345.679” |
|
|
“,#.#” |
12345.6789 |
|
”12,345.7” |
|
|
“#.#” |
12345.6789 |
|
”12345.7” |
|
|
“#.###E+##” |
12345.6789 |
|
”1.235e+04” |
|
|
“#.###E+##” |
-12345.6789 |
|
”-1.235e+04” |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MapInfo Professional 7.5 |
|
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
509 |
|
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Шаблон |
Числовое значение |
Format$( ) возвращает |
|
|
|
“#.###E+##” |
0.054321 |
”5.432e-02” |
“#.###E-##” |
12345.6789 |
”1.235e04” |
“#.###E-##” |
0.054321 |
”5.432e-02” |
“#%” |
0.054321 |
”5%” |
“#.##%” |
0.054321 |
”5.43%” |
“#.##\%” |
0.054321 |
”.05%” |
“0.##\%” |
0.054321 |
”0.05%” |
|
|
|
InStr
Синтаксис: InStr(положение, строка, подстрока)
Назначение: Функция проверяет, содержит ли заданная строка указанную подстроку. MapInfo производит поиск подстроки, начиная с символа строки с номером, указанным в параметре "положение". Если это число равно 1, MapInfo начинает поиск с начала строки. Если же он равен, скажем, 6, то MapInfo начинает поиск с шестого символа.
Если строка содержит подстроку, InStr() возвращает позицию, с которой она начинается. Если подстрока пустая, то InStr() вернет 0.
Вам нужно нанести на карту города банки. Для этого нужно найти все строки, содержащие подстроку “Банк” в колонке "Название". Слово “Банк” может быть как отдельным словом в названии, так и сливаться с другими словами. Вы также не уверены, что слово “Банк” написано везде большими буквами. Поэтому Вы составляете такое выражение:
82. InStr(1,UCase$(НАЗВАНИЕ),”БАНК”)>0
Это выражение задает поиск строки “БАНК” в колонке "Название". Выбираются все записи, содержащие эту строку.
Одна из записей в данных выглядит следующим образом: “Проверим действие функции InStr.” А Вам требуется найти положение слова "действие". Тогда составьте выражение такого вида:
83.InStr(1,”Проверим действие функции InStr”,”действие”)
Внашем случае мы получим значение, равное 10.
Если искомой строки не найдено, то функция вернет 0.
Int
Синтаксис: Int(числовое_выражение)
Назначение: функция возвращает целое число, получаемое путем удаления дробной части числа, которое меньше или равно указанному в числовом выражении.
Примеры: В таблице, приведенной ниже, показано, как функция Int() обрабатывает различные выражения.
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
510 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Число |
Возвращаемое значение |
|
|
5.2 |
5 |
5.999 |
5 |
-7.8 |
-8 |
-7.2 |
-8 |
|
|
LCase$
Синтаксис: LCase$(строка)
Назначение: функция возвращает строку того же содержания, что и строка, определенная в строковом выражении, однако все буквы в возвращаемой строке будут строчными.
Рассмотрим выражение:
84.LCase$(ГОРОД)
Втаблице ниже приведены примеры того, как могут быть обработаны записи в поле таблицы "Город".
Исходная строка |
Возвращаемая строка |
|
|
НИЖНИЙ НОВГОРОД |
нижний новгород |
Нижний новгород |
нижний новгород |
нижний новгород |
нижний новгород |
|
|
Left$
Синтаксис: Left$(строка, числовое_выражение)
Назначение: Функция возвращает часть строки, состоящую из определенного числа символов, из левой части исходного строкового выражения.
Рассмотрим следующее выражение:
85.Left$(ГОРОД,8)
Втаблице ниже приведены примеры того, как могут быть обработаны записи в поле таблицы "Город".
Исходная строка |
Возвращаемая строка |
|
|
Нижний Новгород |
Нижний Н |
Махачкала |
Махачкал |
Москва |
Москва |
|
|
Теперь рассмотрим выражение, где "Телефон" – это колонка, содержащая телефонные номера, начинающиеся с кодов городов.
86. Left$(ТЕЛЕФОН,3)=”812”
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
511 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Это выражение выбирает все строки таблицы, поле номера телефона в которых начинается на “812”. Обратите внимание, что колонка "Телефон" содержит строки, поэтому число 812 должно быть заключено в двойные кавычки.
Len
Синтаксис: Len(строка)
Назначение: функция возвращает число символов в строке.
LTrim$
Синтаксис: LTrim$(строка)
Назначение: Функция удаляет все непечатаемые символы (пробелы, табуляторы и т.п.) в начале строки и возвращает новую строку.
См.также: RTrim$
Maximum
Синтаксис: Maximum(числовое_выражение, числовое_выражение)
Назначение: функция возвращает из двух значений наибольшее.
Найдем дом с наибольшим номером на заданном отрезке улицы (данные хранятся в файле
StreetInfo).
87. Maximum(ToLeft,ToRight)
Колонка "ToLeft" содержит наибольший номер по левой стороне улицы, а "ToRight" – по правой стороне уличного сегмента.
Mid$
Синтаксис: Mid$(строка, положение, длина)
строка – символьное выражение; положение – целое число, обозначающее начальное положение в строке;
длина – строка, определяющая количество символов, которое необходимо включить в результирующую строку.
Назначение: функция возвращает часть строки заданной длины, начиная с указанной позиции.
Рассмотрим следующее выражение:
88. Mid$(ГОРОД,5,4)
Ниже приведены примеры того, как могут быть обработаны записи в поле таблицы "Город":
Исходная строка |
Возвращаемая строка |
Ростов-на-Дону ов-н
Москва ва
Норильск льск
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
512 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Заметьте, что из строки “Москва” выделено только 2 символа. Это произошло потому, что "Москва” – слишком короткая строка (меньше суммы значений параметров "положение" и "длина").
Minimum
Синтаксис: Minimum(числовое_выражение, числовое_выражение)
Назначение: функция возвращает из двух значений наименьшее.
Найдем дом с наименьшим номером на заданном отрезке улицы (данные хранятся в файле
StreetInfo).
89. Minimum(FromLeft,FromRight)
Колонка "FromLeft" содержит наибольший номер по левой стороне улицы, а "FromRight" – по правой стороне данного отрезка.
Month
Синтаксис: Month(поле_типа_дата)
Назначение: Функция возвращает месяц из выражения даты – целое число, изменяющееся в пределах [1; 12].
Выберем все записи за август:
90. Month(ДОСТАВЛЕНО)=8
Выберем все записи, полученные до августа:
91.Month(ДОСТАВЛЕНО)<8 Выберем все записи за август 1990 года:
92.Month(ДОСТАВЛЕНО)=8 and Year(ДОСТАВЛЕНО)=1990
Это выражение состоит из двух предложений. Первое указывает, что запись должна относиться к августу, а второе – что она должна относиться к 1990 году. Поскольку эти предложения связаны оператором And, то для того, чтобы попасть в выборку, запись должна удов-летворять обоим условиям.
Выберем все записи за август или сентябрь:
93. Month(ДОСТАВЛЕНО)=8 or Month(ДОСТАВЛЕНО)=9
Это выражение состоит из двух предложений. Первое указывает, что запись может относиться к августу, а второе – что она может относиться к сентябрю. Поскольку эти предложения связаны оператором Or, то для того, чтобы попасть в выборку, запись должна удовлет-ворять одному из условий.
Все записи за август или сентябрь можно получить и следующим образом:
94. Month(ДОСТАВЛЕНО)=any(8,9)
Это выражение дает тот же результат, что и предыдущий пример, однако здесь используется ключевое слово Any.
Атеперь найдем все записи за август или сентябрь 1990 года:
95.Month(ДОСТАВЛЕНО)=any(8,9) and Year(ДОСТАВЛЕНО)=1990
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
513 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Это выражение состоит из двух предложений. Первое указывает, что запись должна относиться к августу или сентябрю, а второе – что она должна относиться к 1990 году. Поскольку эти предложения связаны оператором And, то для того, чтобы попасть в выборку, запись должна удовлетворять обоим условиям.
ObjectLen
Синтаксис: ObjectLen(obj, единица_измерения)
Назначение: функция возвращает длину линейного объекта (линии или полилинии). Для всех остальных объектов возвращается значение 0.
Когда Вы выбираете ObjectLen() в списке функций, в окне выражения появляются скобки с ключевым словом “obj” и текущими единицами длины в двойных кавычках. При составлении выражений обычно предлагается использовать километры (km). Если Вы хотите вычислить расстояние в других единицах, укажите эти единицы в кавычках.
Можно производить вычисления в следующих единицах измерения:
Название |
Единицы измерения |
|
|
“mi” |
мили |
“km” |
километры |
“in” |
дюймы |
“ft” |
футы |
“survey ft” |
топографические футы |
“yd” |
ярды |
“mm” |
миллиметры |
“cm” |
сантиметры |
“li” |
линки |
“m” |
метры |
“nmi” |
морские мили |
|
|
Пусть требуется вычислить длину объекта:
96.ObjectLen(obj, ”km”)
Атеперь выразим длину того же объекта в милях:
97.ObjectLen(obj,”mi”)
Иногда требуется выразить длину линейного объекта в морских милях:
98. ObjectLen(obj, ”nmi”)
Для того, чтобы перевести километры в мили, надо умножить значение на .621.
Выберем все объекты, длина которых превышает 10 километров:
99. ObjectLen(obj, ”km”)>10
Perimeter
Синтаксис: Perimeter(obj, единица_измерения)
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
514 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Результат: Функция возвращает периметр площадных объектов: полигонов, эллипсов, прямоугольников и скругленных прямоугольников.
Когда Вы выбираете Perimeter() в списке функций, в окне выражения появляются скобки с ключевым словом “obj” и текущими единицами длины в двойных кавычках. При составлении выражений обычно предлагается использовать мили (mi). Если Вы хотите вычислить расстояние в других единицах, укажите эти единицы в кавычках (см. таблицу выше).
Вычислим периметр некоторого объекта:
100.Perimeter(obj, ”km”)
Выразим периметр этого объекта в километрах:
101.Perimeter(obj, ”mi”)
А теперь выразим периметр объекта в метрах:
102.Perimeter(obj, ”m”)
Пусть требуется выбрать все объекты, периметр которых превышает 35 миль:
103.Perimeter(obj, ”mi”)>35
Proper$
Синтаксис: Proper$(строка)
Назначение: функция возвращает строку, в которой первая буква является заглавной, а остальные – строчными.
Рассмотрим следующее выражение:
104.Proper$(ГОРОД)
Ниже приведены примеры того, как могут быть обработаны записи в поле таблицы "Город":
Исходная строка |
Возвращаемая строка |
|
|
НИЖНИЙ НОВГОРОД |
Нижний Новгород |
Нижний |
Нижний Новгород |
новгороД |
|
нижний |
Нижний Новгород |
новгород |
|
Нижний |
Нижний Новгород |
Новгород |
|
|
|
Right$( )
Синтаксис: Right$(строка, числовое_выражение)
Назначение: функция возвращает часть строки, состоящую из определенного числа символов, из правой части исходной строки.
Рассмотрим следующее выражение:
105.Right$(ГОРОД,4)
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
515 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
В этом примере будут возвращены последние четыре символа записей из табличного поля "Город".
См. также: описание функций Left$, Mid$
Round
Синтаксис: Round(числовое_выражение, числовое_выражение)
Назначение: функция возвращает округленное значение числа, заданного первым параметром, при этом степень округления определяется вторым параметром.
Рассмотрим общий случай:
106.Round(число1,число2)
Здесь функция округляет значение "число1" до значения, кратного параметру "число2".
Исходное значение |
Округленное значение |
|
|
14347,10000 |
10000 |
14347, 100 |
14300 |
14347, 10 |
14350 |
12.18353, .1 |
12.20000 |
12.18353, .001 |
12.18400 |
|
|
Найдем всех жителей области, средний возраст которых составляет 42 года:
107.Round(СР_ВОЗРАСТ, 1)=42
Независимо от типа данных целесообразно не напрямую сравнивать записи со значением 42 (СР_ВОЗРАСТ=42), а использовать именно это выражение, поскольку обычно статистические данные содержат возраст с точностью до одной десятой, а при прямом сравнении MapInfo не выберет записи со значениями, скажем, 41.7 или 42.1.
RTrim$
Синтаксис: RTrim$(строка)
Назначение: функция удаляет все непечатаемые символы (пробелы, табуляторы и т.п.) в конце строки и возвращает новую строку.
См. также: LTrim$
Sin
Синтаксис: Sin(числовое_выражение)
Назначение: функция возвращает значение синуса числового выражения, которое представляет собой угол в радианах.
Str$
Синтаксис: Str$(числовое_выражение)
Назначение: функция возвращает строку, в которой содержится значение заданного выражения.
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
516 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
Если выражение является отрицательным числом, то первым знаком в возвращаемой строке будет "-". Если в выражении используется положительное число, то вместо первого знака будет поставлен пробел. Если выражение представляет собой пробел, то Str$() вернет строку, описывающую тип объекта (например, "полигон").
Если выражение возвращает логическое (True/False) значение, то Str$ вернет “T” для True
или “F” для False.
Если используется тип переменных Float (вещественное), то Str$ будет создавать строковое значение, представляющее число, полученное при округлении:
•Шесть знаков точности (всего 6 ненулевых разрядов, включая любое число передвинутых или перемещенных, в зависимости от положения десятичной запятой), если число меньше, чем 100,000.
•Ближайшие .01 (сотые), если число больше, чем 100,000.
Если округление не нужно, то для соблюдения точности числа знаков или точности отображения строки используйте функцию Format$().
.UCase$
Синтаксис: UCase$(строка)
Назначение: функция возвращает строку того же содержания, что и строка, определенная в строковом выражении, однако все буквы в возвращаемой строке будут прописными.
Рассмотрим следующее выражение:
108.UCase$(ГОРОД)
Ниже приведены примеры того, как могут быть обработаны записи в поле таблицы "Город":
Исходная строка |
Возвращаемая строка |
|
|
НИЖНИЙ НОВГОРОД |
НИЖНИЙ НОВГОРОД |
Нижний новгороД |
НИЖНИЙ НОВГОРОД |
нижний новгород |
НИЖНИЙ НОВГОРОД |
|
|
См. также: Lcase$, Proper$
Val
Синтаксис: Val(строка)
Назначение: Функция извлекает из строкового выражения числовое значение.
Val() пропускает все знаки табуляции, пробелы, символы конца строки, а затем исследует первую последовательность числовых символов и производит поиск числовых значений. Поиск прекращается, как только функция встретит первый нецифровой символ, при этом знак "-" (символ переноса) и десятичная точка не учитываются (например, Val("-9.9") = -9.9.). Если первый символ (после знаков табуляции в начале строки, пробелов и символа конца строки) не является числовым, то Val() вернет 0.
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
517 |
MI_UG.PDF |

MapInfo Professional 7.5 Руководство пользователя (Полное)Глава 15: Специальные разделы о работе с MapInfo Pro-
В таблице, приведенной ниже, показано, как функция Val() извлекает числа из строк:
Исходное выражение |
Возвращаемое значение |
|
|
|
|
12 |
тысяч |
12 |
52 |
- 62 Арбат |
52 |
Восемнадцать |
0 |
|
А/я 239 |
0 |
|
|
|
|
Weekday
Синтаксис: Weekday(поле_типа_дата)
Назначение: Функция возвращает из выражения даты день недели. Это целое число, изменяющееся в пределах [1; 7], причем 1 обозначает воскресенье, а 7 – субботу.
Выберем все записи в таблице, относящиеся к среде:
109.Weekday(ДАТА)=4
Выберем все записи в таблице за среду, четверг и пятницу:
110.Weekday(ДАТА)=any(4,5,6)
Ключевое слово Any обуславливает выбор строк, в которых дата равна одному из перечисленных дней недели.
Выберем все записи в таблице, сделанные в июльские пятницы:
111.Weekday(ДАТА)=6 and Month(ДАТА)=7
Это выражение состоит из двух предложений. Первое использует функцию Weekday() и указывает, что запись должна относиться к пятнице. Второе предложение использует функцию Month() и указывает, что запись должна относиться к июлю. Поскольку эти предложения связаны оператором And, то для того, чтобы попасть в выборку, запись должна удовлетворять обоим условиям.
Year
Синтаксис: Year(поле_типа_дата)
Назначение: Функция возвращает из выражения даты целое число, обозначающее год.
Найдем все записи, относящиеся к 1990 году:
112. Year(ДАТА)=1990
Найдем все заказы, сделанные в 1990 и 1991 годах.
113.Year(ДАТА)=any(1990,1991)
Найдем все заказы, сделанные с 1985 по 1990 год включительно.
114.Year(ДАТА)>=1985 and Year(ДАТА)<=1990
Это выражение состоит из двух предложений. Первое указывает, что запись должна относиться к 1985 или более позднему году, а второе – что она должна относиться к 1990 или более раннему году. Поскольку эти предложения связаны оператором And, то для того, чтобы попасть в выборку, запись должна удовлетворять обоим условиям.
MapInfo Professional 7.5 |
|
|
© May 2004 MapInfo Corporation. All rights reserved. |
518 |
MI_UG.PDF |