当通过 SugarCRM 中的 API 调用添加潜在客户时,'after_save'钩子是否触发?



我正在通过外部API调用将我的潜在客户添加到SugarCRM。正确添加潜在客户。我需要围绕潜在客户进行额外的数据处理,并在添加潜在客户后通过 API 调用将其传递给第三方。我看到了after_save钩子 - 该钩子是否仅在用户在 SugarCRM 屏幕上并保存时才触发,并且在通过 API 添加潜在客户时不会调用?

如果我通过 API 添加潜在客户时after_save钩子对我不起作用,那么通过扩展代码添加代码时我会使用什么钩子?

很好的问题。

经过一些测试,当我通过外部 API 将新的 Lead 传递到 Sugar 中时,after_save钩子实际上被触发了。因此,您可以使用此钩子,而不必担心它仅在用户在桌面模块上实际在 GUI 中保存记录时才触发。

每当 Bean(记录(保存在服务器上时,都会触发after_save挂钩,并且应该适用于您的方案。

调用是否来自 API 甚至来自 cli/调度程序并不重要。
顺便说一下,Sugar 7+ 的浏览器应用程序也在后台使用 API。


但是,如果您确实希望仅针对某些客户端自定义代码,则可以使用platform参数(在客户端身份验证期间指定(来区分它们。 在旧版本的 Sugar 中,您不必预先定义/"解锁"平台 - 允许客户端指定他们想要的任何内容。在当前版本中,您必须通过代码或管理添加自定义平台

默认回退平台始终为base
还有其他一些预先存在的平台,例如mobile用于移动应用程序/版本,opi用于Outlook插件等。

对于在custom/clients文件夹中完成的自定义,通常只需将文件放入custom/clients/<yourplatform>/(而不是custom/clients/base/(,使用相同的子文件夹层次结构,以便仅为特定客户端启用它们。例如,这可以用于扩展/覆盖/包装 api 端点。

最新更新