
# 创建生产工单同步流
步骤1 集成工作台-我的流-创建流
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443981968.png)
步骤2 连接器中选择"计划"，触发时间为"重复执行"
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443502140.png)
步骤3 设置首次运行时间，重复周期为每分钟一次。
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493742569.png)
步骤4： 添加执行动作，选择连接器为创建的B1连接器，执行动作为"查询生产工单"
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530527869.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530528971.png)
筛选出状态为"已下发"或者"已取消的"、状态为未同步的生产工单：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443662064.png)
步骤5 添加执行动作，选择连接器为"控制"，执行动作为"遍历集合元素"；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493462077.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002498849846.png)
步骤6 遍历的集合内容为，查询生产工单结果中的"value"字段，通过系统内置函数jsonQuery获取；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443981972.png)
步骤7 新增执行动作，选择连接器为"变量"，执行动作为"初始化变量"；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443502144.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493742573.png)
新建workOrderCode变量存储工单编号
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493861985.png)
步骤8 添加执行动作，选择创建的MES连接器，执行动作选"查询code对应id"；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530530359.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443662068.png)
查询参数：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493462081.png)
步骤9 新增执行动作，连接选择为"控制"，执行动作为"条件判断"
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443822008.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443981976.png)
判断MES中是否存在对应工单，条件如下；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443502148.png)
步骤10 如果步骤9判断结果MES中不存在该工单，在判断条件为否的分支添加"创建生产工单"执行动作；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002498690742.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493861989.png)
填入创建工单所需参数：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493981977.png)
步骤11 添加执行动作类型为条件判断，判断MES创建生产工单是否成功，判断条件；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443662072.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530600263.png)
如果创建成功，同步B1工单状态为已同步，即添加执行动作：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530531141.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530531351.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443502152.png)
步骤12 如果步骤9中MES已经存在生产工单，在判断工单是否存在的"是"分支添加流程。
添加变量存储工单ID：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493742581.png)
步骤13 添加执行动作查询MES工单详情获取工单状态
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493861993.png)
步骤14 添加判断流程，判断MES中工单是否已经关闭：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493981981.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443662076.png)
步骤15 如果步骤14工单已关闭，更新B1工单状态为已同步：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530531721.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002498852208.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443981984.png)
步骤16 如果步骤14判断MES未关闭，判断b1是否已经取消该工单，如果已取消，则同步在MES关闭工单，并更新B1工单状态为已同步；
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530452599.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001493742585.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530452793.png)
步骤17 如果步骤16判断b1中工单未取消，则同步修改MES工单，若修改成功，将工单状态修改为已同步：
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002498693106.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443662080.png)
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000002530453195.png)
步骤18 确认无误后保存，集成工作台-我的流-找到刚创建的流-开启流
![](https://support.huaweicloud.com/bestpractice-sparkpack/zh-cn_image_0000001443822020.png)
