Audit9 Blog

The Audit9 Blog provides content for Architects, Developers and ISVs with a technical interest in the Salesforce cloud platform and ecosystem.

Blog authored by Mark Cane, Salesforce Certified Technical Architect. All views expressed are mine and mine alone. All content provided on this blog is for informational purposes only.

Org Behaviour Custom Setting

As a best practice I implement a hierarchy type Custom Setting (OrgBehaviourSettings__c) which enables a highly useful, org-level selective switching-off of dynamic behaviour such as Triggers. The setting usually has independent flags for workflow rules and validation rules also, with the setting fields being referenced in rule entry criteria and formula expressions respectively. Having such […]

Salesforce Architect Essential Reading

For this post I started pulling together my own set of links to the whitepapers and documents I consider essential reading for any architect working in the Salesforce space. In doing so I came across the link below, where salesforce.com have already done a great job of this – bookmark this page now! Salesforce Architect […]

Interaction Design

Some 18 years ago I attended a Microsoft developer academy event in Cambridge (UK) – one of the sessions I attended was delivered by Alan Cooper and addressed the topic of interaction design. This session had a fundamental impact on how I viewed software development – and still influences my thinking today. I can’t recommend […]

Salesforce Development Process

There are typically two interpretations of the term “development process” – one being the tools, practices and methods applied in software development (i.e. methodology, plus build automation, standards etc.) the other being the process applied to get from requirements to working software (i.e. iterative or waterfall, plus how the analysis-design-build-test-release disciplines are executed). This post […]

Salesforce Data Storage

In reading this interesting title (via MEAP) on the trendy topic of Big Data, I was reminded of the many times I’ve had to explain the general principles of the Salesforce data storage model and specifically how many records can be stored per user. In short each user license gets an allowance, the edition of […]

Salesforce Touch Platform Guide

The newly released Salesforce Touch Platform Guide provides a very useful consolidation of both technical information and design guidance pertinent to mobile development on the Force.com platform. Topics covered include Identity, Connected Apps, Mobile Components for Visualforce etc. All in all an essential read for anyone considering mobile app development. Of particular interest is the […]

Partner Portal Record Access

Finally, this post concludes a series exploring record access considerations with the different portal user license types. This post covers the Partner Portal type. By way of reminder, the decision tree below should be used when making the high-level decision on the appropriate license type for the different user populations within your portal. Partner Portal […]

Salesforce Ant Scripts

This brief post illustrates how Ant scripts can be used in a continuous integration scenario, i.e. where metadata is held in a source code control (SCC) repository such as Subversion. In a CI scenario developers would typically be working in isolated developer orgs with periodic commits of unit tested code to SCC following peer-review (hopefully). […]

Salesforce Winter 13 Force.com Top 10

The Winter 13 release (v26.0 in API terms) will be with us shortly, yes the summer is officially over. Sandboxes updates start on the 7th September. For architects and developers this release brings some great new features, the Top 10 below is in order of my own personal interest. 1. Canvas Framework – Pilot. The […]

Salesforce Known Issues List

On occasion I come across platform behaviour that simply doesn’t make sense. A recent case in point being a v25.0 VF bug where bottom buttons in a pageBlock component ignore the edit and show button directives related to inline editing. In such cases I find it useful to check the Known Issues List in addition […]