SetDataAreaCustomDim

Синтаксис

DataAreaSliceCustomDim SetDataAreaCustomDim(string mon, DataAreaSliceCustomDim tArg)

Параметры

mon. Моникёр для работы с аналитической областью данных регламентного отчёта.

tArg. Настройки пользовательской иерархии, которые необходимо применить.

Описание

Операция SetDataAreaCustomDim изменяет пользовательскую иерархию у измерения среза аналитической области данных.

Комментарии

Операция позволяет изменить структуру пользовательской иерархии, которая будет отображаться вместо исходного измерения. Для выполнения операции укажите в поле mon моникёр экземпляра регламентного отчёта с постфиксом «!DataArea» для работы с аналитической областью данных, а в поле tArg настройки пользовательской иерархии, которая заменит исходное измерение. Моникёр может быть получен при выполнении операции OpenPrxMeta.

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

Пример

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

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">
<SetDataAreaCustomDim xmlns="http://www.fsight.ru/PP.SOM.Som">
  <mon xmlns="">PPDGOAHAHLGIGOAEIELJEHMJFKLMCFPECKMBBHPICJJONNKB!M!S!PIHGHGJHAHLGIGOAEKKOKAFCJEMGPLBHEMJEKIGDODICNDNKH!DataArea</mon>
<tArg xmlns="">
  <sliceKey>1</sliceKey>
  <operation>Add</operation>
<dim>
<elems>
<Item>
  <name />
  <id />
  <owner />
<arg>
  <parentId>1</parentId>
  </arg>
  </Item>
  </elems>
  <key>116</key>
  </dim>
  </tArg>
  </SetDataAreaCustomDim>
  </s:Body>
  </s:Envelope>

SOAP-ответ:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<SetDataAreaCustomDimResult 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">
  <sliceKey xmlns="">1</sliceKey>
<dim xmlns="">
<elems>
<Item>
  <name>Элемент</name>
  <id>-2</id>
  <owner>1</owner>
  </Item>
  </elems>
  <key>116</key>
  </dim>
  </SetDataAreaCustomDimResult>
  </soapenv:Body>
  </soapenv:Envelope>

JSON-запрос:

{
"SetDataAreaCustomDim" :
{
"mon" : "PPDGOAHAHLGIGOAEIELJEHMJFKLMCFPECKMBBHPICJJONNKB!M!S!PIHGHGJHAHLGIGOAEKKOKAFCJEMGPLBHEMJEKIGDODICNDNKH!DataArea",
"tArg" :
{
"sliceKey" : "1",
"operation" : "Add",
"dim" :
{
"elems" :
{
"Item" :
{
"name" : "",
"id" : "",
"owner" : "",
"arg" :
{
"parentId" : "1"
}
}
},
"key" : "116"
}
}
}
}

JSON-ответ:

{
"SetDataAreaCustomDimResult" :
{
"sliceKey" : "1",
"dim" :
{
"elems" :
{
"Item" :
{
"name" : "Элемент",
"id" : "-2",
"owner" : "1"
}
},
"key" : "116"
}
}
}
public static DataAreaSliceCustomDim DataAreaAddCalcElement(string moniker, uint sliceKey, uint dimKey, uint? parentElemKey = null)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tSet = new SetDataAreaCustomDim()
{
tArg = new DataAreaSliceCustomDim()
{
sliceKey = sliceKey,
operation = CDOp.Add,
dim = new CustomDimension()
{
key = dimKey,
elems = new CDElement[]
{
new CDElement()
{
arg = new CDActionArg()
{
parentId = (parentElemKey != null ? parentElemKey.ToString() : null)
},
owner = string.Empty,
id = string.Empty,
name = string.Empty
}
}
}
},
mon = moniker + "!DataArea"
};
// Создание вычисляемого элемента в пользовательской иерархии
var result = somClient.SetDataAreaCustomDim(tSet);
return result;
}

См. также:

Работа с регламентными отчётами