UnCon 2016 Recap!

Matthew Marum —  June 20, 2016 — Leave a comment

Thanks to everyone who attended the UnCon! It was a whirlwind for all of us but I think we have put on the best iteration of this event we have ever had.

In brief, it went so well that there is wide agreement across the company for a significantly expanded event for Sugar Developers at SugarCon next year. So we look forward to seeing you all again for SugarCon in September 2017.

This Year’s Highlights

Continue Reading…

There are so many possible approaches for integrating with Sugar that selecting the best one can be tricky.

When deciding to add new components into the Sugar user interface, the number of possibilities to consider is dizzying.

Should I build a new component or override an existing one?

Am I building a View, Layout, or custom Fields?

Will a Dashlet give me enough screen real estate or will I need to create a new layout?

The goal of the Sugar Integration Building Blocks open source project is to provide sample code and most importantly the underlying design patterns that makes it easy to build best practice integrations.

Some integration use cases mean that a primary action has to be added to a Record or List view. For example, you may need to launch a wizard interface such one used with a Configure Price Quote (CPQ) solution on an Opportunity record.

A common CPQ flow would be to have a custom “Create Quote” action on an Opportunity record. This would launch an expansive Configurator wizard that, when complete, will need to push the new Quote, new Revenue Line Items, etc, back to the original Opportunity record.

The standard approach for this would be to add a button to the Record View or List View that launches a Drawer.

In order to make this design approach easier, we have added an HTML iframe drawer action as a new Building Block!  Now it is very easy to build a complete integration or proof of concept that utilizes a drawer!

Screen Shot 2016-06-06 at 11.26.04 AM

An example “Open Drawer” action

Read more below to learn how it works.  It was designed in an upgrade safe way that does not interfere with any existing customizations that may exist on Record views or List views.

Continue Reading…

sugarcon-2016-uncon-265x214

Brace yourself. UnCon is coming.

 

Have you registered for SugarCon yet? Remember that UnCon is right around the corner! We have 3 general sessions and 24 different technical breakout sessions at UnCon this year. That is over 24 hours worth of fantastic Sugar technical content that you do not want to miss!

Elasticsearch

We are doing multiple sessions on Elasticsearch which has been a very popular topic at past events.

Last year’s UnCon provided an example customization that allowed full text search of file attachments on Documents and Notes modules. The Elasticsearch file search package is over in the UnCon Github repository, if you want to try it out for yourself. It is worth a look!

Continue Reading…

To coincide with the release of Sugar 7.7, the Engineering team has released updated versions of Unit Tests and Performance tools.

Requesting access to Sugar Test Tools

Sugar Test Tools are in private Github repositories within the SugarCRM Github organization. Requesting to have your Github account added to the SugarCRM Github organization is easy, just fill out this form.  Visit the Developer Tools section of this site to learn more.

Continue Reading…

What does the platform parameter mean in v10 REST API?

If you open your web browser’s network tools, a login request to the v10 REST API used in Sugar 7.6 will typically look something like the example below.

POST /rest/v10/oauth2/token HTTP/1.1
Host: localhost
Cache-Control: no-cache
Content-Type: application/json
{
     "grant_type": "password",
     "username": "admin",
     "password": "admin",
     "client_id": "sugar",
     "platform": "base",
     "client_secret": "",
     "current_language": "en_us",
     "client_info": {
         "current_language": "en_us"
     }
}

You can see in the request that we have specified a platform parameter called “base”. This parameter is optional (the default is base) so even if you have used the v10 REST API before you may not have been aware of it or what it means.

Continue Reading…

We are gearing up big time for SugarCon so I wanted to give the community a quick update.

UnCon @ SugarCon 2016 Overview

Sugar Developers – UnCon is YOUR conference! Hosted by SugarCRM Engineering, UnCon is the developer conference within a conference. UnCon is your opportunity to learn, rub shoulders, and hack with the top developers and architects at SugarCRM. Whether you are a Sugar Developer ace trying to get answers to your deepest technical questions or a Sugar newbie trying to learn what the Sugar platform is all about, this where you can get the answers straight from the source.

This year it is again being held on June 14th and June 15th at the Hilton Union Square in San Francisco.

To participate at UnCon, you must be registered for SugarCon.

UnCon Agenda

The UnCon agenda is now live in the UnCon space within our Sugar Community.  Abstracts for the sessions are linked from the agenda page, so you can get more details about what will be covered and who is presenting.

Check it out so you can plan your visit to SugarCon and make sure you do not miss a thing!

UnCon Hoodies and Beer are Back!

We will have a limited quantity of exclusive UnCon hoodies this year.  They will be for card carrying Sugar Developers from our community only!  Come to UnCon to learn how to make one of these your very own.

Screen Shot 2016-05-05 at 10.42.49 AM

UnCon Hoodie mockup

 

Also back by popular demand:

 

lager_beer_in_glass

Mental lubrication

Give us Feedback!

Please provide feedback within the UnCon community!  You can respond with comments on abstracts, post any of your burning questions, and create new ideas for the UnCon event!

Here is another guest post from Emmanuel Dyan from the Elite SugarCRM Partner iNET Process. In it he addresses a common Sugar project requirement using an open source tool developed by iNET Process.

The problem that we will try to solve with this post is:

How do we make sure that we are never developing using actual customer data but, at the same time, work with data that reflects reality?

Data Anonymization

Usually, when we work on a customization project for a customer you have a minimum of 3 different environments: Development,  User Acceptance Testing (UAT), and Production. To make sure that we work in optimal and consistent conditions, we usually copy the database from one environment to another (preferably from production to other environments). Doing this type of manipulation has multiple drawbacks, including:

  • We have to collect a Database Dump which means that it contains unencrypted raw data. What would happen if we mistakenly expose this dump to someone who is unauthorized?
  • We have to test some functionality to make sure that it works. What would happen if we test a Campaign that sends thousand of e-mails … to the … actual customers of our customer?

Anonymizing the data is the best practice to avoid “playing” with customer data and to keep their trust in us.

The challenge with anonymizing data is figuring out how to overwrite the data with something that is completely unrecognizable. For example: “John Doe” will become “voluptatem accusantium“. His job title becomes “doloremque” and his country “magnam“. His phone number will become “569898520114457878744778” instead of “+123456789“.

Continue Reading…