<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.a2nta.ru/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>Wiki [3.x] product:api:integration_examples</title>
        <description></description>
        <link>https://wiki.a2nta.ru/</link>
        <lastBuildDate>Mon, 25 May 2026 22:12:04 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>https://wiki.a2nta.ru/lib/exe/fetch.php/wiki/favicon.ico</url>
            <title>Wiki [3.x]</title>
            <link>https://wiki.a2nta.ru/</link>
        </image>
        <item>
            <title>Интеграция ADVANTA с Analytic Workspace</title>
            <link>https://wiki.a2nta.ru/doku.php/product/api/integration_examples/aw</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;интеграция_advanta_с_analytic_workspace&quot;&gt;Интеграция ADVANTA с Analytic Workspace&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://analyticworkspace.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://analyticworkspace.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Analytic Workspace&lt;/a&gt; — российская BI-система, позволяющая обрабатывать данные из разных источников и визуализировать их при помощи широкого набора встроенных инструментов. Благодаря интеграции возможно использование инструментария Analytic Workspace для построения дашбордов на основе данных из ADVANTA. Это дает дополнительные возможности для анализа данных и последующего формирования управленческих решений. 
&lt;/p&gt;

&lt;p&gt;
Ниже приведена подробная пошаговая инструкция по организации процесса обмена данными между двумя системами. Для реализации обмена у вас должен быть доступ к по крайней мере к демо-версиям данных продуктов.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f ADVANTA \u0441 Analytic Workspace&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f_advanta_\u0441_analytic_workspace&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1205&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit2&quot; id=&quot;сформировать_в_advanta_linq-запросы&quot;&gt;1)	Сформировать в ADVANTA LINQ-запросы&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Интеграция с Analytic Workspace организована с использованием &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/corporative/integration/linq&quot; class=&quot;wikilink1&quot; title=&quot;corporative:integration:linq&quot; data-wiki-id=&quot;corporative:integration:linq&quot;&gt;LINQ-запросов&lt;/a&gt; и &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/start&quot; class=&quot;wikilink1&quot; title=&quot;product:api:start&quot; data-wiki-id=&quot;product:api:start&quot;&gt;Web-API&lt;/a&gt; ADVANTA. Таким образом, для того, чтобы загрузить данные в BI-систему, необходимо предварительно сформировать LINQ-запросы внутри ADVANTA для получения тех данных, которые в дальнейшем будут визуализированы.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1)\t\u0421\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 ADVANTA LINQ-\u0437\u0430\u043f\u0440\u043e\u0441\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c_\u0432_advanta_linq-\u0437\u0430\u043f\u0440\u043e\u0441\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1206-1827&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit3&quot; id=&quot;пример_linq-запроса_данных_по_проектам&quot;&gt;Пример LINQ-запроса данных по проектам&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code csharp&quot;&gt; &lt;span class=&quot;coMULTI&quot;&gt;/* 1. перечень всех проектов (2 типа объектов - ИТ-проект и Организационный проект)
с UID и всеми системными реквизитами (сроки начала/завершения - план, факт, ответственные (ФИО), статус (текстом), последний базовый план)
- объект-родитель (название)
и пользовательскими реквизитами:
- жизненный цикл проекта
- описание
- масштаб проекта (текстовое значение)
- эффект
- последняя запись из справочника &amp;quot;Отчет о статусе&amp;quot; - все поля
- активная запись из справочника &amp;quot;Бюджет проекта&amp;quot; - только поле &amp;quot;Бюджет (план)&amp;quot;
*/&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;var&lt;/span&gt; projects &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; dataContext&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Projects&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Where&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; p &lt;a href=&quot;http://www.google.com/search?q=is+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;is&lt;/span&gt;&lt;/a&gt; IT_proekt_d46b6d &lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt; p &lt;a href=&quot;http://www.google.com/search?q=is+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;is&lt;/span&gt;&lt;/a&gt; Organizacionnij_proekt_a3e2fb&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderBy&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;CreationDate&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Select&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt;, 
                          p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;, ParentName &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Parent&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                          LifeCycleName &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Fields&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Zhiznennij_cikl_proekta_b07f57&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                          p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;SystemStartDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;SystemEndDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;ActualStartDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;ActualEndDate&lt;/span&gt;,
                          p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;BaselinePlanStartDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;BaselinePlanEndDate&lt;/span&gt;,
                          BossFIO &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Concat&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Owner&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;LastName&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&amp;quot; &amp;quot;&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Owner&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstName&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;, RPFIO &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Concat&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Responsible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;LastName&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&amp;quot; &amp;quot;&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Responsible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstName&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;,
                          Description &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Fields&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Opisanie_caaaaa&lt;/span&gt;,
                          ProjectScaleName &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Fields&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Masshtab_proekta_04412f&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                          ProjectGainName &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Fields&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Effekt_b6c145&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                          StatusReport_Date &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_440616&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;,
                          StatusReport_Chto_sdelano_problemi_riski &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_440616&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Chto_sdelano_problemi_riski_4a11b8&lt;/span&gt;,
                          StatusReport_Prichina_problemi &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_440616&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Prichina_problemi_a3e564&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                          StatusReport_StatusName &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_440616&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Status_e05ba3&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;, 
                          BudjetSum &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Byudzhet_plan_e5bee7&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Where&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;b &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; b&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Aktivnostj_versii_281a38&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;==&lt;/span&gt; Classifier_Aktivnostj_versii_625508&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Aktivnaya_4f5ba775_Id&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Sum&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;b &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; b&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Summa_06ff93&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; projects&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 LINQ-\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_linq-\u0437\u0430\u043f\u0440\u043e\u0441\u0430_\u0434\u0430\u043d\u043d\u044b\u0445_\u043f\u043e_\u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1828-4666&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit4&quot; id=&quot;пример_linq-запроса_данных_по_контрольным_точкам&quot;&gt;Пример LINQ-запроса данных по контрольным точкам&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code csharp&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;/*
2. перечень всех контрольных точек (1 тип объекта - КТ0)
с UID и всеми системными реквизитами (как и у проекта),
- UID - проекта-родителя (непрямой родитель)
и пользовательские поля:
- описание (текст)
- результат (текст)
- последняя запись из справочника &amp;quot;Отчет о мероприятии&amp;quot; - все поля
*/&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;var&lt;/span&gt; projects &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; dataContext&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;KT0_1ff431_List&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Select&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; 
      				p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt;, 
      				p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                    ProjectId &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;Guid&lt;span class=&quot;sy0&quot;&gt;?&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetParentHierarchy&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Project&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Where&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; p &lt;a href=&quot;http://www.google.com/search?q=is+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;is&lt;/span&gt;&lt;/a&gt; IT_proekt_d46b6d &lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt; p &lt;a href=&quot;http://www.google.com/search?q=is+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;is&lt;/span&gt;&lt;/a&gt; Organizacionnij_proekt_a3e2fb&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt;,
                    &lt;span class=&quot;co1&quot;&gt;// ProjectName = p.GetParentHierarchy&amp;lt;Project&amp;gt;(false).Where(p =&amp;gt; p is IT_proekt_d46b6d || p is Organizacionnij_proekt_a3e2fb).FirstOrDefault().Name,&lt;/span&gt;
                    p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;SystemStartDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;SystemEndDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;ActualStartDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;ActualEndDate&lt;/span&gt;,
                    p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;BaselinePlanStartDate&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;BaselinePlanEndDate&lt;/span&gt;,
                    BossFIO &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Concat&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Owner&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;LastName&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&amp;quot; &amp;quot;&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Owner&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstName&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;, RPFIO &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Concat&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Responsible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;LastName&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&amp;quot; &amp;quot;&lt;/span&gt;, p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Responsible&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstName&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;,
                    Description &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Opisanie_caaaaa&lt;/span&gt;,
                    Result &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Rezuljtat_8e716f&lt;/span&gt;,
                    StatusReport_Date &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_meropriyatiya_2bc942&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;,
                    StatusReport_Chto_sdelano_problemi_riski &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_meropriyatiya_2bc942&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Chto_sdelano_problemi_riski_4a11b8&lt;/span&gt;,
                    StatusReport_Prichina_problemi &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_meropriyatiya_2bc942&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Prichina_problemi_a3e564&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
                    StatusReport_StatusName &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;GetChildren&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;Otchet_o_statuse_meropriyatiya_2bc942&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderByDescending&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;o &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; o&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Date&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;FirstOrDefault&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Status_e05ba3&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;
      &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; projects&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-info&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-info-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Данный код запросов приведен в качестве примера. На вашей инсталяции необходимо будет указать наименования сущностей, объектов, справочников, реквизитов, соответствующих сформированному контексту LINQ-запросов.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 LINQ-\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u043c \u0442\u043e\u0447\u043a\u0430\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_linq-\u0437\u0430\u043f\u0440\u043e\u0441\u0430_\u0434\u0430\u043d\u043d\u044b\u0445_\u043f\u043e_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u043c_\u0442\u043e\u0447\u043a\u0430\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;4667-7333&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;создать_шаблоны_таблиц_данных_в_формате_xlsx&quot;&gt;2)	Создать шаблоны таблиц данных в формате .xlsx&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Данные шаблоны необходимы для формирования структуры хранения данных в AW в соответствии со структурой получаемых их ADVANTA данных.
&lt;/p&gt;

&lt;p&gt;
Для создания шаблона необходимо &lt;strong&gt;выполнить созданный LINQ-запрос&lt;/strong&gt; в ADVANTA, скопировать шапку полученной таблицы в Excel и сохранить файл в формате .xlsx. 
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D0%B1%D0%B5%D0%B7_%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8.jpg?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:без_имени.jpg&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D0%B1%D0%B5%D0%B7_%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8.jpg?w=800&amp;amp;tok=74ab66&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2)\t\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u0442\u0430\u0431\u043b\u0438\u0446 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 .xlsx&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u0442\u044c_\u0448\u0430\u0431\u043b\u043e\u043d\u044b_\u0442\u0430\u0431\u043b\u0438\u0446_\u0434\u0430\u043d\u043d\u044b\u0445_\u0432_\u0444\u043e\u0440\u043c\u0430\u0442\u0435_xlsx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;7334-8007&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit6&quot; id=&quot;пример_шаблона_для_источника_данных_по_проектам&quot;&gt;Пример шаблона для источника данных по проектам&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_002808.png?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:снимок_экрана_2024-04-22_002808.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_002808.png?w=600&amp;amp;tok=58eda0&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u0434\u043b\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0448\u0430\u0431\u043b\u043e\u043d\u0430_\u0434\u043b\u044f_\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430_\u0434\u0430\u043d\u043d\u044b\u0445_\u043f\u043e_\u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;8008-8202&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit7&quot; id=&quot;пример_шаблона_для_источника_данных_по_контрольным_точкам&quot;&gt;Пример шаблона для источника данных по контрольным точкам&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_002843.png?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:снимок_экрана_2024-04-22_002843.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_002843.png?w=600&amp;amp;tok=4af2d7&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

Загрузите данные шаблоны в Analytic Workspace, в раздел «Источники данных» — здесь необходимо &lt;strong&gt;создать источник, выбрать формат «Файл» и загрузить сформированный шаблон&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_003003.png?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:снимок_экрана_2024-04-22_003003.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_003003.png?w=250&amp;amp;tok=9eece4&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;250&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u0434\u043b\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u043c \u0442\u043e\u0447\u043a\u0430\u043c&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0448\u0430\u0431\u043b\u043e\u043d\u0430_\u0434\u043b\u044f_\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430_\u0434\u0430\u043d\u043d\u044b\u0445_\u043f\u043e_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u043c_\u0442\u043e\u0447\u043a\u0430\u043c&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;8203-8815&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;создать_модель_в_analytic_workspace_и_сформировать_скрипт_в_etl-редакторе&quot;&gt;3)	Создать модель в Analytic Workspace и сформировать скрипт в ETL-редакторе&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После создания источника необходимо в соответствующем разделе Analytic Workspace &lt;strong&gt;создать модель&lt;/strong&gt;, которая и будет служить витриной данных для созданного источника. Необходимо создать столько же моделей, сколько предполагается использовать LINQ-запросов. 
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_003125.png?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:снимок_экрана_2024-04-22_003125.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_003125.png?w=400&amp;amp;tok=80cae2&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

Сразу после создания необходимо перейти в режим редактирования модели и зайти в &lt;strong&gt;ETL-редактор&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D0%B1%D0%B5%D0%B7_%D0%B8%D0%BC%D0%B5%D0%BD%D0%B81.jpg?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:без_имени1.jpg&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D0%B1%D0%B5%D0%B7_%D0%B8%D0%BC%D0%B5%D0%BD%D0%B81.jpg?w=800&amp;amp;tok=6b9b96&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

В открывшемся редакторе необходимо ввести скрипт для обработки получаемых из ADVANTA данных. Скрипт написан на Python. 
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3)\t\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u0432 Analytic Workspace \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 \u0432 ETL-\u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u0442\u044c_\u043c\u043e\u0434\u0435\u043b\u044c_\u0432_analytic_workspace_\u0438_\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c_\u0441\u043a\u0440\u0438\u043f\u0442_\u0432_etl-\u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;8816-9959&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit9&quot; id=&quot;пример_скрипта_для_проектов&quot;&gt;Пример скрипта для проектов&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code csharp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;# -----------------------------------------------------------------------------------&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Cкрипт для обработки модели * * *&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# -----------------------------------------------------------------------------------&lt;/span&gt;
&amp;nbsp;
import requests
import datetime
&lt;span class=&quot;kw1&quot;&gt;from&lt;/span&gt; pyspark&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;sql&lt;/span&gt; import Row
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# python - m pip install requests, matplotlib, pandas&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;from&lt;/span&gt; pandas import json_normalize 
&amp;nbsp;
def after_all&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;df, spark, app, &lt;span class=&quot;sy0&quot;&gt;*&lt;/span&gt;args, &lt;span class=&quot;sy0&quot;&gt;**&lt;/span&gt;kwargs&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt;
    print&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;df&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;schema&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    LOGIN &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'* * *'&lt;/span&gt;
    PASSWORD &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'* * *'&lt;/span&gt;
    DOMAIN &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'https://* * *.ru'&lt;/span&gt;
&amp;nbsp;
    AUTH &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;st0&quot;&gt;'Login'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; LOGIN,
    &lt;span class=&quot;st0&quot;&gt;'Password'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; PASSWORD,
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    session &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; requests&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Session&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;co2&quot;&gt;# cookies = session.cookies.get_dict() # {}&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;# авторизация&lt;/span&gt;
    response &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;post&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;DOMAIN&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'/api/auth/login'&lt;/span&gt;, json&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;AUTH, verify&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;False&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    cookies &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;cookies&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;get_dict&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;# print(cookies)&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;# получение LINQ-запроса&lt;/span&gt;
    LINQ &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;st0&quot;&gt;'DataSourceKey'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'BI_projects'&lt;/span&gt;,
        &lt;span class=&quot;co2&quot;&gt;# нужен другой запрос для перечня проектов в модель list1&lt;/span&gt;
        &lt;span class=&quot;co2&quot;&gt;# 'DataSourceKey': 'BI_projects', &lt;/span&gt;
        &lt;span class=&quot;co2&quot;&gt;# и еще один для перечня КТ из этих проектов в модель list1_ywrq&lt;/span&gt;
        &lt;span class=&quot;co2&quot;&gt;# 'DataSourceKey': 'BI_milestones', &lt;/span&gt;
        &lt;span class=&quot;st0&quot;&gt;'PageSize'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;,     
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    r &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;post&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;DOMAIN&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'/api/queries/get'&lt;/span&gt;, cookies&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;cookies, json&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;LINQ, verify&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;False&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; not r&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;ok&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt;
        raise Exception&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;f&lt;span class=&quot;st0&quot;&gt;'Ошибка в {r.url}. HTTP {r.status_code}: {r.text}'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    data &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; r&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;#Создадим список, который послужит основной для создания DataFrame&lt;/span&gt;
    rows &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt; line &lt;span class=&quot;kw1&quot;&gt;in&lt;/span&gt; data&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt;
        rows&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;append&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;Row&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
            id&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Id'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            name&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Name'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            parentname&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ParentName'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            lifecyclename&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'LifeCycleName'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            &lt;span class=&quot;co2&quot;&gt;# systemstartdate=str(datetime.datetime.fromisoformat(line['SystemStartDate']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
            &lt;span class=&quot;co2&quot;&gt;# systemenddate=str(datetime.datetime.fromisoformat(line['SystemEndDate']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
            &lt;span class=&quot;co2&quot;&gt;# actualstartdate=str(datetime.datetime.fromisoformat(line['ActualStartDate']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
            &lt;span class=&quot;co2&quot;&gt;# actualenddate=str(datetime.datetime.fromisoformat(line['ActualEndDate']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
            &lt;span class=&quot;co2&quot;&gt;# baselineplanstartdate=str(datetime.datetime.fromisoformat(line['BaselinePlanStartDate']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
            &lt;span class=&quot;co2&quot;&gt;# baselineplanenddate=str(datetime.datetime.fromisoformat(line['BaselinePlanEndDate']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
&amp;nbsp;
            systemstartdate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'SystemStartDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            systemenddate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'SystemEndDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            actualstartdate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ActualStartDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            actualenddate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ActualEndDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            baselineplanstartdate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BaselinePlanStartDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            baselineplanenddate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BaselinePlanEndDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
&amp;nbsp;
            bossfio&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BossFIO'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            rpfio&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'RPFIO'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            description&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Description'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            projectscalename&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ProjectScaleName'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            projectgainname&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ProjectGainName'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
&amp;nbsp;
            &lt;span class=&quot;co2&quot;&gt;# statusreport_date=str(datetime.datetime.fromisoformat(line['StatusReport_Date']).replace(tzinfo=datetime.timezone.utc)),&lt;/span&gt;
            statusreport_date&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_Date'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
&amp;nbsp;
            statusreport_chto_sdelano_problemi_riski&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_Chto_sdelano_problemi_riski'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            statusreport_prichina_problemi&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_Prichina_problemi'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            statusreport_statusname&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_StatusName'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            budjetsum&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BudjetSum'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; spark&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;createDataFrame&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;rows&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u0434\u043b\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0441\u043a\u0440\u0438\u043f\u0442\u0430_\u0434\u043b\u044f_\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;9960-13791&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit10&quot; id=&quot;пример_скрипта_для_контрольных_точек&quot;&gt;Пример скрипта для контрольных точек&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;pre class=&quot;code csharp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;# # -----------------------------------------------------------------------------------&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Cкрипт для обработки модели * * *&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# -----------------------------------------------------------------------------------&lt;/span&gt;
&amp;nbsp;
import requests
import datetime
&lt;span class=&quot;kw1&quot;&gt;from&lt;/span&gt; pyspark&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;sql&lt;/span&gt; import Row
&lt;span class=&quot;kw1&quot;&gt;from&lt;/span&gt; pandas import json_normalize 
&amp;nbsp;
def after_all&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;df, spark, app, &lt;span class=&quot;sy0&quot;&gt;*&lt;/span&gt;args, &lt;span class=&quot;sy0&quot;&gt;**&lt;/span&gt;kwargs&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt;
&amp;nbsp;
    LOGIN &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'* * *'&lt;/span&gt;
    PASSWORD &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'* * *'&lt;/span&gt;
    DOMAIN &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'https://* * *.ru'&lt;/span&gt;
&amp;nbsp;
    AUTH &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;st0&quot;&gt;'Login'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; LOGIN,
    &lt;span class=&quot;st0&quot;&gt;'Password'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; PASSWORD,
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    session &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; requests&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Session&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;co2&quot;&gt;# cookies = session.cookies.get_dict() # {}&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;# авторизация&lt;/span&gt;
    response &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;post&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;DOMAIN&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'/api/auth/login'&lt;/span&gt;, json&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;AUTH, verify&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;False&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    cookies &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;cookies&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;get_dict&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;# print(cookies)&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;# получение LINQ-запроса&lt;/span&gt;
    LINQ &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;st0&quot;&gt;'DataSourceKey'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'BI_milestones'&lt;/span&gt;,
        &lt;span class=&quot;st0&quot;&gt;'PageSize'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;1000&lt;/span&gt;,     
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    r &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;post&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;DOMAIN&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'/api/queries/get'&lt;/span&gt;, cookies&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;cookies, json&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;LINQ, verify&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;False&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; not r&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;ok&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt;
        raise Exception&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;f&lt;span class=&quot;st0&quot;&gt;'Ошибка в {r.url}. HTTP {r.status_code}: {r.text}'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    data &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; r&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co2&quot;&gt;#Создадим список, который послужит основной для создания DataFrame&lt;/span&gt;
    rows &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt; line &lt;span class=&quot;kw1&quot;&gt;in&lt;/span&gt; data&lt;span class=&quot;sy0&quot;&gt;:&lt;/span&gt;
        print&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        rows&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;append&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;Row&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
            id&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Id'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            name&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Name'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            projectid&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ProjectId'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            systemstartdate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'SystemStartDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            systemenddate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'SystemEndDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            actualstartdate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ActualStartDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            actualenddate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ActualEndDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            baselineplanstartdate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BaselinePlanStartDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            baselineplanenddate&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BaselinePlanEndDate'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            bossfio&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'BossFIO'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            rpfio&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'RPFIO'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            description&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Description'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            result&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Result'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            statusreport_date&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_Date'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            statusreport_chto_sdelano_problemi_riski&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_Chto_sdelano_problemi_riski'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            statusreport_prichina_problemi&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_Prichina_problemi'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;,
            statusreport_statusname&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;line&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'StatusReport_StatusName'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; spark&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;createDataFrame&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;rows&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-info&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-info-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Символами * * * в примерах скриптов обозначены автоматически формируемые данные (например, номер модели) или данные, имеющие отношение к конкретной учетной записи в ADVANTA (например, логин, пароль и домен).&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
Затем необходимо опубликовать скрипт и обновить модель. После обновления данные из ADVANTA автоматически загрузятся в модель.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0441\u043a\u0440\u0438\u043f\u0442\u0430_\u0434\u043b\u044f_\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445_\u0442\u043e\u0447\u0435\u043a&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:3,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;13792-16816&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit11&quot; id=&quot;пример_модели&quot;&gt;Пример модели&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-03_165120.png?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:снимок_экрана_2024-04-03_165120.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-03_165120.png?w=800&amp;amp;tok=0ec89b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u043c\u043e\u0434\u0435\u043b\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u043c\u043e\u0434\u0435\u043b\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;16817-16948&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit12&quot; id=&quot;создать_виджеты_для_отображения_данных_и_дашборды_из_виджетов&quot;&gt;4)	Создать виджеты для отображения данных и дашборды из виджетов&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для реализации этих шагов необходимо ознакомиться с возможностями системы Analytic Workspace. В этом вам помогут &lt;a href=&quot;https://webhelp.analyticworkspace.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://webhelp.analyticworkspace.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;база знаний&lt;/a&gt;, &lt;a href=&quot;https://analyticworkspace.ru/datacourse&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://analyticworkspace.ru/datacourse&quot; rel=&quot;ugc nofollow noopener&quot;&gt;обучающий курс&lt;/a&gt; и специалисты, контакты которых вы можете найти на сайте &lt;a href=&quot;https://analyticworkspace.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://analyticworkspace.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Analytic Workspace&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4)\t\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432\u0438\u0434\u0436\u0435\u0442\u044b \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u044b \u0438\u0437 \u0432\u0438\u0434\u0436\u0435\u0442\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u0442\u044c_\u0432\u0438\u0434\u0436\u0435\u0442\u044b_\u0434\u043b\u044f_\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f_\u0434\u0430\u043d\u043d\u044b\u0445_\u0438_\u0434\u0430\u0448\u0431\u043e\u0440\u0434\u044b_\u0438\u0437_\u0432\u0438\u0434\u0436\u0435\u0442\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;16949-17564&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit13&quot; id=&quot;пример_дашборда_здоровье_портфеля_в_analytic_workspace_на_основе_данных_полученных_из_advanta&quot;&gt;Пример дашборда «Здоровье портфеля» в Analytic Workspace на основе данных, полученных из ADVANTA&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_004043.png?id=product%3Aapi%3Aintegration_examples%3Aaw&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:снимок_экрана_2024-04-22_004043.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_2024-04-22_004043.png?w=800&amp;amp;tok=3c62b7&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;https://promo.advanta-group.ru/a2nta_presentation?utm_source=wiki&amp;amp;utm_medium=link&amp;amp;utm_campaign=integrations&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://promo.advanta-group.ru/a2nta_presentation?utm_source=wiki&amp;amp;utm_medium=link&amp;amp;utm_campaign=integrations&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Оставить заявку на демонстрацию или внедрение ADVANTA&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://analyticworkspace.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://analyticworkspace.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Узнать подробнее о системе Analytic Workspace&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430 \u00ab\u0417\u0434\u043e\u0440\u043e\u0432\u044c\u0435 \u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f\u00bb \u0432 Analytic Workspace \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 ADVANTA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430_\u0437\u0434\u043e\u0440\u043e\u0432\u044c\u0435_\u043f\u043e\u0440\u0442\u0444\u0435\u043b\u044f_\u0432_analytic_workspace_\u043d\u0430_\u043e\u0441\u043d\u043e\u0432\u0435_\u0434\u0430\u043d\u043d\u044b\u0445_\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445_\u0438\u0437_advanta&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:4,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;17565-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>product:api:integration_examples</category>
            <pubDate>Wed, 07 Aug 2024 05:55:10 +0000</pubDate>
        </item>
        <item>
            <title>Интеграция ADVANTA с Blitz Identity Provider</title>
            <link>https://wiki.a2nta.ru/doku.php/product/api/integration_examples/blitz-idp</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;интеграция_advanta_с_blitz_identity_provider&quot;&gt;Интеграция ADVANTA с Blitz Identity Provider&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Сервер аутентификации &lt;a href=&quot;https://identityblitz.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://identityblitz.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Blitz Identity Provider&lt;/a&gt; - это российское &lt;abbr title=&quot;Программное обеспечение&quot;&gt;ПО&lt;/abbr&gt; для управления входом пользователей в приложения, позволяющее оснастить веб-сайты и мобильные приложения компании функциями защиты учетных записей пользователей. Благодаря интеграции возможно осуществлять авторизацию в Систему ADVANTA через сервер аутентификации по протоколу OpenIdConnect.
&lt;/p&gt;

&lt;p&gt;
Подключение Системы ADVANTA к Blitz IDP выполняется по протоколу &lt;strong&gt;OpenIdConnect&lt;/strong&gt; и состоит из двух этапов:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Настройки на стороне Системы ADVANTA.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Настройки на стороне &lt;a href=&quot;https://identityblitz.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://identityblitz.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Blitz Identity Provider&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
Для реализации интеграции у вас должен быть доступ по крайней мере к демо-версиям данных продуктов.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f ADVANTA \u0441 Blitz Identity Provider&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f_advanta_\u0441_blitz_identity_provider&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1247&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;о_blitz_idp&quot;&gt;О Blitz IDP&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://identityblitz.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://identityblitz.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Blitz Identity Provider&lt;/a&gt; - платформа создания единого сервиса доступа в организации. Единый сервис доступа обеспечивает идентификацию, аутентификацию и контроль доступа пользователей к приложениям организации.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/blitz_idp.png&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:blitz_idp.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/blitz_idp.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Продукт развертывается на серверах организации и позволяет оснастить внутреннюю ИТ-инфраструктуру функциями защиты учетных записей пользователей. Blitz IDP поддерживает современные протоколы аутентификации, популярные отечественные операционные системы и &lt;abbr title=&quot;Система управления базами данных&quot;&gt;СУБД&lt;/abbr&gt;.
&lt;/p&gt;

&lt;p&gt;
Основные функции Blitz IDP:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; обеспечение единого сквозного входа пользователя в приложения (Single Sign-On);&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; двухфакторная аутентификация;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; конфигурируемый пользовательский интерфейс страниц входа, регистрации, восстановления доступа, управления учетной записью;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; вход с использованием сторонних поставщиков идентификации: вход с помощью аккаунтов социальных сетей, банков, Единой системы идентификации и аутентификации (ЕСИА, Госуслуги), Mos ID (СУДИР), федеративный вход пользователей с использованием внешних поставщиков идентификации;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; проверка прав доступа на вход пользователей в приложения;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; проверка прав доступа пользователей и приложений при использовании REST-сервисов;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; протоколирование событий доступа и действий с учетными записями.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Подробнее о сервере можно узнать из &lt;a href=&quot;https://docs.identityblitz.ru/latest&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docs.identityblitz.ru/latest&quot; rel=&quot;ugc nofollow noopener&quot;&gt;документации&lt;/a&gt; на сайте &lt;a href=&quot;https://identityblitz.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://identityblitz.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Blitz IDP&lt;/a&gt; или скачать &lt;a href=&quot;https://docs.identityblitz.ru/latest/pdf/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docs.identityblitz.ru/latest/pdf/index.html&quot; rel=&quot;ugc nofollow noopener&quot;&gt;PDF-файлы&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Blitz IDP зарегистрирован в Едином реестре российского &lt;abbr title=&quot;Программное обеспечение&quot;&gt;ПО&lt;/abbr&gt; (№842) и сертифицирован ФСТЭК России (№4525 от 10.03.2022), что подтверждает соответствие требованиям информационной безопасности и допускает применение продукта в государственных информационных системах.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e Blitz IDP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e_blitz_idp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1248-4380&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;настройки_интеграции_на_стороне_advanta&quot;&gt;Настройки интеграции на стороне ADVANTA&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/settings/system/open_id&quot; class=&quot;wikilink1&quot; title=&quot;product:settings:system:open_id&quot; data-wiki-id=&quot;product:settings:system:open_id&quot;&gt;Настройка авторизации через Open ID Connect&lt;/a&gt; производится Администратором системы.
&lt;/p&gt;

&lt;p&gt;
В настройках конфигурационного файла системы &lt;code&gt;client.config&lt;/code&gt;, &lt;code&gt;начиная с версии системы 3.29&lt;/code&gt;, появился раздел, в котором в виде массива можно указать перечень внешних сервисов аутентификации по протоколу &lt;strong&gt;OpenIdConnect&lt;/strong&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code csharp&quot;&gt; &lt;span class=&quot;coMULTI&quot;&gt;/* Массив */&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;openIdConnect&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;providers&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;add&lt;/span&gt; caption&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Имя кнопки входа с названием провайдера&amp;quot;&lt;/span&gt; clientId&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;advanta&amp;quot;&lt;/span&gt;
    metadataURL&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;https://ssotest.yourcompany.ru/.well-known/openid-configuration&amp;quot;&lt;/span&gt;
    authenticationType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;OIDC1&amp;quot;&lt;/span&gt; enabled&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt; scope&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;openid profile&amp;quot;&lt;/span&gt;
    clientSecret&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Секретный код провайдера&amp;quot;&lt;/span&gt; responseType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;code&amp;quot;&lt;/span&gt; claimType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;user_id&amp;quot;&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;add&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&lt;/span&gt; &lt;span class=&quot;coMULTI&quot;&gt;/* Описание второго провайдера */&lt;/span&gt;
  &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;providers&lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;openIdConnect&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;&lt;/pre&gt;
&lt;div class=&quot;table sectionedit4&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;thead&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; Параметр &lt;/th&gt;&lt;th class=&quot;col1&quot;&gt; Описание &lt;/th&gt;
	&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;caption&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Обязательный параметр &lt;br/&gt;
Название провайдера авторизации для отображения кнопки с этим именем&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;metadataURL&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Обязательный параметр &lt;br/&gt;
&lt;abbr title=&quot;Uniform Resource Locator&quot;&gt;URL&lt;/abbr&gt;-адрес удаленного сервера с метаданными&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;authenticationType&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Обязательный параметр &lt;br/&gt;
Идентификатор провайдера авторизации, под этим именем данный провайдер OpenIdConnect будет отображаться в профиле пользователя, а также использоваться в API методах. Можно использовать любой удобный&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;clientId&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Обязательный параметр &lt;br/&gt;
Идентификатор клиента (приложения), выбирается согласно правилам именования сервисов для аутентификации в OpenIdConnect&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;enabled&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Обязательный параметр &lt;br/&gt;
Включение/отключение провайдера, возможные значения: true и false&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row6&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;scope&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Указываются запрашиваемые скоупы. Если параметр не задан, то используется только скоуп &lt;code&gt;openid&lt;/code&gt; &lt;br/&gt;
Может быть несколько&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row7&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;clientSecret&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Обязательный параметр &lt;br/&gt;
Указывается секрет приложения&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row8&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;responseType&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Необязательный параметр. &lt;br/&gt;
Тип ответа, по умолчанию &lt;code&gt;id_token&lt;/code&gt;. Возможные значения: &lt;br/&gt;
&lt;code&gt;code&lt;/code&gt;, &lt;br/&gt;
&lt;code&gt;code id_token&lt;/code&gt;, &lt;br/&gt;
&lt;code&gt;code id_token token&lt;/code&gt;, &lt;br/&gt;
&lt;code&gt;code token&lt;/code&gt;, &lt;br/&gt;
&lt;code&gt;id_token&lt;/code&gt;, &lt;br/&gt;
&lt;code&gt;id_token token&lt;/code&gt;, &lt;br/&gt;
&lt;code&gt;token&lt;/code&gt;&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row9&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;claimType&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Тип утверждения, используемый для получения идентификатора пользователя на сервере авторизации. Будет использоваться для связки пользователя системы с пользователем OpenIdConnect&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row10&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;disableSignatureValidation&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Необязательный параметр &lt;br/&gt;
Отключает валидацию токена. Если параметр не задан, то значение false и валидация включена&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row11&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;jwksFilePath&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Опциональный параметр &lt;br/&gt;
Файл, который содержит ключи валидации в формате JSON. Формат аналогичен странице &lt;code&gt;jwks_uri&lt;/code&gt;. Если параметр не задан, то ключи берутся только с адреса &lt;code&gt;jwks_uri&lt;/code&gt; &lt;br/&gt;
Можно использовать, если по какой-то причине провайдер OpenIdConnect не предоставляет ключи валидации &lt;br/&gt;
Пример использования:  &lt;code&gt;jwksFilePath&lt;/code&gt; = ″C:\inetpub\wwwroot\a2key\jwksFile.txt″&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;table&amp;quot;,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;5584-8636&amp;quot;} --&gt;&lt;div class=&quot;bs-wrap bs-callout bs-callout-warning&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-triangle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;В &lt;code&gt;client.config&lt;/code&gt; также необходимо добавить индикацию, что необходимо использовать интеграцию с &lt;strong&gt;OpenIdConnect&lt;/strong&gt;. Для этого опционально в разделе &lt;code&gt;&amp;lt;configSections&amp;gt;&lt;/code&gt; предусмотреть размещение секции &lt;code&gt; ″&amp;lt;section name= ″openIdConnect″&lt;/code&gt; &lt;code&gt;type=″Config.OpenIdConnectConfigurationSection,smcorelib″/&amp;gt;″&lt;/code&gt;. При отсутствии данной секции, использование &lt;strong&gt;OpenIdConnect&lt;/strong&gt; невозможно.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
Пример настройки конфигурационного файла системы &lt;code&gt;client.config&lt;/code&gt; для авторизации через провайдера &lt;a href=&quot;https://identityblitz.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://identityblitz.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Blitz IDP&lt;/a&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code csharp&quot;&gt;&lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;configSections&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;section name&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;openIdConnect&amp;quot;&lt;/span&gt; type&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Config.OpenIdConnectConfigurationSection, smcorelib&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;configSections&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;openIdConnect&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;providers&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;add&lt;/span&gt; caption&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Blitz IDP&amp;quot;&lt;/span&gt; clientId&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Advanta&amp;quot;&lt;/span&gt;
      metadataURL&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;https://blitz.domain.ru/blitz/oauth/.well-known/openid-configuration&amp;quot;&lt;/span&gt;
      authenticationType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;blitz&amp;quot;&lt;/span&gt; enabled&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt; scope&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;openid&amp;quot;&lt;/span&gt; clientSecret&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;00000000&amp;quot;&lt;/span&gt;
      responseType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;code&amp;quot;&lt;/span&gt; claimType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;user_id&amp;quot;&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&lt;/span&gt;
&amp;nbsp;
      &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;add&lt;/span&gt; caption&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;SSO&amp;quot;&lt;/span&gt; clientId&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;a2nta&amp;quot;&lt;/span&gt;
      metadataURL&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;https://blitz.domain2.ru/blitz/oauth/.well-known/11&amp;quot;&lt;/span&gt;
      authenticationType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;blitz2&amp;quot;&lt;/span&gt; enabled&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt; scope&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;profile&amp;quot;&lt;/span&gt; clientSecret&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;11111111&amp;quot;&lt;/span&gt;
      responseType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;code&amp;quot;&lt;/span&gt; claimType&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;user_id&amp;quot;&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;providers&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;openIdConnect&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sy0&quot;&gt;...&lt;/span&gt;&lt;/pre&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-warning&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-triangle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;При отключении провайдера (параметр &lt;code&gt;enabled&lt;/code&gt;), кнопки авторизации не будет, но привязка пользователей в системе сохранится. Чтобы удалить связи с сервисами авторизации, необходимо:&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; в &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/settings/system/open_id#настройка_связки_учетных_записей&quot; class=&quot;wikilink1&quot; title=&quot;product:settings:system:open_id&quot; data-wiki-id=&quot;product:settings:system:open_id&quot;&gt;портлете с сервисами авторизации&lt;/a&gt; в настройках пользователя удалить привязку к сервису;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; использовать метод API &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/list/deletelinkuserwith_oid&quot; class=&quot;wikilink1&quot; title=&quot;product:api:list:deletelinkuserwith_oid&quot; data-wiki-id=&quot;product:api:list:deletelinkuserwith_oid&quot;&gt;DeleteLinksWithOpenIdConnect&lt;/a&gt;. Подробнее о методах API на странице &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/list&quot; class=&quot;wikilink1&quot; title=&quot;product:api:list&quot; data-wiki-id=&quot;product:api:list&quot;&gt;Описание методов API&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 ADVANTA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438_\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438_\u043d\u0430_\u0441\u0442\u043e\u0440\u043e\u043d\u0435_advanta&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;4381-11124&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;установка_и_настройка_blitz_idp&quot;&gt;Установка и настройка Blitz IDP&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Blitz IDP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430_\u0438_\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_blitz_idp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;11125-11187&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;общая_инструкция_по_установке&quot;&gt;Общая инструкция по установке&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Подробная информация об установке и настройке Blitz IDP в документации на сайте Blitz IDP на странице &lt;a href=&quot;https://docs.identityblitz.ru/latest/admin-guide/install-ee.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docs.identityblitz.ru/latest/admin-guide/install-ee.html&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Общая инструкция по установке&lt;/a&gt;.
&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-primary&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;В зависимости от используемой операционной системы есть своя специфика по установке необходимого окружения.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
Также можно посмотреть &lt;a href=&quot;https://demo.identityblitz.com/list_ru/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://demo.identityblitz.com/list_ru/&quot; rel=&quot;ugc nofollow noopener&quot;&gt;демоверсию&lt;/a&gt; приложения.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043f\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0449\u0430\u044f_\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f_\u043f\u043e_\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;11188-11932&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;настройки_интеграции_на_стороне_blitz_idp&quot;&gt;Настройки интеграции на стороне Blitz IDP&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для настройки интеграции в консоли управления Blitz IDP перейдите в раздел «Приложения» и выполните действия:
&lt;/p&gt;

&lt;p&gt;
1. Создайте новое приложение ADVANTA, задав его базовые настройки:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; идентификатор (&lt;code&gt;entityID&lt;/code&gt; или &lt;code&gt;client_id&lt;/code&gt;): &lt;code&gt;&amp;lt;client_id&amp;gt;&lt;/code&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; название: &lt;code&gt;&amp;lt;name&amp;gt;&lt;/code&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; домен.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
2. Нажмите «Сохранить».
&lt;/p&gt;

&lt;p&gt;
3. Далее нажмите кнопку «Параметры»  у приложения ADVANTA и отредактируйте параметры приложения:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; протоколы: выберите &lt;strong&gt;OAuth 2.0&lt;/strong&gt; / &lt;strong&gt;OpenIdConnect&lt;/strong&gt; и нажмите «Сконфигурировать»;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; далее в параметрах укажите данные, как в конфигурационном файле &lt;code&gt;client.config&lt;/code&gt;: секрет (&lt;code&gt;client_secret&lt;/code&gt;), префиксы ссылок возврата, допустимые разрешения: profile.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
4. Нажмите «Сохранить».
&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-info&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-info-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;После прохождения всех шагов рекомендуем проверить корректность входа в ADVANTA.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
Более подробную информацию о настройках интеграции можно найти в документации на сайте Blitz IDP в разделе &lt;a href=&quot;https://docs.identityblitz.ru/latest/integration-guide/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docs.identityblitz.ru/latest/integration-guide/index.html&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Интеграция&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 Blitz IDP&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438_\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438_\u043d\u0430_\u0441\u0442\u043e\u0440\u043e\u043d\u0435_blitz_idp&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;11933-13582&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;результат_интеграции&quot;&gt;Результат интеграции&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442_\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;13583-13635&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;вход_в_систему&quot;&gt;Вход в систему&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После корректных настроек конфигурационного файла и перезапуска системы, пользователю будет доступен вход в систему через новый провайдер аутентификации.
&lt;/p&gt;

&lt;p&gt;
Например, пользователь, нажимая на кнопку «Войти через SSO», перенаправляется на адрес провайдера авторизации Blitz IDP, указанный в настройках файла &lt;code&gt;client.config&lt;/code&gt;. После успешного прохождения авторизации у провайдера &lt;strong&gt;OpenIdConnect&lt;/strong&gt;, запрос будет перенаправлен обратно в систему ADVANTA. Система ADVANTA производит идентификацию пользователя и, в случае успешной идентификации, авторизует пользователя в системе.
&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/auth/admin/sso_login_full1.png&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:auth:admin:sso_login_full1.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/auth/admin/sso_login_full1.png?w=300&amp;amp;tok=633d30&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Подробную информацию о входе в систему через провайдера аутентификации можно прочесть на странице &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/auth/admin/sso_open_id&quot; class=&quot;wikilink1&quot; title=&quot;product:auth:admin:sso_open_id&quot; data-wiki-id=&quot;product:auth:admin:sso_open_id&quot;&gt;Авторизация по протоколу Open ID Connect&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0445\u043e\u0434 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0445\u043e\u0434_\u0432_\u0441\u0438\u0441\u0442\u0435\u043c\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;13636-15062&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;портлет_в_настройках_пользователя&quot;&gt;Портлет в настройках пользователя&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После настройки интеграции с Blitz IDP в профиле пользователя также появится &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/auth/users/list_of_bindings#список_привязок_open_id_connect&quot; class=&quot;wikilink1&quot; title=&quot;product:auth:users:list_of_bindings&quot; data-wiki-id=&quot;product:auth:users:list_of_bindings&quot;&gt;раздел&lt;/a&gt; для связывания учетной записи системы ADVANTA с учетной записью внешнего провайдера. Портлет находится в настройках пользователя, после портлета «Мои настройки».
&lt;/p&gt;

&lt;p&gt;
В портлете указана информация:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; название - название провайдера &lt;strong&gt;OpenIdConnect&lt;/strong&gt; (соответствует &lt;code&gt;authenticationType&lt;/code&gt; в конфигурационном файле);&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; заголовок - заголовок провайдера &lt;strong&gt;OpenIdConnect&lt;/strong&gt; (соответствует &lt;code&gt;caption&lt;/code&gt; в конфигурационном файле), название кнопки на странице входа;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; учетная запись - учетная запись данного пользователя у провайдера &lt;strong&gt;OpenIdConnect&lt;/strong&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; столбец с кнопкой «Изменить» - нажимая на нее, открывается возможность редактирования соответствующей строки.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/releases/3_29/sso_user_profile.png&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;releases:3_29:sso_user_profile.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/releases/3_29/sso_user_profile.png?w=500&amp;amp;tok=c35780&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

При нажатии кнопки «Изменить» в столбце «Учетная запись» появляется возможность ввести данные учетной записи данного пользователя у провайдера &lt;strong&gt;OpenIdConnect&lt;/strong&gt;. Для сохранения данных необходимо нажать кнопку «Сохранить».
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/settings/system/account_set.png&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:settings:system:account_set.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/settings/system/account_set.png?w=500&amp;amp;tok=2bf1d2&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

После того, как создана привязка и указана корректная информация учетной записи пользователя у провайдера &lt;strong&gt;OpenIdConnect&lt;/strong&gt;, у пользователя появляется возможность входа в систему ADVANTA через Blitz IDP.
Более подробную информацию можно прочесть на странице &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/settings/system/open_id#настройка_связки_учетных_записей&quot; class=&quot;wikilink1&quot; title=&quot;product:settings:system:open_id&quot; data-wiki-id=&quot;product:settings:system:open_id&quot;&gt;Настройка авторизации через Open ID Connect&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0440\u0442\u043b\u0435\u0442 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0440\u0442\u043b\u0435\u0442_\u0432_\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;15063-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>product:api:integration_examples</category>
            <pubDate>Sat, 01 Nov 2025 09:14:16 +0000</pubDate>
        </item>
        <item>
            <title>Экспорт данных из ADVANTA в Google-таблицы</title>
            <link>https://wiki.a2nta.ru/doku.php/product/api/integration_examples/google_sheets</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;экспорт_данных_из_advanta_в_google-таблицы&quot;&gt;Экспорт данных из ADVANTA в Google-таблицы&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Google предоставляет множество сервисов для совместной работы с документами распространённых офисных форматов. В их числе - &lt;strong&gt;Google Sheets&lt;/strong&gt;, облачный редактор электронных таблиц, аналогичный Excel.
&lt;/p&gt;

&lt;p&gt;
Если требуется регулярно передавать данные о проектах в таблицы Google, можно автоматизировать этот процесс. Для этого надо написать приложение, которое будет получать данные из ADVANTA через ее API и записывать их в электронную таблицу через API системы Google Sheets.
&lt;/p&gt;

&lt;p&gt;
Шаги, которые надо выполнить для автоматизации передачи информации из ADVANTA в таблицы Google Sheets:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Зарегистрировать «сервисный аккаунт» в системе «Google Cloud Console» для вызова API и получить «ключ доступа» к нему.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Настроить доступ к файлу электронной таблицы в Google Sheets для связанной с «сервисным аккаунтом» учётной записи.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Настроить в ADVANTA LINQ-запрос, который сформирует таблицу данных.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Написать приложение, которое выполнит LINQ-запрос и запишет полученные данные в Google Sheets.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
Ниже рассмотрены примеры двух максимально простых приложений на C#, которые получают данные из ADVANTA и записывают их в таблицы Google. На основе этих примеров Вы можете создавать собственные приложения для решения задач по автоматизации передачи данных из ADVANTA в облачные сервисы Google.
&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/a2-googlesheets-16200-630.jpg&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:a2-googlesheets-16200-630.jpg&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/a2-googlesheets-16200-630.jpg?w=700&amp;amp;tok=af57f7&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;700&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 ADVANTA \u0432 Google-\u0442\u0430\u0431\u043b\u0438\u0446\u044b&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u044d\u043a\u0441\u043f\u043e\u0440\u0442_\u0434\u0430\u043d\u043d\u044b\u0445_\u0438\u0437_advanta_\u0432_google-\u0442\u0430\u0431\u043b\u0438\u0446\u044b&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-2383&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;общие_сведения_об_api_сервисов_google&quot;&gt;Общие сведения об API сервисов Google&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Доступ к API-функциям облачных сервисов Google настраивается в системе &lt;a href=&quot;https://console.cloud.google.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://console.cloud.google.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Google Cloud Console&lt;/a&gt; - это веб-сервис для разработчиков и системных администраторов организаций. Требуется создать в &lt;a href=&quot;https://console.cloud.google.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://console.cloud.google.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Google Cloud Console&lt;/a&gt; «проект» и подключить в него библиотеки API нужных сервисов Google. 
&lt;/p&gt;

&lt;p&gt;
При вызове API программа должна проходить авторизацию в «проекте». Есть несколько способов её организовать в зависимости от того, каким именно образом программа будет использоваться:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Если предполагается создание приложения с визуальным интерфейсом, в котором пользователи будут работать через персональные учётные записи Google, следует настроить доступ к «проекту» через протокол &lt;strong&gt;OAuth&lt;/strong&gt;. При вызове API из такого приложения, будет открываться веб-страница авторизации Google, где пользователь должен ввести свои логин и пароль вручную. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Для приложений, работающих в автоматическом режиме, требуется создать специальную учётную запись Google – &lt;strong&gt;«сервисный аккаунт»&lt;/strong&gt;. Ключ доступа к такой учётной записи экспортируется в файл и включается в код программы. &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
Непосредственный вызов API Google может быть выполнен либо с помощью библиотек, либо напрямую, через REST API. В первом случае код намного проще, но библиотеки надо устанавливать в проект в среде разработки.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e\u0431 API \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 Google&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0449\u0438\u0435_\u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f_\u043e\u0431_api_\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432_google&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;2384-4736&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;получение_доступа_к_api_через_google_cloud_console&quot;&gt;Получение доступа к API через Google Cloud Console&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для вызова API-функций Google-таблиц требуется выполнить шаги:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Создать в сервисе &lt;a href=&quot;https://console.cloud.google.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://console.cloud.google.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Google Cloud Console&lt;/a&gt; новый проект.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Подключить к этому проекту библиотеку API-функций «Google Sheets».&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Создать сервисный аккаунт – специальную учётную запись, которую можно использовать лишь для идентификации приложений.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Создать ключ доступа к сервисному аккаунту - файл формата &lt;code&gt;JSON&lt;/code&gt;, который содержит данные для автоматической авторизации приложения.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a API \u0447\u0435\u0440\u0435\u0437 Google Cloud Console&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043a_api_\u0447\u0435\u0440\u0435\u0437_google_cloud_console&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;4737-5633&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;создание_проекта_в_google_cloud_console&quot;&gt;Создание «проекта» в Google Cloud Console&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Перейти на сайт &lt;a href=&quot;https://console.cloud.google.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://console.cloud.google.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Google Cloud Console&lt;/a&gt;. При первом входе система автоматически создаст новый «проект» с названием «My First Project».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc1.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc1.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc1.png?w=500&amp;amp;tok=f4573b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u00ab\u043f\u0440\u043e\u0435\u043a\u0442\u0430\u00bb \u0432 Google Cloud Console&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043f\u0440\u043e\u0435\u043a\u0442\u0430_\u0432_google_cloud_console&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;5634-6007&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;подключение_к_проекту_библиотеки_api_google_sheets&quot;&gt;Подключение к «проекту» библиотеки API Google Sheets&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для подключения к созданному проекту библиотеки API-функций Google Sheets необходимо перейти в раздел «APIs &amp;amp; Services» по кнопке под названием проекта.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc2.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc2.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc2.png?w=500&amp;amp;tok=bc1db7&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Затем необходимо открыть список библиотек кнопкой «Enable APIs and services».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc3.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc3.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc3.png?w=500&amp;amp;tok=2caf5e&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В поле поиска ввести «Sheets», нажать &lt;strong&gt;Enter&lt;/strong&gt; и выбрать найденную библиотеку «Google Sheets API». Включить библиотеку кнопкой &lt;strong&gt;Enable&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc4.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc4.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc4.png?w=500&amp;amp;tok=c01bdf&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Библиотека появится в проекте, на странице «Enabled APIs &amp;amp; services».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc5.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc5.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc5.png?w=500&amp;amp;tok=c62bfb&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u00ab\u043f\u0440\u043e\u0435\u043a\u0442\u0443\u00bb \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 API Google Sheets&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435_\u043a_\u043f\u0440\u043e\u0435\u043a\u0442\u0443_\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438_api_google_sheets&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;6008-7031&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;создание_сервисного_аккаунта_google_для_доступа_к_api_проекта&quot;&gt;Создание сервисного аккаунта Google для доступа к API «проекта»&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для создания сервисного аккаунта Google необходимо в разделе «Credentials» вызвать меню «Create credentials &amp;gt; Service account».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc6.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc6.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc6.png?w=600&amp;amp;tok=703fe4&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Далее на странице «Create service account» ввести название аккаунта в поле «Service account name» и описание в поле «Service account description». Система автоматически заполнит поле «Service account ID». Для продолжения настройки нажать «Create and continue».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc7.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc7.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc7.png?w=600&amp;amp;tok=e87e19&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
На странице «Grant this service account access to project» в выпадающем списке «Role» выбрать роль «Basic / Editor».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc8.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc8.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc8.png?w=600&amp;amp;tok=0e9199&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Для перехода к следующему шагу нажать &lt;strong&gt;Continue&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
В разделе «Grant users access to this service account» ничего вводить не нужно. Нажать &lt;strong&gt;Done&lt;/strong&gt;, чтобы завершить создание сервисного аккаунта. Сервисный аккаунт будет создан и появится в поле «Service account». Адрес электронной почты этого сервисного аккаунта нужно будет указать далее при настройке доступа к Google-таблице.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430 Google \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a API \u00ab\u043f\u0440\u043e\u0435\u043a\u0442\u0430\u00bb&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0433\u043e_\u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430_google_\u0434\u043b\u044f_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043a_api_\u043f\u0440\u043e\u0435\u043a\u0442\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;7032-8683&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;создание_ключа_доступа_к_сервисному_аккаунту&quot;&gt;Создание ключа доступа к сервисному аккаунту&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Теперь нужно создать ключ для доступа к сервисному аккаунту из программы, которую будем разрабатывать. 
&lt;/p&gt;

&lt;p&gt;
Перейти по ссылке с именем аккаунта в разделе «Service Accounts»:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc9.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc9.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc9.png?w=600&amp;amp;tok=703c5a&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
На странице настроек аккаунта нужно перейти на вкладку «Keys» и вызвать команду создания нового ключа через меню «Add key / Create new key».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc10.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc10.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc10.png?w=600&amp;amp;tok=6b6a87&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
По запросу о типа ключа выбрать &lt;code&gt;JSON&lt;/code&gt; и нажать &lt;strong&gt;Create&lt;/strong&gt;. Появится сообщение, что ключ сохранён на компьютере и одновременно с этим начнётся скачивание файла.
&lt;/p&gt;

&lt;p&gt;
Полученный файл нужно сохранить на диске и изменить его название на «service-account.json». Далее он потребуется при создании кода приложения. Пример структуры файла «service-account.json»:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc12.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc12.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc12.png?w=700&amp;amp;tok=882a81&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;700&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-warning&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-triangle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;В реальных проектах важно обеспечить ограниченный доступ к файлу ключа и по возможности шифровать. Если ключ попадёт в поисковые системы, Google автоматически заблокирует его.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u043b\u044e\u0447\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u043c\u0443 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0443&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043a\u043b\u044e\u0447\u0430_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u043a_\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u043c\u0443_\u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0443&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;8684-10442&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;настройка_доступа_в_google-таблице&quot;&gt;Настройка доступа в Google-таблице&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В Google-таблице, в которую приложение будет записывать данные, надо дать доступ на редактирование сервисной учётной записи. Диалог настройки вызывается кнопкой «Доступ» справа на панели инструментов.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc13.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc13.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc13.png?w=600&amp;amp;tok=e9cecb&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В поле email-адреса необходимо ввести адрес почты сервисной учётной записи. Его можно найти в JSON-файле с данными авторизации, который был сохранен ранее. Он записан в элементе &lt;code&gt;client_email&lt;/code&gt;. 
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc14.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc14.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc14.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Система предложит указать уровень доступа – нужно выбрать «Редактор». Опцию «Уведомить пользователей» можно отключить и нажать «Открыть доступ».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc15.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc15.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc15.png?w=500&amp;amp;tok=8629c6&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
После сохранения настроек доступа, адрес сервисного аккаунта появится в списке пользователей таблицы, с выбранным уровнем доступа.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0432 Google-\u0442\u0430\u0431\u043b\u0438\u0446\u0435&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_\u0434\u043e\u0441\u0442\u0443\u043f\u0430_\u0432_google-\u0442\u0430\u0431\u043b\u0438\u0446\u0435&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;10443-11896&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;примеры_программного_кода&quot;&gt;Примеры программного кода&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440\u044b_\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e_\u043a\u043e\u0434\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;11897-11958&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;общие_сведения_о_примерах&quot;&gt;Общие сведения о примерах&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
К инструкции прилагаются два примера кода, созданные в &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt;:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/exporttogooglesheets1libs.zip&quot; class=&quot;media mediafile mf_zip&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:exporttogooglesheets1libs.zip (20.1 KB)&quot; rel=&quot;noopener&quot;&gt;exporttogooglesheets1libs.zip&lt;/a&gt; - демонстрирует выгрузку данных из ADVANTA в Google-таблицу с помощью библиотек Google, которые загружены в проект через NuGet. Библиотеки удобно использовать, если есть полный доступ к среде разработки, как например, при создании самостоятельного веб-сервиса:&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/exporttogooglesheets2nolibs.zip&quot; class=&quot;media mediafile mf_zip&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:exporttogooglesheets2nolibs.zip (13.9 KB)&quot; rel=&quot;noopener&quot;&gt;exporttogooglesheets2nolibs.zip&lt;/a&gt; - вариант экспорта данных без использования библиотек Google. Он значительно более сложный, но такой вариант можно использовать, например, в модуле триггеров, где нельзя подключить сторонние библиотеки.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Общий алгоритм работы примеров кода одинаков:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Проверяется доступ к Google-таблице, с помощью данных авторизации, настроенный в «Google Cloud Console» и сохранённых в файл.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Проводится авторизация в ADVANTA.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Выполняется запрос списка объектов с помощью заранее настроенного в ADVANTA &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/linq/about&quot; class=&quot;wikilink1&quot; title=&quot;product:linq:about&quot; data-wiki-id=&quot;product:linq:about&quot;&gt;LINQ-запроса&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Выполняется очистка Google-таблицы от всех данных.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Список объектов записывается в Google-таблицу.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-primary&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Чтобы открыть и запустить эти примеры, на ПК должен быть установлен &lt;a href=&quot;https://dotnet.microsoft.com/ru-ru/download/dotnet/8.0&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://dotnet.microsoft.com/ru-ru/download/dotnet/8.0&quot; rel=&quot;ugc nofollow noopener&quot;&gt;DotNet SDK 8&lt;/a&gt; и сама среда разработки &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt;. Для работы с C# в &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt; надо добавить расширение «C# Dev Kit».&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041e\u0431\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043e\u0431\u0449\u0438\u0435_\u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f_\u043e_\u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;11959-14349&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit11&quot; id=&quot;подготовка_linq-запроса_в_advanta&quot;&gt;Подготовка LINQ-запроса в ADVANTA&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Для выгрузки списка объектов воспользуемся &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/linq/about&quot; class=&quot;wikilink1&quot; title=&quot;product:linq:about&quot; data-wiki-id=&quot;product:linq:about&quot;&gt;LINQ-запросом&lt;/a&gt; «Все объекты» (ключ «GetAllObjects»).
&lt;/p&gt;
&lt;pre class=&quot;code csharp&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;var&lt;/span&gt; projects &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; dataContext&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Projects&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Where&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;OrderBy&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;CreationDate&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
      &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Select&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;p &lt;span class=&quot;sy0&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; 
        	p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt;, 
        	p&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;,
        	&lt;span class=&quot;co1&quot;&gt;//p.Code,&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; projects&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
Необходимо убедиться, что запрос работает. Для этого, заходим в раздел &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/linq/about&quot; class=&quot;wikilink1&quot; title=&quot;product:linq:about&quot; data-wiki-id=&quot;product:linq:about&quot;&gt;LINQ-запросов&lt;/a&gt; Системы и проверяем, что запрос существует.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc16.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc16.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc16.png?w=500&amp;amp;tok=bd029f&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Далее необходимо перейти на страницу запроса кликом по названию, выполнить его кнопкой «Сделать запрос» и убедиться, что он формирует таблицу с перечнем объектов.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc17.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc17.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc17.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 LINQ-\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 ADVANTA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_linq-\u0437\u0430\u043f\u0440\u043e\u0441\u0430_\u0432_advanta&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;14350-15494&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit12&quot; id=&quot;как_запустить_примеры_кода&quot;&gt;Как запустить примеры кода&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043a\u043e\u0434\u0430&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043a\u0430\u043a_\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c_\u043f\u0440\u0438\u043c\u0435\u0440\u044b_\u043a\u043e\u0434\u0430&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;15495-15555&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit13&quot; id=&quot;подготовка_каталога_для_примеров&quot;&gt;Подготовка каталога для примеров&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
С помощью Проводника Windows необходимо создать на диске каталог &lt;code&gt;C:\Projects&lt;/code&gt; и скопировать в него каталоги проектов из прилагаемых архивов &lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/exporttogooglesheets1libs.zip&quot; class=&quot;media mediafile mf_zip&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:exporttogooglesheets1libs.zip (20.1 KB)&quot; rel=&quot;noopener&quot;&gt;ExportToGoogleSheet1Libs.zip&lt;/a&gt; и &lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/exporttogooglesheets2nolibs.zip&quot; class=&quot;media mediafile mf_zip&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:exporttogooglesheets2nolibs.zip (13.9 KB)&quot; rel=&quot;noopener&quot;&gt;ExportToGoogleSheet2NoLibs.zip&lt;/a&gt;. В итоге, в каталоге «Projects» должны располагаться подкаталоги с программными файлами.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc18.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc18.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc18.png?w=600&amp;amp;tok=8d7c79&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430_\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430_\u0434\u043b\u044f_\u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;15556-16288&amp;quot;} --&gt;
&lt;h4 class=&quot;sectionedit14&quot; id=&quot;запуск_примера_exporttogooglesheet1libs_с_библиотеками_google&quot;&gt;Запуск примера «ExportToGoogleSheet1Libs» (с библиотеками Google)&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Необходимо запустить &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt; и выполнить команду «File &amp;gt; Open Folder…». В окне «Open Folder» перейти в каталог &lt;code&gt;C:\Projects\ExportToGoogleSheet1Libs&lt;/code&gt; и нажать «Выбор папки».
&lt;/p&gt;

&lt;p&gt;
Содержащийся в каталоге код откроется в &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt;:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc19.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc19.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc19.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Прежде, чем запускать его на исполнение, необходимо проверить настройки параметров подключения к ADVANTA и к Google в коде:
&lt;/p&gt;

&lt;p&gt;
1. Адрес сервера ADVANTA, логин и пароль пользователя, от имени которого будет выполняться LINQ-запрос:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc20.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc20.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc20.png?w=500&amp;amp;tok=1b3626&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
2. Имя ключа LINQ-запроса и количество объектов, которые программа из него получит. Большое количество объектов может потребовать большого объёма оперативной памяти компьютера, на котором выполняется программа:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc21.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc21.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc21.png?w=500&amp;amp;tok=da7167&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
3. Далее нужно заменить в каталоге с кодом файл «service-account.json» на тот, который сгенерировали при настройке сервисного аккаунта в &lt;a href=&quot;https://console.cloud.google.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://console.cloud.google.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Google Cloud Console&lt;/a&gt;. При необходимости, можно разместить в каталоге с кодом несколько файлов авторизации и указать имя нужного в коде:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc22.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc22.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc22.png?w=500&amp;amp;tok=b80c93&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Также нужно зарегистрировать дополнительный &lt;code&gt;JSON&lt;/code&gt; в файле проекта «ExportToGoogleSheets1Lib.csproj», добавив в него код с новым именем файла, аналогично существующему:
&lt;/p&gt;
&lt;pre class=&quot;code csharp&quot;&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;ItemGroup&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;  
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;None Update&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;service-account.json&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;  
        &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;CopyToOutputDirectory&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;Always&lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;CopyToOutputDirectory&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;  
    &lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;None&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;  
  &lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;ItemGroup&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc23.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc23.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc23.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
4. Далее указать идентификатор Google-таблицы, к которой дали доступ для сервисного аккаунта, а также имя листа в ней, на который требуется выгрузить данные:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc24.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc24.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc24.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Идентификатор&lt;/strong&gt; - часть адреса страницы с таблицей, между &lt;code&gt;/d/&lt;/code&gt; и &lt;code&gt;/edit&lt;/code&gt;, а имя листа – аналогично Excel:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/gcc25.png?id=product%3Aapi%3Aintegration_examples%3Agoogle_sheets&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:gcc25.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/gcc25.png?w=600&amp;amp;tok=9b58ff&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Перед запуском примера необходимо обязательно сохранить изменения. После этого можно запускать решение. Для запуска служат команды справа на панели закладок &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Работа с примером &lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/exporttogooglesheets2nolibs.zip&quot; class=&quot;media mediafile mf_zip&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:exporttogooglesheets2nolibs.zip (13.9 KB)&quot; rel=&quot;noopener&quot;&gt;exporttogooglesheets2nolibs.zip&lt;/a&gt; полностью аналогична. Доступ к ADVANTA и Google настраивается точно также.
&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-info&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-info-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Если потребуется проводить собственные эксперименты с примерами в &lt;a href=&quot;https://code.visualstudio.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.visualstudio.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Visual Studio Code&lt;/a&gt;, рекомендуется создать новый проект, скопировать в него код из примера и подключить библиотеки Google. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0417\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u00abExportToGoogleSheet1Libs\u00bb (\u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0438 Google)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0437\u0430\u043f\u0443\u0441\u043a_\u043f\u0440\u0438\u043c\u0435\u0440\u0430_exporttogooglesheet1libs_\u0441_\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0438_google&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;16289-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>product:api:integration_examples</category>
            <pubDate>Tue, 08 Apr 2025 10:27:03 +0000</pubDate>
        </item>
        <item>
            <title>Взаимодействие ADVANTA с BI-системой &quot;Навигатор&quot;</title>
            <link>https://wiki.a2nta.ru/doku.php/product/api/integration_examples/navigator</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;взаимодействие_advanta_с_bi-системой_навигатор&quot;&gt;Взаимодействие ADVANTA с BI-системой &amp;quot;Навигатор&amp;quot;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; - российская платформа визуализации данных (BI) от компании «Сбер». Она заменяет такие системы, как «Power BI», «Qlik» или «Tableu».
&lt;/p&gt;

&lt;p&gt;
«Навигатор» позволяет создавать дашборды по информации, загружаемой из различных информационных систем. Чтобы создать в «Навигаторе» дашборд по данным о проектах из Системы ADVANTA, требуется выполнить шаги:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Выгрузить необходимые для построения дашборда данные из ADVANTA в файлы формата &lt;code&gt;XLSX&lt;/code&gt; или в промежуточную базу данных.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Загрузить данные в &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; через ее функцию создания нового «источника».&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Сконструировать дашборд средствами системы &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav.png&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav.png?w=800&amp;amp;tok=6b5724&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;800&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 ADVANTA \u0441 BI-\u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \&amp;quot;\u041d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440\&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435_advanta_\u0441_bi-\u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439_\u043d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1484&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;способы_выгрузки_из_advanta_данных_для_навигатор&quot;&gt;Способы выгрузки из ADVANTA данных для &amp;quot;Навигатор&amp;quot;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Если выгружать данные для дашбордов требуется редко, можно выполнять эту задачу вручную, путём экспорта отчёта ADVANTA в файл формата Excel.
&lt;/p&gt;

&lt;p&gt;
Если передавать данные надо регулярно, процесс можно автоматизировать, написав специальную программу. Организовать автоматическую выгрузку данных по расписанию можно двумя путями:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Автоматизировать процесс экспорта заранее настроенного отчёта типа &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/reports/excel_table_report&quot; class=&quot;wikilink1&quot; title=&quot;product:reports:excel_table_report&quot; data-wiki-id=&quot;product:reports:excel_table_report&quot;&gt;«электронная таблица»&lt;/a&gt; в файл формата Excel, аналогично выгрузке вручную. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Получать данные об объектах ADVANTA в табличной форме через API-функции, без использования отчётов. Данные нужно записать либо в файлы, либо во внешнюю базу данных, откуда &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; сможет их загрузить.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0438\u0437 ADVANTA \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \&amp;quot;\u041d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440\&amp;quot;&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043f\u043e\u0441\u043e\u0431\u044b_\u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438_\u0438\u0437_advanta_\u0434\u0430\u043d\u043d\u044b\u0445_\u0434\u043b\u044f_\u043d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1485-2903&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;выгрузка_отчетов_из_advanta_в_xlsx_вручную&quot;&gt;Выгрузка отчетов из ADVANTA в XLSX вручную&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Чтобы вручную выгрузить данные из ADVANTA, надо создать отчет, настроить в нем состав полей, после чего выгрузить его в XLSX-файл.
&lt;/p&gt;

&lt;p&gt;
Подробно процесс выгрузки описан на страницах о соответствующих типах отчетов:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/reports/excel_table_report/export&quot; class=&quot;wikilink1&quot; title=&quot;product:reports:excel_table_report:export&quot; data-wiki-id=&quot;product:reports:excel_table_report:export&quot;&gt;выгрузка в &amp;#039;&amp;#039;XLSX&amp;#039;&amp;#039; отчета типа «Электронная таблица»&lt;/a&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/reports/interface#выгрузка_в_другие_форматы&quot; class=&quot;wikilink1&quot; title=&quot;product:reports:interface&quot; data-wiki-id=&quot;product:reports:interface&quot;&gt;выгрузка в &amp;#039;&amp;#039;XLSX&amp;#039;&amp;#039; отчета типа «Проекты и работы»&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442\u0447\u0435\u0442\u043e\u0432 \u0438\u0437 ADVANTA \u0432 XLSX \u0432\u0440\u0443\u0447\u043d\u0443\u044e&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0430_\u043e\u0442\u0447\u0435\u0442\u043e\u0432_\u0438\u0437_advanta_\u0432_xlsx_\u0432\u0440\u0443\u0447\u043d\u0443\u044e&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2904-3669&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;автоматизация_экспорта_отчетов_advanta_в_xlsx&quot;&gt;Автоматизация экспорта отчетов ADVANTA в XLSX&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Отчеты типа &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/reports/excel_table_report&quot; class=&quot;wikilink1&quot; title=&quot;product:reports:excel_table_report&quot; data-wiki-id=&quot;product:reports:excel_table_report&quot;&gt;«электронная таблица»&lt;/a&gt; можно выгружать из ADVANTA автоматически. Для этого требуется написать приложение, которое будет по расписанию получать файл отчета через метод API &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/list/downloadspreadsheetreportfile&quot; class=&quot;wikilink1&quot; title=&quot;product:api:list:downloadspreadsheetreportfile&quot; data-wiki-id=&quot;product:api:list:downloadspreadsheetreportfile&quot;&gt;DownloadSpreadsheetReportFile&lt;/a&gt; и сохранять его на диске.
&lt;/p&gt;

&lt;p&gt;
При вызове этого метода в параметре &lt;code&gt;reportId&lt;/code&gt; указывается идентификатор отчета ADVANTA, который можно найти в адресной строке браузера (&lt;code&gt;UID&lt;/code&gt;).
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav1.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav1.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav1.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043e\u0442\u0447\u0435\u0442\u043e\u0432 ADVANTA \u0432 XLSX&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f_\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430_\u043e\u0442\u0447\u0435\u0442\u043e\u0432_advanta_\u0432_xlsx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;3670-4550&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;автоматизация_выгрузки_данных_об_объектах_в_форматах_xml_или_json&quot;&gt;Автоматизация выгрузки данных об объектах в форматах XML или JSON&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
API-функции ADVANTA позволяют выгружать данные об объектах в стандартных форматах обмена без использования отчетов. Для этого требуется написать приложение, которое будет вызывать API-функции и записывать полученные данные в файлы или во внешнюю &lt;abbr title=&quot;Система управления базами данных&quot;&gt;СУБД&lt;/abbr&gt;.
&lt;/p&gt;

&lt;p&gt;
Есть два способа получения данных через API:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/list&quot; class=&quot;wikilink1&quot; title=&quot;product:api:list&quot; data-wiki-id=&quot;product:api:list&quot;&gt;API-функции SOAP&lt;/a&gt; позволяют получать данные из ADVANTA в формате &lt;code&gt;XML&lt;/code&gt;. Например, для получения таблицы проектов можно использовать API &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/list/getproject&quot; class=&quot;wikilink1&quot; title=&quot;product:api:list:getproject&quot; data-wiki-id=&quot;product:api:list:getproject&quot;&gt;GetProject&lt;/a&gt;, а для получения данных из прикреплённых к проектам таблиц – API &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/api/list/getrecords&quot; class=&quot;wikilink1&quot; title=&quot;product:api:list:getrecords&quot; data-wiki-id=&quot;product:api:list:getrecords&quot;&gt;GetRecords&lt;/a&gt;. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/linq/new#webapi&quot; class=&quot;wikilink1&quot; title=&quot;product:linq:new&quot; data-wiki-id=&quot;product:linq:new&quot;&gt;WebApi&lt;/a&gt; позволяет выполнять из внешнего приложения LINQ-запросы. Так можно получать данные об объектах ADVANTA в формате &lt;code&gt;JSON&lt;/code&gt;. При этом структуру таблиц можно гибко настраивать, используя возможности языка C#. Принципы работы с LINQ-запросами представлены на странице &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/linq/start&quot; class=&quot;wikilink1&quot; title=&quot;product:linq:start&quot; data-wiki-id=&quot;product:linq:start&quot;&gt;&amp;quot;Модуль LINQ&amp;quot;&lt;/a&gt;. &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431 \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0430\u0445 XML \u0438\u043b\u0438 JSON&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f_\u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438_\u0434\u0430\u043d\u043d\u044b\u0445_\u043e\u0431_\u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0445_\u0432_\u0444\u043e\u0440\u043c\u0430\u0442\u0430\u0445_xml_\u0438\u043b\u0438_json&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4551-6214&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;пример_создания_дашборда_в_bi_навигатор_по_данным_из_advanta&quot;&gt;Пример создания дашборда в BI &amp;quot;Навигатор&amp;quot; по данным из ADVANTA&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
В примере будет создан дашборд, который покажет задачи проектов, завершённые с отклонением по времени. Для этого:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; На демостенде ADVANTA будет создан отчет с перечнем просроченных задач.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Отчет будет выгружен в файл формата &lt;code&gt;XLSX&lt;/code&gt; вручную и загружен в &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; в виде «источника».&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Будет настроен дашборд.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430 \u0432 BI \&amp;quot;\u041d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440\&amp;quot; \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c \u0438\u0437 ADVANTA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043f\u0440\u0438\u043c\u0435\u0440_\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f_\u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430_\u0432_bi_\u043d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440_\u043f\u043e_\u0434\u0430\u043d\u043d\u044b\u043c_\u0438\u0437_advanta&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;6215-6960&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;создание_отчета_типа_электронная_таблица_в_advanta&quot;&gt;Создание отчета типа «Электронная таблица» в ADVANTA&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
На странице демостенда &lt;a href=&quot;https://pmo.a2nta.ru&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://pmo.a2nta.ru&quot; rel=&quot;ugc nofollow noopener&quot;&gt;https://pmo.a2nta.ru&lt;/a&gt; нужно вызвать в Левом меню «Мои отчёты» → «Добавить отчёт». Запустится мастер создания отчёта. Выберем тип отчёта «Проекты и работы».
&lt;/p&gt;

&lt;p&gt;
На шаге «Какие данные нужно показать в отчете?» выберем &lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav2.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav2.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav2.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; «Задача».
&lt;/p&gt;

&lt;p&gt;
Ниже, в области «Используйте дополнительные фильтры», укажем, что нужны только проекты одного направления. В строке «Фильтр по родительскому проекту» нажмём кнопку «Включить».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav3.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav3.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav3.png?w=500&amp;amp;tok=0aae67&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Появится страница выбора узла в &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/objects/object_tree&quot; class=&quot;wikilink1&quot; title=&quot;product:objects:object_tree&quot; data-wiki-id=&quot;product:objects:object_tree&quot;&gt;Дереве проектов&lt;/a&gt; - нажмём кнопку «Выбрать» в строке «Портфель проектов цифровизации». Выбранное направление будет добавлено в область «Проекты в профиле».
&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav4.png&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav4.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav4.png?w=600&amp;amp;tok=68985b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
Завершим настройку фильтра по &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/objects/object_tree&quot; class=&quot;wikilink1&quot; title=&quot;product:objects:object_tree&quot; data-wiki-id=&quot;product:objects:object_tree&quot;&gt;Дереву проектов&lt;/a&gt; кнопкой «Выбрать». Для завершения формирования отчета нужно нажать кнопку «Показать отчет» - появится страница отчета со стандартным набором полей:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Название;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Статус;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Исполнитель;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Планируемая дата завершения.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav5.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav5.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav5.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Добавим в отчет дополнительные поля, которые потребуются в дашборде. Для этого зайдем меню «три точки» → «Изменить» - появится редактор настроек отчета. В редакторе настроек нужно найти раздел «Даты объектов» и включть чекбоксы в полях «Утверждённая дата завершения» и «Фактическая дата завершения», в разделе «Системные показатели» включить чек-бокс у поля «Отклонение окончания».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav6.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav6.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav6.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Добавим поле с названием проекта, в который входит задача. Для этого в разделе «Источник» нажмем кнопку «Добавить» - появятся поля для выбора вышестоящего объекта. В списке типов объектов выберем «Проект цифровизации», а правее, в поле «Название колонки» напишем «Проект».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav7.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav7.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav7.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Завершим настройку кнопкой «Показать отчет» в верхней части окна настроек. Выбранные столбцы появятся в отчете.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav8.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav8.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav8.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Далее нужно настроить фильтры данных так, чтобы в отчет попадали только задачи, завершённые не вовремя. Для этого в области фильтров записей отчёта установим для параметра «Отобрать по» значение «Утверждённые даты» и включим чек-бокс «Только просроченные».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav9.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav9.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav9.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В табличной части отчёта, в поле «Статус» установим фильтр по значению «Завершен». 
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav10.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav10.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav10.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В верхней части страницы отчета, в поле «Название» введём «Задачи с отклонением по дате завершения» и сохраним отчёт кнопкой «Сохранить». Теперь отчет станет доступен в Левом меню ADVANTA, в разделе «Мои отчеты».
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0442\u0447\u0435\u0442\u0430 \u0442\u0438\u043f\u0430 \u00ab\u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u00bb \u0432 ADVANTA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043e\u0442\u0447\u0435\u0442\u0430_\u0442\u0438\u043f\u0430_\u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0430\u044f_\u0442\u0430\u0431\u043b\u0438\u0446\u0430_\u0432_advanta&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;6961-11640&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;выгрузка_отчета_advanta_в_файл_формата_xlsx&quot;&gt;Выгрузка отчета ADVANTA в файл формата XLSX&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
На странице отчета нужно вызвать меню «три точки» → «Экспорт в» → «Экспорт в XLSX». Проявится диалог сохранения Excel-файла на диск. Выберем каталог и сохраним файл.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav11.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav11.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav11.png?w=500&amp;amp;tok=41392d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В указанном каталоге появится XLSX-файл, можно просмотреть его в Excel.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0412\u044b\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442\u0447\u0435\u0442\u0430 ADVANTA \u0432 \u0444\u0430\u0439\u043b \u0444\u043e\u0440\u043c\u0430\u0442\u0430 XLSX&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0430_\u043e\u0442\u0447\u0435\u0442\u0430_advanta_\u0432_\u0444\u0430\u0439\u043b_\u0444\u043e\u0440\u043c\u0430\u0442\u0430_xlsx&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;11641-12189&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;создание_источника_данных_в_bi_навигатор&quot;&gt;Создание источника данных в BI «Навигатор»&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
В системе &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; нужно перейти в панель управления (АРМ: Администрирование). 
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav12.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav12.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav12.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Откроем страницу создания источника данных.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav13.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav13.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav13.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Добавим новый источник данных «Из файла».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav14.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav14.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav14.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В окне «Новый источник» введём название, аналогичное нашему отчёту («Задачи с отклонением по дате завершения»). Выберем предметную область и нажмём «Загрузить».
&lt;/p&gt;

&lt;p&gt;
Далее найдем и откроем XLSX-файл, выгруженный ранее из ADVANTA. Появится страница загрузки данных из файла.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav15.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav15.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav15.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-warning&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-triangle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Поля отчета ADVANTA, на которые были наложены фильтры, загружаются с символом «*» в названии (в нашем случае, поле «Статус»). Чтобы в работе с таким полем далее не возникло проблем, &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; автоматически заменяет спецсимвол на знак подчёркивания. 
&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav16.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav16.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav16.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Чтобы символ подчёркивания не усложнял работу можно удалить его, переименовав поле.
&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
Для сохранения источника, нажимаем кнопку «Загрузить», справа внизу. Созданный источник проявится в списке.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav17.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav17.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav17.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 BI \u00ab\u041d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440\u00bb&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430_\u0434\u0430\u043d\u043d\u044b\u0445_\u0432_bi_\u043d\u0430\u0432\u0438\u0433\u0430\u0442\u043e\u0440&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;12190-14373&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;создание_дашборда_на_основе_источника_данных_из_advanta&quot;&gt;Создание дашборда на основе источника данных из ADVANTA&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Перейдём в раздел «Визуализация → Дэшборды» и создадим новый кнопкой «Новый дэшборд». Назовём его «Задачи проектов, завершённые не в срок».
&lt;/p&gt;

&lt;p&gt;
На странице редактирования дашборда добавим новый «Экран» типа «Лента».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav18.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav18.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav18.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Лишний экран типа «Сетка», созданный по умолчанию, нужно удалить. 
&lt;/p&gt;

&lt;p&gt;
Переименуем экран в «Просроченные задачи проектов» и добавим новый глобальный набор данных. Он появится слева, в меню структуры экрана. Переименуем его в «Таблица задач».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav19.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav19.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav19.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Далее перейдем на страницу редактирования набора данных «Таблица задач» двойным кликом по его названию в левом меню.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav20.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav20.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav20.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В поле «Источник данных» выберем источник «Задачи с отклонением по дате завершения», настроим набор полей.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav21.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav21.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav21.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Переименуем поля для отображения на экране:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; nazvanie → Название задачи;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ispolnitel → Исполнитель;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; proekt → Проект;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; otklonenie_okonchaniya → Отклонение.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav22.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav22.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav22.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Далее нужно вернуться на страницу дашборда по кнопке «Дэшборд». В окне структуры дашборда слева выберем каталог «Новая группа» и вызовем пункт меню «Добавить виджет». В списке возможных виджетов выберем диаграмму «Круговая».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav23.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav23.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav23.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Виджет диаграммы появится в каталоге группы виджетов в окне структуры. Переименуем его в «Наибольшее отклонение» с помощью поля свойств виджета справа.
&lt;/p&gt;

&lt;p&gt;
Перейдём на страницу настройки виджета двойным кликом по нему в левом меню.На странице настроек виджета, в поле «Набор данных» выберем созданный нами набор «Таблица задач».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav24.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav24.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav24.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В поле «Название» выберем «Название задачи».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav25.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav25.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav25.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В поле «Значения» выберем «Отклонение».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav26.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav26.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav26.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
В правой части окна мы увидим превью созданного виджета.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav27.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav27.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav27.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Далее вернемся на страницу дашборда. В правой части окна настроек дашборда установим параметры:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Генерировать из = Таблица задач;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Поле для сегментации = Проект.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav28.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav28.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav28.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Построим созданный дашборд кнопкой «Показать в Навигаторе».
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav29.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav29.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav29.png?w=400&amp;amp;tok=261683&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Откроется новая вкладка браузера с созданным дашбордом. Для каждого из проектов, попавших в выборку дашборд отобразит круговые диаграммы с перечнем не вовремя завершённых задач и указанием количества дней срыва сроков.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/nav30.png?id=product%3Aapi%3Aintegration_examples%3Anavigator&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:nav30.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/nav30.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Таков общий принцип ручной передачи данных из ADVANTA в BI-систему &lt;a href=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://platformv.sbertech.ru/products/analitika-dannyh/navigator&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Навигатор&lt;/a&gt; для построения в ней дашбордов.
&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-info&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-info-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Если возникнет потребность в автоматизации процесса выгрузки, рекомендуем обратиться к специалистам по внедрению ADVANTA для проработки вариантов с учётом специфики вашего решения.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 ADVANTA&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430_\u043d\u0430_\u043e\u0441\u043d\u043e\u0432\u0435_\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430_\u0434\u0430\u043d\u043d\u044b\u0445_\u0438\u0437_advanta&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;14374-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>product:api:integration_examples</category>
            <pubDate>Fri, 11 Apr 2025 17:38:51 +0000</pubDate>
        </item>
        <item>
            <title>Интеграция ADVANTA с Power BI</title>
            <link>https://wiki.a2nta.ru/doku.php/product/api/integration_examples/power-bi</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;интеграция_advanta_с_power_bi&quot;&gt;Интеграция ADVANTA с Power BI&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Power BI Desktop&lt;/strong&gt; - это настольное приложение от Microsoft, предназначенное для создания интерактивных отчетов и визуализаций данных.
&lt;/p&gt;

&lt;p&gt;
Подключение Power BI Desktop к Системе ADVANTA выполняется с помощью скрипта на языке Python. В качестве источника для получения данных используются LINQ-запросы, настроенные в ADVANTA.
&lt;/p&gt;

&lt;p&gt;
Чтобы настроить в Power BI Desktop визуализацию по данным из Системы ADVANTA, требуется выполнить следующие шаги:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Настроить LINQ-запросы с необходимыми данными в разделе Администрирования ADVANTA.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Создать проект в PowerBI.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Добавить в PowerBI новый источник данных.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Добавить в источник данных обработчик для получения данных из API ADVANTA.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Сконструировать дашборд в PowerBI.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/advanta_powerbi.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:advanta_powerbi.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/advanta_powerbi.png?w=900&amp;amp;tok=ee5aa0&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Ниже рассмотрен пример настройки дашборда в PowerBI на основе двух источников (LINQ-запросов) из Системы ADVANTA. На основе этого примера Вы можете создавать собственные источники в Системе для автоматического получения данных из ADVANTA в Power BI Desktop.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f ADVANTA \u0441 Power BI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f_advanta_\u0441_power_bi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1779&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;настройка_linq-запросов&quot;&gt;Настройка LINQ-запросов&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Чтобы загрузить данные из ADVANTA в PowerBI, необходимо сначала создать в ADVANTA источники данных в виде LINQ-запросов (необходим хотя бы один запрос). LINQ-запросы станут источниками данных для соответствующих дашбордов в PowerBI.
&lt;/p&gt;

&lt;p&gt;
Для этого перейти в Системе ADVANTA в раздел Администрирование → Дополнительные сервисы → Источники LINQ. На странице выбрать либо уже созданный источник, либо создать новый. В примере ниже выбрано два уже созданных источника для BI: «КТ» и «Проекты».
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/linq.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:linq.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/linq.png?w=900&amp;amp;tok=250780&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Нужно присвоить LINQ-запросам имена и ключи. Для удобства имена, ключи и id запросов необходимо скопировать и сохранить.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/linq2.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:linq2.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/linq2.png&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 LINQ-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_linq-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1780-3069&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;настройка_python&quot;&gt;Настройка Python&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Для того чтобы при импорте в PowerBI обращаться к API ADVANTA, надо использовать скрипт на &lt;a href=&quot;https://www.python.org&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.python.org&quot; rel=&quot;ugc nofollow noopener&quot;&gt;Python&lt;/a&gt;. Для этого необходимо установить Python на ПК и проверить, что он работает. 
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/python1.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:python1.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/python1.png?w=600&amp;amp;tok=ba7400&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

В используемой инсталляции Python для работы скрипта нужно также установить менеджер пакетов - &lt;code&gt;pip&lt;/code&gt; и выполнить команду для установки библиотек:
&lt;/p&gt;
&lt;pre class=&quot;code python&quot;&gt;python -m pip install requests matplotlib pandas&lt;/pre&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; requests - чтобы обращаться к API через HTTP-протокол;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; matplotlib и pandas - библиотеки для работы с данными, которые использует PowerBI для конвертации полученных в формате JSON данных из Системы ADVANTA в свой внутренний формат таблиц.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/python2.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:python2.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/python2.png?w=600&amp;amp;tok=a7a018&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Python&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430_python&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;3070-4340&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;создание_проекта_в_powerbi&quot;&gt;Создание проекта в PowerBI&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Заходим в Power BI Desktop и создаем/открываем отчет - в этом отчете будет настраиваться новый источник данных.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi1.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi1.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi1.png?w=900&amp;amp;tok=fd396e&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0432 PowerBI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435_\u043f\u0440\u043e\u0435\u043a\u0442\u0430_\u0432_powerbi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;4341-4682&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;добавление_нового_источника_данных&quot;&gt;Добавление нового источника данных&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-warning&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-exclamation-triangle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;В параметрах PowerBI необходимо проверить, что выбран правильный путь к установленному интерпретатору Python. Для этого:&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Зайти во вкладку «Файл» → Параметры и настройки → Параметры.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; В открывшемся окне зайти на вкладку «Создание скриптов Python» и выбрать либо домашний каталог Python, либо указать конкретный корневой каталог.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi14.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi14.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi14.png?w=700&amp;amp;tok=838a73&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;700&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
В отчете создаем новый источник данных: вкладка «Получить данные» → Другие → Скрипт Python → Подключить.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi2.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi2.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi2.png?w=900&amp;amp;tok=7556be&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi3.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi3.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi3.png?w=600&amp;amp;tok=a6a732&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

В поле «Сценарий» вставить код из примера:
&lt;/p&gt;
&lt;pre class=&quot;code python&quot;&gt;&lt;span class=&quot;co1&quot;&gt;# не забудьте установить требуемые библиотеки Python: &lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;# python -m pip install requests matplotlib pandas&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; requests
&lt;span class=&quot;kw1&quot;&gt;from&lt;/span&gt; pandas &lt;span class=&quot;kw1&quot;&gt;import&lt;/span&gt; json_normalize 
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# данные пользователя для подключения к инсталляции ADVANTA&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;# LOGIN = ''&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;# PASSWORD = ''&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# лучше использовать токен - см. Вики &lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;# https://wiki.a2nta.ru/doku.php/product/auth/users/token_management&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;# https://wiki.a2nta.ru/doku.php/product/linq/new#webapi&lt;/span&gt;
&amp;nbsp;
TOKEN &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'enter_your_token_here'&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# адрес сервера с системой ADVANTA (при необходимости можно указать справа от домена каталог установки, если система расположена не в корне домена)&lt;/span&gt;
DOMAIN &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'https://test.a2nta.ru'&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# переменная для хранения параметров сессии&lt;/span&gt;
session &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; requests.&lt;span class=&quot;me1&quot;&gt;Session&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# авторизация в ADVANTA&lt;/span&gt;
response &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session.&lt;span class=&quot;me1&quot;&gt;post&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
    url&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;DOMAIN+&lt;span class=&quot;st0&quot;&gt;'/api/auth/login'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; 
    &lt;span class=&quot;co1&quot;&gt;### если используем подключение с помощью логина и пароля &lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;# json={&lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;#     'Login': LOGIN, &lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;#     'Password': PASSWORD,&lt;/span&gt;
    &lt;span class=&quot;co1&quot;&gt;#     },&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;co1&quot;&gt;### если подключаемся, используя токен&lt;/span&gt;
    json&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;st0&quot;&gt;'tokenValue'&lt;/span&gt;: TOKEN&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# сохранение полученных авторизационных cookies для дальнейшего использования&lt;/span&gt;
cookies &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session.&lt;span class=&quot;me1&quot;&gt;cookies&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;get_dict&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# получение данных из LINQ-запроса&lt;/span&gt;
response &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; session.&lt;span class=&quot;me1&quot;&gt;post&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
    url&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;DOMAIN+&lt;span class=&quot;st0&quot;&gt;'/api/queries/get'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; 
    cookies&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;cookies&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; 
    json&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;co1&quot;&gt;# указать ваш код LINQ-запроса и его параметры&lt;/span&gt;
        &lt;span class=&quot;st0&quot;&gt;'DataSourceKey'&lt;/span&gt;: &lt;span class=&quot;st0&quot;&gt;'enter_your_linq_code_here'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;st0&quot;&gt;'PageSize'&lt;/span&gt;: &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;# возвращаем данные в Power BI в нужном для дальнейшей обработки формате  &lt;/span&gt;
projects &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; json_normalize&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;response.&lt;span class=&quot;me1&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Заполнить данные для авторизации, указав свой логин и пароль для подключения к Системе ADVANTA (но лучше использовать &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/auth/users/token_mgt&quot; class=&quot;wikilink1&quot; title=&quot;product:auth:users:token_mgt&quot; data-wiki-id=&quot;product:auth:users:token_mgt&quot;&gt;токен&lt;/a&gt;). &lt;br/&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi4.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi4.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi4.png?w=600&amp;amp;tok=45b88f&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; В строке DOMAIN указать адрес сервера, на котором размещена Система ADVANTA, из которой нужно будет получать данные. &lt;br/&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi5.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi5.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi5.png?w=600&amp;amp;tok=3f998c&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Подключить использование сессии - выбрав авторизацию в Системе ADVANTA через логин и пароль, или через &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/auth/users/token_mgt&quot; class=&quot;wikilink1&quot; title=&quot;product:auth:users:token_mgt&quot; data-wiki-id=&quot;product:auth:users:token_mgt&quot;&gt;токен&lt;/a&gt;. &lt;br/&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi6.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi6.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi6.png?w=600&amp;amp;tok=585b07&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Указать ключ LINQ-запроса из ADVANTA, который был сохранен ранее. Также можно ограничить количество данных, приходящих в запросе. &lt;br/&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi7.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi7.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi7.png?w=600&amp;amp;tok=5e67c7&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;div class=&quot;bs-wrap bs-callout bs-callout-info&quot;&gt;&lt;div class=&quot;row&quot;&gt;&lt;div class=&quot;col-xs-1&quot;&gt;&lt;i class=&quot;bs-callout-icon fa fa-info-circle&quot;&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;col-xs-11&quot;&gt;Подробнее о параметрах вызовов Web API ADVANTA для получения данных из LINQ-запросов можно прочитать на отдельной &lt;a href=&quot;https://wiki.a2nta.ru/doku.php/product/linq/new&quot; class=&quot;wikilink1&quot; title=&quot;product:linq:new&quot; data-wiki-id=&quot;product:linq:new&quot;&gt;странице&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;
После заполнения всех параметров нажимаем «Ок» - начнется подключение к ADVANTA. Если скрипт успешно отработал, в PowerBI появятся импортированные данные. Надо выбрать источник слева и затем нажать «Загрузить» внизу окна. Далее полученные из ADVANTA данные можно обрабатывать и преобразовывать средствами PowerBI для большего удобства работы с ними в дашбордах.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi8.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi8.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi8.png?w=600&amp;amp;tok=fee532&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Для формирования дашборда необходимо сделать столько источников в PowerBI, сколько их нужно импортировать из ADVANTA, т.е. один LINQ-источник = один источник данных в PowerBI. В последующем, при нажатии кнопки «Обновить данные» в отчете PowerBI, информация из Системы ADVANTA будет запрашиваться автоматически с использованием сохраненного в параметрах источника данных Python-скрипта. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435_\u043d\u043e\u0432\u043e\u0433\u043e_\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430_\u0434\u0430\u043d\u043d\u044b\u0445&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:1,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;4683-11003&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;формирование_дашборда_в_powerbi&quot;&gt;Формирование дашборда в PowerBI&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
После добавления всех необходимых источников в модели данных PowerBI можно связать поля источников между собой для автоматической фильтрации данных в дашбордах. В примере свяжем ProjectId из таблицы «milestones» и Id из таблицы «projects».
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi9.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi9.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi9.png?w=600&amp;amp;tok=45cd55&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi10.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi10.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi10.png?w=900&amp;amp;tok=e01578&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

На основе загруженных данных можно создать необходимые визуализации в PowerBI, подключая их к нужным источникам данных.
&lt;/p&gt;

&lt;p&gt;
Например, можно сделать панель в виде таблицы, которая будет содержать список проектов с их id и статусом.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi11.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi11.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi11.png?w=900&amp;amp;tok=a3e801&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Также можно сделать таблицу с перечнем контрольных точек и базовой датой их окончания.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi12.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi12.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi12.png?w=900&amp;amp;tok=dfe001&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

Так как данные двух таблиц связаны, то при выборе «Проекта» в верхнем списке - перечень «Контрольных точек» в нижней части дашборда будет автоматически фильтроваться по id выбранного проекта за счет ранее установленной связи между таблицами.
&lt;br/&gt;

&lt;/p&gt;
&lt;span class=&quot;bs-wrap bs-wrap-image&quot; data-img-shape=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://wiki.a2nta.ru/lib/exe/detail.php/product/api/integration_examples/powerbi13.png?id=product%3Aapi%3Aintegration_examples%3Apower-bi&quot; class=&quot;media&quot; target=&quot;_blank&quot; title=&quot;product:api:integration_examples:powerbi13.png&quot; rel=&quot;noopener&quot;&gt;&lt;img src=&quot;https://wiki.a2nta.ru/lib/exe/fetch.php/product/api/integration_examples/powerbi13.png?w=900&amp;amp;tok=c7511e&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;900&quot; /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;p&gt;
&lt;br/&gt;

После настроек визуализации готовый файл PowerBI необходимо сохранить. Дальнейшая настройка дашбордов в PowerBI осуществляется стандартными средствами данного приложения.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;\u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430 \u0432 PowerBI&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435_\u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430_\u0432_powerbi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:2,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;11004-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>product:api:integration_examples</category>
            <pubDate>Mon, 21 Jul 2025 10:12:44 +0000</pubDate>
        </item>
    </channel>
</rss>
