export_to_LABPP_Table
Экспортировать строки таблицы в табличный элемент LABPP_Table.gsm.
ts_table(iTable, "export_to_LABPP_Table", bool withheader, int startcolindex, int startObjectrow, int starttablerow, int maxrows, string digit_delimiter);
или
ts_table(iTable, "export_to_LABPP_Table", bool withheader, int startcolindex, int startObjectrow, int starttablerow, int maxrows, string digit_delimiter, int iLABPP_TableGuidDescr);
Здесь:
withheader = 0/1 - с заголовками или без
startcolindex - индекс колонки в элементе таблицы, с которой надо выводить в таблицу ( начиная с 1);
startObjectrow - индекс строки в в элементе таблицы, с которой надо выводить в таблицу (начиная с 1);
starttablerow - с какой строки начинать вывод из таблицы (начиная с 0-й строки)
digit_delimiter - разделитель целой и дробной части заменить на этот символ ("." или ",")
maxrows - сколько строк выводить. (-1 - все).
Пример.
Создать таблицу и записать ее содержимое в выбранный элемент LABPP_Table в проекте.
int main()
{
int iTable;
object("create", "ts_table", iTable); // создать таблицу
// Создаем колонки таблицы
ts_table(iTable, "add_column", 0, "string", "Моя первая колонка");
ts_table(iTable, "add_column", 1, "double", "Моя вторая колонка с числом");
ts_table(iTable, "add_column", 2, "string", "Примечания");
// Добавляем строки
ts_table(iTable, "add_row", 0, "Строка 1", 1, 10000.1111, 2, "Примечание 1");
ts_table(iTable, "add_row", 0, "Строка 2", 1, 20000.2222);
ts_table(iTable, "add_row", 0, "Строка 3", 1, 30000.335, 2, "Примечание 3");
// Загрузить из выбранных элементов объекты LABPP_Table
ac_request("load_elements_list_from_selection", 1, "ObjectType", "ObjectName", "LABPP_Table", "MainFilter", 2);
ac_request("get_loaded_elements_list_count", 1);
int icount = ac_getnumvalue();
int i;
bool withheader = true;
int startcolindex = 1;
int startObjectrow = 1;
int starttablerow = 0;
int maxrows = -1;
int maxcolumns;
// получить число колонок и строк
ts_table(iTable, "get_columns_count", maxcolumns);
ts_table(iTable, "get_rows_count", maxrows);
// Перебрать все отобранные объекты LABPP_Table. Если нужен только единственный - можно цикл не делать.
for (i = 0; i < icount; i++)
{
// Установить текущим элементом объект из списка 1 № i
ac_request("set_current_element_from_list", 1, i);
// Записать в него содержимое таблицы
ts_table(iTable, "export_to_LABPP_Table", withheader, startcolindex, startObjectrow, starttablerow, maxrows,",");
// Задать в объекте количество использованных строк
ac_request("set_object_property_value", "TS_RowsUsedCount", maxrows+1);
// Задать в объекте количество использованных колонок
ac_request("set_object_property_value", "TS_ColumnsUsedCount", maxcolumns);
// Дать команду объекту выполнить внутренний перерасчет
ac_request("set_object_property_value", "TS_DoRecalcAll", 1);
}
// Удалить из памяти таблицу
object("delete", iTable);
}
В результате выполнения программы в таблицу будут занесены данные.