Функции 4GL

Встроенные функции 4GL. Не включать в SQL операторы.


arg_val (n)          n-й аргумент из командной строки

num_args ()          кол-во аргументов в командной строке

infield (field-name) истина если курсор находится в поле  (DISPLAY/INPUT)

CALL set_count(n)    сообщить 4GLю кол-во заполненных строк в массиве

                     перед оператором DISPLAY ARRAY

arr_curr()           No. текущей строки массива           (INPUT/DISPLAY ARRAY)

scr_liпе ()          No. текущей строки экранного массива (INPUT/DISPLAY ARRAY)

arr_count ()         кол-во заполненных строк в массиве   (INPUT ARRAY)

err_get (status)     4GL сообщение об ошибке ° status

CALL err_print(nn)   вывести  4GL сообщение об ошибке ° nn

CALL err_quit (nn)   вывести  4GL сообщение об ошибке и кончить

CALL showhelр (n)    вывести  4GL help-menu и help-сообщение

CALL startlog("filename")   открыть errorlog файл

CALL errorlog (строка)      добавить сообщение в errorlog

downshift (строка)          не длиннее 512

upshift   (строка)

ASCII   n            Преобразует число n в символ ASCII

строка CLIPPED       Гасит пробелы в конце строки

COLUMN  n       Добавить пробелов, чтоб оказаться на n-ом столбце экрана

expr USING "format"  Задает формат для number, MONEY, DATE выражений

  элементы формата чисел: *?<,.-+()$ * Заменять пробелы на * . позиция десятичной точки & Заменять пробелы на 0 позиции знака "-" # ничего не менять + позиции знаков "+","-" < левоустановить число (((...) отрицательное число в скобки. , литерал "," $ лите

Эти функции можно использовать в операторе SELEСТ:


SITENAME                имя сервера(или hostname)          *OnL*

LENGTН (строка)            длина без заканчивающих пробелов

USER                       login-name текущего пользователя

TODAY                      текущая дата в системном формате

CURRENТ  [first TО last]   текущее DATETIME

где first,last из {YEAR,MONTH,DAY,HOUR,MINUTE,SECOND,FRACTION(n)}

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


TIМЕ                       текущее время в виде "hh:mm:ss"

DАТЕ                       текущая дата в виде "Mon Apr 1 1991"

EXTEND (datetime-value [first TО last]) преобразует к DATETIME

expr UNITS qualifier Возвращает INTERVAL значение=expr*qualifier

где qualifier Ё {YEAR,MONTH,DAY,HOUR,MINUTE,SECOND,FRACTION(n)}

DАТЕ ([char] expr)         преобразует к типу DATE

MDY (nDAY, nMONTH, nYEAR)  преобразует к типу DATE

DAY (дата  )     выделяет номер дня в месяце из даты

WEEKDAY (дата)   выделяет номер дня в неделе   ! Здесь дата  

MONTН (дата)     выделяет номер месяца         ! типа DATE   

YEAR (дата)      выделяет год                  ! или DATETIМЕ

Встроенные агрегатные функции оператора SELEСТ.


COUNТ (*)

COUNТ (  DISTINCT  column-name )     количество

SUМ   ( [DISTINCT] column-name )

AVG   ( [DISTINCT] column-name )     среднее значение

MIN   ( [DISTINCT] column-name )

MAХ   ( [DISTINCT] column-name )

Назад || Оглавление || Вперед

Используются технологии uCoz