Tab.FindInLine

From SunFlurry wiki
Revision as of 08:53, 7 February 2021 by Admin (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  FindInLine (Поиск в ячейках)
Объект:Таблица
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Неверный индекс строки, столбца, невозможно превратить в число, строку
Визуальность:Нет

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

Синтаксис

Tab.FindInLine(<Значение поиска>,<Индекс строки поиска (INT)>,<Наименование или индекс начального столбца поиска, индекс результирующего столбца (STRING,INT)>):<Значение найдено 1 или 0 (INT)>

Аргументы

  • <Значение поиска> - Произвольное значение, которое необходимо найти в указанной строке.
  • <Индекс строки поиска (INT)> - (необязательный аргумент) Числовой аргумент, задающий индекс строки поиска. Если аргумент опущен, поиск будет производиться в текущей строке (CurLine).
  • <Наименование или индекс начального столбца поиска, индекс результирующего столбца (STRING,INT)> - (необязательный аргумент)(возможен аргумент-переменная (ByRef)) Строковое значение аргумента задает наименование начального столбца, значение ячейки которого необходимо найти, числовое значение задает номер этого начального столбца (нумерация столбца происходит с единицы, однако, можно задавать ноль). Если аргумент является переменной, которая содержала число при вызове функции, и значение было найдено, переменная будет обновлена индексом найденного столбца, если переменная содержала строку при вызове, переменная будет обновлена наименованием найденного столбца.

Возвращаемое значение

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

Примеры

//Создается и заполняется таблица значений
aTab:=Tab.Create("b1,b2,b3,b4");

aTab.AddLine("b1,b2,b3,b4",1,2,3,4);
aTab.AddLine("b1,b2,b3,b4",2,2,3,33);
aTab.AddLine("b1,b2,b3,b4",3,5,5,4);
aTab.AddLine("b1,b2,b3,b4",4,2,3,4);
aTab.AddLine("b1,b2,b3,b4",4,2,3,77);
aTab.AddLine("b1,b2,b3,b4",5,2,3,4);

iCol:=0;
If aTab.FindInLine(33,2,iCol) Then
  Message("Для строки 2 число 33 найдено в столбце "+aTab.GetColumnName(iCol));
EndIf;

//Будет выведено:
//"Для строки 2 число 33 найдено в столбце B4"