Issues after upgrading because of existing entity Action

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • leon
    Junior Member
    • May 2019
    • 7

    Issues after upgrading because of existing entity Action

    Hi team!

    Our EspoCRM environment contains an entity with the name Action (type Event).
    After upgrade to 7.0.1 we get an error when saving a record for this Action entity.

    Browser: Error 404: Not found
    Log file:
    [2021-10-05 18:56:55] ERROR: (404) Action POST 'process' does not exist in controller 'Action'.; POST /Action; line: 87, file: /wwwroot/application/Espo/Core/Api/ActionProcessor.php [] []


    On the demo environment demo.eu.espocrm.com i tried to create a new entity with the name Action, type Event but this fails with the following error: Error 409: Entity name 'Action' is not allowed. Controller already exists.

    Our Action entity is very deep integrated into our configuration. Is there a way to resolve this?

    Thanks,

    Leon

  • esforim
    Active Community Member
    • Jan 2020
    • 2204

    #2
    Look like you might have blunder using this name and since it become a reserve name (starting in v7 I assume) it will be bad if you try to keep the Action entity name while removing/changing core-code.

    I think it would be a wiser idea to rename the Action entity to something else, then use the Label Manager/Translation to call it "Action".

    As for how to change entity name, I'm not quite sure.

    This post show how to copy one entity to another, basically a "backup" or duplicate solution: https://www.eblasoft.com.tr/post/clo...ity-in-espocrm
    Last edited by esforim; 10-06-2021, 03:01 AM.

    Comment

    • yuri
      Member
      • Mar 2014
      • 8442

      #3
      I'd rename your entity name. It's not that hard.

      1. Rename all files named 'Action.*' (Action.json, Action.php) in the custom dir.
      2. Replace all strings 'Action' in file contents in the custom dir. Use command "grep -R 'Action' custom" to find.
      3. Rename database table 'action'.
      4. Replace 'Action' column values in database. It can be parent_type, entity_type fields. Use search in database.

      If you have external APIs calling "/api/v1/Action/..." that you can't change, that's more difficult. But solvable I believe.
      Last edited by yuri; 10-06-2021, 06:04 AM.
      If you find EspoCRM good, we would greatly appreciate if you could give the project a star on GitHub. We believe our work truly deserves more recognition. Thanks.

      Comment

      Working...