我是 vtigercrm 的新手。我需要一个自定义操作来使用 webservice从vtiger_tab表中获取所有模块。
如何为 Web 服务 Vtiger CRM 创建自定义操作?
要定义一个新的 web 服务自定义方法,您必须操作 2 个表 vtiger_ws_operation 和 vtiger_ws_operation_parameters 首先通过执行如下查询来声明方法名称和处理程序
INSERT INTO `vtiger_ws_operation` ( `name`, `handler_path`, `handler_method`, `type`, `prelogin`) VALUES ('my_webservice_method', 'include/Webservices/MyWebserviceMethod.php', 'vtws_my_webservice_method’, 'GET', 0);
假设插入的记录的字段 operationid 等于 34,现在您必须使用如下查询向 vtiger_ws_operation_parameters 添加参数
INSERT INTO `vtiger_ws_operation_parameters` (`operationid`, `name`, `type`, `sequence`) VALUES (34, 'id', 'String', 1);
并继续为最后一个字段增加值
INSERT INTO `vtiger_ws_operation_parameters` (`operationid`, `name`, `type`, `sequence`) VALUES (34, ‘param_99’, 'String', 99);
由于第一次查询,现在您必须在文件夹 include/Webservices/ 中创建一个名为 MyWebserviceMethod.php 的文件,在此文件中将有一个名为 vtws_my_webservice_method 的函数,如下所示
<?php
function vtws_my_webservice_method($id, $user){
global $log,$adb;
…..
return $something;
}?>
默认情况下,Vtiger 提供了一个操作“ listtypes ”来根据 API 中传递的用户获取 vtiger 中可用模块的列表。如果您想创建自定义 API,那么您当然可以创建,但您要注意共享模块的权限,例如哪个用户在每个模块中拥有什么访问权限。
您可以参考此链接来创建自定义 Web 服务。但这也没有完整的信息。如果我能为您获得更清晰的文件,我将分享。