我的要求是通过 Scribe 在平面文件(可以是制表符分隔或 csv)和 CRM 2016 之间建立集成。
由于许多限制,平面文件将是一个完整的提取,而不仅仅是增量。因此,我们需要隔离增量并将它们在线插入到 CRM 2016 中。所有这一切都使用抄写员。这些是我能想到的方法:
使用平面文件作为源,使用目标变量/dblookups 来获取 CRM 中每个字段的值。然后将此值与源字段的值进行比较,并设置步骤以仅在字段已更改时更新记录。[这意味着我们必须处理所有记录]。这将是每晚运行一次的定时集成。
我们可以使用 scribe 查询发布者从源平面文件中获取所有未处理的行;每行作为 xml 消息并使用模式文件作为源,每个 msg 都将被处理。从这里开始,它类似于(1)。作为 dts 的最后一步,源平面文件将被更新,并且将在记录中设置一个值以显示其已处理。[再次必须处理所有记录,这将比(1)快一点,我相信]
有 2 个平面文件实例。在同一个文件夹中说 OldFile 和 NewFile。我们可以使用这些创建 2 个 txt 数据对象。在 scribe 发布者中,这两个文件的行为类似于这些数据对象中的任何一个中的虚拟表。从这里我们可以运行一个 sql 查询来返回增量。(不确定我们是否可以在这里使用加入)。然后可以类似于(2)处理这些增量记录,除了这次我们已经有了增量,因此要处理的记录要少得多。所以我们可以直接插入/更新(甚至做另一个级别的比较,这次是 CRM 字段),然后插入/更新。
大家觉得怎样更好呢?我也对新想法持开放态度。