<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://sfsys.ru/index.php?action=history&amp;feed=atom&amp;title=Tab.Locate</id>
	<title>Tab.Locate - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://sfsys.ru/index.php?action=history&amp;feed=atom&amp;title=Tab.Locate"/>
	<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=Tab.Locate&amp;action=history"/>
	<updated>2026-04-04T13:24:56Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>http://sfsys.ru/index.php?title=Tab.Locate&amp;diff=2424&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=Tab.Locate&amp;diff=2424&amp;oldid=prev"/>
		<updated>2021-02-07T06:53:35Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 06:53, 7 February 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=Tab.Locate&amp;diff=2423&amp;oldid=prev</id>
		<title>Admin at 06:27, 17 August 2019</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=Tab.Locate&amp;diff=2423&amp;oldid=prev"/>
		<updated>2019-08-17T06:27:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{infobox function&lt;br /&gt;
|name=Locate&lt;br /&gt;
|object=[[Таблица]]&lt;br /&gt;
|caption=Поиск в ячейках&lt;br /&gt;
|type=1&lt;br /&gt;
|status=2&lt;br /&gt;
|db=0&lt;br /&gt;
|exception=Неверное имя столбца, невозможно превратить в число, строку&lt;br /&gt;
|visual=0}}&lt;br /&gt;
{{HeadLinks|&lt;br /&gt;
* [[Main_Page|Начальная страница]]&lt;br /&gt;
* [[Общее_описание_языка|Общее описание]]&lt;br /&gt;
* [[Объекты]]&lt;br /&gt;
* [[Таблица]]}}&lt;br /&gt;
Функция производит поиск заданного списком столбцов количества значений в таблице. Функция ищет первую строку, в которой каждый из указанных в первом аргументе функции столбцов, содержит значение, указанное в соответствующем последующем аргументе функции. Поиск всегда начинается с первой строки таблицы. Поиск может принимать во внимание факт того, что таблица сортирована по всем столбцам поиска по неубыванию, что может значительно ускорить нахождение значения. Если значение найдено, индекс строки где оно было найдено, возвращается в результате функции, иначе функция возвращает ноль.&lt;br /&gt;
&lt;br /&gt;
== Синтаксис ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
{{Grey|Tab.}}'''Locate'''(''&amp;lt;Список наименований столбцов поиска через запятую (STRING)&amp;gt;''{{Optional|,&amp;lt;Значение поиска столбца 1&amp;gt;,&amp;lt;Значение поиска столбца 2&amp;gt;...,&amp;lt;Таблица сортирована по столбцам поиска (INT)&amp;gt;}}):''&amp;lt;Индекс найденной строки таблицы (INT)&amp;gt;''&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Аргументы ====&lt;br /&gt;
* &amp;lt;code&amp;gt;''&amp;lt;Список наименований столбцов поиска через запятую (STRING)&amp;gt;''&amp;lt;/code&amp;gt; - Строка содержит список наименований столбцов поиска через запятую. Регистр наименований не имеет значения. Каждый заданный столбец должен присутствовать в таблице.&lt;br /&gt;
* &amp;lt;code&amp;gt;''&amp;lt;Значение поиска столбца ?&amp;gt;''&amp;lt;/code&amp;gt; - {{Optional}} Произвольные значения, которые необходимо найти в таблице в указанных в первом аргументе столбцах поиска. Количество аргументов должно совпадать с количеством столбцов.&lt;br /&gt;
* &amp;lt;code&amp;gt;''&amp;lt;Таблица сортирована по столбцам поиска (INT)&amp;gt;''&amp;lt;/code&amp;gt; - {{Optional}} Возможные значения 0 и 1. Если таблица была предварительно отсортирована по всем столбцам поиска по неубыванию (т.е. предварительно выполнена конструкция &amp;lt;code&amp;gt;aTab.Sort(&amp;lt;Столбец1,Столбец2...&amp;gt;)&amp;lt;/code&amp;gt;, либо для заполнения таблицы вызывалась функция &amp;lt;code&amp;gt;aTab.AddLineSorted(&amp;lt;Столбец1,Столбец2...&amp;gt;,...)&amp;lt;/code&amp;gt;), будет происходить поиск с учетом сортировки (ускорение). Пример сравнения скорости работы функции для сортированных и не сортированных таблиц см. ниже. '''Важно''': если таблица не была отсортирована по столбцам поиска, сортированный поиск не будет работать корректно.&lt;br /&gt;
&lt;br /&gt;
==== Возвращаемое значение ====&lt;br /&gt;
Возвращается индекс найденной строки, если строка со всеми значениями была найдена, иначе возвращается ноль.&lt;br /&gt;
&lt;br /&gt;
== Примеры ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
//Создается и заполняется таблица значений&lt;br /&gt;
aTab:=Tab.Create(&amp;quot;b1,b2,b3,b4&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
aTab.AddLine(&amp;quot;b1,b2,b3,b4&amp;quot;,1,2,3,4);&lt;br /&gt;
aTab.AddLine(&amp;quot;b1,b2,b3,b4&amp;quot;,2,2,3,33);&lt;br /&gt;
aTab.AddLine(&amp;quot;b1,b2,b3,b4&amp;quot;,3,5,5,4);&lt;br /&gt;
aTab.AddLine(&amp;quot;b1,b2,b3,b4&amp;quot;,4,2,3,4);&lt;br /&gt;
aTab.AddLine(&amp;quot;b1,b2,b3,b4&amp;quot;,4,2,3,77);&lt;br /&gt;
aTab.AddLine(&amp;quot;b1,b2,b3,b4&amp;quot;,5,2,3,4);&lt;br /&gt;
&lt;br /&gt;
Message(&amp;quot;В первом случае была найдена строка: &amp;quot;+aTab.Locate(&amp;quot;b2,b3&amp;quot;,2,3));&lt;br /&gt;
Message(&amp;quot;Во втором случае была найдена строка: &amp;quot;+aTab.Locate(&amp;quot;b4&amp;quot;,77));&lt;br /&gt;
&lt;br /&gt;
//Будет выведено последовательно:&lt;br /&gt;
//&amp;quot;В первом случае была найдена строка: 1&amp;quot;&lt;br /&gt;
//&amp;quot;Во втором случае была найдена строка: 5&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Сравнение скорости работы функций с сортировкой и функций без сортировки ===&lt;br /&gt;
{{Пример поиска множества значений в сортированных таблицах}}&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
</feed>