Как преобразовать xml данных в CSV / Excel / таблицы в Azure - PullRequest
0 голосов
/ 13 февраля 2020

нам нужно преобразовать XML данные в csv / excel / table в Azure облаке.

ниже приведен пример xml кода.

<SOAP-ENV:Envelope
   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">

<SOAP-ENV:Body>
           <ns2:getProjectsResponse
               xmlns:ns2="http://www.logic8.com/eq/webservices/generated">
               <ns2:Project>
                   <ns2:fileName>P10001</ns2:fileName>
                   <ns2:alias>project1</ns2:alias>
               </ns2:Project>
               <ns2:Project>
                   <ns2:fileName>P10002</ns2:fileName>
                   <ns2:alias>project2</ns2:alias>
               </ns2:Project>
       <ns2:Project>
                   <ns2:fileName>P10003</ns2:fileName>
                   <ns2:alias>project3</ns2:alias>
               </ns2:Project>
           </ns2:getProjectsResponse>
       </SOAP-ENV:Body>
   </SOAP-ENV:Envelope>

Ожидаемый результат:

output

Может кто-нибудь помочь мне в этом.

Ответы [ 2 ]

0 голосов
/ 14 февраля 2020

Вы можете попробовать этот способ, сначала преобразовать xml в json, а затем использовать действие создания таблицы CSV для его реализации. Ниже приведен мой тестовый поток.

enter image description here

Я использую blob для получения xml контента. Ввод действия Compose - json(xml(body('Get_blob_content'))), после чего будут получены данные json. Затем Create CSV table From, поскольку данные должны быть массивом, поэтому он должен быть outputs('Compose')['SOAP-ENV:Envelope']['SOAP-ENV:Body']['ns2:getProjectsResponse']['ns2:Project'].

Последнее, что нужно настроить - это заголовок и значение, значение ProjectID должно быть item()['ns2:fileName'] и ProjectDescription должно быть item()['ns2:alias'].

А вот и вывод потока, предположим, что это то, что вы хотите, надеюсь, это поможет вам.

enter image description here

0 голосов
/ 13 февраля 2020

Есть ли у вас опыт работы с Azure? Я спрашиваю, потому что из вашего вопроса звучит так, будто вы не знаете, с чего начать или какой сервис использовать. Мне также любопытно, если бы вам дали требование использовать Azure или вы подумали, что Azure может быть решением самостоятельно. И откуда это XML? Это похоже на запрос SOAP.

Если вы разработчик, я бы подумал о создании веб-приложения в. Net, он может использовать MVC, Core, веб-API и использовать его для использовать этот запрос SOAP, перевести его и сохранить файл. Для этого я хотел бы рассмотреть возможность использования класса XMLDocument для загрузки XML и анализа его.

Но если вам абсолютно необходимо использовать Azure, то ближайшая вещь, которая помогла бы автоматизировать это Azure Logi c Apps. Он предлагает множество решений без кода для подключения разъемов, которые могут преобразовывать и сохранять данные.

https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-enterprise-integration-transform#how -to-use-a-transform

Если Вы уточните свою ситуацию, я был бы рад предложить дальнейшие решения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...