Difference between revisions of "Tab.Compare"
m (1 revision imported) |
|
(No difference)
| |
Latest revision as of 15:56, 4 March 2021
| Compare (Сравнение таблиц) | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
Функция сравнивает текущую таблицу с заданной по указанным правилам, и возвращает 1, если таблицы эквивалентны. Функция проверяет, что количество столбцов, их порядок, их наименования, порядок строк и каждая ячейка в каждой строке одной таблицы соответствует второй.
Синтаксис
Tab.Compare(<Таблица для сравнения (TAB)>,<Столбцы для сравнения (STRING)>):<Сравниваемая таблица совпадает с текущей (INT)>
Аргументы
<Таблица для сравнения (TAB)>- Таблица, с которой будет происходит сравнение текущей таблицы.<Столбцы для сравнения (STRING)>- (необязательный аргумент) Аргумент содержит список наименований столбцов, которые будут использоваться при сравнении. Наименования разделены запятыми. Если аргумент не задан, будут сравниваться все столбцы, при этом порядок столбцов первой и второй таблицы должен совпадать, иначе функция возвратит 0. Если аргумент задан, будут сравниваться только указанные столбцы, при этом порядок следования столбцов в первой и второй таблицах не будет проверяться на совпадение.
Возвращаемое значение
Возвращает 1, если таблицы совпадают с точки зрения режима сравнения функции, 0 -- в ином случае.
Примеры
//Создается и заполняется таблица значений
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);
//Создаем копию текущей таблицы
bTab:=aTab.Copy();
Message("Таблицы aTab и bTab "+?(aTab.Compare(bTab),"совпадают","не совпадают"));
//Будет выведено "Таблицы aTab и bTab совпадают"
//Сдвигаем строку 1 таблицы bTab на две строки вниз.
bTab.Move(1,2);
Message("Таблицы aTab и bTab "+?(aTab.Compare(bTab),"совпадают","не совпадают"));
//Будет выведено "Таблицы aTab и bTab не совпадают"