Скопировать строки из одной таблицы в другую, используя расширенный фильтр.


На примере показано как скопировать из таблицы iTable в iTableFiltered все записи без суммирования числовых переменных одинаковых строк у которых в колонке с названием "Колонка1" значение "СТЕНА", значение в колонке "Колонка2" - содержит "3", в колонке "Колонка3" содержится в любом месте "В22" или "В22" (В - или на русском или на английском) и в колонке "Колонка 4" число больше или равное 2.


bool stoponfirstnoteq = false;

bool add_sum = false;


ts_table(iTableFiltered, "add_rows_from_eq_table_by_extended_filter", iTable, bool stoponfirstnoteq, bool add_sum,

       "(", "ANY", "Колонка1", "=", "СТЕНА", "", "AND"

       "" , "ANY", "Колонка2", "CONTAINS", "3", "", "AND"

       "" , "ANY", "Колонка3", "REGEXMATCH", ".*[BВ]22.*", "", "AND"

        "", "ANY", "Колонка4", ">=", 2, ")" );


Здесь 

iTableFiltered - дескриптор таблицы, в которую будут копироваться строки из таблицы iTable;

stoponfirstnoteq - остановить копирование при первом столкновении с неподходящей строкой;

add_sum - при собпадении данных у строк по ключевой колонке - суммировать числовые значения;