Integration with salesforce.com – Underlying Technique

We as a Salesforce solution provider and consultancy are using specific languages and frameworks to implement and customize salesforce.com. To get a better understanding how we are working and how you can improve working with your salesforce.com account, we have created the Underlying Technique. It shows you in a quick overview which specific applications or functions you can use and also where you can use them. If you are looking for specific help with our ad sales industry solution powered by Salesforce, search our knowledge base.


The salesforce.com prebuilt applications provide powerful CRM functionality. In addition, salesforce.com provides the ability to customize the prebuilt applications that fit your organization. However, your organization may have complex business processes that are not supported by the existing functionality. In this case, the Force.com platform includes a number of ways for advanced administrators and developers to implement custom functionality. These include the Force.com Web Services API, Apex, and Visualforce.


Force.com Web Services API
Use standard Force.com Web Services API calls if you add functionality to a composite application that processes only one type of record at a time and does not require any transactional control (such as setting a Savepoint or rolling back changes).
Use Apex if you:

  • create Web services
  • create email services
  • perform complex validation over multiple objects
  • create complex business processes that are not supported by workflow
  • create custom transactional logic (logic that occurs over the entire transaction, not just with a single record or object)
  • attach custom logic to another operation, such as saving a record, so that it occurs whenever the operation is executed, not regarding whether it originates in the user interface, a Visualforce page, or from the Web Services API.


For more information, see the Force.com Apex Code Developer’s Guide.

Visualforce consists of a tag-based markup language that gives developers a more powerful way of building applications and customizing the salesforce.com user interface. With Visualforce you can:

  • Build wizards and other multistep processes
  • Create your own custom flow control through an application
  • Define navigation patterns and data-specific rules for optimal, efficient application interaction


For more information, see the Visualforce Developer’s Guide.


Functions of Salesforce.com and Force.com
The Force.com platform allows you to customize, integrate, and extend your salesforce.com organization using the language and platform of your choice:

  • Customize Salesforce with custom fields, links, objects, page layouts, buttons, record types, s-controls, and tabs to meet specific business requirements.
  • Integrate Salesforce with your organization’s ERP and finance systems, deliver real-time sales and support information to company portals, and populate critical business systems with customer information.
  • Extend Salesforce in presentation, business logic, and data services with new functionality that reflects the business requirements of your organization.

For more information about Force.com solutions, developer resources, and community resources, go to Developer Force.


Backward Compatibility
Salesforce.com strives to make backward compatibility easy when using the Force.com platform.
Each new Salesforce release consists of two components:

  • A new release of platform software that resides on salesforce.com systems
  • A new version of the API

We maintain support for each API version across releases of the platform software. The API is backward compatible, in that an application created to work with a given API version will continue to work with that same API version in future platform software releases.
Salesforce.com does not guarantee that an application written against one API version will work with future API versions: Changes in method signatures and data representations are often required as we continue to enhance the API. However, we strive to keep the API consistent from version to version with minimal changes-if any changes are required to port applications to newer API versions.


API End-of-Life
Salesforce.com is committed to supporting each API version for a minimum of three years from the date of first release. In order to improve the quality and performance of the API, versions that are more than three years old may cease to be supported.
When an API version is scheduled to be unsupported, an advance end-of-life notice will be given at least one year before support for theAPI version is ended. Salesforce.com will directly notify customers using API versions scheduled for end of life.
All information adopted from salesforce.com.


Workflow
A workflow is a depiction of a sequence of operations, declared as work of a person, a group of persons,an organization of staff, or one or more simple or complex mechanisms. Workflow may be seen as any abstraction of real work, segregated in work share, work split or other types of ordering. For control purposes, workflow may be a view on real work under a chosen aspect,thus serving as a virtual representation of actual work. The flow being described often refers to a document that is being transferred from one step to another.
A workflow is a model to represent real work for further assessment, e.g., for describing a reliably repeatable sequence of operations. More abstractly, a workflow is a pattern of activity enabled by a systematic organization of resources, defined roles and mass, energy and information flows, into a work process that can be documented and learned. Workflows are designed to achieve processing intents of some sort, such as physical transformation, service provision, or information processing.
Workflow concepts are closely related to other concepts used to describe organizational structure, such as silos, functions, teams, projects, policies and hierarchies. Workflows may be viewed as one primitive building block of organizations.
The term workflow is used in computer programming to capture and develop human-to-machine interaction. Workflow (management) software aims to provide end users with an easier way to orchestrate or describe complex processing of data in a visual form, much like flow charts but without the need to understand computers or programming.
All information adopted from wikipedia.org.

30 Jul 2009