SetTabSheetDataResult SetTabSheetData(TabSheetId tTabSheet, SetTabSheetDataArg tArg)
tTabSheet. Моникёр таблицы;
tArg. Параметры изменения данных и метаданных.
Операция SetTabSheetData изменяет данные и метаданные таблицы.
Для выполнения операции необходимо в параметре tTabSheet указать моникёр таблицы, а в параметре tArg указать параметры изменения данных и метаданных. Моникёр может быть сформирован на основании моникёра открытого экземпляра объекта, с таблицей которого осуществляется работа, по следующим правилам:
«Моникёр экземпляра экспресс-отчета»!Tab. Таблица экспресс-отчета (если в экспресс-отчете один лист).
«Моникёр экземпляра экспресс-отчета»!Sheets!«Ключ листа»!Tab. Таблица заданного листа экспресс-отчета (если в экспресс-отчете несколько листов).
«Моникёр экземпляра рабочей книги»!Tab. Таблица рабочей книги (если в рабочей книге один лист).
«Моникёр экземпляра рабочей книги»!Sheets!«Ключ листа»!Tab. Таблица заданного листа рабочей книги (если в рабочей книги несколько листов).
«Моникёр экземпляра рабочей книги»!CorrTab. Таблица с матрицей корреляции.
«Моникёр экземпляра рабочей книги»!CoeffTab. Таблица с коэффициентами уравнения.
«Моникёр экземпляра рабочей книги»!WeightsTab. Таблица с матрицей весов.
«Моникёр экземпляра регламентного отчета»!Ключ листа. Таблица отдельного листа регламентного отчета.
В поле tArg.pattern необходимо указать шаблон, в соответствии с которым будут изменяться данные или метаданные. Обновленные данные указываются в поле tArg.TabSheetData, метаданные - в поле tArg.metaData. Также в поле tArg.action могут быть указаны дополнительные действия, которые будут выполнены в таблице при выполнении операции. Если определено поле tArg.getArg, то результатом работы операции будут обновленные данные и метаданные, полученные после их изменения в таблице.
Ниже приведен пример использования операции SetTabSheetData для изменения данных указанного диапазона ячеек в таблице экспресс-отчёта. В запросе передается моникёр таблицы, новые данные для диапазона и шаблон, указывающий на необходимость изменить данные ячеек. В ответе приходит обновленная информация о данных указанного диапазона ячеек.
{ "SetTabSheetData" : { "tTabSheet" : { "id" : "S1!M!S!E1!Tab" }, "tArg" : { "TabSheetData" : { "Cells" : { "Cell" : [ { "@T" : "1", "@SI" : "1", "@L" : "1", "CD" : { "@V" : "13.8386357", "@FT" : "", "@VT" : "8" } }, { "@T" : "1", "@SI" : "2", "@L" : "2", "CD" : { "@V" : "13.4838968", "@FT" : "", "@VT" : "8" } }, { "@T" : "1", "@SI" : "2", "@L" : "3", "CD" : { "@V" : "13.4838968", "@FT" : "", "@VT" : "8" } }, { "@T" : "1", "@SI" : "2", "@L" : "4", "CD" : { "@V" : "13.4838968", "@FT" : "", "@VT" : "8" } } ] } }, "range" : { "left" : "1", "top" : "1", "width" : "4", "height" : "1" }, "setPattern" : { "data" : "true" }, "getArg" : { "pattern" : { "data" : "true" }, "range" : { "left" : "1", "top" : "1", "width" : "4", "height" : "1" } } } } }
{ "SetTabSheetDataResult" : { "id" : { "id" : "S1!M!S!E1!Tab" }, "sheet" : { "TabSheetData" : { "Cells" : { "Cell" : [ { "@T" : "1", "@L" : "1", "@SI" : "1", "CD" : { "@V" : "13.8386357", "@FT" : "13.8386357", "@VT" : "8" } }, { "@T" : "1", "@L" : "2", "@SI" : "2", "CD" : { "@V" : "13.4838968", "@FT" : "13.4838968", "@VT" : "8" } }, { "@T" : "1", "@L" : "3", "@SI" : "2", "CD" : { "@V" : "13.4838968", "@FT" : "13.4838968", "@VT" : "8" } }, { "@T" : "1", "@L" : "4", "@SI" : "2", "CD" : { "@V" : "13.4838968", "@FT" : "13.4838968", "@VT" : "8" } } ] } } } } }
public static SetTabSheetDataResult ChangeTabData(EaxId eax, TabRange range, TabData newData)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операции
// Параметры выполнения операции
var tSet = new SetTabSheetData()
{
tArg = new SetTabSheetDataArg()
{
setPattern = new TabSheetPattern()
{
data = true,
},
//Изменяемый диапазон ячеек
range = range,
//Новые данные ячеек
TabSheetData = newData,
getArg = new GetTabSheetDataArg()
{
pattern = new TabSheetPattern()
{
data = true,
},
range = range
}
},
tTabSheet = new TabSheetId() { id = eax.id + "!Tab" }
};
// Выполняем изменение диаграммы
var result = somClient.SetTabSheetData(tSet);
return result;
}
См. также: