Настройка итогов

Ниже приведен пример использования операции SetEaxMd для настройки итогов. В запросе передается моникёр открытого экземпляра экспресс-отчета, шаблон, указывающий необходимость настроить итоги, и метаданные, содержащие параметры итогов и стиль оформления итоговых данных. Результатом работы операции является моникёр измененного экспресс-отчета.

SOAP-запрос:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SetEaxMd xmlns="http://www.fsight.ru/PP.SOM.Som">
<tEax xmlns=" ">
  <id>S12!M!S!E1</id>
  </tEax>
<tArg xmlns=" ">
<pattern>
  <obInst>false</obInst>
  <totals>true</totals>
<gridStyle>
<parts>
  <it>Totals</it>
  </parts>
  </gridStyle>
  </pattern>
<meta>
<pivot>
<evaluator>
<totals>
  <byHierarchy>true</byHierarchy>
  <byLevels>false</byLevels>
<rowTypes>
  <t>Sum</t>
  </rowTypes>
  <enabled>true</enabled>
  </totals>
  </evaluator>
  </pivot>
<grid>
<style>
<totals>
  <Font F="Calibri" C="#FF0000" I="true" B="true" />
  </totals>
  </style>
  </grid>
  </meta>
  </tArg>
  </SetEaxMd>
  </s:Body>
  </s:Envelope>

SOAP-ответ:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<SetEaxMdResult xmlns="http://www.fsight.ru/PP.SOM.Som" xmlns:q1="http://www.fsight.ru/PP.SOM.Som" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<id xmlns=" ">
  <id>S12!M!S!E1</id>
  </id>
  </SetEaxMdResult>
  </soapenv:Body>
  </soapenv:Envelope>

JSON-запрос:

{
 "SetEaxMd" : 
  {
   "tEax" : 
    {
     "id" : "S1!M!S!E2"
    },
   "tArg" : 
    {
     "pattern" : 
      {
       "obInst" : "false",
       "totals" : "true",
       "gridStyle" : 
        {
         "parts" : 
          {
           "it" : "Totals"
          }
        }
      },
     "meta" : 
      {
       "pivot" : 
        {
         "evaluator" : 
          {
           "totals" : 
            {
             "byHierarchy" : "true",
             "byLevels" : "false",
             "rowTypes" : 
              {
               "t" : "Sum"
              },
             "enabled" : "true"
            }
          }
        },
       "grid" : 
        {
         "style" : 
          {
           "totals" : 
            {
             "Font" : 
              {
               "@B" : "true",
               "@C" : "#FF0000",
               "@F" : "Calibri",
               "@I" : "true"
              }
            }
          }
        }
      }
    }
  }
}

JSON-ответ:

{
 "SetEaxMdResult" : 
  {
   "changedDims" : "",
   "id" : 
    {
     "id" : "S1!M!S!E2"
    }
  }
}
    public static SetEaxMdResult SetEaxTotals(EaxId moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tEaxMd = new SetEaxMd()
{
tArg = new SetEaxMdArg()
{
pattern = new EaxMdPattern() //Шаблон, в соответствии с которым будут изменяться метаданные
{
obInst = false,
totals = true, //Изменение параметров рассчитываемых итогов
gridStyle = new EaxGridStylePattern() //Изменение стиля оформления итогов
{
parts = new EaxGridStylePart[]
{
EaxGridStylePart.Totals
}
},
},
//Изменяемые метаданные
meta = new EaxMd()
{
pivot = new EaxPivot()
{
evaluator = new PvtEvaluator()
{
totals = new PvtTotals() //Итоги, рассчитываемые в таблице
{
byHierarchy = true,
byLevels = false,
rowTypes = new PvtEvaluatorElementType[]
{
PvtEvaluatorElementType.Sum
},
enabled = true
}
}
},
grid = new EaxGrid()
{
style = new EaxGridStyle() //Стили таблицы
{
totals = new TabStyle() //Стиль оформления итогов
{
Font = new TabFontStyle()
{
B = true,
BSpecified = true,
I = true,
ISpecified = true,
C = "#FF0000",
F = "Calibri",
}
}
}
}
}
},
tEax = moniker
};
//Изменение параметров итогов
var result = somClient.SetEaxMd(tEaxMd);
return result;
}

См. также:

SetEaxMd: Операция