在当今的商业环境中,不同系统间的数据集成变得越来越重要。企业资源规划(ERP)系统、销售点(POS)系统、数据仓库等都需要能够相互通信。客户关系管理(CRM)系统在这些系统中越来越普遍,而市场上最大的CRM系统之一就是Salesforce。不幸的是,Salesforce的规模和功能范围可能会让开发者感到畏惧,如果不熟悉连接方式,甚至可能会感到困惑。幸运的是,有第三方驱动程序,如CData提供的SSIS驱动程序,可以简化这一任务,让开发者专注于业务逻辑而非Salesforce的连接和API。
本文将探讨如何使用SSIS和CData的SSIS驱动程序来集成Salesforce数据。
本文假设已经对SSIS有基本的了解,不会详细介绍SSIS本身的设置步骤。将从本地数据库表中集成账户(Account)数据到Salesforce,并已经设置了SSIS包以读取账户数据作为第一步。
在示例中,将使用以下账户表:
在这个表中,Name字段是账户的名称,Id是数据库生成的Id。
为了连接并与Salesforce交互,需要安装一个驱动程序。将使用CDataSSIS-Salesforce驱动程序来完成这项任务,可以从他们的网站下载。下载后,只需按照提示进行安装,并在安装后重启Visual Studio(如果之前没有关闭它)。
首先,需要能够对Salesforce实例进行身份验证,这意味着需要Salesforce的凭据。
注意:如果只是出于兴趣跟随本文,可以从注册一个免费的Salesforce组织。免费开发者组织的数据限制较低,但对于目的来说,与大多数其他Salesforce组织相同。
在继续之前,需要一些信息:
这与通过浏览器登录Salesforce时使用的用户名和密码相同。
将需要与之通信的大多数组织将是以下三种类型之一:生产、沙箱或开发人员。对于目的,只需要知道否在沙箱组织中。通常应该能够通过询问Salesforce管理员来了解这一点,但也可以在设置菜单中找到这些信息:
安全令牌是一串与用户密码关联的随机字母、数字和符号。如果组织安全设置没有将IP地址列入白名单,那么在通过API访问Salesforce时就需要这个令牌。通常这个值应该由Salesforce管理员提供,但如果不知道(或者有一个新的用户),可以重置它。
警告:重置安全令牌会重置所有使用该账户的应用程序的安全令牌。如果有其他使用这个账户的集成,请在重置安全令牌之前更新所有位置。
根据组织版本,有两个地方可以重置安全令牌。
无论需要采取哪条路线,一旦点击确认按钮,将收到Salesforce发送的包含安全令牌的电子邮件。
现在已经获得了所需的信息,可以在SSIS中创建一个新的连接。在“连接管理器”部分,添加一个新的CDATA_SALESFORCE类型的连接:
在接下来的屏幕上,用刚刚收集的信息填写认证部分。如果不需要安全令牌,请将该字段留空。
“使用沙箱”字段是使用组织类型的地方:如果有一个开发人员或生产组织,请将此设置为false,如果有一个沙箱组织,请将此设置为true。
保留所有其他设置为默认值,然后点击确定。
现在已经建立了与Salesforce的连接,可以开始将数据从数据库表映射到Salesforce中的账户对象。
首先,需要添加一个新的CData Salesforce目标,一旦建立了目标,它遵循大多数数据映射遵循的相同约定。可以从输入列表中选择,并将其映射到输出列表中的字段。