What are your "top 10" developer how to questions?

I am restarting my developer newsletter, blog. What would you like to know how to do? Once, I have some content, I'll post how to subscribe.

  • Hi ,

    I am aware of that but I was talking about the _cstm table.

    It's easier for us and for any future SQL query (for instance with a BI solution).

    This is why we'd rather create sugarfield_xxx fields ; this is the same way about how to customize the "adress field layout" (edit and display) for all the application.

    Fred

  • Haha my bad. Muscle memory

    That's how we refer to (M)odule (L)oadable (P)ackage

    Sorry again for the confusion

    --

    Enrico Simonetti

    Sugar veteran (from 2007)

    www.naonis.tech


    Feel free to reach out for consulting regarding:

    • API Integration and Automation Services
    • Sugar Architecture
    • Sugar Performance Optimisation
    • Sugar Consulting, Best Practices and Technical Training
    • AWS and Sugar Technical Help
    • CTO-as-a-service
    • Solutions-as-a-service
    • and more!

    All active SugarCRM certifications

    Actively working remotely with customers based in APAC and in the United States

  • Hi

    One question would be how to configure / use external cache like redis. It is highly recommended within the sugar documentation but there is nothing clear on how to use it and the benefits (not only for session caching for example).

    Thanks in advance :-)

    Enes

  • Hi 

    Here is a great blog post from  https://gadoma.com/how-to-improve-sugarcrm-performance-in-2019/, take a look at section 6. 

    Redis does a lot more than store the session information. Redis will improve the overall speed of the application by caching all of the key values. Internally, Sugar has a bunch of ways that it caches data. It may cache to "disk", "DB", or a cache server. The cache server will improve the overall speed.

  • Hi

    Thanks for the article, I saw it yesterday. I tried to configure it with the following parameters but the cache is still generated in cache folder, is it correct this way ? 

    $sugar_config['external_cache_force_backend'] = 'redis';
    $sugar_config['cache']['backend'] = 'Sugarcrm\Sugarcrm\Cache\Backend\Redis';
    'external_cache' =>
      array (
        'memcache' =>
        array (
          'host' => 'localhost',
          'port' => '11211',
        ),
        'redis'  =>
        array (
          'host' => '127.0.0.1',
          'port' => '6379',
        ),
      ),
      'external_cache_disabled' => false,
      'external_cache_disabled_apc' => true,
      'external_cache_disabled_memcache' => true,
      'external_cache_disabled_memcached' => true,
      'external_cache_disabled_redis' => false,
      'external_cache_disabled_smash' => true,
      'external_cache_disabled_wincache' => true,
      'external_cache_disabled_zend' => true,

    Is there anything else I should do ? 

    Best regards,

    Enes

  • Thanks ,  I am already subscribed to your blog ;-)

    I would love a custom email macro. (and wish it was an admin feature), as in being able to add multiple email macros.

    The only one out of the box is [CASE-%1], (we don't use email-to-case, but do use the macro to relate SNIP archived emails to the Case).

    Would love to be able to create Macro's for custom modules easily that the email archiving service can use to relate emails (which are mostly sent from process definition Email Templates, so automated) to their correct records.

    For example, we do not convert leads in the traditional sense. We forward them out to our partner channel.  I made some nice process definition, action button, email templates and layout fetures to enable sales to view the lead, vet it quickly, then choose the partner (account) to send it to with the click of button.

    But, while the email is sent it is not related to the record. :-(

    I activated the email archiving service (SNIP) (thanks to posting on here) and that works great for Case related emails...  but for anything else (and we have many) the email is just archived and not related to the record.

    So imaging in admin the ability to select a module (custom too) and create a macro for each.. like:

    [Lead-%1] - to related to the Lead.
    [FeatureKey-%1] - to relate to our custom feature key module records.

    I am more admin than dev, but a wannabe dev!   I always break my local dev instance... so go easy on me.

    Thanks for the content too.
    Luke.

  •  it appears that you have both Redis and Memcache configured. You only need one of them. Having both is not needed. If you want to store "session" information in a cache, those settings would need to be setup inside of your PHP configuration.

    With Redis configured, you can use the Redis CLI and see what is stored in the cache. 

    redis-cli
    127.0.0.1:6379> keys *

    Which will result in showing you all of the keys; such as

    Notice line "20" is as PHP Session. The others are Sugar Cache entries

  • great question!

    The simplest method to handle this would be to use a LogicHook which will review the "Macro" and then can call different Functions to parse the data and handle the routing. 

    Have you reviewed how the OOTB Case Macro works?

  • Also nice, would be a list view dashlet that would display the results of a query.