【问题标题】:How can I change a country name into an ISO code in Talend?如何在 Talend 中将国家名称更改为 ISO 代码?
【发布时间】:2014-08-06 07:39:59
【问题描述】:

我需要从 excel 工作表中获取信息并将其输入到 Salesforce 中的自定义对象中。 tFileList -> tFileInputExcel -> tMap -> tSalesforceOutput

到目前为止,一切正常,但唯一的问题是 Salesforce 需要国家 ISO 代码而不是完整的国家名称。如何将国家/地区的全名更改为 ISO 代码并将其传递给 Salesforce?

我需要 Excel 表中的值不改变。所以在 Talend 中,我需要以某种方式将 ISO 代码传递给 Salesforce 组件,而不影响原始工作表。

示例输入:

Name  /  Country  /  Phone
"Bob" / "Germany" / "99999"

输出到 Salesforce 的示例:

"Bob" / "DE" / "99999"

【问题讨论】:

    标签: excel salesforce talend


    【解决方案1】:

    这非常简单,但您需要一个国家名称与 ISO 代码的列表,例如来自 Wikipedia 的 this one

    以某种可以读入 Talend 的格式获取该列表,例如将其放入分隔文件、Excel 电子表格或数据库表中。

    从那里您只需通过加入国家名称来加入 tMap 组件中的数据,然后确保在您的 tSalesforceOutput 流程中使用 ISO 代码。

    一个简单的示例作业可能如下所示:

    我们的 Excel 数据如下所示:

    注意第五行。 Great British 不是 ISO 国家名称(而是英国)。

    然后,我们将 Wikipedia 中的 ISO2 代码列表放入 Excel 中的 CSV:

    确保正确配置您的 tFileInputDelimited 以适应 CSV。您需要默认的转义和引用选项以允许在数据中使用逗号(例如“Palestine, state of”)。

    然后tMap中的join是这样完成的:

    在这里,我们将国家名称字段上的数据进行内部连接,并将成功的连接输出到 Salesforce 流。我们还采用替代流程来获取没有 ISO2 国家/地区名称的行的任何内部连接拒绝。这可以输出到另一个 Excel 文件或其他地方进行手动更正或帮助开发一些标准化例程,这些例程需要在将来加入之前应用于 Excel 数据(类似于 tReplace 寻找“英国”并替换它与“英国”)。

    我已将这些流输出到 2 个 tLogRow 组件以将其扔到标准输出,格式化为表格:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      • 1970-01-01
      • 2015-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多