Parsing/reading CSV and excel file from Azure Blob storages, using Logic Ap for D365FnO
We are reading here a simple CSV file that contains of two columns, and we need to insert into SalesPool table:
a. Reading from Blob:
Supposing we have a scheduler that reads from an Azure blob, by looping through all the newly added blobs in a container (here the container name, for example, is 'container1'):
We need to get the name of the file (the newly added file name in the blob container). This we can find out, first by inspecting the output from the previous step:
{
"Id": "JTJmY29udGFpbmVyMSUyZnNhbGVzcG9vbDIuY3N2",
"Name": "salespool2.csv",
"DisplayName": "salespool2.csv",
"Path": "/container1/salespool2.csv",
"LastModified": "2022-09-08T12:24:56Z",
"Size": 38,
"MediaType": "text/csv",
"IsFolder": false,
"ETag": "\"0x8DA919523CA6591\"",
"FileLocator": "JTJmY29udGFpbmVyMSUyZnNhbGVzcG9vbDIuY3N2",
"LastModifiedBy": null
}
Here, we need to get the value of the 'Name' key from the json. The following action, does that exactly:
And we are getting the file name, using the following expression in the next step:
Next part is actually tricky. The file content thus obtained is actually not CSV, but a cryptic JSON as is shown below:
{
"$content-type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"$content": "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"
}
We can handle this by declaring an array variable before the loop:
And then setting the content of the array to remove the newlines and escape characters using the following expression:
split(decodeUriComponent(replace(replace(uriComponent(body('Get_blob_content_using_path_(V2)')), '%0D', ''), '%0A', '#NEWLINE#')), '#NEWLINE#')
The output of this step gives you a neat CSV content as:
Next step is to use a JSON 'select' type of connector, where we can map the excel/CSV columns as a part of a key-value pair arrangement:
skip(variables('CSVArray'),1)
It's saying to skip the first row of the inputted excel/CSV file. Optionally you can omit saying to skip the row, if it does not have a header row actually.
Regarding the columns, you can use the following expressions:
split(Item(),',')?[1]
where: 0, 1, etc. are the column indexes.
c. Invoking FinOps entities:
The next part is pretty straight. You can now create a loop for each of the row you've got from the above step to call your FinOps entity:
Subsequent/alternate steps:
You can alternately update or create your FinOps entity, based on your need and also can add additional steps to move the file, once all the records of the file is successfully read. You can put the entire execution in a conditional try-catch arrangement, whereby handling each type of failure, etc.
Comments
Post a Comment