Документация по Clarion


SET (инициировать последовательную обработку файла) - часть 2


/p> Если второй параметр - ключ, то обработка начнется с первой записи, содержащей значения, наиболее близкие к значениям компонент ключа или индекса. Если найдено ТОЧНОЕ совпадение, то и NEXT и PREVIOUS считают найденную запись. Если нет точного совпадения, то NEXT прочитает запись с ближайшим БОЛЬШИМ значением, а PREVIOUS - с ближайшим меньшим.
Значения указателя_в_файле и указателя_в_ключе зависят от файлового драйвера. Это может быть номер записи, относительный номер байта в файле или какой либо иной вид "опорной точки" в файле. Эти параметры используются для начала обработки с конкретной записи в файле.
Пример:
SET(Customer) !Обработка в физическом порядке
Cus:Name = 'Smith'
SET(Customer,Cus:NameKey)
!Обработка в физическом порядке, начиная с записи, в
! которой поле Name = 'Smith'
SavePtr = POINTER(Customer)
SET(Customer,SavePtr)
!Обработка в физическом порядке, начиная с записи,
! физический номер которой хранится в SavePtr
SET(Cus:NameKey)
!Обработка в порядке, задаваемом ключом NameKey
SavePtr = POINTER(Cus:NameKey)
SET(Cus:NameKey,SavePtr)
!Обработка в порядке, задаваемом ключом NameKey, с за-
! писи, относительный номер которой в ключе содержит
! SavePtr
Cus:Name = 'Smith'
SET(Cus:NameKey,Cus:NameKey)
!Обработка в порядке, задаваемом ключом NameKey, начи-
! ная с первой записи, в которой поле = 'Smith'
Cus:Name = 'Smith'
SavePtr = POINTER(Customer)
SET(Cus:NameKey,Cus:NameKey,SavePtr)
!Обработка в порядке, задаваемом ключом NameKey,
! Name = 'Smith' и номер записи = SavePtr
См. также: , , , ,



Начало  Назад  Вперед