Документация по Clarion
GET(очередь[,указатель [+]ключ,....[-]ключ имя])
очередь | Метка ОЧЕРЕДИ, или метка переданного параметра типа QUEUE. |
указатель | Числовая константа, переменная или выражение. Указатель должен быть в диапазоне от 1 до ЧИСЛА_ЭЛЕМЕНТОВ_В_ОЧЕРЕДИ. |
+- | Ведущий знак плюс/минус означает, что по данному ключу сортировка производится по возрастанию/убыванию. |
ключ | Метка поля, описанного в составе ОЧЕРЕДИ. Если ОЧЕРЕДЬ имеет префикс, то КЛЮЧ также ДОЛЖЕН иметь его. |
имя | Строковая константа, переменная или выражение, содержащая атрибуты NAME для полей, входящих в состав ОЧЕРЕДИ, разделенные запятыми и с необязательным ведущим знаком + или - для каждого атрибута. Этот параметр чувствителен к регистру букв. |
GET считывает элемент ОЧЕРЕДИ в буфер данных ОЧЕРЕДИ для обработки. Если GET не находит соответствия, то возвращается ошибка "Элемент очереди не найден (Queue Entry Not Found).
GET(очередь,указатель) | Возвращает элемент из позиции, задаваемой значением УКАЗАТЕЛЯ. |
GET(очередь,ключ) | Ищет элемент ОЧЕРЕДИ, который соответствует значению поля(полей) ключа. Можно использовать до 16 ключей, разделенных запятыми. ОЧЕРЕДЬ должна быть уже отсортирована по полям, используемым в качестве ключевых. |
GET(очередь,имя) | Ищет элемент ОЧЕРЕДИ, который соответствует значению поля(полей) имени. Строка ИМЯ должна содержать NAME-атрибуты полей, разделенные запятыми с необязательным ведущим знаком плюс или минус для задания порядка сортировки. ОЧЕРЕДЬ должна уже быть отсортирована по полям, перечисленным в параметре ИМЯ. |
Возвращаемые ошибки:
08 Недостаточно памяти
30 Элемент не найден
75 Неверный описатель типа поля
Пример:
NameQue QUEUE,PRE(Que)
Name STRING(20),NAME('FirstField')
Zip DECIMAL(5,O),NAME('SecondField')
.
CODE
!здесь мы строим очередь...
GET(NameQue,1) !Читаем первый элемент
IF ERRORCODE() THEN STOP(ERROR()).
Que:Name = 'Иванов' !Инициализируем ключевое поле
GET(NameQue,Que:Name) !Находим подходящую запись
IF ERRORCODE() THEN STOP(ERROR()).
Que:Name = Fil:Name !Берем начальное значение из Fil:Name
GET(NameQue,Que:Name) !Находим подходящую запись
IF ERRORCODE() THEN STOP(ERROR()).
Que:Name = 'Кузнецов' !Инициализируем ключевые поля
Que:Zip = 12345
GET(NameQue,'FirstField,SecondField')
!Находим подходящую запись
IF ERRORCODE() THEN STOP(ERROR()).
См. также:
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий