从外部REST API提取数据并在列表视图和详细信息视图(自定义模块)中显示

时间:2019-08-26 12:13:07

标签: php sugarcrm suitecrm

我需要使用自定义REST API从外部服务器获取数据,并在列表视图和详细信息视图(自定义模块)中显示数据。

我对Suitecrm完全陌生。需要知道的是,当我单击模块名称时,如何提取数据以及在何处写入操作,要创建的文件等等。

要使用的是连接器还是端点?

  

版本控制      

SuiteCrm版本7.10.7

     

Sugar版本6.5.25(内部版本344)

我在互联网上尝试过,但未找到具体示例

1 个答案:

答案 0 :(得分:1)

您正在寻找的被称为逻辑挂钩。

这些钩子存在于每个模块内部,将在不同情况下触发。

对于列表视图/详细信息视图,您需要process_record钩子。

转到创建文件custom/Extension/modules/Accounts/Ext/LogicHooks/ListViewHighlight.php

如果使用的是自定义模块,则将模块的名称更改为Accounts,并记住此功能是针对列表中的每个记录执行的。

内容将是:

<?php
$hook_array['process_record'][] = Array(1, 'Highlight account industry', 'custom/modules/Accounts/HighlightIndustryLogicHook.php','HighlightIndustryLogicHook', 'highlightIndustry');

这是用于设置挂钩的,以下文件应包含已执行的代码custom/modules/Accounts/HighlightIndustryLogicHook.php

<?php
class HighlightIndustryLogicHook{

    public function highlightIndustry(SugarBean $bean, $event, $arguments){
        $colour = substr(md5($bean->industry),0,6);
        $bean->industry = "<div style='border: solid 5px #$colour;'>".$bean->industry."</div>";
    }
}

在此示例中,此挂钩将覆盖行业价值并添加所需的样式。

现在,如果您不想使用SuiteCRM列表视图,假设您想要一个完全自定义的视图,那么您应该阅读本指南。

https://docs.suitecrm.com/developer/views/#_custom_module