Основы формул

Основы формул

Общие формулы

Формулы используются для расчёта полей данных на основе уже существующих значений в наборе данных. Формулы, определённые для типа данных, будут рассчитываться автоматически, пока они помечены как «Активная». Расчёт выполняется при добавлении, изменении или удалении данных в наборе данных, а также при добавлении или обновлении наборов данных, например с помощью метода -Import- базы данных GeoDin.

Обычно формулы задаются через системную конфигурацию типа данных и рассчитываются автоматически. Дополнительно функция Расчёт доступна при регистрации измерений, чтобы ввести формулу вручную или выполнить её.

Выполнение активных формул происходит в порядке определения их типов данных. Это следует учитывать при использовании взаимозависимых формул.

Каждая формула определяется уникальным именем и свойствами, которые задают режим расчёта.

Name

Имя задаёт формулу и должно быть значимым для последующего выбора.

Цель

В любом случае целью является поле текущего типа данных. В качестве цели в формуле могут использоваться только параметры, определённые в типе данных.

Триггерный параметр

Если задан триггерный параметр, формула выполняется только в том случае, если изменение в наборе данных относится к этому параметру. Таким образом, определение триггерного параметра позволяет взаимный расчёт разных полей данных.

Пример:

Сценарий расчёта:

(1) Поле 3 рассчитывается из поля 1 и поля 2, то есть целевым полем формулы является поле 3.

(2) Если содержимое поля 3 изменяется, значение поля 2 должно быть скорректировано.

Цель (2) не может быть реализована, поскольку формула в (1) немедленно перезапишет поле 3. Если поле 3 задано в другой формуле как триггерный параметр, а поле 2 — как целевой параметр, то (2) реализуется.

Оценка формулы с триггерными параметрами происходит при вводе данных (в сетке ввода или на экране ввода), то есть формулу запускают только записи, сделанные там. Поэтому формула с триггерным параметром действует только в редакторе.

Условие

Условие — это логическое выражение, которое возвращает либо TRUE, либо FALSE. Формула, имеющая условие, выполняется только если вычисление условия возвращает TRUE.

Условие создаётся с той же синтаксической структурой, что и формула. Оно может строиться с использованием параметров того же типа данных, а также полей мастер-данных.

Формула

В обычных случаях формула — это выражение, приводящее к результату расчёта. Она может обращаться к параметрам текущего типа данных, а также к содержимому полей мастер-данных и использовать связи из других типов данных. Имеется меню выбора, предоставляющее все варианты для построения формулы.

Параметры

  1. активная формула

Расчёт выполняется при изменении набора данных. Без этой опции формула не будет выполнена.

  1. перезаписывать цель

Даже если в целевом поле уже есть значение, оно будет перезаписано результатом расчёта. Если эта опция неактивна, будут заполняться только пустые поля.

  1. результат 0, если все значения ниже предела определения

В некоторых случаях измеренное значение может быть ниже предела определения для конкретного измерительного устройства. Это означает, что хотя значение и не является точным, оно всё же присутствует и может использоваться в суммировании нескольких параметров. Обычно для таких расчётов используется значение между 0 и пределом определения, но в некоторых ситуациях вычисленное значение при суммировании может оказаться выше предела определения отдельных значений параметров, что будет неверно. Эта опция позволяет установить сумму на минимальный или максимальный предел обнаружения, либо на 0, если все значения параметров ниже предела определения и отсутствуют специальные настройки с «@B».

  1. Макрос

Для сложной обработки текстовых формул с конструкциями OR или %COND.

  1. обмен текстом (без расчёта)

Текст, полученный в результате обработки формулы, вводится в целевое поле; это означает, что используемые переменные заменяются значениями текущего набора данных без выполнения дополнительного расчёта. Это позволяет создавать форматированный текст из наборов данных или мастер-данных. Условием успешного использования такой формулы является буквенно-цифровое форматирование целевого поля (тип: C).

Операция

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

Execute

· если определены все параметры

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

· если последняя действительная формула в блоке той же строки

Для одного и того же целевого параметра можно определить несколько формул. Эта опция приводит к выполнению последней указанной действительной формулы. Формулы, перечисленные ранее, не будут выполнены и не смогут влиять друг на друга.

· если изменилось условие проверки выражения

Для выполнения формулы может быть задано условие. С помощью этой опции можно определить, что формула будет выполняться, если оценка условия изменяет своё значение.

Пример:

Если условие равно $NA$>2 и значение в NA равно 1, его можно изменять сколько угодно раз. Формула не будет выполняться, пока значение меньше 2.

Определение формул

Формула определяется как строка символов (аналогично определению текстового макроса) и содержит математические операторы для вычисления результата.

Например: $DAT.PAR1$ * 100

Символы внутри знаков $ относятся к полю данных GeoDin. Можно использовать следующие операторы:


+ Сложение - Вычитание * Умножение / Деление SQR (x) Квадрат x SQRT (x) Квадратный корень x LN (x) Натуральный логарифм x EXP (x) Возведение x в степень (e в степени x) SIN (x) Синус x COS (x) Косинус x TAN (x) Тангенс X ARCTAN (x) Арктангенс X COTAN (x) Котангенс X ABS (x) Абсолютное значение X


(x) обозначает столбец таблицы GeoDin (например, $DAT:PAR1$)

В формулах могут содержаться пробелы. Фиксированные числовые значения (100 в примере выше) можно вводить непосредственно в формулу.

Добавление формулы к существующему типу данных

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

1. Добавьте новый параметр к типу данных (системная конфигурация)

В системной конфигурации GeoDin (System > Data Types) откройте соответствующую группу типов данных и добавьте новый параметр, который будет служить целью формулы. Сохраните системную конфигурацию.

2. Добавьте параметр в базу данных

Откройте Диспетчер типов данных на уровне базы данных. Выберите тип данных, нажмите Изменить, а затем добавьте новый параметр. Нажмите Создать чтобы записать обновлённую структуру таблицы в базу данных.

circle-info

Необходимо обновить и системную конфигурацию, и базу данных. Добавление параметра только в систему не делает его доступным в таблицах базы данных.

3. Определите формулу

Оставаясь в системной конфигурации, откройте тип данных и добавьте формулу:

  • Установите Цель для нового параметра.

  • Сформируйте выражение формулы, перетаскивая имена макросов (ссылки на поля, такие как $DAT.PAR1$) из списка выбора в поле формулы.

  • Пометьте формулу как Активная.

  • Сохраните.

4. Примените формулу к существующим записям

Активные формулы автоматически выполняются для новых и обновлённых записей, но не выполняются ретроспективно для существующих данных. Чтобы применить формулу ко всем существующим записям:

  1. Откройте редактор измерений для любого объекта, у которого уже есть записи этого типа данных.

  2. Нажмите Вычислить кнопку (по-немецки: Berechnen, значок калькулятора на правой панели инструментов).

  3. В диалоге расчёта выберите активную формулу из списка.

  4. Подтвердите. GeoDin обрабатывает все записи в текущем наборе данных и записывает вычисленные значения.

circle-exclamation

5. Одноразовые встроенные формулы в редакторе измерений

Редактор измерений также принимает однократную формулу, введённую прямо в строке формулы — без сохранения её в системную конфигурацию. Это полезно для разовых расчётов во время сеанса.

Примечание: встроенная формула не может быть направлена на поле, которое уже назначено как цель активной системной формулы. Если возникает конфликт, приоритет имеет активная системная формула, и встроенная формула не будет выполнена для этого поля.

Использование условий

Помимо математических операторов, можно использовать специальные синтаксические конструкции, чтобы учитывать большое число особых случаев. Для формулы можно задать условие, при котором формула выполняется. Условие — это выражение, которое имеет два возможных результата: TRUE или FALSE. Несколько выражений можно объединять с помощью логических операторов AND и OR. Определение сокращения типа данных всегда необходимо (например: $WAS:NA$).

Примечание:

Формулу можно ввести непосредственно в редакторе измерений после нажатия кнопки или на вкладке системы в разделе Data types-> Data type settings->Formulas (Общие формулы).

Пример простого условияПример:

Назначение: WAS:NA_CALC

Условие: $WAS:MG$>3

Формула: $WAS:NA$/2

Целевой параметр NA_CALC рассчитывается, если параметр MG имеет значение 3 или выше.

Пример множественного условияПример:

Назначение: WAS:NA_CALC

Условие: $WAS:MG$>3 AND $WAS:CA$<10

Формула: $WAS:NA$/2

Целевой параметр рассчитывается, если параметр MG больше трёх и параметр CA меньше 10.

Условия для изменения значений

С помощью форматирования @O в редакторе измерений можно восстановить исходное значение записи ДО последнего изменения. Следовательно, становится возможна проверка различий.

Пример:

Условие: $WAS:PAR1$ - $WAS:PAR1@O$ >10

Условие истинно, когда значение PAR1 в ячейке более чем в десять раз превышает ранее введённое значение.

Дополнительные примеры условий

В условии можно использовать оператор NULL. Он определяет, имеет ли параметр значение.

Пример:

Назначение: WAS:NA_CALC

Условие: $WAS:MG$>3 AND $WAS:CA$=NULL

Формула: $WAS:NA$/2

Целевой параметр NA_CALC рассчитывается как половина значения параметра NA, если значение параметра MG превышает 3 и параметр CA пуст.

Если в условиях используются строки, текст должен быть заключён в кавычки. Отсутствующие кавычки и орфографические ошибки интерпретируются как неравенство. Написание условия чувствительно к регистру.

Пример:

Назначение: WAS:NA_CALC

Условие: $BEARBEIT$='Müller'

Формула: $WAS:NA$/2

Целевой параметр NA_CALC рассчитывается как половина параметра NA, если автор записи данных имеет фамилию Müller.

Использование специальных правил

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

Особые случаи в синтаксисе формулПределы обнаружения

Пределы обнаружения представляют собой особый случай. По определению это отрицательные значения (например, -1 для <1). Если использовать их неосторожно, могут получиться неверные результаты, например при построении сумм из отдельных параметров. Для этого внутри знаков $ должна использоваться конструкция в виде @B(x), где x — коэффициент, с которым предел обнаружения входит в расчёт. Например, предел обнаружения 5 мг (введённый как -5) при коэффициенте 0,5 даёт результат 2,5.

Пример: $WAS:BENZEN@B(0,5)$+$WAS:TOLUEN@B(0,5)$+$WAS:XYLEN@B(0,5)$

В приведённом выше случае, если для отдельных параметров обнаружены значения -5 или -1, при расчёте суммы используется половина этих значений.

Значения по умолчанию

Для некоторых расчётов может потребоваться работа с предопределёнными настройками или значениями по умолчанию. Если параметр отсутствует или не был проанализирован в наборе данных, можно принять стандартное значение и использовать его для расчёта. Это реализуется с помощью конструкции @D(x) внутри знаков $, где x — предопределённое значение по умолчанию, используемое при отсутствии значения в поле.

Пример: VALUE=$ORGANIC@D(10)$/$CLAY@D(25)

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

Среднее значение

Среднее значение вычисляется с помощью символов "@M" внутри знаков доллара в формуле. Отдельные значения разделяются символом ";", и могут использоваться только заполненные поля.

Пример: UWDRYMIN=$UWDRYMIN1;UWDRYMIN2;UWDRYMIN3@M$

Результат — среднее значение UWDRYMIN1 по UWDRYMIN3.

Использование числа из словаря

Если используется словарь, который при вводе кода выдаёт число, это можно использовать для расчёта. С помощью знака "@R" выполняется перекодировка.

Пример: CU=($CONE@R$)/SQRT($PEN1;PEN2;PEN3;PEN4;PEN5@M$)

Сначала значение CONE заменяется значением из словаря. Для значений P1–P5 вычисляется среднее, из которого затем извлекается квадратный корень. После этого значение CONE делится на это значение.

Использование значений из другого типа данных

Значения из одного типа данных можно использовать при расчёте значений в других типах данных. Для этого код типа данных сопровождается двоеточием. Связь с записью данных в другом типе данных определяется по времени. Для сравнения значений дата используется несколькими способами:


[=SMPDATE] или без определения дата должна быть той же самой [<=SMPDATE] дата может быть той же или меньше [<SMPDATE] дата должна быть меньше [>=SMPDATE] дата может быть той же или больше [<SMPDATE] дата должна быть больше


Пример: WASSPNN=$ROK:ROKNN[<=SMPDATE]$-$WASSPROK$

Уровень воды, выраженный в метрах над уровнем моря, рассчитывается с использованием значения из типа данных ROK (верх пьезометра). Используемое значение может быть из того же дня или из следующего по времени более свежего значения. Из этого значения вычитается текущий уровень.

Использование значений из общих данных точки измерения

В формулы для точек измерения можно включать общие поля данных. Связь определяется следующим образом: $Tablel.Datafield$.

Пример: $ASBFILTR.INVMBEG$-$WST:WASSPROK$

Уровень воды в назначении WASSPNN рассчитывается с использованием отметки точки измерения ($ASBFILTR.INVMBEG$) и измеренного уровня воды от верха трубы $WST:WASSPROK$ в типе данных.

Ионный баланс

С помощью символа %IONB можно вычислить ионный баланс и использовать его как результат.

Пример: IONICBALA=$%IONB$

Внимание: Для корректного расчёта поля с именами, которые ожидает расчёт, должны существовать и использоваться (см. Ионный баланс).

Автоматическая нумерация

Для автоматического присвоения последовательных номеров параметру можно использовать выражение $%FIRSTID:PARAMETER$. Нумерация для соответствующего параметра всегда начинается с 1.

Пример: $%FIRSTID:TESTNO$

Номер теста автоматически получает последовательный номер в поле TESTNO для каждой записи. Первой записи присваивается номер 1.

Дополнительные символы

$%PI$ выдаёт число Пи

$%USERNAME$ может использовать (текстовую) формулу для создания имени текущего пользователя базы данных

$%NOW$ выдаёт текущую дату и время

Ссылка на объект

$%OBJECTID$ Доступ к LOCID для общих таблиц данных, если доступно

$%PRJID$ Доступ к PRJ_ID для общих таблиц данных, если доступно

Обмен текстом - Формулы для создания форматированного текста

При активации флажка [Обмен текстом (без расчёта)] при выполнении формулы расчёт предотвращается. Эта опция полезна только там, где требуется строковый параметр как результат. В результате параметры заменяются строкой фактических значений, при этом расчёт не выполняется.

Пример: $LOCREG.SHORTNAME$ / $SMPDATE$

В выбранном целевом поле создаётся комбинация краткого описания объекта, косой черты и даты, например «Brg 12 / 12.10.2004».

Обмен текстом с макросом

Помимо обмена текстом, могут обрабатываться спецификации формата.

Пример: $LOCREG.SHORTNAME$ от [email protected]$

Внимание: Можно вычислять только параметры той же таблицы (типа данных) или параметры типа объекта. Параметр текущей таблицы должен быть указан здесь без аббревиатуры таблицы. См. пример.

Формулы

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

Новый

С помощью этого значка записи можно добавить в список.

Дублировать

Используйте этот значок, чтобы создать копию выбранной записи. Новая запись добавляется в конец списка и автоматически выбирается.

Удалить

С помощью этого значка отмеченные записи можно удалить из списка.

Переместить выбранную запись вверх

С помощью этого значка записи можно перемещать вверх по списку. Перемещение записей также возможно с помощью перетаскивания.

Переместить выбранную запись вниз

С помощью этого значка записи можно перемещать вниз по списку. Перемещение записей также возможно с помощью перетаскивания.

Редактировать без обновления

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

С помощью этого значка список можно редактировать без актуализации. Редактирование списка можно отменить крестиком или галочкой.

Дважды щелкните по записи списка

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

Формула

В этой главе описаны некоторые формулы, которые можно использовать/создавать в GOTE для общей таблицы данных типа объекта.

Преобразование координат

Эта формула позволяет преобразовать спецификацию координат и записать её в целевое поле.

Параметры формулы:

Method = TRANSFORMCOORD (фиксированный идентификатор метода EGIS)

Result = часть координат

X = значение X входной координаты

Y = значение Y входной координаты

EPSG = код EPSG входной координаты

DESTEPSG = 3068

Пример:

Эта формула преобразует значение X объекта GeoDin в систему координат 3068 (Soldner Berlin) и записывает преобразованное значение X в целевое поле формулы.

$EGIS(METHOD=TRANSFORMCOORD Result=X X=XCOORD Y=YCOORD EPSG=KSYS DESTEPSG=3068)$

Формулы типа объекта

Типы объектов могут содержать формулы для полей мастер-данных. Эти формулы затем выполняются при редактировании с помощью метода ввода и сопровождения данных.

Следующие формулы объединяют ряд функций, с помощью которых геоданные могут обрабатываться пространственно.

Синтаксис/грамматику этих формул можно кратко резюмировать следующим образом.

  1. формула начинается с $%EGIS

  2. в простых скобках можно настраивать различные параметры формулы. Параметры допускаются как пары ключ-значение с пробелами.

  3. формула заканчивается на $

  4. фиксированным параметром является параметр "Method". Значение этого параметра определяет, какой метод выполнения формулы будет использоваться.

Пример структуры формулы:

$%EGIS(METHOD=XYZ Param1=Value1 Param2=Value2 ... )$

Преобразование координатПример:

$%EGIS(METHOD=TRANSFORMCOORD Result=X X=XCOORD Y=YCOORD EPSG=EPSG DESTEPSG=3068)$

Метод

TRANSFORMCOORD

Result

Какой результат расчёта должен быть передан в цель формулы (в приведённом примере — преобразованное значение X).

X

Указывает, какое поле данных должно использоваться как входное значение для X (пример: XCOORD).

Y

Указывает, какое поле данных должно использоваться как входное значение для Y (пример: YCOORD).

EPSG

Указывает, какое поле данных содержит исходную систему координат (пример: EPSG).

DESTEPSG

Указывает целевую систему координат, в которую выполняется преобразование (пример: 3068 Soldner Berlin).

Получение значений из файла GISПример:

$EGIS(METHOD=GETPOINTVALUE X=XCOORD Y=YCOORD SOURCE=GROUNDWATER EPSG=EPSG)$

Метод

GETPOINTVALUE

Этот метод можно использовать для чтения данных из файла GIS (например, Shape, GeoJSON) с использованием пары координат.

Для этого по переданным координатам считывается первый объект и требуемое значение возвращается из настроенной колонки атрибутов набора GIS-данных.

Таким образом, например, названия районов, планировочных зон, номера TK и т. д. могут автоматически передаваться в общие данные GeoDin.

X

Указывает, какое поле данных содержит значение X (пример: XCOORD).

Y

Указывает, какое поле данных содержит значение Y (пример: YCOORD).

EPSG

Указывает, какое поле данных содержит исходную систему координат (пример: EPSG).

SOURCE

Здесь можно связать ссылку на дополнительный раздел из конфигурации настроек подключения к базе данных GeoDin.

В настройках базы данных затем определите следующий ключ со значениями из SOURCE.

GROUNDWATER= Путь к Shape или GeoJSON

GROUNDWATERFIELD= Имя столбца атрибута в Shape или GeoJSON

Пример:

GROUNDWATER=C:\GISData\GW-Model\gw2020.shp

GROUNDWATERFIELD=MAXGW

Примечание: Если под SOURCE не указана дополнительная ссылка, GeoDin автоматически пытается найти файл GeoJSON (*.geojson) с именем целевого поля формулы в каталоге Syslib установки GeoDin. Поле атрибута, из которого данные возвращаются в базу данных, должно иметь в GeoJSON то же имя, что и целевое поле формулы.

Альтернативную SQL-команду

С помощью этого метода определения системного запроса для менеджера объектов GeoDin или запроса к фрейму объекта в рамках макета можно сформулировать любой SQL-оператор для непосредственного получения данных. Если вы знакомы с SQL, этот метод значительно быстрее, чем поэтапное формирование SQL-оператора через отдельные меню.

Пример:

SELECT * FROM GeoDin_LOC_LOCREG

SQL-оператор может содержать макропеременные, которые автоматически заменяются GeoDin во время выполнения запроса. Назначение запроса здесь является определяющим фактором.

Запрос фрейма объекта в макете

$PRJID$ заменяется текущим идентификатором проекта, связанного с макетом

$LOCID$ заменяется текущим идентификатором объекта, связанного с макетом

$INVID$ заменяется текущим идентификатором точки измерения объекта, связанного с макетом

В макете с фреймом одного объекта извлечение набора данных из таблицы GeoDin_LOC_LOCREG может использовать следующий SQL-оператор:

SELECT * FROM GeoDin_LOC_LOCREG WHERE (PRJ_ID='$PRJID$') AND (LOCID=$LOCID$)

Когда к макету привязывается новый объект (например, при изменении объекта, пока открыт обзор макета), набор данных для этого объекта выбирается из таблицы базы данных. В текстовом элементе с источником данных "Onject frame query" можно получить доступ ко всем полям данных этого объекта. Обратите внимание, что приведённый выше пример служит лишь для иллюстрации возможностей. В практическом применении он был бы не слишком полезен, поскольку макрос вроде $LONGNAME$ даёт доступ к полям данных этой таблицы даже без запроса к фрейму объекта. Обычно запросы к фрейму объекта используются для извлечения гораздо более сложных результирующих наборов данных.

Поскольку в SQL-операторе используются имена таблиц и представлений базы данных, эти имена следует включать в список Таблицы. Это необходимо, чтобы обеспечить требуемое расширение схемы базы данных для имён.

В этом типе определения системного запроса для менеджера объектов GeoDin или запроса к объектному фрейму в рамках макета можно сформулировать любую инструкцию SQL для получения данных. Пример:

SELECT * FROM GeoDin_LOC_LOCREG

SQL-оператор может содержать макропеременные, которые автоматически заменяются GeoDin перед выполнением запроса. Поэтому назначение запроса имеет первостепенное значение.

Системный запрос для менеджера объектов GeoDin

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

$PRJID$ заменяется текущим идентификатором проекта

$LOCID$ заменяется текущим идентификатором объекта

$INVID$ заменяется текущим идентификатором точки измерения

Создание системного запроса зависит от его использования и размещения запроса в менеджере объектов GeoDin. Прежде всего это зависит от определения результирующих объектов (объект или точка измерения), какие поля данных устанавливаются вверху списка полей в команде SELECT.

Объект : PRJ_ID,LOCID; внутри проекта только LOCID

Точка измерения : INVID

Список полей команды SELECT может и должен содержать дополнительные поля данных, которые формируют отображаемые имена в менеджере объектов.

Условие WHERE должно содержать ограничения на родительский объект в запросах ниже уровня проектов, объектов и точек измерения, иначе в результатах могут появиться объекты, не соответствующие структуре менеджера объектов (например, все объекты базы данных под узлом проекта).

Пример запросов: покажите также возможные комбинации полей отображения для менеджера объектов.

Запросы на уровне «База данных» и «Запросы базы данных»

Объекты:

select PRJ_ID,LOCID,LONGNAME & " (", ZCOORDE, "m)" AS F1 from GeoDin_LOC_LOCREG order by LONGNAME

Точки измерения:

select INVID,LONGNAME & " (", ZCOORDE, "m)" AS F1 from GeoDin_LOC_LOCREG order by LONGNAME

Запросы на уровне «Проект» и «Запросы проекта» с необходимыми ограничениями по PRJ_ID

Объекты:

select LOCID,LONGNAME & " (", ZCOORDE, "m)" AS F1 from GeoDin_LOC_LOCREG WHERE PRJ_ID='$PRJID$' order by LONGNAME

Точки измерения:

select INVID,LONGNAME & " (", ZCOORDE, "m)" AS F1 from GeoDin_LOC_LOCREG WHERE PRJ_ID='$PRJID$' order by LONGNAME

Запросы на уровне «Объект» или «Точка измерения» с необходимыми ограничениями по PRJ_ID и LOCID и, при необходимости, по INVID

select INVID,INVNAME from GeoDin_LOC_PRBREG WHERE (PRJ_ID='$PRJID$' ) and (LOCID=$LOCID$) order by INVNAME

Таблицы

Поскольку в SQL-определении используются имена таблиц/представлений, эти имена также следует включать в список Таблицы. Только так имя защищено для дополнительной работы по редактированию схемы.

Последнее обновление

Это было полезно?