如何通过PHP脚本(Vtlib函数)解除Vtiger7自定义模块1:M关联
Vtiger 7 移除自定义模块与Leads的1:M关联操作方案
你之前通过setRelatedList方法创建的模块关联,可以直接调用Vtlib内置的unsetRelatedList方法移除,无需手动修改数据库表内容。
前置注意事项
- 脚本必须放置在Vtiger 7站点根目录下运行,和你之前创建关联的脚本路径保持一致
- 运行脚本前请备份站点数据库,避免参数填写错误导致关联数据异常
- 脚本内的自定义模块名、关联标签参数必须和你创建关联时填写的内容完全一致,否则会移除失败
解除关联PHP脚本
<?php include_once('vtlib/Vtiger/Module.php'); // 此处替换为你自己的自定义模块名称,和创建关联时的参数保持一致 $moduleInstance = Vtiger_Module::getInstance('你的自定义模块名'); // 关联目标模块为Leads,无需修改 $leadsModule = Vtiger_Module::getInstance('Leads'); // 关联标签必须和创建时填写的RelLeads完全一致 $relationLabel = 'RelLeads'; // 调用Vtlib原生方法移除1:M关联 $moduleInstance->unsetRelatedList($leadsModule, $relationLabel); echo "自定义模块与Leads模块的1:M关联已移除完成"; ?>
生效验证步骤
- 脚本运行无报错后,登录CRM后台清理系统缓存
- 进入自定义模块的任意记录详情页,检查原有的Leads关联标签页是否已消失
- 进入Leads模块的任意记录详情页,确认反向关联入口已同步移除
内容的提问来源于stack exchange,提问作者Santosh Kumar
相关产品推荐
相关产品推荐

