Получите общую стоимость из CSV-файла счета-фактуры Azure

  • Я добавил экспорт расписания для своего счета-фактуры группы ресурсов Azure на ежемесячной основе. Сгенерированный счет будет состоять из платежных данных за последний месяц и будет хранить файл .CSV в моей учетной записи хранения как Blob-объект каждый месяц.

  • Я использую приложение Azure Logic для получения файла счета и отправки его по почте группе получателей.

  • Счет-фактура представляет собой файл .CSV, который состоит из ряда столбцов, таких как InstanceID, MeterID, UsageQuantity, ResourceLocation. Но мне нужно получить ОБЩУЮ СТОИМОСТЬ за расчетный период.

Есть идеи, как я могу этого добиться? Есть ли конкретный столбец, который мне нужно включить в мой CSV-файл. Или мне нужно выполнить какую-то обработку данных файла CSV, чтобы получить общий объем потребляемых ресурсов?

Какие-нибудь советы по этому поводу? Спасибо!


person SD4    schedule 31.10.2020    source источник
comment
Можно ли получить общую стоимость, сложив значения некоторых столбцов?   -  person Hury Shen    schedule 02.11.2020
comment
Да Хьюри. Есть столбец с названием «Количество использования». Суммирование этого столбца должно дать общую стоимость. Но можем ли мы достичь этого с помощью приложения Logic?   -  person SD4    schedule 02.11.2020
comment
На мой взгляд, вам следует выполнить операцию добавления номера, когда вы получите результат json из api остатка биллинга. Потому что это легко сделать, когда данные в формате json.   -  person Hury Shen    schedule 02.11.2020
comment
Если вы хотите выполнить операцию добавления номера в приложении логики, нам будет непросто реализовать ее в приложении логики. Поскольку в приложении логики мы не можем легко проанализировать данные CSV, для этого нам нужно использовать какой-то сторонний соединитель в приложении логики, и это может повлечь дополнительные расходы.   -  person Hury Shen    schedule 02.11.2020
comment
Есть идеи, как я могу это сделать? Потому что я использую остальной api, чтобы просто создать экспорт расписания для моего счета. Результат json просто возвращает параметры конфигурации, которые я установил в теле   -  person SD4    schedule 02.11.2020
comment
Единственное решение, которое я могу придумать, - это проанализировать файл csv в приложении логики с помощью стороннего соединителя, а затем выполнить операцию добавления числа. Я предоставлю решение ниже, вы можете посмотреть, поможет ли оно в вашей проблеме.   -  person Hury Shen    schedule 02.11.2020
comment
Хорошо, @HuryShen, конечно!   -  person SD4    schedule 02.11.2020
comment
Не могли бы вы предоставить образец csv, я проверю, соответствует ли коннектор вашему формату csv.   -  person Hury Shen    schedule 02.11.2020
comment
Вы имеете в виду список столбцов, присутствующих в файле csv?   -  person SD4    schedule 02.11.2020
comment
Извините, я забыл, что вы предоставили столбцы InstanceID, MeterID, UsageQuantity, ResourceLocation. Не нужен образец.   -  person Hury Shen    schedule 02.11.2020
comment
Да, это лишь некоторые из столбцов, представленных в CSV-файле счета. Но интересующий столбец - это столбец ПРЕДНАЛОГОВЫЕ РАСХОДЫ. Общая сумма всех значений в этом столбце даст общую стоимость расчетного периода.   -  person SD4    schedule 02.11.2020
comment
Позвольте нам продолжить это обсуждение в чате.   -  person Hury Shen    schedule 02.11.2020


Ответы (1)


1. Я создал CSV-файл (с именем billing.csv), как показано ниже, и загрузил его в хранилище BLOB-объектов.

InstanceID, MeterID, UsageQuantity, ResourceLocation, Pre tax cost
1,1,2,aa,10
2,2,3,bb,20
3,3,5,cc,30

2. В приложении логики используйте Получить содержимое большого двоичного объекта, чтобы получить файл CSV. введите описание изображения здесь

3. Найдите действие Анализировать CSV в приложении логики. введите описание изображения здесь

4. Действие Parse CSV попросит вас ввести ключ API, вам нужно перейти на этот сначала страница - ›нажмите« Начать бесплатную пробную версию », зарегистрируйте учетную запись и создайте новый ключ API. введите здесь описание изображения Скопируйте секрет и вставьте его в приложение логики в качестве ключа API, это позволит вам подключить Plumsail. введите описание изображения здесь

5. Затем выберите содержимое большого двоичного объекта в Parse CSV и введите заголовки InstanceID, MeterID, UsageQuantity, ResourceLocation, Pre tax cost. Добавьте новый параметр Пропустить первую строку и установите его значение как Yes.

введите описание изображения здесь

6. Инициализируйте переменную sum и установите для нее значение 0 целочисленного типа. Инициализируйте другую переменную tempItem и также установите ее значение как 0.

введите описание изображения здесь

7. Используйте для каждого цикла.

введите описание изображения здесь

Body поступает из действия Анализировать CSV, а значение выражается следующим образом: add(variables('tempItem'), int(items('For_each')?['Pre tax cost']))

8. После запуска приложения логики мы видим sum в последнем цикле:  введите описание изображения здесь

9. Вот полное приложение логики для справки: введите описание изображения здесь

Импорт:

Это решение использует сторонний соединитель Plumsail Documents, я не уверен, что он бесплатный. Раньше я регистрировал аккаунт, он работал бесплатно. Но сегодня ключ api не может продолжать использовать, мне нужно зарегистрировать другую учетную запись и создать другой ключ api. Поэтому я думаю, что этот сторонний соединитель требует дополнительных затрат, если вы хотите использовать его в течение длительного времени.

person Hury Shen    schedule 02.11.2020
comment
@ SD4 Обратите внимание, что ключ api от Plumsail Documents может стать непригодным для использования через несколько дней. - person Hury Shen; 03.11.2020
comment
Да, @Hury, сейчас я использую бесплатную пробную версию, которая действительна примерно 30 дней. - person SD4; 03.11.2020