Skip to main content

Visualforce Remote object – I’m single

Visualforce remote object are proxy object that allows basic DML operation on sObject directly from java script. Without having any controller class we can able to retrieve, create, update, upsert and delete operations in a single visualforce page itself. Remote object call don't count towards API request limits and it supports call back functionality. This is an efficient method when creating page for use in Salesforce1 or working with libraries such as jQuery or AngularJS. Currently remote object is available as a developer preview. 

Following are two main parts of VF Remote object

Access definitions - Written in visualforce using new Remote objects components. This will create the javascript proxy object.

Data access function – Written in javascript. In this section we will perform the create, select, edit and delete operation for the proxy object record. It’s interesting right, lets have a look into each operations. 

Here is the single visualforce page(GitHub), that  will display all the contact records from your org, you can search contact based on name, edit or delete the contacts records without writing single line of apex code or any API call.

screenshot-c.gus.visual.force.com 2014-08-13 16-37-40
Retrieve Record
Below is the code which will retrieve the records on the remote object, let look into that in detail. First we have to instantiate the remote object. This is common for all our DML operation method. ‘cont’ is jsShorthand for our remote object Contact.

retrieve() method on the remote object instance will fetch the records. This method accepts two arguments Criteria(where conditions) and Callback function(we need to process the retrieved records either to store or display in the page)



Create record
The Create() method on remote object instances will allow us to insert new records.Field values are set by passing in a JSON string with values for the fields to set on the new model



For updating the record call update() method and for deleting record call del() method, the logic remains same for passing the values where we need to pass ID of the record on which we need to perform update operation.

You can find the complete source code of the page in this link. To get more details on Visualforce remote object check here. Happy Coding ;)

Comments

Popular posts from this blog

Avoid Duplicate Records Using Flow

In this blog post lets see how to avoid duplicate records in Salesforce using the powerful feature – Flow , As the word says, flow easily flows to fulfill the requirements with ease. ☺  Many think of appexchange solutions and source code to avoid the duplicate record in salesforce, But the method I'm going to explain here is completely different and very simple. It helps you to reduce your code and can easily rebuild for other objects with different field logic with simple clicks. Lets jump into the solution, we will use flow to check duplicate record logic and use apex trigger to initiate the Flow whenever a record is created or updated. Visual Work Flow : [Click] First we will create the Flow to check the duplicate records based on the name and store the result in the variable. In this example, we will use the Account object for the dupe check. Step 1  : Create a new visual flow with the Name ‘ DuplicateAccountCheck ' Step 2  : Click and drag the RecordLookup into t

Export records from List view – ListView API

As part of the Winter’15 release salesforce introduced the List View API features which helps us to get details and records of list views for an object. I was started exploring more about the List view API and trying to build an use case using that. So I searched about List View in the IdeaExchange site then found that many users are looking for a solution to export records to excel directly from the list view. I built a solution for that Idea, which helps user to download all the records directly from the List view for both standard and custom object. You don’t have to make any change in the code to use this functionality for different objects. All you need is to create a custom button for that object as mentioned below. Lets take an example for Account object 1. Go to Setup –> Accounts –> Buttons, Links and Actions 2. Click ‘New Button or Link' 3. Enter  Label, Name and select display type as ‘List Button’ 4. Content source as “Onclick Javascript” and paste the

Lightning Picklist Path Component

Create your custom path for picklist field in any standard and custom objects. The new lightning picklistpath component in Winter18 helps us to display the picklist field progress similar to the lightning path. The path is rendered as a horizontal bar with one chevron for each picklist item, this component doesn't have key fields or guidance information and doesn't display the mark complete button similar to the lightning path.  <lightning:picklistPath aura:id="picklistPath" recordId="{!v.recordId}" picklistFieldApiName="status" / > The picklist path will display the progress based on the recordId and picklistApiName attribute value. Specify the API name of the picklist field in the picklistAPIName attribute which you want to display in the page layout and specify the Salesforce record ID in the recordID attribute so it renders the current value for the field in the page.   In this example, the status field in the case object disp