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.

Parents
  • Hi  ,

    here are some topics that are intersting for me 

    • how to extend Sugar BPM with a custom Action with custom parameters (for instance, call an external REST API with specific parameters)
    • what is the best way to alert the user that something went wrong after a hook execution (for instance, an aftersave hook that failed because the external system canno't be reach ; the best way would be a popup...)
    • how to manage B2C/B2C customer with Sugar
    • how to manage files with Sugar Cloud instance (for instance a custom action to upload specific files that must be read to create / update some records)

    Many thanks,

    Fred

  • great questions. I will do my best to address them. My thoughts

    • Adding custom actions to SugarBPM can be done, I can provide some examples
    • I would use notifications, instead of an alert. Notifications are the number icon at the top of the screen
    • Can you expand on what you would like to know about managing B2C other than turning off the requirement of Accounts in certain modules? There is a config parameter to turn off the requirement of accounts.
    • Can you please provide more details on your use case?
  • Hi ,

    • Notifications are OK but not the more "visual" to push information to the end user ; we are looking for browser notification or  web socket like feature in order to push better information / alert to the user, even for server action
    • About B2C / B2B management : we have several customer that use the CRM for B2C / B2B management. So, it means that I could have a contact : Frédéric Rinaldi whom is involved in a commercial relationship for himself (as a B2C) or for his company (as a B2B) and sometimes both.
      • in Sugar, the Account module is central and in my opinion, we should keep an Account Frédéric Rinaldi for B2C management but also a contact (for outlook plugin or marketing automation synchronisation for instance)
      • because of the many-to-many handles like a one-to-many contacts-accounts relationship, it's complicated to imagine having a single contact link to his pro account (B2B relationship) and personnal account (B2C relationship). But, for my customer it's important because we are talking about the same contact and we should be aware about how this guy is involved with us
      • Cases or Opportunities / RLI / Purchases etc. are expecting an account ; the same for core reports / dashlets (sale funnel for instance) / forecast
      • the core B2C option is just going to set optional the account, but it's not going for us to provide a good user experience about how to handle B2C / B2B Sales process, Support process (portal access / visibility for the cases) etc.
    • SugarCloud and file management ; my case is the following
      • my customer got, every weak, several files provided from external systems (ERP etc.)
      • those files are XML or CSV
      • we need to upload all the files at the same time
      • according to the file "type", we need to read the content in a specific way and then run the corresponding action (create or update existing records)
      • then we would like to archived the files in a proper way

    I hope this help to understand my expectations. 

    Fred

Reply
  • Hi ,

    • Notifications are OK but not the more "visual" to push information to the end user ; we are looking for browser notification or  web socket like feature in order to push better information / alert to the user, even for server action
    • About B2C / B2B management : we have several customer that use the CRM for B2C / B2B management. So, it means that I could have a contact : Frédéric Rinaldi whom is involved in a commercial relationship for himself (as a B2C) or for his company (as a B2B) and sometimes both.
      • in Sugar, the Account module is central and in my opinion, we should keep an Account Frédéric Rinaldi for B2C management but also a contact (for outlook plugin or marketing automation synchronisation for instance)
      • because of the many-to-many handles like a one-to-many contacts-accounts relationship, it's complicated to imagine having a single contact link to his pro account (B2B relationship) and personnal account (B2C relationship). But, for my customer it's important because we are talking about the same contact and we should be aware about how this guy is involved with us
      • Cases or Opportunities / RLI / Purchases etc. are expecting an account ; the same for core reports / dashlets (sale funnel for instance) / forecast
      • the core B2C option is just going to set optional the account, but it's not going for us to provide a good user experience about how to handle B2C / B2B Sales process, Support process (portal access / visibility for the cases) etc.
    • SugarCloud and file management ; my case is the following
      • my customer got, every weak, several files provided from external systems (ERP etc.)
      • those files are XML or CSV
      • we need to upload all the files at the same time
      • according to the file "type", we need to read the content in a specific way and then run the corresponding action (create or update existing records)
      • then we would like to archived the files in a proper way

    I hope this help to understand my expectations. 

    Fred

Children
  • ,

    we have customizations which were made by a partner back when we first started Sugar in v6.0 (12 years ago) to allow for the M-M Account-Contact relationships and I've had several headaches related to the issues you mention.

    We have had to not use some features like sales funnels and forecasts because of it, not to mention problems dealing with duplicates when people don't realize that person A is both at Account A (B2B) with their business email address and Account B (B2C) with their personal email address but are really the same person.
    It also complicates record assignments and teams since SalesPerson1 deals in B2B and Sales Person 2 Deals in B2C and both are talking to the same customer...

    I would say be very careful when modifying things like Account, Contacts and Addresses (back in 2010 we also added an Address Module to allow more than 2 addresses on an Account and to relate those addresses to different Contacts @ the account, like departments at a University)....
    and that prevented us from using things like out of the box third party extensions for google maps and proximity reporting.

  • Hi ,

    we also went through the same issues. This is why I was curious about how other Sugar Users / Partners handle this case.

    I also definitely agree that some of the core module (Contacts, Accounts and addresses fields) are really risky to customize...

  • As Account module is the core entity for both Sell and Serve perspectives, dealing with B2B and B2C, we frequently customize Accounts module for our customers in order to:

    Add the enum field Business Model (B2B, B2C, B2B2C etc)

    If selected B2B then a Contact is automatically created on saving the Account and no Contacts subpanel is displayed under the Account record. Toggling subpanels is easily implemented with pretty simple customization in a js controller.

    If selected B2C or any other option, then the default behavior is followed.

    Depending on customer requirements, additional automations can be implemented accordingly.

    I like the idea to setup a custom module to manage Address, actually we implemented that for a set of customers. In order to make life easier, it is possible to set up subpanel-create of Addresses so a sales person can add several at once.

    SugarCloud and file management

    I like your challenge Frédéric. We implement to a couple of customers a custom module from file template which accomplishes this task.

    As per our customer requirement, they needed to import a single file at once and they had to specify which type (validation/importing process) the file is. That custom module supports both file upload and an enum field.

    By uploading the file a Scheduled job runs every minute looking for an open uploaded file and, according to its type, it start the proper validation and importing process. As soon as the process is started, the respective record is updated so user the follow it accordingly. If something goes wrong the user is notified, if it is fully imported the record is updated accordingly.

    For your specific scenario, it is possible to import a zip file containing a set of folders (each folder means a specific validation/importing process) and files whitin them, so the Scheduled Job can decide which strategy to follow. As a single zip file may have several files, then one processing record can be created for each one, properly updated as per its type (folder name) and status.

    I hope these insights help you somehow.

    André Lopes
    Lampada Global
    Skype: andre.lampada
  • Hi ,

    thank you for your feedback.

    The main problem with the the Account / Contact duplication is that it is also required hook to keep the records synchronized (because the contact can be updated / created through the outlook plugin or the marketing automation for instance etc.).

    So this is really interesting to understand how everyone handle this and improve our vision of this B2C / B2B / B2B2C management (more complicated then only set the account field not mandatory).

    Fred

  • I would also love to have a Best Practices on how people keep records clean and avoid duplication with things such as Frédéric mentioned: created through plugins, api, marketing automation tools...