Ниже приведен пример использования операции SetEaxMd для настройки условного форматирования в таблице экспресс-отчета. В запросе передается моникёр открытого экземпляра экспресс-отчета, шаблон, указывающий необходимость изменить стили условных форматов, и метаданные, содержащие два условных формата. Первый условный формат подсвечивает максимальные значения, второй - минимальные. Каждый условный формат имеет собственный стиль оформления. Результатом работы операции является моникёр измененного экспресс-отчета.
{ "SetEaxMd" : { "tEax" : { "id" : "S1!M!S!E2" }, "tArg" : { "pattern" : { "obInst" : "false", "gridStyle" : { "ops" : { "it" : { "Key" : "InternalFormatConditions", "Value" : "Set" } } } }, "meta" : { "grid" : { "style" : { "internalFormatConditions" : { "Condition" : [ { "Key" : "0", "Type" : "RankValues", "Enabled" : "true", "Details" : { "RankValues" : { "Type" : "0", "Percent" : "0", "Count" : "3", "Style" : { "Font" : { "@B" : "true", "@C" : "#00FF00", "@F" : "Calibri" } }, "PercentUsed" : "false" } } }, { "Key" : "0", "Type" : "RankValues", "Enabled" : "true", "Details" : { "RankValues" : { "Type" : "1", "Percent" : "0", "Count" : "3", "Style" : { "Font" : { "@C" : "#FF0000", "@F" : "Calibri", "@I" : "true" } }, "PercentUsed" : "false" } } } ] } } } } } } }
{ "SetEaxMdResult" : { "changedDims" : "", "id" : { "id" : "S1!M!S!E2" } } }
public static SetEaxMdResult SetEaxFormatConditions(EaxId moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tEaxMd = new SetEaxMd()
{
tArg = new SetEaxMdArg()
{
pattern = new EaxMdPattern() //Шаблон, в соответствии с которым будут изменяться метаданные
{
obInst = false,
gridStyle = new EaxGridStylePattern() //Настройка условных форматов
{
ops = new EaxGridStylePartListOpsIT[]
{
new EaxGridStylePartListOpsIT() { Key = EaxGridStylePart.InternalFormatConditions, Value = ListOperation.Set },
}
}
},
//Изменяемые метаданные
meta = new EaxMd()
{
grid = new EaxGrid() //Настройка оформления итогов
{
style = new EaxGridStyle()
{
internalFormatConditions = new TabFormatCondition[]
{
new TabFormatCondition() //Формат подствеки максимального значения
{
Type = TabConditionType.RankValues,
Enabled = true,
Details = new TabFormatConditionDetails()
{
RankValues = new TabFormatRankValues()
{
Count = 1,
Type = 0, //Максимальные значения
Style = new TabStyle()
{
Font = new TabFontStyle()
{
B = true,
BSpecified = true,
C = "#00FF00",
F = "Calibri",
}
}
}
}
},
new TabFormatCondition() //Формат подствеки минимального значения
{
Type = TabConditionType.RankValues,
Enabled = true,
Details = new TabFormatConditionDetails()
{
RankValues = new TabFormatRankValues()
{
Count = 1,
Type = 1, //Минимальное значения
Style = new TabStyle()
{
Font = new TabFontStyle()
{
I = true,
ISpecified = true,
C = "#FF0000",
F = "Calibri",
}
}
}
}
}
}
}
}
}
},
tEax = moniker
};
//Изменение параметров итогов
var result = somClient.SetEaxMd(tEaxMd);
return result;
}
См. также: