Trigger:
Workflow:
Yes possible. Controlling field should be Check box or pick list.
A setting that defines when time-dependent workflow actions should fire.
We can customize different things on page layout like, Fields, Buttons, Custom Links and Related Lists. We can also create sections.
Public websites and applications that are directly integrated with your salesforce organization without requiring users to log in with a username and password.
Tab is a user interface component to user creates to display custom object data.
There are three type of tabs:
To use javascript remoting in a vf page , add the request as a java script invocation with the following from.
[namespace.] controller.method (
[parameters….,]
Call back Function,
[configuration]
);
Role Hierarchy:
OWD:
Manual Sharing:
Criteria Based Sharing rules:
Apex sharing:
Share object is available for every object(For Account object share object is AccountShare ). If we want to share the records using apex we have to create a record to the share object.
Record Types are restrict the pick list values and assign to the different page layouts for different Record Types.
Standard controller, select option, pagereference, messages,etc.
If we want to give access to other users we use sharing rules.
Yes. Just like S-Controls. Visualforce pages support embedded merge fields.
We can use database.executebatch ( ) method to programmatically begin the batch job.
Syntax:
Public static ID execute batch ( sObject class name)
Public static ID execute batch (sObject class name, integes scope)
The above two methods are static methods of database class. We can use any one of the method to execute the batch job.
We are having two types of relationships, they are:
According to the field selection on one field filter the pick list values on other field.
Batch Apex:
Batch Apex allows you to define a single job that can be broken up into manageable chunks, whereas every chunk can be processed separately.
With ApI version 18.0 and later /you can use group by with aggregate functions, such as sum() or max() to summarize the data and enable you to rollup query results rather than having to process the individual records in your code.
Syntax :
[ GROUP BY field GROUP BY LIST]
SOSL statement evaluate to a list of sobjects , where each list contains the search results for a particular sobject type, The result lists are always returned in the same order as they were specified in the query.
If a SOSL query does not return any records for a specified sObject type , the search results include an empty list for that sObject.
For example, you can return a list of accounts, contacts, opportunities and leds that begin with the phase map.
Note :
The syntax of the classon Apex differs from the syntax of the FIND clause in the SOAP API.
In Apex, the value of the FIND cause is demarcated with single quotes.
Example:1
FIND 'map*' IN ALL FIELDS RETURNING account (Id, Name], Contact, Opportunity, Lead.
In the Force.com API, the value of the FIND Clause is demarcated with braces.
Example:2
FIND {map*} IN ALL FIELDS RETURNING account [Id,name], contact ,opportunity,lead.
From search list , you can create arrays for each object returned.
Account [ ] accounts = (( list < accounts > ) search list [0] );
Contact [ ] contacts = [( list ) search list [0]) ;
Opportunity [ ] opportunities = ((list < opportunity> ) search list [2]) ;
Lead [ ] leads = (( list < lead> ) search list [3]);
A protocol that defines a uniform way of passing XML-encoded data. SOAP Stands for Simple Object Access Protocol.
Action function:
Invoke the controller method from java script using AJAX and we can use action function from different places on visual force page.
Action support:
Invoke the controller method using AJAX when even occurs on page like onMouseOver, onClick, ect… and we can use action support for particular single apex component.
Page Block:
For default salesforce standard format.
Data table:
To design custom formats.
A Batch class allows you to define a single job that can be broken up into manageable chunks that will be processed separately.
One example is if you need to make a field update to every Account in your organization. If you have 10,001 Account records in your org, this is impossible without some way of breaking it up. So in the start() method, you define the query you’re going to use in this batch context: ‘select Id from Account’. Then the execute() method runs, but only receives a relatively short list of records (default 200). Within the execute(), everything runs in its own transactional context, which means almost all of the governor limits only apply to that block. Thus each time execute() is run, you are allowed 150 queries and 50,000 DML rows and so on. When that execute() is complete, a new one is instantiated with the next group of 200 Accounts, with a brand new set of governor limits. Finally the finish() method wraps up any loose ends as necessary, like sending a status email.
So your batch that runs against 10,000 Accounts will actually be run in 50 separate execute() transactions, each of which only has to deal with 200 Accounts. Governor limits still apply, but only to each transaction, along with a separate set of limits for the batch as a whole.
Disadvantages of batch processing:
Email services is an automated process that use Apex classes to process the contents, Headers, Attachments of Inbound Email.
While you can instantiate a class based on its name using the Type system class, you can’t dynamically locate a method and execute it. The best that you can do is to dynamically create an instance of a class that implements an interface and executes one of the methods on the interface.
A web directory where hundreds of appexchange apps are available to salesforce customers to review, demo, comment upon, and /or install. Developers can submit their apps for listing on the appexchange directory if they want to share them with the community.
An app development model that allows apps to be defined as declarative "blueprints”, with no code required. Data Models, objects, forms, workflows, and more are defined by Metadata.
Apex-lang is about as close to a Java-style library as you can get. Contains several string, database, and collection utilities that mimmick Java functionality. Be aware though, some stuff including Comparing and Sorting collections is out of date with the advent of the Comparable interface in Apex.In addition to apex-lang, and like you suggest, I typically create or reuse static helper methods throughout my projects. Static helper methods are very convenient for reusing code in Chatter functionality, DML handling, Exception handling, Unit testing, etc.
Syntax:
global class class_name
{
@future
Static void methodname(parameters)
{
//body of the method
}
Yes,user can upload their custom logo in documents and then they choose that logo for organization.
There are 4 types of reports in Salesforce:
S-Controls are the predominant salesforce.com widgets which are completely based on JavaScript. These are hosted by salesforce but executed at client side. S-Controls are superseded by VisualForce now.
Salesforce Object Query Language is used to query that records from the database.com based on the requirement.
There are 2 types of SOQL Statements:
1.Static SOQL:
2.Dynamic SOQL:
An application model in which all users and apps share a single, Common infrastructure and code base.
There are a couple of decent Dreamforce presentations here:
Team Development:
Possible, Probable, and Painless and Continuous Integration in the Cloud.
We ran into some issues with this in practice and there was no way to get true automation (i.e., set it and forget it). We were also set it up with Selenium.
Here were the issues that I remember:
SOQL:(Salesforce Object Query Language)
SOSL:(Salesforce object Search Language)
The transient keyword prevents the data from being saved in to view state. This should be used for very temporary variables.
It will invokes the Apex class to run at specific time.
Anybody who want to schedule their class they have to implement schedulable interface.
Schedule Interface:
The class that implements this interface can be scheduled to run at different intervals. This interface has several methods.
They are:
Public void execute(schedulablecontext sc) etc.