Archive for Wish List Category Feed

OEM Edition announced the launch of the OEM Edition yesterday. The OEM Edition allows Salesforce partners to build applications on the platform and offer their products to users. The price per user for the OEM Edition is $25/month.

I think I am interpreting this correctly…

You, as an OEM provider, offer your product/service to both customers and customers not yet on the Salesforce platform. The OEM Edition only applies to the customers not yet on the Salesforce platform. As an OEM vendor, you pay $25/month/user for anyone that takes up a license. It is then up to you to pass through that cost to your customer. The end result is that the customer only has a relationship with you, the OEM vendor. You, in turn, have the relationship with as the platform provider for your product/service. Correct? Please add your comments to help clear this up. It is not totally straight forward in the press release.

This is a step in the right direction, but is not as ideal (IMHO) as the Platform Edition licensing I recommended in April. I feel that another licensing model is still necessary that allows you, as a consumer or corporate purchaser, to buy licenses to the platform only. And to buy them directly from This would be a relationship between you and with no third party involved. You just pay your subscription fee to the platform. From there, you would have the ability to add to it through AppExchange or by building your own apps. This allows for much more flexibility in that you start with the platform and then select/build the apps you want. Like I said, the OEM model is a step in the right direction, but you need to want one of those OEM products before you can get on the platform. The Platform Edition idea is an option to opt-in to the platform first (like buying a computer with only the operating system and then choosing the software you want).

Comments (8) comments feed

Functionality Wishes (05/2006)

I have been delving into some new areas lately and I keep coming up with more and more functionality wishes. Some bigger than others, but I want to keep documenting them as I collect bunches of them. These are more configuration and development related.

Sorting QueryResultSets

When querying data using SOQL, you cannot perform an ORDER BY. I assume this is to protect system performance, but it’d be great if there was some way to perform sorts on your data in the API. Maybe this is having ORDER BY as a parameter in SOQL. Alternatively, there could be a sort() method that can be called once you actually have your QueryResult in memory. This method should allow you to provide a multi-column sort order.

I have seen some sorting functions on the message boards, but they are a bit over my head. It would be nice to have this built right into the product.

Configuring Partners

I echo Gokubi’s recommendation for the ability to configure the Partners object. It would be great to be able to add additional information regarding the relationship between 2 accounts.

More Description fields when configuring

It would be nice to have more areas to input a description when you are configuring. Also, when there is a description field, it’d be nice to be able to see that when viewing the data in a list. For example,

  • Display the Description when listing the Fields for an object
  • Include a description on the Sharing Rule page and display it when viewing Sharing Rules. Some organizations have 100s of Sharing rules and it’s hard to keep them straight sometimes. Display this field on the Sharing Rule list
  • Display the Description field when listing the Profiles
  • etc.
Utilize Views in more places in the Setup area

Setup Views on pages like Fields, Profiles, Sharing Rules, etc. so you could include any fields you want on there. You might have a view for Formula Fields that shows you all the formulas right there in one page. Or a Profile view that displays the profiles and all of their Tab permissions. Views exist today when Managing Users. Apply the same concept in other areas of the application so we do not have to drill into each record to see details all the time.

Where is this Public Group Used?

Publis Groups can be very useful for administering access to Reports, Dashboards, Documents, etc. However, it is difficult to know where a Public Group is being used unless you click into every folder. It’d be nice to have a view from the Public Group page to see where it is being used.

Picklists in Formula Fields

Right now, you cannot simply grab the value of a picklist field in a formula. You have to know the value you are looking for and use the ISPICKVAL function. Alternatively, you need to create a formula field for the picklist and go through every possible picklist value and output its corresponding text. This can be burdensome. There should be a way to simply reference the picklist field in a formula and use its value.

Formula Field Length

The workaround to the issue with picklist fields is to create a formula field that does an ISPICKVAL function on every possible picklist value and then outputs the equivalent text. The max formula size is 1000 characters, so sometimes you need to create multiple formula fields to accomplish this. If the Picklists in Formula Fields wish isn’t fulfilled, then the max length of a formula field should be increased.

Comments (2) comments feed

Wish List from gokubi

Steve at has posted his wish list items that append to my own.

Comments off comments feed

Platform Edition Licensing

As is being proven by the hundreds of available downloads on the App Exchange, many innovative mashups and the stats about API usage, is (becoming) equal parts platform and CRM application.

However, their licensing model is CRM application first and platform second. Today, you cannot purchase licenses to utilize just the platform. Is this coming? What would it include? In my mind, it should include:

  • Very Important
    • Full access to the user & security components (users, profiles, public groups, field-level security, secure authentication, password generation, etc.)
    • Full access to Custom Objects, Custom Tabs, Custom Applications, S-Controls and Get/Share with the App Exchange
    • Sharing Rules (role hierarchy, including functionality to setup sharing rules for custom objects)
    • API Access
    • Reports
    • Ability to brand all system communication (welcome emails, notifications, etc.)
  • Somewhat Important
    • Activity Management
    • Notes & Attachments
    • Documents
    • Workflow
    • Email Templates
    • Sforce Data Loader
    • Dashboards

The ability to buy this kind of license should be self-service with no need to work through a sales rep. I can envision going to the Salesforce site to sign up for a Platform Edition org (a unique instance of the application), input my information (contact info, billing information, etc.) and I am in. The cost model could be based on user logins and volume (API calls or storage). Perhaps there are cost tiers with maximum thresholds on # of users and/or volume before you auto-move to the next tier. This would make it easier to manage and predict cost. Billing would take place automatically at the end of each month against a credit card or other payment service like Paypal.

If something to this effect is done, it opens Salesforce up to a whole new market. Gone is the limitation of having a CRM license to take advantage of the platform.

I would suspect that something like this is on its way, but I have no evidence to support this. Does anyone know anything about this?

Comments (6) comments feed

Functionality Wishes (03/2006)

Here are a few of the functionality wishes that have come out of my recent projects. My wish list category has all of the functionality wishes that I have written about in the past, many of which have already been implemented by

Bubble Help
Bubble Help

This could improve usability quite a bit. It’d be great if we had the ability to configure a 1 to 2 sentence bit of help text on a field. It would work similar to the graphic on the right where Salesforce allows you to hover over the information icon for a bit more detail on that piece of functionality.

It’d be really nice have this capability at the Field level. Then, at the page layout level, you would have the ability to show the bubble help text (or not) for each field on the page layout.

Activate Bubble Help on Page Layout

Campaign Visibility & Sharing to allow for broader Campaign usage

I have written about this before, but the need comes up on almost every project I am on. Users regularly request the ability to manage a campaign-like event. This could be a seminar they are conducting, a dinner they are holding, responses to a series of emails they are sending about a new product line, etc. The Campaign module fits this mold perfectly. However, in today’s world, a user needs the Marketing User permission to run any kind of Campaign. Once they have that permission, they have visibility and edit rights to every Campaign in the system.

I am suggesting the Campaign object utilize sharing rules similar to Leads, Accounts, etc. This would allow users to setup personal campaigns without having to work through marketing and without having read-write access to every campaign in the system. This would support the ability to have:

  • Standard Company Marketing Campaigns viewable by everyone.
  • Private Company Marketing Campaigns viewable only by Marketing & key Executives.
  • Private Personal Campaigns viewable by the owner of the campaign and those that they report to (up the role hierarchy).
Threaded Activity Discussions

The Activity History list can become overwhelming, especially when being viewed at the Account level. It’d be really great to organize the activity history into activity threads. This would result in the Activity History list being viewable in a mode that would look similar to a message board . An email conversation would be organized under a thread. A meeting may spawn follow up emails and follow up calls. All of this could be viewable as a thread of activity history. The ability to expand/collapse these threads would be nice too.

AJAX-ify the UI

Someone well versed in UI design would probably have better ideas than I do, but it’d be great to be able to use AJAX technologies to provide better usability in the UI. The main premise would be to allow you to add/edit data quickly without having to refresh the entire page everytime. Serious study would need to be done by to understand common workflows and pick the “sweet spots” for improvement. Some random ideas:

  • Add a list of competitors next to the Competitor related list on the Opportunity page to quickly add competitors to it.
  • Add a similar list for the contact roles related list.
  • Ability to quickly log a call in a fashion similar to how you can add To-Dos in Backpack.
  • Hover over a link to another record (e.g. the Account field on a Contact record) and get a pop-up preview of key fields on that linked record without having to leave the page you are on. This would act similar to how you can hover over a movie name in Netflix to see a description of that movie with no need to click into that movie’s page.
Tagging records

The / salesforce integration by Thumbware helps with this, but it’d be nice to have it native to Salesforce so that navigation could be improved and so it could be accessed via the API. You should be allowed to tag any record you want. Every record should have a permanent tag based upon the object of the record. For example, an Account record for Arrowpointe Corp. would be auto-tagged with “Account”, but a user could add other tags for it such as “consultant, integrator,”. A tag cloud view would be available to navigate all of your records by tag like you can do on

Organizing Reports

There is only 1 Personal Custom Reports folder. This folder can grow very quickly and a naming convention is required in order to have any control over it. If a user was allowed to create multiple personal report folders, this problem could be minimized. The new Report Search feature has helped to minimize this issue.

B2C support

Salesforce is an Account-centric system and the Account object is meant to represent a business or organization, not an individual. However, many companies deal directly with individuals (B2C). Today, most of these companies will pirate the Account object to represent a personal account or a household for the purposes of managing Opportunities. They will usually create a Contact record too for the support of email and campaign functions. The concept of a Consumer Account that can be used with Opportunities, Cases, Campaigns and the Send Email function would be great so that you are not required to perform double-entry.

I believe Salesforce is working on B2C support. A client of mine was interviewed by Salesforce on this subject at the end of 2005. They are definitely thinking about it.

Field Validation Rules

Ability to add validation rules against a particular field based upon situational criteria. Example of how this could be used include:

  • If Stage = ‘Closed/Lost’, then a custom field called “Reason Lost Comments” is required.
  • If Account Type = ‘Customer’, then Account Number is required.
  • If Opportunity Probability is > 50%, a primary contact must be associated to the Opportunity

Today, you can work around this limitation by creating a formula field to display an error message when validation rules fail. However, this does not prohibit someone from saving the record.

Please comment with your thoughts and any other items on your own wish list.

Comments (3) comments feed

Next entries » · « Previous entries