使用Standard Logic Apps将Azure文件共享CSV转JSON的实现步骤咨询
Azure Standard Logic Apps实现CSV转分层JSON并保存至文件共享
我是LogicApps新手,需要实现以下流程:从Azure文件共享读取CSV文件,通过Standard Logic Apps将其转换为指定层级结构的JSON,再将JSON文件保存回Azure文件共享。
输入CSV示例
CustomerName,OrderID,Orderdate,ItemNumer,ItemPrice Rahul,ORD123,18-01-2024,ITM001,150.00 Rahul,ORD133,18-01-2024,ITM002,200.00 Rajib,ORD234,18-01-2024,ITM123,100.00 Rahul,ORD123,18-01-2024,ITM003,250.00 Rajib,ORD234,18-01-2024,ITM125,500.00 Rahul,ORD133,18-01-2024,ITM004,300.00
预期JSON输出
{ "orderdetails": [ { "customername": "Rahul", "orders": [ { "OrderID": "ORD123", "Orderdate": "18-01-2024", "Itemdetails": [ { "itemnumber": "ITM001", "itemprice": "150.00" }, { "itemnumber": "ITM003", "itemprice": "250.00" } ] }, { "OrderID": "ORD133", "Orderdate": "18-01-2024", "Itemdetails": [ { "itemnumber": "ITM002", "itemprice": "200.00" }, { "itemnumber": "ITM004", "itemprice": "300.00" } ] } ] }, { "customername": "Rajib", "orders": [ { "OrderID": "ORD234", "Orderdate": "18-01-2024", "Itemdetails": [ { "itemnumber": "ITM123", "itemprice": "100.00" }, { "itemnumber": "ITM125", "itemprice": "500.00" } ] } ] } ] }
具体实现步骤
步骤1:创建Standard Logic Apps工作流
- 登录Azure门户,搜索并进入Logic Apps服务
- 点击创建,选择Standard类型的Logic App,配置订阅、资源组、名称、区域等信息,完成创建
步骤2:添加触发器
- 进入工作流设计器,选择手动触发工作流(若需自动触发,可选择*当文件添加或修改时(属性仅)*触发器,关联目标Azure文件共享)
步骤3:读取CSV文件内容
- 添加Azure Files连接器的获取文件内容操作
- 配置连接:选择目标存储账户、文件共享名称,指定要读取的CSV文件路径(手动触发时手动输入,自动触发时用触发器输出的文件路径)
步骤4:解析CSV为JSON数组
- 添加数据操作下的解析CSV操作
- 在内容字段选择上一步获取的文件内容
- 勾选第一行是标题,系统自动识别CSV列名并生成对应JSON数组
步骤5:构建分层JSON结构
需通过两次分组+选择操作实现层级结构:
5.1 按客户分组
- 添加数据操作下的分组依据操作
- 从字段选择解析后的CSV数组
- 分组依据选择
CustomerName字段 - 输出别名设为
customername - 聚合选择收集,聚合依据选择整个当前项,聚合别名设为
orders_raw
5.2 处理每个客户的订单分组
- 添加数据操作下的选择操作
- 从字段选择上一步分组后的结果数组
- 在映射中:
- 键:
customername,值:选择分组后的customername字段 - 键:
orders,值:添加嵌套的分组依据操作,配置如下:- 从:选择当前项的
orders_raw数组 - 分组依据:
OrderID - 输出别名:
OrderID - 聚合添加两个项:
- 聚合类型获取第一个,聚合依据
Orderdate,别名Orderdate - 聚合类型收集,聚合依据为包含
itemnumber(映射自ItemNumer)和itemprice(映射自ItemPrice)的对象,别名Itemdetails
- 聚合类型获取第一个,聚合依据
- 从:选择当前项的
- 键:
5.3 包装最终结构
- 添加数据操作下的组合操作
- 组合方式选择自定义
- 添加键
orderdetails,值选择上一步选择操作的输出数组
步骤6:保存JSON文件到文件共享
- 添加Azure Files连接器的创建文件操作
- 配置存储账户、文件共享名称
- 文件路径指定保存位置和文件名(例如
output/orders.json) - 文件内容选择上一步组合操作的输出
步骤7:测试工作流
- 点击设计器顶部的测试,选择手动触发(若为手动触发器)
- 检查Azure文件共享中是否生成符合预期的JSON文件
内容的提问来源于stack exchange,提问作者user2440657
相关产品推荐
相关产品推荐

