AzureDataFactory 实体间的关联如何处理(Lookup)

        使用ADF从外部数据源(例如Sql Server)往D365推数时,实体间的Lookup一定是要做的,本篇以我项目中的设备为例,设备表中有产品的lookup字段

设备表结构如下

msdyn_customerasset

表名
ID 设备表guid
SerialNumber设备序列号
ProductCode设备对应的产品编码
msdyn_product产品id(查找字段)

产品表结构如下

product

表名
ProductId产品guid

sap_number

产品编码

Pipeline中的关键映射如下,设备表中的产品code,首先同步copy设备表(我这里假设前提product表已同步过,如果没有同步则可以在CopDevice后再加一个同步产品的Activity)

第二步即在第二个Activity中通过fetchxml查询设备表,并通过link-entity product表把productid查出来

贴出示例fetchxml, 通过product中的vg_sap_number和msdyn_customerasset中的vg_productcode, 查出了productid

<fetch>
    <entity name="msdyn_customerasset" >
        <attribute name="msdyn_name" />
        <attribute name="vg_productcode" />
        <filter>
            <condition attribute="vg_productcode" operator="not-null" />
            <condition attribute="msdyn_product" operator="null" />
        </filter>
        <link-entity name="product" from="vg_sap_number" to="vg_productcode" link-type="inner" alias="pro" >
            <attribute name="productid" alias="productid" />
        </link-entity>
    </entity>
</fetch>

最终将procutid更新到设备表的msdyn_product即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值