Enhancing xTuple CRM for today's business Sales and Marketing needs

CRM Improvements in 4.11.2

The release notes for xTuple ERP+CRM v4.11.2 indicated that we're working on enhancements to the CRM side of our product offering. The sponsor for this effort, Cordeck Building Solutions, requested a number of changes to make this part of the application easier to use for their normal sales and marketing needs. Most of these changes are useful to the rest of the xTuple community. I'd like to take this opportunity to thank Cordeck for their support and describe some of the work completed to date. In future posts, I'll let y'all know what else is in the works and what's in it for you.

Some of the desired features could be added without disrupting the application too very much. That made them good candidates for inclusion in a minor release.

Multi-Column Sort

One of the least invasive but most pervasive changes was to allow sorting tables of data by multiple columns instead of just one. This is handled entirely by the desktop client so no database or MetaSQL query changes are required to use this feature. Most of the tables showing data in the application can now show their contents sorted by 1, 2, or more columns. Here's an example of how this works in practice.

This is the Incidents window just after opening when attached to the masterref database:

Screenshot of the Incidents window. The list header is highlighted and marked with the number 1. The Number column is highlighted and marked with the number 2.
  1. Note that there is no sort indicator in the header of the list.
  2. Note that the native sorting of this list is by incident number.

As in all previous versions of the desktop client, clicking on one of the column headers will re-sort the data on the contents of that column. In this example, I've clicked on the Updated column to see which incidents are in need of attention:

Screenshot of the Incidents window. The Updated column in the list is highlighted and marked with the number 1. The Number column is highlighted and marked with the number 2.
  1. Note that there is now a sort indicator on the Updated column and the list is presented in date order from earliest to latest.
  2. The Number column, as expected, is not in order. Note that there are three incidents from 3/12/13 and that incident 15006 is listed before 15000 and 15002. That makes sense but isn't very nice.

To use the new multi-column sort feature, shift-click on the Number column header. Voila:

Screenshot of the Incidents window. The Updated column in the list is highlighted and marked with the number 1. The Number column is highlighted and marked with the number 2. The Number column header is highlighted and marked with the number 3.
  1. The Updated column is still in order and still has a sort indicator. The digit 1 has been added to it to indicate that it is the primary sort column.
  2. The Number column is now sorted as desired. The three incidents from March, 2013, are listed in increasing numerical order, followed by the incidents for later dates.
  3. The Number column header shows this with the addition of a sort indicator and the number 2.

You can reverse the sort order by simply clicking on the header for either the Updated column or Number column. If you shift-click on either of those, it will no longer be used to sort the data. If you click on any other column header, that column will be come the new basis for sorting.

Creating Prospects from Contacts

A common sequence of events in developing business relationships is meeting someone, exchanging basic contact information, getting to know each other a bit better, then proposing a sale of some sort. This can happen in person, such as meeting at a trade show, or can happen online via website visits and email, or over the phone. In short, the contact becomes a prospect.

In v4.11.2, the process of recording this transition has become much simpler. Older versions of the application required navigating to the Prospects List, creating a new prospect, then searching for the person's contact information to associate him or her with this new prospect. Now you can look at the Contacts list and right-click on a line. If you select Create Prospect from the popup menu, the Prospect window opens pre-populated with that contact's information. Now you just have to fill in the additional details and SAVE.

Expanded Availability of Multi-Select

That simple conversion of a contact to a prospect is nice but still a chore if you have a lot of contacts to convert.

Let's say you have a searchable characteristic on contacts called Tradeshow. You diligently record all of the contacts you meet at each show and set the Tradeshow characteristic appropriately. Shortly after you get back home after a particular show, your email inbox is flooded with messages from people you met who express an interest in your product. What do you do?

  • CRM > Contacts > List
  • Set a filter on the Tradeshow characteristic to show the contacts you met at that specific show

At this point you could right-click on each of the contacts who have sent you email and convert them one at a time, as described above. In v4.11.2 you can also shift-click to select a range of contacts or use your computer's convention for selecting parts of a list (e.g. command-click on a Mac). Now when you right-click and select Create Prospect, a Prospect window will appear for each, as long as it hasn't already been used to create a prospect.

You can also select multiple records for other operations, such as Edit and View. Similar multi-select behavior has been added to other CRM list windows as well: Addresses, CRM Accounts, Incidents, Opportunities, Projects, Prospects, and the To-Do List.

More CRM Changes Are Coming

This is just the beginning. Other improvements to CRM are in the works. Some of them require significant changes to the database structure, and so will appear in the 5.0.0 release (no specific target date at this time). Others need to be designed so we can see if they're appropriate for a 4.11.3 or 4.12.0. Keep an eye on this space and the Product Roadmap for updates.

Gil Moskowitz

Director Software Development

Gil joined xTuple in 2005 to develop the first version of multi-currency support in our products. He helped xTuple transition from its original closed source OpenMFG product to the commercial open source company we are today. Before coming to xTuple, Gil worked for several large and small software companies in a variety of roles, including Informix Software, where he managed the database backup/restore utility group. He always advocates for, and delivers, high-quality products through improvements to the software development process. Ask about his other jobs next time you see him — ! He has a B.A. in Biology from Reed College and an M.S. in Computer Science from Old Dominion University.