Tags

CRM & Technology Management


Sales and Marketing Advisor


Sign Up For the Newsletter

Login

Welcome to the Technology Advisors Blog!!

Technology Advisors CRM and Technical Information
Tags >> SugarCRM
Feb 06
2012

Extend Your Organization's Reach with Sugar 6.4

Posted by: Mary Ann Pekara in MyBlog

Tagged in: SugarCRM

Mary Ann Pekara

As best described by Jan Sysmans, Sr. Director of Product Marketing for SugarCRM, when asked about the updates to SugarCRM 6, in SugarCRM 6.4 he said, "A lot of changes below the hood". The SugarCRM 6.4 release is sporting a REACH theme: Extend Your Organization's Reach with Sugar 6.4. What does this mean? Let's drill it down...

  • Better import capabilities, including direct LinkedIn sync, allowing you to better reach your customers
  • With support for DB2, Sugar reaches more IBM customers
  • Section 508 compliance road map: extending the reach of SugarCRM to visually-impaired customers
  • New Calendar Module allows Sugar users to more easily reach out to co-workers and customers
  • Sugar Private Cloud is a new deployment option

What else would help you extend your organization's reach?

 

May 31
2011

Creating OnChange and OnSave events in SugarCRM - Part 2

Posted by: Justin Kuehlthau in MyBlog

Tagged in: SugarCRM

Justin Kuehlthau

In the first post in this series on SugarCRM onload and onchange events I looked at how to add the events to the edit view.  In this post I will look at how to call a function from a JavaScript file.  In my third post, this will allow us to add JavaScript code that is more useful than an alert.

The first step is to tell SugarCRM where our new JavaScript file will be located.  To do this we update the view.edit.php file located at:
..\custom\modules\Cases\views\view.edit.php.

In my case, this file already existed so I just had to add the display() function to the file:
function display() {
   echo '<script src="/custom/include/javascript/updateSubType.js"></script>';
   $this->ev->process();
   parent::display();
}

As this code points out, the next file I need to update is the updateSubType.js file located at:
..\custom\include\javascript\updateSubType.js.
In this case, I created this file from scratch and inserted the updateSubType function which will be called in my editviewdefs.php file we updated in the last post.

For this example, my function has one line in it which is an alert. The function is:
function updateSubTypeFunction() {
  alert("Custom JavaScript Function");
}

The last change we need to make is to call our new function from editviewdefs.php.  This is the file we edited in the last post.  Here is the updated code to call our new JavaScript function.

In the templateMeta array, change the code to:
'javascript' => '<script type="text/javascript"> onload=updateSubTypeFunction(this); </script>',

In the Type field's  displayParams array, change the code to:
'javascript' => 'onchange=updateSubTypeFunction(this);',

This code will cause a popup window to show when you edit a Case and when you change the Case's type. Next post I will put it all together.

May 27
2011

Creating OnChange and OnSave events in SugarCRM

Posted by: Justin Kuehlthau in MyBlog

Tagged in: SugarCRM

Justin Kuehlthau

When I started digging into customizing SugarCRM I often found it difficult to follow along with suggested solutions.  I mainly searched the SugarCRM forums for help on specific questions.  Most of the time I could find sample code but not the information on how to use it.  In this blog post I'll show how to create a very basic onload and onchange event for a module.  The specific example I will work towards is implementing a Subtype dropdown based on the Type dropdown in the Cases module.

The below post assumes you have a basic knowledge of SugarCRM, the studio, upgrade safe customizations and the custom directory. If you have any questions feel free to ask in the comments section.

The first step is to have an action fire when the edit view of the module is loaded (onload event) and when the Type dropdown is changed (onchange event). In my example I've already created the Subtype dropdown field and added it to the Cases module:

Customizing SugarCRM

Because I configured the Cases Edit View Layout in the Studio, the custom file I need to edit now exists at:
..custommodulesCasesmetadataeditviewdefs.php

Note that this file may not look very clean if you open it in a general text editor such as Notepad. You can use the free source code editor and Notepad replacement Notepad++ for a better experience, http://notepad-plus-plus.org/.

For the onload event I need to add to the 'templateMeta' array in editviewdefs.php:
'javascript' => '<script type="text/javascript"> onload=alert("OnLoad"); </script>',

I also need to add the onchange event to my type dropdown. To do this I add the 'displayParams' property to the Type field:

       4 =>
       array (
         0 =>
         array (
           'name' => 'type',
           'label' => 'LBL_TYPE',
           'displayParams' =>
           array (
             'javascript' => 'onchange=alert("OnChange");',
           ),
         ),
       ),

In this case, 4 is the row number and 0 is the only field on that row. Depending on your layout and the name of your field this may be different.

Making these changes to the editviewdefs.php file should cause a popup window to show when you edit a Case and when you change the Case's type. In my next post, I will look at having the events call a custom JavaScript function.

May 19
2011

SugarCRM Auto-Increment Field

Posted by: Brett Friell in MyBlog

Tagged in: SugarCRM

Brett Friell

An OnDemand client of ours recently had a need for an auto-incrementing number in SugarCRM.  They had some fairly specific requirements, including a reference to the current year, a “-“ and, of course the auto-incrementing number that was comprised of 4 digits.
A job of this nature was most certainly best handled by SugarLogic.  In my development environment, I first created the text field that would increment in the Studio.  From here, I found some helpful code on the SugarForums from Eli Linder: http://www.sugarcrm.com/forums/showthread.php?t=39756.

I modified Eli’s code that he graciously put out on the forum to add in my client’s specifications, including a starting point for the first number:

<?php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class add_code { 
 const CODE_SUFFIX = "";
 const CODE_SEPARATOR = "-";
 const CODE_FIELD =  "tracking_number_c";                          const CUSTOM_TABLE = "opportunities_cstm";                       const ADD_DATE = "";
 const DATE_FORMAT = "";
 const ZERO_PADDING = 4; //minimum amount of characters desired for the number. ie 4 = 0001, 3 = 001
 const FIRST_NUM = "0357"; //default to start with.

Later in the code, I added in a check on the current year to be sure that it would add this in as the prefix. If you would like to see the full file please reply to this posting. 

Now, the next step was to get this to act as an OnSave event when the Opportunity was initially saved.  To do this, I added an after save statement to the logic_hooks.php file sitting in the custom/modules/Opportunities directory.  Here’s how that looked:

$hook_array['after_save'] = Array(); $hook_array['after_save'][] = Array(1, 'add_code', 'custom/modules/Opportunities/add_code_hook.php','add_code', 'add_code');

So, now all that’s left is to bundle it all up in your Development environment through the studio and deploy to the OnDemand instance, right?  Close.  In your saved .zip generated from exporting your customizations, open up the manifest.php file and get ready to edit it.  You need to make sure your two custom files are directed to the right spot in your OnDemand instance.  Currently, they are not even included as part of this manifest! (I was assured by SugarCRM techincal support that this would happen automatically in the next major release, 6.2.)  I added in the following to make sure it was copied from the right location, and also ended up in the right location:
  22 =>     array (
      'from' => '<basepath>/SugarModules/modules/Opportunities/logic_hooks.php',
      'to' => 'custom/modules/Opportunities/logic_hooks.php',
 ),

    23 =>     array (
      'from' => '<basepath>/SugarModules/modules/Opportunities/add_code_hook.php',
      'to' => 'custom/modules/Opportunities/add_code_hook.php',
  )' 


Before you knew it, my client was adding in Opportunities with a custom tracking number that meant something to them in no time!:

SugarCRM Auto-Increment Field

Mar 16
2011

SugarCRM Customers Check Out SUGARCON

Posted by: Mary Ann Pekara in MyBlog

Tagged in: SugarCRM

Mary Ann Pekara

The 2011 SugarCRM Customer & Developer Conference is:

April 4-6, 2011 at The Palace Hotel in San Francisco

This is SugarCRM's 5th annual user and customer conference, bringing together SugarCRM users, developers, partners and experts from around the world.

Packed with 2 days of business, technical and product presentations, SugarCon provides practical knowledge that you can apply to improve your company's performance.

For more information and to register visit: http://www.sugarcrm.com/crm/events/sugarcon

Mar 31
2010

SugarCRM 5.1.0 No Longer Suported

Posted by: Justin Kuehlthau in MyBlog

Tagged in: Technology , SugarCRM , News , Events , CRM , Computer Knowledge

Justin Kuehlthau

After this Wednesday, March 31, 2010, SugarCRM will no longer provide customer support, maintenance patches or bug fixes for Sugar 5.1.0.

Check the End of Version plan to learn about the upcoming End of Version dates.

Mar 22
2010

SugarCRM Version 5.5.1 Now Available

Posted by: Justin Kuehlthau in MyBlog

Tagged in: Technology , SugarCRM , News , Events , CRM

Justin Kuehlthau

This update contains a few bug fixes and a slew of improvements to the email functionality.  "The Emails module has been redesigned to improve usability and performance. New features have been added and existing features have been enhanced or removed."

The following features have been added or enhanced:

  •  A new Quick Compose form provides the ability to quickly compose emails from other records, such as accounts, without leaving a List View or a Detail View. You can access this form outside of the email client by clicking on any email address or by clicking the "Compose Email" button in the Activities sub-panel of a record's detail view.
  • The Address Book has been redesigned to make selecting recipients for emails easier. You can easily identify and select email recipients from related records.
  • The Search form for finding imported emails has been expanded, and now includes the following fields: Subject, From, To, Date From, Date Until, Relate To, Assigned To, Attachment.
  • The Settings window in the email client has been redesigned for ease of use.
  • The Mail Account tab in the Settings window has been redesigned and simplified for ease of use.
  • The Folders tab has been removed and a Folder management section has been added to the General tab.
  • Inbound Email setup has been redesigned to make it easier for administrators to create group mail accounts.
  • Administrators can configure outgoing mail accounts for users.
  • A "Send Test Email" button has been added to test outgoing email settings.
  • Error messaging has been improved for invalid and incomplete mail account settings.
  • The user interface has been enhanced so that viewing, importing and sending emails can be done within the email client, without accessing additional views in the Emails module shortcuts menu.
  • Users can assign the email record to another user during and after import.
You can read the full release notes on the SugarCRM website here.
Mar 04
2010

What's In A Knowledgesync?

Posted by: Justin Kuehlthau in MyBlog

Justin Kuehlthau
Knowledgesync is an Alerts and Workflow solution for numerous business applications. A few of the more basic uses are:
  • Business activity monitoring for events customers want to know about.
  • Business Process automation. Automatically deliver confirmations, quotes, thank you emails, etc.
  • Alerts for warnings regarding issues with clients.
How can these items be accomplished? Here is a short list of some basic capabilities:
  • Triggered emails based on events in a database or email inbox.
  • Web dashboards using html with graphs, etc.
  • Deliver crystal reports via email as a pdf on a schedule.
  • Trigger crystal reports sent as a pdf to a group of people.
  • Inbound email marketing
  • Triggered updates integrating several databases or applications.
Off the top of my head, I can see several very good uses for this application within Technology Advisors for the Customer Advocate position.
Such as:
  • Automatically send pdf ticket reports to customers.
  • Send alerts to the Customer Advocate and Support about issues that need to be followed up for a customer.
    • Tickets, Contract Status, etc.
  • Alert emails to Customers and the Customer Advocate
    • Tickets opened & closed.
  • Alerts to the Customer Advocate
    • Ticket without an updated for 7(3?) days.
    • Customers the Customer Advocate has not contacted in the last 30 days.

These basic functions would not take long to setup, but could save our users several hours a week in effort. Not to mention avoiding headaches from issues that might slip through the cracks otherwise.

Best of all, SalesLogix users can download a free 30 day trial at http://www.sageknowledgesync.com. For best results, I would advise our customers to work with Technology Advisors to make sure the trial is beneficial and used to its fullest potential.

Feb 26
2010

There's A CRM App For That! 5 Simple Ways to Show Customers You Care

Posted by: Justin Kuehlthau in MyBlog

Justin Kuehlthau

Entrepreneur.com has an article up on 5 Simple Ways to Show Customers You Care:

  1. Share Your Knowledge
  2. Ask, Listen, Respond, Adapt
  3. Reward Customers
  4. Hold a Customer Appreciation Event
  5. Do Good

It's a great article and I recommend you check out. Here is my take on how you can apply these points to your own business.

1. Sharing Your Knowledge.  Social CRM is here.  As has always been the case, with it you can manage your e-mail newsletters.  You can now also manage your incoming and outgoing Social CRM communications with applications such as Twitter or Facebook.

2. Ask, Listen, Respond, Adapt.  Without a CRM application, how will you be able to keep track of all of your correspondence with your customers.  Newer CRM packages have the ability to integrate with all forms of communications.  Fax, Email, Snail Mail, Twitter, Facebook, Linked In, etc.

3. Reward Customers.  With the proper CRM application you can track Campaigns where you use Coupons, Gifts, Events, Targeted Mailers, Phone Calls, Social Media, etc.

4. Hold a Customer Appreciation Event.  Customer Appreciate Events or User Groups are a great way to keep your name in a customers mind.  With CRM you are able to invite your customers or potential customers to the events, track registrations and report on attendance and survey results.

5. Do Good.  Doing good is a great thing, but how will your customers know about it if you aren't able to track and effectively communicate your "good."

Using newer CRM products goes far beyond just a giant electronic Rolodex of names and phone numbers.  With a properly setup CRM application and trained user base, you should be able to manage your complete customer experience from prospect to repeat business.  And then some.

Dec 07
2009

SugarCRM Acceleration Update!

Posted by: Mary Ann Pekara in MyBlog

Tagged in: SugarCRM , CRM

Mary Ann Pekara
We are pleased to announce Jason Nassi, Sr. Director, Product Management at SugarCRM will be joining us for the CRM Acceleration event on Thursday. Jason will present the SugarCRM 2010 and Beyond Roadmap and be onhand to answer questions.

Register Now for CRM Acceleration!
«StartPrev12NextEnd»