全部建议
>
建议详情
- 预审中
- 预审通过
- 3 未采纳
【功能建议】linkx的入图任务,允许通过写SQL语句的方式执行入图任务 未采纳 编辑 删除
- 工业软件
- 工业数字模型驱动引擎iDME
场景描述:
产品:数据主线引擎
版本:hcs_8.6.0
问题:当前linkx的入图任务功能,只允许通过数据库字段映射的方式来配置入图任务;实际业务中无法简单通过映射字段方式来获取数据
建议方案:允许通过写SQL语句的方式,来创建入图任务。包括数据实体和关系实体。
举例:
场景1:假设有数据实体A和数据实体B,二者关联关系的输出结果在实际业务上并不存在第三张表保存;允许通过关联二者的字段来获取第三张表的数据,作为关系实体“A_B“”的入图集成数据的结果。
具体SQL:
CREATE TABLE `mbm_mes_wo` (
`id` VARCHAR(240) NOT NULL COMMENT '主键' COLLATE 'utf8mb4_bin',
`no` VARCHAR(500) NULL DEFAULT NULL COMMENT '工单号' COLLATE 'utf8mb4_bin',
`part_id` VARCHAR(64) NULL DEFAULT NULL COMMENT '主产品' COLLATE 'utf8mb4_bin',
PRIMARY KEY (`id`) USING BTREE
)
COMMENT='工单表'
COLLATE='utf8mb4_bin'
ENGINE=InnoDB;
CREATE TABLE `mbm_mdm_part_version` (
`id` VARCHAR(240) NOT NULL COMMENT '主键' COLLATE 'utf8mb4_bin',
`is_default` VARCHAR(1) NULL DEFAULT NULL COMMENT '是否默认版本' COLLATE 'utf8mb4_bin',
`version` VARCHAR(100) NULL DEFAULT NULL COMMENT '修订版本' COLLATE 'utf8mb4_bin',
PRIMARY KEY (`id`) USING BTREE
)
COMMENT='Part版本'
COLLATE='utf8mb4_bin'
ENGINE=InnoDB
;
SELECT
UUID() AS id,
wo.id AS wid,
pv.id AS pid
FROM mbm_mes_wo wo
LEFT JOIN mbm_mdm_part_version pv
ON wo.part_id = pv.id;

场景2:假设有数据实体A和数据实体B,以及二者关联的关系实体“A_B”;允许通过实体A和实体B的数据库字段做条件判断和数据计算,得到关系实体“A_B”中的某个属性的计算结果,如成交数量、成交率。
具体SQL:
SELECT
output.report_qty AS report_qty,
output.wms_receipt_qty AS wms_receipt_qty
FROM mbm_mes_wo wo -- 工单表
LEFT JOIN (
SELECT
wo_id,
SUM(CASE WHEN output_cate = 1 THEN report_qty WHEN output_cate = 2 THEN -report_qty ELSE 0 END) AS report_qty,
SUM(wms_receipt_qty) AS wms_receipt_qty
FROM mbm_mes_wo_output
GROUP BY wo_id
) ut -- 工单产出
ON wo.id = ut.wo_id
yd_248864743
发布于 2026-07-21 16:05:37
2026-07-21
52 4
0%
0%
取消
发表
0/1000
+ 插入图片0/4
仅支持JPG、JPEG、PNG、GIF,数量不超过4张且每张大小不超过2MB
0%
0%
删除建议
全部评论(4)
评论(4)
-- 假设有数据实体A和数据实体B,以及二者关联的关系实体“A_B”;允许通过实体A和实体B的数据库字段做条件判断和数据计算,
-- 得到关系实体“A_B”中的某个属性的计算结果,如成交数量、成交率。
SELECT
UUID() AS uuid,
wo.id,
ut.wo_id,
ut.report_qty AS report_qty,
ut.wms_receipt_qty AS wms_receipt_qty,
CURRENT_TIMESTAMP as time1
FROM
mbm_mes_wo wo
LEFT JOIN (
SELECT
wo_id,
SUM(CASE WHEN output_cate = 1 THEN report_qty
WHEN output_cate = 2 THEN - report_qty
ELSE 0 END) AS report_qty,
SUM(wms_receipt_qty) AS wms_receipt_qty
FROM
mbm_mes_wo_output
GROUP BY
wo_id
) ut
ON wo.id = ut.wo_id;
-- 场景1:假设有数据实体A和数据实体B,二者关联关系的输出结果在实际业务上并不存在第三张表保存;
-- 允许通过关联二者的字段来获取第三张表的数据,作为关系实体“A_B“”的入图集成数据的结果。
CREATE TABLE mbm_mes_wo (
id VARCHAR (240) NOT NULL COMMENT '主键' COLLATE 'utf8mb4_bin',
NO VARCHAR (500) NULL DEFAULT NULL COMMENT '工单号' COLLATE 'utf8mb4_bin',
part_id VARCHAR (64) NULL DEFAULT NULL COMMENT '主产品' COLLATE 'utf8mb4_bin',
PRIMARY KEY (id) USING BTREE
) COMMENT = '工单表' COLLATE = 'utf8mb4_bin' ENGINE = InnoDB;
CREATE TABLE mbm_mdm_part_version (
id VARCHAR (240) NOT NULL COMMENT '主键' COLLATE 'utf8mb4_bin',
is_default VARCHAR (1) NULL DEFAULT NULL COMMENT '是否默认版本' COLLATE 'utf8mb4_bin',
version VARCHAR (100) NULL DEFAULT NULL COMMENT '修订版本' COLLATE 'utf8mb4_bin',
PRIMARY KEY (id) USING BTREE
) COMMENT = 'Part版本' COLLATE = 'utf8mb4_bin' ENGINE = InnoDB;
-- 自定义SQL,CURRENT_TIMESTAMP需由源端或目标端物理表的时间字段代替
SELECT
UUID() AS id,
wo.id AS wid,
pv.id AS pid,
CURRENT_TIMESTAMP
FROM
mbm_mes_wo wo
LEFT JOIN mbm_mdm_part_version pv ON wo.part_id = pv.id;
您好,关于您提交的建议产品和研发团队进行了评估,配置数据库映射时支持物理表或自定义SQL,但是要求有增量字段(可在自定义SQL中返回源端或目标端物理表的创建时间或更新时间),但需求中的物理表均无时间,这种情况无法支持入图属于产品使用约束,综合考虑整体需求与产品规划,很抱歉未能采纳,还请您谅解。
对您造成困扰深表歉意!希望以上可以解决您的疑虑,感谢您的反馈,若在使用还有其它建议,可在云声平台继续反馈,我们收到后会尽快处理。感谢您对华为云的支持!
非常感谢您的反馈,您的建议和诉求已经收到,并已提交至相关产品团队进行核查评估,评估完成后对于建议是否采纳会尽快给您答复,也请您持续关注云声平台,了解反馈建议处理进展,感谢您对华为云的支持!