Archive for August, 2007

Sidebar Summary

Share

There is an updated post here that explains how to do this with Visualforce instead

I was recently looking at Rave CRM by Entellium and I was inspired by their UI design. I only saw the demo on their website, but they had a lot of really good UI ideas. One of the things I really liked was a quick summary of data counts on the homepage that were very applicable to the end user.

I wanted to see if I could create something similar in Salesforce. Using an s-Control that is shown via an IFRAME on the sidebar, I was able to do it. The end result is like having a bunch of Metric style dashboard components stacked on top of each other. You can see it in action below. Each line shows a record count and the record count is a hyperlink to a View or Report. It’s small, clean and tells the user vital information with quick links to see more. I like the concept.

SidebarSummary.png

How it works

It is all running in an s-Control and uses the AJAX toolkit to talk to Salesforce. The s-Control is in an IFRAME in a homepage component. The s-Control has a function called getCount and you pass getCount the following:

  • Object to Query
  • WHERE clause for the query
  • Label for the returned HTML
  • A URL to let a user drilldown on the result

A call to it looks like this:

theHTML += getCount("Lead", "WHERE IsConverted = False AND CreatedDate = TODAY", "Leads - Today", "/00Q?fcf=00B30000001Qizn");

It uses the object and where clause to do a count() query. It then returns an HTML table row with 2 columns. The first has the label you passed it in italics. The second has the record count of the query as a hyperlink to the URL you passed it. If you don’t pass it a URL, then it shows the record count without a hyperlink.

The s-Control is made up of 2 functions: getCount() and main(). getCount is described above. main() calls getCount once for each metric and then wraps the results in some more HTML. A bit of CSS is sprinkled in to output it nicely on the homepage sidebar. That’s it.

Try It

I uploaded it to the AppExchange to let people try it and improve upon it. It is just a proof of concept. I am using it in my org right now, but it needs to be improved if I will let it stick around. For example, it’d be great to have it cache the data and only run the queries once every 30 minutes because running it can slow the load time a bit. Is anyone up for improving it to meet that requirement?

To make this work for you, you should be familiar with s-Controls. It’s not plug and play. Getting it setup expects you have a working knowledge of this stuff. I kind of hacked it together and wanted to get it out there for other to see. It’s very simple code, but I think it serves a very good purpose. I am interested in what you think.

btnGetApps.gif

I set it up with some basic queries, but I’d recommend you change them to meet your needs. To change what the queries are, you need to go into the main() function and edit the lines that call the getCount function. You will need a single line of code for each query you want to run.

SidebarSummary_MainFunction.png

If you really want it to work nicely, you should create corresponding Views or Reports and link to those by passing the getCount function the URL of the View or Report.

Once you have your queries all set, you need to add the homepage component. I didn’t package one in the AppExchange package because I have been unable to edit a homepage component that only has an IFRAME in it (WYSIWYG editor bug). I’ve had to delete it and recreate it every time. So you get to do that too!

  1. Create an HTML Area Homepage Component
  2. Choose it to go on the left (narrow) navigation bar
  3. Click the Show HTML checkbox on the WYSIWYG editor
  4. Copy the HTML below and replace IdOfScontrol with the ID of the s-Control in your AppExchange package. You can change the height of the IFRAME too.

    <IFRAME src="/servlet/servlet.Integration?lid=IdOfScontrol&amp;enc=UTF-8&amp;ic=1" frameBorder=0 width="100%" height="150"></IFRAME>

  5. Add the new Homepage Component to your Homepage Layout

Now you should be ready to test it out. Using a tool like Firebug can greatly improve your ability to troubleshoot issues and make enhancements.

Please let me know what you think by posting comments. I am interested in thoughts on the concept, ways to improve it, issues you are having, etc.

Comments (17) comments feed

Arrowpointe on Twitter

twitter.pngI have created a Twitter account for Arrowpointe. Follow it at http://twitter.com/arrowpointe. A direct RSS feed can be found here.

This will be an informal line of communication. I have it hooked up to my IM, so I am more likely to post nuggets of info about Salesforce.com as I am learning it rather than saving things for a longer post or, perhaps, forgetting to post them. It will probably be relatively active during Dreamforce too. Use of it will probably evolve a little as I get used to this mini-blogging thing.

My last 5 “tweets” also appear on the right-hand side of this blog.

Comments (0) comments feed

Certified + Professional Edition Support

Arrowpointe Maps is certifiedArrowpointe Maps is now certified and live on AppExchange. Along with the certification comes support for Professional Edition. Arrowpointe Maps fully supports Unlimited, Enterprise, Professional and Platform Editions.

btnGetApps.gif

Visit the listing on the AppExchange by clicking the image above. You can also search for “maps” on the AppExchange and it is the first listing in the results.

Download the application to run a 15-day, 5-user, no obligation trial. The process is frictionless. Get It Now, click on Arrowpointe Maps tab, click the Create Trial image. You are in!

About Arrowpointe Maps

Arrowpointe Maps is an on-demand mapping platform that facilitates a conversation between Salesforce.com & MapQuest allowing for easy deployment of mapping capabilities in your organization and providing end-users a simple means for mapping their data. Arrowpointe Maps is configurable and can be tailored to your organization, so that your users can work with their information in a meaningful way.

The official location for information on Arrowpointe Maps is its product page at http://www.arrowpointe.com/maps. There, you will find answers to the most frequently asked questions, screencasts and links to its AppExchange page.

Comments (0) comments feed

Try Arrowpointe Maps

arrowpointemaps_logo.pngArrowpointe Maps is currently in the process of getting certified, which should be completed in the next couple weeks. Once certified, it will be listed publicly on the AppExchange.

Until then, Unlimited, Enterprise, Developer & Platform Edition orgs can install Arrowpointe Maps from the AppExchange by clicking on the image below. Once it is certified and publicly listed, it will be available to Professional Edition customers too. If you install Arrowpointe Maps in your org, you will get a free 15-day, 5-user trial with full functionality.

btnGetApps.gif

Most of your questions should be answered at the main Arrowpointe Maps page. If you want to ask me specific questions about it, feel free to submit your contact information on that page.

Comments (0) comments feed

Arrowpointe Maps v1.0.4

Version 1.0.4 of Arrowpointe Maps was just released. You can read about all the improvements on the Change History page. The changes that most impact user experience and the application’s capabilities are:

  • The Map Pages now load the results via AJAX rather than using Frames. This results in improved performance as all supporting files are downloaded upon arriving at the Map Page.
  • Added a “Force to My Query” field on Map Pages, which will automatically add a filter to the Map Page so that the data returned is owned by the user running the query (e.g. My Accounts). This will help companies that want to ensure their users can’t perform aggregated analysis on other’s data.

    To use it, edit your map page and check the “Force to My Query” field, which is right above the Fixed Filter field.

    arrowpointemaps_forcemyquery.png

    When you select the “Force to My Query” option, you should turn off the “My/All” and “Owned By” fields since they will not have any impact on your query and may confuse users.

  • The “Color Map Markers By” field on Map Pages now include number, currency, percent and text fields. Picklists and Boolean fields were already supported in v1.0. So now you can color your map markers on things like Probability %, Amount and the results of formula fields.

NOTE: If you are using Arrowpointe Maps and are confused by these posts about new versions, just know that these updates are happening automatically for you. You do not need to re-download the AppExchange application. Changes to the AppExchange package will be few and far between and those will be communicated very explicitly.

About Arrowpointe Maps

Arrowpointe Maps is an on-demand mapping platform that facilitates a conversation between Salesforce.com & MapQuest allowing for easy deployment of mapping capabilities in your organization and providing end-users a simple means for mapping their data. Arrowpointe Maps is configurable and can be tailored to your organization, so that your users can work with their information in a meaningful way.

The official location for information on Arrowpointe Maps is its product page at http://www.arrowpointe.com/maps. There, you will find answers to the most frequently asked questions and have the ability to submit your contact information for an invitation to try it.

Comments (0) comments feed

« Previous entries