从 Zoho CRM 获取记录

概述

为了更加高效的处理业务,Zoho Creator 和 Zoho CRM 已集成在一起。我们在 Zoho Creator 中开发了任务,以便在 Zoho CRM 中执行自动操作,代替手动执行。例如,您可从 Zoho CRM 提取记录并将它们填入 Zoho Creator 表单字段以采取进一步行动。记录可同时从 Zoho CRM 的多个支持的模块中提取。这可使用 Zoho Creator 中的 zoho.crm.getRecords() 任务来实现。

用例场景

比如说我们需要在 Zoho Creator 表单中填入已经存储在 Zoho CRM 的联系人模块中的某些客户的姓氏。在这种情况下,记录可从联系人模块提取,并提取姓氏参数以填入表单字段。有关如何执行此任务的更多详情在下面说明。

语法

<response>=zoho.crm.getRecords(<module_name>, [<from_index>],[<to_index>]);

其中,

参数  描述

<response> 

是 Zoho CRM 作为列表返回的响应。

<module_name> 

是将从其中提取记录的 CRM 模块的名称,它是字符串数据类型。下面是支持的模块列表。

线索

商机

产品

联系人

市场推广

供货商

客户

服务支持

报价

销售订单

采购订单

发货单

<from_index>

(可选)

是需要提取的记录的开始索引。它数字数据类型。

<to_index>

  (可选)

是需要提取的记录的末尾索引数字数据类型。

注:

  • 如果只提及一个索引,它将被视为 fromIndex。在本例中,将提取 20 个记录,从指定的索引开始。
  • 如果两个索引都未提及,则将提取最后添加的 20 个记录。
  • 在任何给定时间,最多可提取 200 个记录。
  • 索引编号从 1 开始。

示例 1:从联系人中提取客户姓名

假设我们有一个 Zoho Creator 表单,它使用客户名称字段来存储客户名称。通过在所需的表单动作块中添加下面所示的脚本,可从 Zoho CRM 联系人模块提取记录。

contactslist=zoho.crm.getRecords("Contacts");

然后可获取每位已提取联系人的“客户名称”并使用 ui.add() 任务填入表单字段。这可通过将以下脚本添加到所需的表单动作块中来实现:

for each ContactRecord in contactslist{Customer_Name:ui.add(ContactRecord.get("Last Name"));}

其中,

contactslist
是 Zoho CRM 作为映射返回的响应。它保存从 Zoho CRM 的联系人模块
提取的记录。在此处查看示例响应。
"Contacts"
指的是 Zoho CRM 中的联系人模块,它为字符串数据类型。
ContactRecord
表示从 Zoho CRM 的联系人模块提取的每个唯一记录。
Customer_Name
是使用客户的姓名填入的表单字段。

示例 2:提取发票及其产品

让我们假定我们的 Zoho Creator 表单包含以下字段:

  • 主题(单行字段类型)
  • 发票日期(日期字段类型)
  • 发票编号(数字字段类型)
  • 产品名称(单行字段类型)
  • 数量(数字字段类型)
  • 单价(货币字段类型)

若要从发票模块提取记录,请在所需的表单动作块中添加以下脚本:

InvoiceList=zoho.crm.getRecords("Invoices");

其中,

InvoiceList
是从 Zoho CRM 返回的映射数据类型的响应。
"Invoices"
指的是 Zoho CRM 中的发票模块,它是字符串数据类型。

提取记录之后,它们可以迭代以便从每个记录提取字段值,然后分配到相应的表单字段。有关此示例的更多详情,请单击此处

示例 3:从自定义模块提取数据

假设我们在 Zoho Creator 表单中有一个电子邮件字段。若要从 Zoho CRM 自定义模块为它提取电子邮件地址值,您可以先从自定义模块提取所有记录。然后可迭代提取的记录,正如示例 1 中说明的那样,以便提取每个记录的电子邮件值。若要从自定义模块提取记录,请在所需的表单动作块中添加以下脚本:

CustomList=zoho.crm.getRecords("CustomModule3");

其中,

CustomList
是 Zoho CRM 作为映射返回的响应。它保存从 Zoho
CRM 的自定义模块提取的记录。在此处查看示例响应。
"CustomModule3"
是需要从中提取记录的 Zoho CRM 自定义模块的标签名称,它是字符串
数据类型。

注:自定义模块默认命名为 CustomModuleX(其中 X 是数字)。在语法中指定相同的自定义模块名称格式。Zoho CRM 自定义模块的 URL 可用于检索自定义模块标签名称。

响应格式

返回的响应是如下格式:

{  
"Invoice Owner":"Creator Support Test",
"Subject":"USA Shipping Corp",
"Invoice Date":"2016-03-17",
"Account Name":"Creator Help Doc",
"Tax":"0",
"INVOICEID":"1560679000000414015",
"Invoice Number":"1560679000000414017",
"Grand Total":"77",
"ACCOUNTID":"1560679000000413019",
"Created By":"Creator Support Test",
"product":"[{Product Name=Books, Quantity=3.0, List Price=23.0, Unit Price=23.0, Total After Discount=69.0, Quantity in Stock=-3.0, Tax=0.0, Net Total=69.0, Discount=0.0, Product Id=1560679000000414001, Total=69.0}, {Product Name=Stationary Items, Quantity=4.0, List Price=2.0, Unit Price=2.0, Total After Discount=8.0, Quantity in Stock=-4.0, Tax=0.0, Net Total=8.0, Discount=0.0, Product Id=1560679000000414009, Total=8.0}]",
"MODIFIEDBY":"1560679000000084003",
"Status":"Created",
"Created Time":"2016-03-17 17:41:57",
"Modified By":"Creator Support Test",
"SMOWNERID":"1560679000000084003",
"Discount":"0",
"SMCREATORID":"1560679000000084003",
"Sub Total":"77",
"Adjustment":"0",
"Modified Time":"2016-03-17 17:41:57"
}

限制

CRM 任务仅可在灵活和无限制计划下的帐户中执行。如果使用的是免费计划,请升级以使用 CRM 任务。有关更多详情,请向下滚动至价格页面上的集成和 Web 数据

脚本构建器

您也可以使用脚本构建器来定义 zoho.crm.getRecords() 任务。导航至您的应用程序的工作流并拖放 Deluge 任务 > 其它下面的 Call Function。选择集成任务并填写必要的信息。

相关链接

  • 若要提取指定的键所映射到的字符串值,请使用 get()
  • 若要从提取的记录中获取值,请使用 getJSON()
  • 若要将 json 字符串转换为列表格式,请使用 toJSONList()