Showing posts with label Release Updates. Show all posts
Showing posts with label Release Updates. Show all posts

Monday, July 27, 2015

SalesForce Release Updates in 15 for Administrators & Developers

Hi Friends,

Today I am sharing some of the main SalesForce Release Updates in 15 for Administrators & Developers:

Administrative Changes:
---------------------------------

1.) Number of Custom Profiles Allowed:
To ensure better performance, your organization can have up to 1,500 custom profiles per user license type. If your organization has
too many custom profiles, consider using permission sets to grant additional permissions and access settings to the users who need
them.

2.) End of Support for JavaScript, iFrames, CSS, and Other Advanced Markup in HTML Area Home Page Components:
We are now enforcing the ban on unsupported code in HTML Area home page components. JavaScript, CSS, iframes, and other
unsupported markup is now removed when you edit and save an HTML Area home page component. A cleaned version is saved,
and all unsupported content is lost.

3.) Administrators Can Log in as Any User

4.) There are many changes in Process Builder like Reference System-Provided Values, After you deactivate a process, you no longer have to wait 12 hours before you delete it and improved the Process Builder user interface so it’s easier to manage versions, find and reference fields, create Chatter messages and more.

5.) There are many changes in Visual WorkFlow like Verify Picklist Values in a Flow, Verify Multi-Select Picklist Values in a Flow, After you deactivate a process, you no longer have to wait 12 hours before you delete it, Reference Global Variables in a Flow.

6.) Access Data Across Multiple Organizations with the Lightning Connect Salesforce Connector

Developer Console Changes:
--------------------------------------

1.) Work with Lightning Resources in the Developer Console: To create Lightning resources, you must use a Developer Edition organization that has a namespace prefix.

Visualforce Changes:
-----------------------------

1.) Add Data Access to Your Visualforce Pages with Remote Objects (Generally Available)


-  in: in, used for finding a value that matches any of a set of fixed values. Provide values as an array, for example, ['Benioff', 'Jobs', 'Gates'].

- nin: not in, used for finding a value that matches none of a set of fixed values. Provide values as an array, for example, ['Benioff', 'Jobs', 'Gates'].

- Here’s a query definition that searches for records that match any of several last names.

{
where:
{
LastName: { in: ['Benioff', 'Jobs', 'Gates'] }
}
}

2.) Customize Visualforce Maps with Custom Markers

icon="{! URLFOR($Resource.MapMarkers, 'moderntower.png') }" />

3.) Enrich Visualforce Maps with Info Windows:

4.) Accessibility: “*” Annotation in Labels for Required Fields Restored

5.) PageReference getContent() and getContentAsPDF() Methods Behave as Callouts

Apex Code Changes:
----------------------------

1.) Submit and Monitor Jobs for Asynchronous Execution with the Queueable Interface:

Getting an ID for your job: When you submit your job by invoking the System.enqueueJob method, the method returns the ID of the new job. This ID corresponds to the ID of the AsyncApexJob record. You can use this ID to identify your job and monitor its progress, either through the Salesforce user interface in the Apex Jobs page, or programmatically by querying your record from AsyncApexJob.

Chaining jobs: You can chain one job to another by starting a second job from a running job. Chaining jobs is useful if you need to do some processing that depends on another process to have run first.

Example
This example is an implementation of the Queueable interface. The execute method in this example inserts a new account.

public class AsyncExecutionExample implements Queueable {
public void execute(QueueableContext context) {
Account a = new Account(Name='Acme',Phone='(415) 555-1212');
insert a;
}
}

To add this class as a job on the queue, call this method:
ID jobID = System.enqueueJob(new AsyncExecutionExample());

AsyncApexJob jobInfo = [SELECT Status,NumberOfErrors FROM AsyncApexJob WHERE Id=:jobID];

Testing Queueable Jobs:

@isTest
public class AsyncExecutionExampleTest {
static testmethod void test1() {
// startTest/stopTest block to force async processes
// to run in the test.
Test.startTest();
System.enqueueJob(new AsyncExecutionExample());
Test.stopTest();
// Validate that the job has run
// by verifying that the record was created.
// This query returns only the account created in test context by the
// Queueable class method.
Account acct = [SELECT Name,Phone FROM Account WHERE Name='Acme' LIMIT 1];
System.assertNotEquals(null, acct);
System.assertEquals('(415) 555-1212', acct.Phone);
}
}

Note: The ID of a queueable Apex job isn’t returned in test context—System.enqueueJob returns null in a running test.

Chaining Jobs:

public class AsyncExecutionExample implements Queueable {
public void execute(QueueableContext context) {
// Your processing logic here
// Chain this job to next job by submitting the next job
System.enqueueJob(new SecondJob());
}
}

Queueable Apex Limits:

• The execution of a queued job counts once against the shared limit for asynchronous Apex method executions.
• You can add up to 50 jobs to the queue with System.enqueueJob in a single transaction.
• The maximum stack depth for chained jobs is two, which means that you can link a job only once and have a maximum of two jobs in the chain.
• When chaining jobs, you can add only one job from an executing job with System.enqueueJob.

Run More Future Methods and Callouts:

- The execution limits of future methods and callouts in an Apex transaction have increased to 50 methods and 100 callouts respectively. These limit increases enable you to do more with Apex without having to be restricted by the previous limits. For example, you might have transferred much of your long-running code to future methods that you call and run asynchronously from your main class. If you did many of these future calls in your class, you might have hit the limit of 10 future calls in one transaction. With the increased limit of 50 calls, you can make many more future calls without likely hitting this limit.

The following limits have increased.
Maximum number of methods with the future annotation allowed per Apex invocation changed From 10 To 50

Maximum number of callouts (HTTP requests or Web services calls) in a transaction changed From 10 To 100

Run More Tests in Sandbox and Developer Organizations:

The test execution limit for asynchronous tests has increased and you can now run twice as many tests in large sandbox or Developer Edition organizations.
For sandbox and Developer Edition organizations, the following test execution limit for asynchronous tests has increased.

Maximum number of test classes that can be queued per 24-hour period is changed to the greater of 500 or 20 multiplied by the number of test classes in the organization

There are some changes in Apex Trigger and Apex Support for some standard objects
There are some updates in some Methods and Properties and Added New Classes and Methods too

Refer Page: 257 in "SalesForce Winter-15 Release Notes" PDF for the Trigger and Apex Support for New Object & List of Added Classes and Methods and Updates

In Summer-15 Release Notes: Apex Changes:
1.) New Code Coverage Calculation for Multiline Statements
2.) Iteration Order for Maps and Sets Is Now Predictable
3.) Receive Debug Logs Predictably
4.) Location and Distance Variables Allowed in SOQL and SOSL Queries in Apex
5.) Reduced Access for Apex Classes Using with sharing Keyword
6.) See Apex Method Parameters at a Glance

Lightning Changes:
--------------------------

Force.com Canvas Apps Don’t Work in Salesforce1 if Lightning Components are Enabled
You can’t use Force.com Canvas apps in Salesforce1 if you enable Lightning components. Any Force.com Canvas apps in your organization will no longer work in Salesforce1 if you enable Lightning components.

Limited Set of Out-of-the-Box Components: The beta includes a very limited set of components.
Namespace Prefix Required: Your organization must have a namespace prefix required to develop Lightning components.

Open Source Aura Framework

The Lightning Component framework is built on the open source Aura framework. Aura is open sourced at https://github.com/forcedotcom/aura. You can build general-purpose Web apps hosted on your own server. Your apps can be completely independent of Salesforce and your data in Salesforce.

Note that the open source Aura framework has features and components that are not currently available in the Lightning Component framework. We are working to surface more of these features and components for Salesforce developers.

Person Accounts Are Now Packagable in managed and unmanaged packages.

1.) Standalone Lightning Apps (Generally Available)
2.) Some Changes in Lightning Components and Events, you could refer for the list to "SalesForce Summer-15 Release Notes" PDF

Thanks,

Amit Goyal

Thursday, December 15, 2011

An Introduction to Force.com Winter-12 release updates and Features


A complete world of freedom on cloud, lets make the business freely on cloud


Force. Com Platform
(Freedom for the world on Business Class)
New Release with lot of new features & Updates
(Blessings Developers and Business Applications)



Force.com Editions-new Release in October-2011, “Winter-12”.
As we know the Force.com Platform has blessed the Force.com Developers with many freedoms and relaxations in Governor and Limits with the Summer-11 Release.

Force.com Platform has given many freedoms to the world so that the Force.com application can be integrated with any running in-house application.

1.       Social Contacts: Salesforce is providing an Social Enterprise Solution by this key feature. We can now stay connected and get the updates from our contacts by their social networking sites like Facebook, Twitter, LinkedIn too.

2.       Database.Com: Database.com is included with force.com in Developer, Enterprise and unlimited Editions of SalesForce. It can be purchased as a standalone service when an application needs a database.

3.       Permission-Sets: Permission-Sets in Winter-12 allow you to grant additional permissions to specific users. Permission-Sets allow granting additional permissions to a type of existing profile without modifying the profile.

4.       Schema Builder: The Schema Builder provides a graphical view of salesforce objects and their relationships.

5.       Chatter Rest API: The Chatter Rest API is a tool set for integrating chatter data with non-Salesforce applications.

6.       Native JSON (JavaScript Object Notation) Support: JSON is used to import and export data using API.  JSON is  an Object Based Language to import and Export Data to or from Salesforce Application.

7.       Cloud Based- Flow Designer: It is a cloud based flow designer for visual workflow is available as a better feature.It has a few button and three simple tabs which has all the elements that are used to create the flow. With the cloud based designer the number of elements and resources has been greatly reduced and reorganized to make it simpler and faster to build the flow which automates your business processes.

8.       SiteForce: It is a Facility provided about SalesForce to customer that he can build his public site like other websites within some click and can place there salesforce data on the site. All the building of this website will be done in clicks.

9.       Force.com Productivity Enhancements: There are several functionality provided by salesforce with Winter-12 released to enhance the productivity like default landing page, homepage tools, quick links, easy to build salesforce app and appExchange, and some more.

10.   Data.com: Building on the functionality you are familiar with of Jigsaw, Data.com is providing several new features.

11.   Chatter Enhancements: Salesforce is updating its chatter features and functionality day by day. So in this again its providing many exciting features which is easy to access and flexible.

Some more features are available with Salesforce, We will discuss all this features in detail in my upcoming posts.

12.   SalesForce For Outlook Enhancements
13.   Forecasts
15.  Analytical Snapshot

In Addition to all of this features Apex has few of other updates too in Winter-12 such as,

New system methods:  isBatch(), isFuture(), and isScheduled()

Allow for determination of the manner in which the code was invoked.
Used to execute different code if run is batch, part of an @future method, or via the Apex scheduler.

Raised Governor Limits for batch Apex and @future methods

SOQL queries raised from 100 to 200.
Code statements raised from 200,000 to 1000000
Heap Size raised from 3MB to 6MB

New @ReadOnly annotation for Web services and schedulable interface

Allows unrestricted database queries
Prevents any DML operations within request

API for asynchronous test runs (BETA)

Allows developers to create asynchronous test runs

Public Test Classes

Test classes no longer need to be private
Allow for creating reusable public test classes for common test data creation

Force.com Developer Console

Renamed and improved from the previous System Log Console
Continued improvement and addition of new tools
Hope the information given above is useful for you all as i personally feel it useful so i shared this with we all SalesForce Developer and aspirants.

I expect the same sharing process continues from you all.

Comment and Suggestion will be appreciable from my side.

Please rectify me if I am wrong somewhere in this post so that I can deliver and share the quality data with all.

For further information, Please refer Winter-12 Release Notes.
For further Dicussion, Please contact me through this blog itself by your valuable comments which i am expecting.

Thanks,
Amit Goyal