Rambler's Top100

(c)2009-2017 openinfotech.ru

СУБД HyTech

Документация
Функция htExcludeResultsItem

htExcludeResultsItem - Исключить элемент результата поиска

Назначение:

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

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

Прототип:

int HTAPI htExcludeResultsItem(
  LPSAB 	fpSrc,	/* Адрес исходного БДС */
  long 		gItemNo /* Порядковый номер элемента (от 0) */
);

Параметры

fpSrc
определяет адрес БДС, содержащего открытые результаты поиска
gItemNo
задает порядковый номер исключаемого элемента результата (отсчет от 0) для всех типов результата, кроме записей. Для записей этот параметр задает физический номер записи, исключаемой из результатов поиска

Результат

0 успех
отрицательное число код ошибки

 

Пример 1.

Найти что-то и исключить заданную запись.

int rc;
 SAB sAll;
 THANDLE hTable;
 . . .
 /* Все записи таблицы */
 htKeySearch( NULL, &sAll, hTable, 0, GREAT, "\0\0\0", NULL );
 . . .
 if( (rc=htOpenResults( &sAll, ROPEN_READ, NULL, 0 )) < 0 )
	 /* Обработка ошибок */
 . . .
 /* Исключить запись под номером 100 */
 if( (rc=htExcludeResultsItem( &sAll, 100L )) < 0 )
	 /* Обработка ошибок */
 . . .
 htCloseResults( &sAll );

Пример 2.

Исключить 3-й элемент гистограммы

 int rc;
 SAB sHisto;
 SAB sSet;
 THANDLE hTable;
 . . .
 htHistogramOfKey( &sHisto, 1, htKeySearch( NULL, &sSet,
		 hTable, 0, GREAT, "\0\0\0", NULL ) );
 . . .
 if( (rc=htOpenResults( &sHisto, ROPEN_READ, NULL, 0 )) < 0 )
	 /* Обработка ошибок */
 . . .
 if( (rc=htExcludeResultsItem( &sHisto, 2L )) < 0 )
	 /* Обработка ошибок */
 . . .
 htCloseResults( &sHisto );