0

I'm getting a fatal error in the popup when trying to edit Case details (eg Type, Status) by clicking on the grey pencil in the contact summary. This has only happened since I moved the installation to a new server, with a more up-to-date version of MySQL and php (5.5.46 and 5.4.45). I have added all the db user privileges necessary for triggers.

Javascript console shows nothing, but the Civi log shows a fatal error ("required params missing") from CRM/Form/Activity.php, line 108. The full log is below.

That line 108 is the result of this test:

if (!$this->_caseId ||
      (!$this->_activityId && !$this->_activityTypeId)
    ) {
      CRM_Core_Error::fatal('required params missing.');
    }

Any ideas where I could look for a solution? I've spent a few hours on this so far - tried all Coleman's suggestions on this page, but nothing has made any difference at all - exactly the same error message. I even deleted all the cases, case types, activities and activiy types, as well as the corresponding entries in the option value table, but when I created a new case with new case type etc, still exactly the same error.

Thanks for any suggestions!

Jeremy.

Civi 4.6.10, Joomla 3.4.5

Backtrace of error in Civi log:

Dec 02 14:14:43  [info] $backTrace = #0 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/Error.php(364): CRM_Core_Error::backtrace("backTrace", TRUE)
#1 ...path.../administrator/components/com_civicrm/civicrm/CRM/Case/Form/Activity.php(108): CRM_Core_Error::fatal("required params missing.")
#2 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/Form.php(455): CRM_Case_Form_Activity->preProcess()
#3 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/QuickForm/Action/Display.php(94): CRM_Core_Form->buildForm()
#4 ...path.../administrator/components/com_civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Display->perform(Object(CRM_Case_Form_Activity), "display")
#5 ...path.../administrator/components/com_civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Case_Form_Activity), "display")
#6 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/Controller.php(353): HTML_QuickForm_Page->handle("display")
#7 ...path.../administrator/components/com_civicrm/civicrm/CRM/Utils/Wrapper.php(115): CRM_Core_Controller->run()
#8 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/Invoke.php(286): CRM_Utils_Wrapper->run("CRM_Case_Form_Activity", "Case Activity", NULL)
#9 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/Invoke.php(86): CRM_Core_Invoke::runItem((Array:14))
#10 ...path.../administrator/components/com_civicrm/civicrm/CRM/Core/Invoke.php(54): CRM_Core_Invoke::_invoke((Array:3))
#11 ...path.../administrator/components/com_civicrm/civicrm.php(116): CRM_Core_Invoke::invoke((Array:3))
#12 ...path.../administrator/components/com_civicrm/civicrm.php(40): civicrm_invoke()
#13 ...path.../libraries/cms/component/helper.php(392): require_once("...path.../httpdocs/administrator/components/com_civicrm/civicrm...")
#14 ...path.../libraries/cms/component/helper.php(372): JComponentHelper::executeComponent("...path.../administrator/components/com_civicrm/civicrm...")
#15 ...path.../libraries/cms/application/administrator.php(98): JComponentHelper::renderComponent("com_civicrm")
#16 ...path...s/libraries/cms/application/administrator.php(152): JApplicationAdministrator->dispatch()
#17 ...path.../libraries/cms/application/cms.php(252): JApplicationAdministrator->doExecute()
#18 ...path.../administrator/index.php(47): JApplicationCms->execute()
#19 {main}

Result of calling a new tab:

An error has occurred

0 <div id="crm-container" class="crm-container" lang="en" xml:lang="en"> <style type="text/css" media="screen"> @import url(/administrator/components/com_civicrm/civicrm/css/civicrm.css); @import url(/administrator/components/com_civicrm/civicrm/bower_components/jquery-ui/themes/smoothness/jquery-ui.min.css); </style> <div class="messages status no-popup"> <div class="icon red-icon ui-icon-alert"></div> <span class="status-fatal">Sorry but we are not able to provide this at the moment.</span> <div class="crm-section crm-error-message">required params missing.</div> <p><a href="...mydomain.../administrator/" title="Main Menu">Return to home page.</a></p> </div> </div> <script language="JavaScript"> function toggle( element ) { var className = element.className; if ( className == 'crm-accordion-wrapper collapsed crm-fatal-error-details-block') { element.className = 'crm-accordion-wrapper crm-fatal-error-details-block'; } else { element.className = 'crm-accordion-wrapper collapsed crm-fatal-error-details-block'; } } </script>

3 Answers 3

0

If you right-click on the pencil icon and then "copy shortcut" or "link location" or something like that, what does it look like? Specifically is there anything that has an = but with no value after it? e.g. it should look something like this http://joomla.demo.civicrm.org/administrator/?option=com_civicrm&task=civicrm/case/activity&action=add&reset=1&cid=8&caseid=1&selectedChild=activity&atype=16

If that doesn't help then could narrow it down by editing that line 108 you mention. Change the CRM_Core_Error::fatal to something like this:

CRM_Core_Error::fatal("CaseId: {$this->_caseId}, Activity Type: {$this->_activityTypeId}, Activity Id: {$this->_activityId}");

It's unlikely to be case id, and the activity id is going to be blank if it's a new activity, so it might be the activity type. Make sure your database contains the proper values in the "name" column in civicrm_option_value, e.g.

SELECT * FROM civicrm_option_value WHERE name='Change Case Status';

If that comes up empty then the activity type is missing or misconfigured. You said you deleted entries in civicrm_option_value, so it may be hard to tell if it was there before or not.

2
  • Demerit's is right, using edit link you will know which I'd value is missing because all the id values is mention edit link URL
    – Prem Patel
    Commented Dec 3, 2015 at 2:01
  • Thanks Demerit and Prem! That sorted it. I had basically messed up the option_value table by deleting too much, so I had to reconstitute the table by importing the CiviCase rows from a clean version of the table. A bit fiddly, but got there in the end. Thanks for your help!
    – Jern
    Commented Dec 3, 2015 at 18:09
0

Open the link in new tab instead of pop-up. You will get error in detail. Also check the browser console.

6
  • Thanks. I tried those- There was nothing in the browser console, and the error detail in the new tab did not tell me much. It was as follows:, . The result is below
    – Jern
    Commented Dec 2, 2015 at 16:51
  • Can you please cheek after deleting the temporary folder of civicrm.
    – Prem Patel
    Commented Dec 2, 2015 at 16:57
  • Do you mean the folders under templates_c ?
    – Jern
    Commented Dec 2, 2015 at 17:07
  • Yes ... Template_c
    – Prem Patel
    Commented Dec 2, 2015 at 17:12
  • No change - same error. In fact I think that was one of the first things I tried. Is there a way of reinstalling a clean version of CiviCase without disturbing the rest of CiviCRM ?
    – Jern
    Commented Dec 2, 2015 at 17:16
0

I was also stumbling on this issue, but it was happening only 1 or 2 times per day (on a rather active CiviCRM instance). Users were complaining that it happened when they left the tab open for an hour or more. There wasn't any other pattern.

Turns out it was the "cleanup" scheduled job that happens every hour. For now, I changed the job to "daily", but I will try to debug and file a bug report, if necessary (I'll update this post if I do).

Edit: I changed the Scheduled Job parameters to add: session=0.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.