Получение информации о статусе выполнения импорта в куб

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

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">
<GetCubeImport xmlns="http://www.fsight.ru/PP.SOM.Som">
<tCubeImport xmlns="">
  <id>S1!M!S!I1</id>
  </tCubeImport>
<tArg xmlns="">
<pattern>
  <obInst>true</obInst>
  <execute>true</execute>
  <resultType>true</resultType>
<executeResult>
<duplicates>
  <start>0</start>
  </duplicates>
<nulls>
  <start>0</start>
  </nulls>
  </executeResult>
  </pattern>
  </tArg>
  </GetCubeImport>
  </s:Body>
  </s:Envelope>

SOAP-ответ:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<GetCubeImportResult 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>S1!M!S!I1</id>
  </id>
<meta xmlns="">
<obInst>
<obDesc isShortcut="0" isLink="0" fullUrl="/" hf="0">
  <i>FORNEWCUBE</i>
  <n>Для новых кубов</n>
  <k>5881</k>
  <c>0</c>
  <p>5845</p>
  <h>0</h>
  <hasPrv>0</hasPrv>
  <isPermanent>1</isPermanent>
  <isTemp>0</isTemp>
  </obDesc>
  </obInst>
<execute>
  <state>Running</state>
  <extendedResult>1</extendedResult>
  </execute>
  <resultType>Cube</resultType>
  <loadDuplicates>0</loadDuplicates>
  </meta>
  </GetCubeImportResult>
  </soapenv:Body>
  </soapenv:Envelope>

JSON-запрос:

{
 "GetCubeImport" : 
  {
   "tCubeImport" : 
    {
     "id" : "S1!M!S!I1"
    },
   "tArg" : 
    {
     "pattern" : 
      {
       "obInst" : "true",
       "execute" : "true",
       "resultType" : "true",
       "executeResult" : 
        {
         "duplicates" : 
          {
           "start" : "0"
          },
         "nulls" : 
          {
           "start" : "0"
          }
        }
      }
    }
  }
}

JSON-ответ:

{
 "GetCubeImportResult" : 
  {
   "id" : 
    {
     "id" : "S1!M!S!I1"
    },
   "meta" : 
    {
     "obInst" : 
      {
       "obDesc" : 
        {
         "@fullUrl" : "\/",
         "@isShortcut" : "0",
         "@isLink" : "0",
         "@hf" : "0",
         "i" : "FORNEWCUBE",
         "n" : "Для новых кубов",
         "k" : "5881",
         "c" : "0",
         "p" : "5845",
         "h" : "0",
         "hasPrv" : "0",
         "isPermanent" : "1",
         "isTemp" : "0"
        }
      },
     "execute" : 
      {
       "state" : "Running",
       "extendedResult" : "1"
      },
     "resultType" : "Cube",
     "loadDuplicates" : "0"
    }
  }
}
public static GetCubeImportResult GetCubeImportExecuteInfo(CubeImportId moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tGet = new GetCubeImport()
{
tArg = new GetCubeImportArg()
{
pattern = new CubeImportMdPattern()
{
execute = true,
executeResult = new CubeImportExecuteResultPattern()
{
duplicates = new ListRange() { start = 0 },
nulls = new ListRange() { start = 0 }
},
resultType = true
}
},
tCubeImport = moniker
};
//Получение информации о состоянии импортёра
var result = somClient.GetCubeImport(tGet);
return result;
}

См. также:

GetCubeImport: Операция