- •Содержание
- •Команды Выполнения Расчетов
- •Команды Создания Ведомостей
- •Схемы Ведомостей и Получаемые Отчеты
- •Типы Ведомостей
- •Ведомости Элементов
- •Ведомости Компонентов
- •Ведомости Зон
- •Выборка и Команды Выполнения Расчетов
- •Структура Баз Данных Расчетов
- •Ключи
- •Компоненты
- •Дескрипторы
- •Единицы Измерения
- •Редактирование Базы Данных Расчетов
- •Ключи
- •Единицы Измерения
- •Компоненты
- •Дескрипторы
- •Объекты Спецификаций
- •Что такое Объекты Спецификаций?
- •Создание и Редактирование Объектов Спецификаций
- •Определение Компонентов и Дескрипторов
- •Связывание Компонентов и Дескрипторов с Базами Данных
- •Связывание Объектов Спецификаций с Критериями
- •Создание Критериев для Связывания Спецификаций
- •Связывание Спецификаций с Элементами
- •Спецификации Выбранного Элемента
- •Поиск Объектов Спецификаций
- •Схемы Ведомостей и Шаблоны
- •Шаблоны
- •Записи и Поля
- •Диалоговое Окно Настройки Схем Ведомостей
- •Управление Схемами Ведомостей
- •Редактирование Схем Ведомостей
- •Ведомости Элементов
- •Вкладка Элементы
- •Фильтрация по Типам Элементов
- •Фильтрация по Выносным Надписям и ID
- •Минимальные Проемы
- •Фильтрация по Слоям
- •Фильтрация по Этажам
- •Фильтрация по Объектам Спецификаций
- •Штриховка и Объекты
- •Вкладка Спецификации и Параметры
- •Выбор Ключей
- •Выбор Компонентов и Дескрипторов
- •Выбор Параметров
- •Вкладка Формат
- •Текстовый Отчет
- •Порядок Сортировки
- •Заголовки Столбцов
- •Сложность Отчета
- •Графический Шаблон
- •Порядок Данных
- •Вывод Параметров
- •Построитель Формата/Ассистент Формата
- •Ведомости Компонентов
- •Вкладка Компоненты
- •Вкладка Спецификации и Параметры
- •Ведомости Зон
- •Вкладка Зоны
- •Вкладка Спецификации и параметры
- •Вкладка Учет Конструкций
- •Использование Построителя / Ассистента Форматов
- •Вкладка Макет
- •Тип Макета
- •Единственная Колонка
- •Мозаика
- •Размер Макета
- •Редактирование Элементов Страницы
- •Вкладка Содержимое
- •Вкладка Поля
- •Поля Записей
- •SQL в ArchiCAD
- •Пошаговые Примеры
- •A: Примеры Выполнения Расчетов
- •Пример 1: Зоны со всеми типами объектов (промежуточные суммы по зонам)
- •Пример 2: Общее количество объектов проекта по типам
- •Пример 3: Зоны со всеми размещенными в них объектами (подсуммы по зонам) и общее количество объектов каждого типа (общая сумма)
- •B: Пример Настройки Графического Шаблона
- •Предметный указатель
SQL в ArchiCAD
SQL в ArchiCAD
SQL (Structured Query Language структурированный язык запросов) является наиболее распространенным языком работы с базами данных. Он позволяет формулировать запросы к базе данных и получать структурированные результаты.
Так как проекты ArchiCAD, в целом, представляют собой базы данных конструктивных элементов (Стен, Перекрытий, Крыш, Оболочек, Объектов и т.д.), при помощи SQL можно получать данные об элементах, присутствующих в проекте. По умолчанию меню SQL отсутствует во всех Профилях Окружающей Среды. Для работы с SQL воспользуйтесь диалогом настройки Окружающей Среды, чтобы включить в структуру Меню следующие команды:
•Запрос
•Показать Структуру Данных.
Примечание: Чтобы найти эти команды, воспользуйтесь командой Параметры > Окружающая Среда > Меню, активируйте вариант "Все команды по теме" и раскройте список Расчеты.
Активируйте команду Запрос. Открывшееся окно Запроса SQL предназначено для ввода команд SQL.
SQL команды могут относиться либо к выбранным элементам, либо ко всей базе данных Проекта ArchiCAD. Это означает, что использование SQL команд не даст никакого результата в новом Проект, не содержащем ни одного элемента.
Введенные в окно Запроса SQL команды обрабатываются в Механизмом SQL, формирующим XML файл с результатами запроса, отображаемыми в браузере.
SQL данные Проекта ArchiCAD отображаются в виде таблиц. Эти таблицы содержат информацию об элементах, параметрах и реквизитах Проекта. Например, таблица WALLS
Руководство по Выполнению Расчетов в ArchiCAD |
85 |
SQL в ArchiCAD
содержит все столбцы (параметры, значения, связанные со стенами), которые можно использовать для каждого элемента Стен.
При активации команды Показать Структуру Данных в окне браузера отображается файл XML, содержащий список всех Таблиц, которые могут использоваться в запросах SQL.
Команда SELECT является одной из наиболее часто используемых в Языке SQL. Она позволяет задать набор элементов, участвующих в запросе. Синтаксис этой команды представляет собой следующее выражение:
SELECT <parameters> FROM <table>
Вполе <parameters> можно указать имена интересующих вас параметров таблицы. Применение символа * приводит к отображению всех параметров. Имена нескольких параметров, включаемых в запрос, следует разделять запятыми.
Вполе <table> указывается имя таблицы, из которой требуется получить данные.
НарасположеннойвышеиллюстрациибылаиспользованакомандаSELECT * FROM WALLS, что привело в включению в отчет всех параметров таблицы WALLS. На следующей
86 |
Руководство по Выполнению Расчетов в ArchiCAD |
SQL в ArchiCAD
иллюстрации приведен пример включения в команду параметров Пользовательского ID, Длины, Высоты и Толщины, разделенных запятыми.
Следующим модификатором SQL команд является WHERE. Он позволяет ограничить количество элементов, включаемых в отчет. Например, запрос:
SELECT ID, LENGTH, HEIGHT, THICKNESS FROM WALLS WHERE HEIGHT='2.700'
приводит к выводу значений перечисленных параметров только для Стен высотой 2.7 метра (числовые значения в командах GRAPHISOFT® всегда указываются в метрической системе).
База данных ArchiCAD имеет некоторое отличие от обычных баз данных SQL. Оно заключаетсявтом, чтонекоторыепараметрынекоторыхтаблицсамиявляютсятаблицами. Например, столбец Parameters таблицы OBJECTS сам является таблицей. Ввод запроса:
SELECT USERID, LIBRARY_PART_NAME, PARAMETERS FROM OBJECTS WHERE LIBRARY_PART_NAME='Стул 01'
Руководство по Выполнению Расчетов в ArchiCAD |
87 |
SQL в ArchiCAD
приводит к получению следующего результата:
Отчет содержит Пользовательский ID, Имя Библиотечного Элемента и Параметры объекта Стул 01.gsm. Как вы можете заметить, расширение имени файла библиотечного элемента в командах SQL не указывается. Столбец Параметры содержит таблицу ПАРАМЕТРЫ со своими собственными столбцами.
В языке SQL GRAPHISOFT имеется специальная команда для получения только такой внутренней таблицы. Она называется FLAT и ее синтаксис следующий:
FLAT(<table>, <parameter>) AS <name>
В полях <table> и <parameter> указывается имя таблицы и параметр, который следует вывести. Поле <name> определяет новое имя создаваемой таблицы, чтобы на нее можно было сослаться.
Ниже приводится пример вывода всех параметров объекта Стул 01.gsm. Здесь таблице PARAMETERS, вложенной в таблицу OBJECTS, присвоено имя XX. Обращение к таким вложенным параметрам осуществляется следующим образом:
XX.PARAMETERS.<parameter>, где XX.PARAMETERS таблица параметров объекта.
88 |
Руководство по Выполнению Расчетов в ArchiCAD |
SQL в ArchiCAD
Расположенная ниже иллюстрация демонстрирует результат выполнения такого запроса
SQL:
Давайте рассмотрим простой пример. С помощью одной из основных Схем Ведомостей Зон мы можем создать следующий список помещений жилого здания. Все зоны, расположенные на одном этаже, имеют одинаковый Пользовательский ID: ‘A1 03’.
Руководство по Выполнению Расчетов в ArchiCAD |
89 |
SQL в ArchiCAD
Для получения того же результата с помощью SQL следует выполнить следующий запрос. Воспользовавшись модификатором WHERE, мы можем создать отчет только Зон, находящихся на этаже ‘A1 03’:
Результат будет выглядеть следующим образом:
Язык SQL имеет много других команд и возможностей. Подробную информацию об этом языкеможнонайтивИнтернет. НаначальномэтапезнакомствасSQL можноиспользовать следующий сайт: http://www.sql.org/
Существует также документация по использованию SQL GRAPHISOFT. Она включена в документацию GRAPHISOFT ODBC (Open Database Connectivity), которая может быть загружена со страницы Документации Центра Разработчиков GRAPHISOFT по следующему адресу: http://www.graphisoft.ru/support/developer/tools/.
На этой же странице можно загрузить драйвер ODBC. Он позволяет пользователям приложений, работающих с базами данных, подключаться к базам данных проектов ArchiCAD (файлы *.PLN) и извлекать из них данные. Для получения доступа к данным
90 |
Руководство по Выполнению Расчетов в ArchiCAD |
SQL в ArchiCAD
ресурсам, пожалуйста, воспользуйтесь разделом Загрузки Центра Разработчиков
GRAPHISOFT на сайте GRAPHISOFT.
Руководство по Выполнению Расчетов в ArchiCAD |
91 |