2016-08-23 9 views
1

У меня есть сильно расширенная установка SugarCRM, и вы столкнулись с никогда не замеченной проблемой. Я надеюсь, что кто-то может помочь. В моем модуле «Пациенты» есть подпанель «Назначения», в которой отсутствует поле в списке. Чтобы попытаться устранить эту проблему, я нахожусь в студии под пациентами-> подпанелей и я нажимаю «Назначение», и я получаю эту ошибку:SugarCRM SubPanel «load_subpanel» возвращает false

Notice: Undefined variable: originalSubpanel in /home/developer/WebDev/Dev/html/ics/crm/modules/ModuleBuilder/parsers/views/DeployedSubpanelImplementation.php on line 101 Fatal error: Call to a member function get_list_fields() on null in /home/developer/WebDev/Dev/html/ics/crm/modules/ModuleBuilder/parsers/views/DeployedSubpanelImplementation.php on line 101

Журнал debug mode показывает этот FATAL ERROR:

[FATAL] Failed to load original or custom subpanel data for cases_meetings_1 in modules/Meetings/metadata/subpanels/Appoitments.php

FYI - Случаи = Пациенты, встречи = Назначения

Из моего понимания, это причиняется методом "load_subpanel" возвращающей false. Я разыскал метод «load_subpanel» в SubPanelDefinitions.php и нашел этот код:

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; 

Так что я пошел в «дисплейных модулей и подпанелей» и подпанель в колонке «Display», что означает, что следует есть 'canDisplay', установленный как истинный.

Кто-нибудь сталкивался с этим раньше и имел какую-либо идею, где я могу смотреть дальше?

Спасибо!

ответ

1

После нескольких часов борьбы с этой проблемой я обнаружил, что relationship между случаями и встречами был неправильно построен. Удаление этой связи и ее восстановление решили проблему.