UnCon 2015 Update!

Matthew Marum —  April 22, 2015 — Leave a comment

We had a great first day at SugarCon UnCon!

Initial feedback has been very positive.  Lots of great discussions between Sugar Engineers, Sugar Partners, and Sugar Customers.

Today is the 2nd day of UnCon and it has a packed schedule!  http://bit.ly/uncon2015agenda

Come down to Plaza B today to learn more about Sugar 6 to 7 Migration, SugarCRM Mobile SDK, Sugar Logic, Shadow, and Process Author!

See below for some candid snapshots from yesterday’s UnCon.

Continue Reading…

Sugar Developers!

Want to get a head start on your SugarCon UnCon experience?

The UnCon roundtable schedule and Github repository are now live!

The UnCon roundtable schedule is currently preliminary.  The final schedule gets set by the audience at the start of UnCon.  However, this document will be edited to become the master schedule for roundtable discussions at UnCon, so go ahead and bookmark it!

The UnCon Github repository contains all the resources that Sugar Engineering has put together for our hackathon.  We’ll still be adding things up until the last minute but now is a good time to get a head start on setting up your development environment or checking out some projects.

See you guys in Plaza B!

Many Sugar Developers are looking to build intelligent API integrations with Sugar that goes beyond Create-Read-Update-Delete (CRUD) operations.  The key to building robust and intelligent API integrations with Sugar is held within the Sugar Metadata.

Sometime it is interesting to understand what dependent dropdowns exist on any given Sugar module.  A common use case would be to display appropriate UI with properly populated drop down lists to end users of an integration with Sugar 7.

Example Dependent Dropdown

Example Dependent Dropdown

If you don’t have the dependent dropdown formula then you are stuck guessing at what options are available or showing the user the full list of options when only a subset of them are valid choices.  The key for addressing these user experience concerns and for anybody else wanting to take their Sugar API integration to the next level is the Sugar Metadata API.

Continue Reading…

So what does Sugar Engineering have planned for the Hackathon?

The Hackathon will be informal and will run at the same time as the Roundtables in a separate part of the UnCon space.  The Hackathon space will be a lounge atmosphere with couches, beverages, food, etc.  People can work on whatever they want to but we’ll have planned projects lined up and a crowd of Sugar Engineers ready and willing to help out with anything you’re working on.  Whether that’s helping you get a local Sugar development environment setup, help you troubleshoot some problems, or design a fancy CRM implementation or integration with another application.

The only prize for Sugar Developers at the Hackathon is knowledge (meaning there will be no “winner”).  But if a Sugar Developer creates a project or prototype and stands up and presents it at the end of UnCon then they’ll also get a coveted SugarCRM UnCon hoodie.

You know you want it.

Limited Edition.  You know you want this.

However, we’ve done some homework and prepared some projects that you can work.  We’re in the process of creating a public GitHub repository with the UnCon materials included.  So it’s a good idea to create a GitHub account if you haven’t yet already.

Continue Reading…

I want to let Sugar Developers know that we’re really excited about the new format for UnCon this year!

Part of the new format this year is to have the UnCon venue separated into two sections.  When you first enter the space, we will have a lounge atmosphere with couches and refreshments.  This first section will be the Hackathon space and will be a topic of a later blog post.  The second half of the space furthest from the door will be where we will have (for the first time) Sugar Engineering hosted un-conference roundtable discussions and workshops.

So what the heck does that mean anyway?

Continue Reading…

Hey Sugar 7 Developers!

I wanted to make sure the community is aware of our planned refactor of the Sugar 7 Record view in Sugar 7.8.  The main point of the refactor is to move the Record view header pane out of the scrollable DIV that it is inside today.

Open up your browser’s developer tools and inspect the the HTML of a Sugar 7 Record view.  Notice that .headerpane DIV element that contains the header is actually inside the left-hand side .main-pane DIV?  This main pane can scroll up and down and contains the record view and subpanels.

Notice the location of the headerpane DIV in the Sugar 7.5 Record view HTML screenshot

Notice the location of the .headerpane DIV in this Sugar 7.5 Record view HTML screenshot

However!  If you scroll the Record view, the header pane does not move at all.  This is because we use some CSS trickery to stick it to top of the page under the Sugar 7 application main menu.  Unfortunately this has not worked consistently on all browsers and there has been a variety of bugs.

The plan is to refactor the current implementation of Record view away from being one monolithic Sidecar view into multiple Sidecar views that will read view metadata from a single location (using the same record.php we use today).  Ultimately we’ll be able to improve the architecture of the page, fix some bugs, as well as make parts of the current Record view (such as the header pane) easier to customize.  All good stuff.

Since the Record view is often customized already, we plan to limit the impact on those customizations as much as possible.  For example, record view metadata customizations will be unaffected.  We will also not change the existing Record view controller, instead deprecating it and creating entirely new views and layouts.  But Sugar Engineering needs to make sure we understand all of your Record view customization use cases so that we can be prepared to make you prepared for these changes.

I’ve collected some of the common Record view customization use cases that I know about below.

  1. Adding custom field validation (such as validation tasks) to Record view (Example from Sugar Developer Guide)
  2. Adding buttons to Record view including overriding view controller to implement a custom action (Example from Sugar Developer Guide)
  3. Adding event listeners to Record context or layout (Example from Sugar Developer Guide)
  4. Adding metadata customizations such as new custom fields, panels, or Sugar Logic dependencies (Via Studio, Extensions framework, or custom directory)
  5. Adding custom views to Record layout (Example from Sugar Developer Blog)

Are we missing your use case?  Please post your thoughts into this Sugar Community thread or send them to developers@sugarcrm.com.  We will also have Sugar Engineers on hand to discuss this topic at UnCon at SugarCon.

Sugar 7 allows you to define your own view metadata for creating new custom layouts and views.  In these custom view definitions, the correct use of the type and name attributes is essential when you want to reuse metadata, controllers, or templates from other Sidecar components. But what are type and name?  How are they used? In this post, we hope to provide you a better understanding of these attributes and how they are used by Sidecar when your components get created.  Most importantly, this post will serve as a guide for the correct use of type and name in your Sugar 7 view metadata that will maximize your ability to reuse.

Read more below!

Continue Reading…