Смекни!
smekni.com

MapInfo Professional 90 Руководство пользователя (стр. 52 из 125)

О данных

Работая в MapInfo Professional®, Вы обязательно начнете добавлять новые данные или каким-нибудь способом улучшать существующие. В этой главе рассматриваются возможные варианты работы с таблицами MapInfo. Здесь же мы покажем один из способов создания Отчетов.

В этой главе:

Работа с таблицами MapInfo.........................254

Создание отчетов Crystal Reports....................267

6

Работа с таблицами MapInfo

После того как Вы разместили данные в MapInfo и создали TAB-файлы, можно начинать управлять ими. Вам предоставляется возможность просматривать любую таблицу с базой данных в MapInfo Professional (после того как данные конвертированы во внутренний формат MapInfo); удалять и добавлять поля, изменять их порядок, имена, тип, ширину и индекс; указывать проекцию таблицы прямо из диалога; проверять, геокодирована ли таблица (содержит ли объекты карты). Как внести подобные изменения смотрите в Изменение структуры таблицы на стр. 263.

Помните, что просматривать структуру списка или файла базы данных можно только после конвертации данных в структуру таблицы MapInfo Professional. Более подобные инструкции приводятся в разделе Показ результатов геокодирования на Карте в Главе 5 на стр. 245.

Чтобы проверить или изменить структуру таблицы:

• В меню Таблица выполните команды: сначала Изменить, а затем Перестроить. Появится диалог Показать структуру таблицы.

• Более подробную информацию смотрите в разделе Справочной системы: "Доступ к данным StreetPro".

Добавление данных к таблице

Важной операцией в работе с таблицами является возможность обновлять данные, содержащиеся в таблице. Команда MapInfo Professional Обновить колонку позволяет:

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

• Обновить таблицу.

• Поместить графическую информацию в видимые колонки.

Обновление информации в части таблицы

Используйте команду Обновить колонку для обновления информации в части таблицы. Например, Вы можете выбрать юго-восток США, и использовать команду Обновить колонку, чтобы заполнить колонку "sales rep" данными о торговом представителе для данной территории в таблице Selection.

Вы можете обновить все строки в таблице или только выбранные строки. Чтобы обновить выборку строк, выберите строки используя команды Выбрать, SQL-запрос, инструмент Выбор, Выбор в рамке или Выбор в круге и затем произведите обновление в выборке.

Добавление временной колонки в таблицу

Достаточно часто возникает необходимость добавить в таблицу данные из другой таблицы. В MapInfo для этого можно либо создать временную колонку, либо обновить одну из уже существующих. Для автоматического переноса информации в обоих случаях используется команда Таблица > Обновить колонку.

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

• Подробные инструкции и примеры смотрите в разделе Справочной системы: "Добавление временной колонки в таблицу".

Географическое объединение и объединение на основе описаний

Вы можете объединить две таблицы. Объединяя две таблицы MapInfo должна знать, каким образом сопоставлять записи из двух таблиц.

Пусть, например, Вы раскрашиваете территории по значениям продаж. Понятно, что все продажи для Северо-Западной территории надо объединить в единую группу, а продажи для Дальнего Востока - в другую и т.д. В MapInfo это можно сделать двумя способами:

• С помощью общего поля.

• Географически (графически).

В приведенном случае лучше использовать описательное поле с именем территории (возможно, сокращенным). Скажем, таблица областей будет иметь поле с названием Территория, содержащее названия территорий, а таблица продаж - поле Регион, также содержащее сокращенное название территорий. MapInfo Professional будет объединять записи таблицы продаж на основании сравнения поля Регион со значением поля Территория записей таблицы областей. Например, если в поле Регион таблицы продаж стоит Северо-Запад, то в таблице областей будет проведен поиск записи также со значением Северо-Запад в поле Территория, Дальний Восток будет объединен с другими Дальними Востоками и т.д.

Однако, если обе таблицы содержат графические данные, то MapInfo может проводить и графическое объединение.

Например, Вы хотите раскрасить карту RUSSIA согласно количеству пожаров - FIRES - за последний год. База данных FIRES должна быть геокодирована. Таким образом, MapInfo Professional объединит записи таблиц пожаров и областей. Тогда MapInfo Professional может по координатам очага каждого пожара определить, в какой области он произошел.

• Более подробную информацию смотрите в разделе Справочной системы: "Объединение таблиц по описательному критерию" и "Объединение таблиц по географическому критерию".

Обновление части таблицы

Чтобы быстро и наглядно обновить часть таблицы, выберите объекты в окне Карты и выполните команду Обновить колонку для обновления значений в соответствующих записях. Такой метод удобен при изменении значений в нескольких записях на одно и то же новое значение.

Чтобы добавить колонку ОКРУГ в таблицу ОБЛАСТИ_РОССИ:

1. Создайте колонку Округ (Таблица > Изменить > Перестроить) в таблице областей России.

2. Добавьте поле Округ.

3. Покажите таблицу областей в окне Карты.

4. Выберите нужные области с помощью инструмента Выбор (или какого-нибудь другого).

5. В меню Таблица нажмите Обновить колонку и заполните диалог Обновить колонку, как

показано ниже: Не забудьте поместить значение в двойные кавычки, иначе MapInfo Professional посчитает его названием колонки.

6. Нажмите OK. MapInfo Professional создаст таблицу запроса для кавказских республик и областей, в которой колонка Округ будет содержать значение СК.

7. Сохраните таблицу, чтобы не потерять внесенную информацию.

Добавление записей в таблицу

Команда Таблица > Добавить записи в таблицу используется для добавления записей из одной таблицы в другую. Эти две таблицы должны иметь одинаковые колонки, расположенные в одинаковом порядке. Чтобы добавить данные из другой таблицы:

1. Выполните команду Таблица > Добавить записи в таблицу. Появится диалог Добавить строки в таблицу.

2. Укажите название таблицы, записи из которой Вы будете добавлять.

3. Укажите, к какой таблице следует добавлять записи, и нажмите OK.

Если соответствующие колонки содержат данные разного вида, выполняется наилучшее возможное преобразование типов. Если порядок колонок не совпадает, измените его с помощью колонок Таблица > Изменить > Перестроить прежде, чем выполнять команду Добавить записи в таблицу.

Внимание: Если один из слоев включает в себя графические объекты, то необходимо

следить за тем, чтобы его пространственный охват был достаточным для того, чтобы вместить в себя объекты из присоединяемой таблицы, иначе координаты последних будут сильно искажены, особенно по краям карты. Чтобы установить пространственный охват, т.е. границы слоя, воспользуйтесь программой Граница рамки карты. Смотрите раздел Использование Каталога программ в Главе 4 на стр. 212, в котором приведено описание приложения Coordsys Bounds.

Добавление записей одной таблицы в другую

Чтобы добавить одну таблицу к другой:

1. Выполните команду Таблица > Добавить записи. На экран будет выведен диалог Добавить строки в таблицу.

2. Выберите таблицу, записи которой нужно добавить. Выберите таблицу в списке Добавить таблицу.

3. Выберите таблицу, в которую будут добавлены записи. Выберите таблицу в списке к таблице.

4. Нажмите OK. Появится окошко-индикатор состояния.

5. Чтобы прекратить добавление записей, нажмите на кнопку "Остановить".

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

Изменить порядок колонок в таблице можно также командой SQL-запрос, а затем изменив результирующую таблицу.

Разделение данных из одной колонки в несколько колонок

Если Вы импортируете данные в MapInfo из других форматов, то существует вероятность того, что данные не преобразуются должным образом. В некоторых случаях данные, которые должны появиться в разных колонках, объединяются в одну. Например, надо разделить три слившихся в одну колонки, содержащие сведения о ФИО (FIRST - Имя, MIDDLE - Отчество и LAST - Фамилия) на три части. Этот способ действует, даже если нет записи об отчестве, а есть только фамилия.

Чтобы отделить данные из одной колонки в несколько колонок:

1. Выполните команду Файл > Открыть таблицу и откройте таблицу, которую надо изменить.

2. Добавьте к таблице три колонки. В меню Таблица выполните команды: сначала Изменить, а затем Перестроить. Добавьте две колонки символьного типа, размером 15.

Назовите их ИМЯ и ОТЧЕСТВО. Затем добавьте третью колонку с символьными данными размером 30.

3. Вначале введите полное имя в колонке, названной ФАМИЛИЯ, выполнив команду Таблица > Обновить колонку. Заполните диалог Обновить колонку следующим образом:

Обновляемая колонка - фамилия.