Wednesday, August 31, 2011

CandyWrapper: Attaching Files Programmatically

A recent question on the SugarCRM Forums served as a reminder of a specific programming need whose steps are not immediately obvious. Before we go any further, let us discuss the scenario so we have a clear understanding of our intended goal.

In our example, we will assume we need to attach files to a Lead record using a custom application that we have built. We will focus on the part of the code that would be responsible for attaching the file, using C# and the CandyWrapper .NET wrapper for the SugarCRM SOAP API.

Alright, now we need to review the process involved in completing this task. Here is a step-by-step summary of what our code needs to do:

1. Create a Note
2. Associate the Note entry with the desired Lead
3. Attach the file to the Note entry

Pretty straight forward. Let us take a look at the code snippet that will take care of it for us.

Monday, August 29, 2011

Product Review: uCertify Preparation Kits

Anyone that has worked in the IT world for even a short amount of time understands that certification exams are part of the game. Not unexpectedly, I too have had the need to familiarize myself with these exams in order to obtain my various certifications. 

Recently, the folks at uCertify contacted me in relation to their test preparation kits, and I agreed to give their product a look and offer my opinion. 

My past experience with certifications has seen me use a variety of study material, including instructor led classes, books (e.g. Microsoft Press) and other printed material, as well as electronic tools similar to those offered by uCertify. 

My personal preference is for printed materials, but am also sufficiently comfortable with electronic learning tools, so I did not foresee any problems with utilizing the uCertify products. 

The uCertify catalog includes a wide variety of test preparation kits for a number of popular certifications, including: MCSE, Cisco, Zend, Linux, etc. Given I am currently in the process of studying for my Red Hat certification, I selected the Linux track, which provided me access to the Red Hat Linux Essentials (RH033) preparation kit.

Tuesday, August 16, 2011

SugarCRM 6.3 BETA Now Available

I meant to comment on this sooner, as the initial release of SugarCRM 6.3 BETA was made available late last week and whenever this happens, a large portion of the community immediately downloads it and installs it. 

It seems with every release, it is necessary to remind the community at large that BETA releases such as this one are intended for testing purposes ONLY. They should only be used for circumstances where, for example, one is curious about seeing the new functionality or perhaps contributing to testing efforts.

This should always be done using an install that is separate from your production instance. If you must test it with your data, create a copy of your production instance and upgrade the copy of your production instance. Do not upgrade your production instance to the BETA release.

You will find that BETA versions cannot be upgraded. Thus, whichever BETA version you install cannot be upgraded to BETA 2, BETA 3 or even the actual release version of the target version. As a result, if you upgrade your production system to a BETA version, such as 6.3 BETA, you will be stuck with that version and the onus will be on you to figure out how to upgrade it. 

This could put you in a difficult situation as you might encounter problems with the BETA that hamper your usage of the system and the only recourse you will have available to you is your own ability to troubleshoot and resolve the problem.

In short, use BETA versions for their intended purposes ONLY: testing.

Monday, August 8, 2011

Una Pregunta

Analizando los países fuentes de los lectores de este blog, he reconocido que dentro la lista de los 10 más populares aparecen unos de poblaciones hispanoparlantes.

Por mucho tiempo he deseado traducir el contenido de este blog al Español para facilitar el intercambio de información con uds., pero la verdad es que el tiempo no me lo permite en muchas ocasiones. 

Pero reconozco la necesidad y quisiera resolver esto, si uds. creen vale la pena. 

¿Que opininan? 

Favor dejar su comentario sobre el tema. 

SugarCRM Customization: Default Assigned User

El Bibliomata/Flickr
One of the first customizations that I recall applying to the first SugarCRM system I was in charge of was to set the default assigned user on Cases to someone other than the logged in user. This was used as a way to simplify the need for the submitting user to have to select the same assigned user every time a new case was added. That was back in 2005, and using version 3.0 of the product.

Although the process is still not a simple matter of a couple of clicks of the mouse, major advancements to the SugarCRM architecture since that time have indeed simplified it when compared to when I first had to tackle the issue, so do not be discouraged.

Let us take a look at exactly how it is done.

Tuesday, August 2, 2011

SugarCRM Customization: Employees Relate Field

The topic of Employees and Users within the scope of SugarCRM can sometimes be a bit confusing. However, there are a couple of subtle points that help distinguish the two. 

In a nutshell, Employees are a representation of the various individuals that work at your organization. In some cases (maybe all), those same individuals are also SugarCRM users, but it is not mandatory. Users, on the other hand, are a representation of all the individuals that have access to the SugarCRM system. Note that anyone defined as a User is also automatically added to the Employees list -- which is often the reason why confusion creeps in when discussing this topic.

Another important difference between the two is that of the two, data can only be assigned to a User but not to an Employee. These subtle differences are specially important on commercial deployments (Professional, Enterprise Editions) as User counts are limited by the number of licenses one has purchased. 

But what happens if one had a need to assign data to an Employee, for reference purposes?