【发布时间】:2016-08-23 10:26:13
【问题描述】:
我安装了大量扩展的 SugarCRM,但遇到了前所未有的问题。我希望有人能帮帮忙。 在我的“患者”模块中,有一个“约会”子面板在列表视图中缺少一个字段。为了尝试解决此问题,我在 Studio 中的 Patients->Subpanels 下单击“约会”并收到此错误:
注意:未定义变量:/home/developer/WebDev/Dev/html/ics/crm/modules/ModuleBuilder/parsers/views/DeployedSubpanelImplementation.php 中的 originalSubpanel 第 101 行致命错误:调用成员函数 get_list_fields()在第 101 行的 /home/developer/WebDev/Dev/html/ics/crm/modules/ModuleBuilder/parsers/views/DeployedSubpanelImplementation.php 中为 null
debug mode 日志显示此致命错误:
[致命] 无法为 modules/Meetings/metadata/subpanels/Appoitments.php 中的 case_meetings_1 加载原始或自定义子面板数据
仅供参考 - 病例 = 患者,会议 = 约会
据我了解,这是由“load_subpanel”方法返回false 引起的。我在 SubPanelDefinitions.php 中追踪了“load_subpanel”方法,发现了这段代码:
function load_subpanel($name, $reload = false, $original_only = false) {
if (!is_dir('modules/' . $this->layout_defs ['subpanel_setup'][strtolower($name)] ['module'])) {
return false;
}
$subpanel = new aSubPanel($name, $this->layout_defs ['subpanel_setup'] [strtolower($name)], $this->_focus, $reload, $original_only);
// only return the subpanel object if we can display it.
if ($subpanel->canDisplay == true) {
return $subpanel;
}
// by default return false so we don't show anything if it's not required.
return false;
所以我进入了“显示模块和子面板”,该子面板位于“显示”列中,这意味着它应该将“canDisplay”设置为 true。
以前有没有人遇到过这种情况并且知道我接下来可以在哪里看?
谢谢!
【问题讨论】: