Monday, May 29, 2017

New Google+ Community Launched - Nepz Solutions !!

A new Community ?

  yes, a new community specifically for who's interested in Salesforce in general & more specifically in Apex, Visualforce, Lightning & also in basic web technologies like HTML, CSS & Javascript.

click here to join - Nepz Solutions - Google+ Community

What is it for ?

  I have been blogging & publishing videos for Salesforce Developers for quite sometime. But, it looks like more of a one way communication. So, i thought to create a community where we actively discuss about various development issues & get to know about each other & help each other. Here's the few things i'm expecting to deliver through this community,

  • Tutorials
  • Share Development Tips & Tricks
  • Online Events (like coding puzzles, bootcamp, etc)
  • Weekly Hangouts
  • Personalized Training (one to one)

What is next ?

  As soon as i reach 10 members in the community, i'm going to schedule a launch event & discuss about the community & chit chat with the people to get to know about each other.

In Video ?


Thursday, February 23, 2017

Visualforce - Beyond Basics Series 50 - Easy Global Search

What is Global Search ?

In Salesforce, there's a standard global search functionality at the top Header. This will search all the text, email, phone fields in Objects & list them.


How to implement one ?

If you want to implement one, it's simple to do so. we need to use SOSL for fuzzy search on fields in specific objects.


Where is the Code ?


Any Screenshots ?




Walk through in a video ?


Visualforce - Beyond Basics Series 49 - Mark a table column as Required

How to give help text for a Table ?

In visualforce, table can be generated using PageBlockSection, PageBlockTable, DataGrid tags. If one wants to provide help text for a column, they need to use apex:facet tag.

How it will be useful to indicate Required Field ?

In some cases, developer may want to indicate a column as Required. So, it's possible to provide that in the table column header


Where is the Code ?


Any Screenshots ?



Walk through in a video ?


Wednesday, February 22, 2017

Visualforce - Beyond Basics Series 48 - Required field Help Text

How to give more emphasis on Required fields in form ?

Prevention is better than Cure. Most of the time users forget to fill in required fields in the form & realize than while saving the record.


How to prevent that ?

Giving a highlighted Help text through each section of the forms would give more emphasis on required fields. By doing so, user will fill some values & will never have any issues while saving the record.

Where is the Code ?


Any Screenshots ?




Walk through in a video ?


Visualforce - Beyond Basics Series 47 - Extend standard sObject

What is the purpose of extending the sObject ?

There's no inheritance to standard sObject. So, if one wants to extend the record, one need to create a wrapper to store the record inside it.

How to do that ?

The wrapper is a Apex Class which will have the record and other extended fields. So, in visualforce page, both standard and extended fields can be used seamlessly.


Where is the Code ?



Any Screenshots ?



Walk through in a video ?


Visualforce - Beyond Basics Series 46 - Treat each User differently

What is Personalization ?

Sometimes Visualforce page needs to behave or look differently for different set of users. This is called Personalization.

How do achieve this ?

In salesforce, we can use 'Custom Settings' to store the personalization data for User, Profile or entire Organization. We need to be very careful in not misusing this. If any data that does n't different between user, then it's App Configuration which should be stored in 'Custom Metadata'.

Where is the Code ?


Any Screenshots ?



Walk through in a video ?


Visualforce - Beyond Basics Series 45 - Keep the pages alive

What is keep-alive for the page ?

For every visualforce page, there's a timout for session, after which the session expires. This is configurable under security controls in Salesforce Setup. Normally, it will be few minutes in best secured Org.


How to prevent that ?

But, practically, you might have a visualforce page which requires more time for the User to work on it. Say, if they take 30min to configure products for an opportunity, then, they were pulled for a meeting. So, when they come back after 30 min & click save, they should be disappointed to see login page & potentially losing all the effors.

To avoid such scenarios, we can use actionPollar to poll for an empty request to server, so that session will be kept alive forever.

Where is the Code ?


Any Screenshots ?



Walk through in a video ?


Visualforce - Beyond Basics Series 44 - Inline VF Page Redirect

What is Inline VF Page ?

Inline Visualforce page means, a technique of embedding visualforce page into the main detail/edit page of standard layout for a record.

How to redirect or refresh the page ?

This inline VF Page lives inside a iframe. So, when you do redirect or reload. the detail/edit page won't get affected. you may try this now, if you haven't faced this.

Where is the Code ?



Any Screenshots ?



Walk through in a video ?


Visualforce - Beyond Basics Series 43 - Use QR Code in Page

What is QR Code ?

QR Code is the visual representation of text. It has very similar attributes to Bar Code. But, it's more powerful than it.

What are the applications ?

The main application is to scan the URL, rather than typing in the browser. And embedding Contact details, Product details for the Business.

How it will be useful in CRM System like Salesforce ?

In Salesforce, we may need to get the QR Code from external system containing lead information (or) Contact Information (or) Cases. In return, we may send QR Code to other systems which accepts the data in QR Code format. Barcode/QR Code has very important role in every business. So, converting the format between QR Code & text is vital for a Organisation.


How to implement the feature very quickly ?

It's not necessary to implement the complex algorithms required for processing QR Codes. As there are services available in the Cloud, we could reuse them.

Where is the Code ?


Any Screenshots ?




Walk through in a video ?


Visualforce - Beyond Basics Series 42 - Inline Edit with No Apex

How normally inlineEdit implemented in Visualforce ?

The best way to achieve inlineEdit for fields in Visualforce is using mode = 'InlineEdit' in PageBlock tag. This is the best and efficient way to do it. However, there's only one inconvenience, it opens up only one field for editing.
Then, user needs to click on each field to edit. So, what if user wants to edit all the fields in the row ?

How to edit all the fields in the row ?

When user double clicks a field in the row, then redirect to the same page with a Query Parameter that determines which row should be opened for Editing.


Where is the Code ?


Any Screenshots ?

Walk through in a video ?
















Tuesday, January 24, 2017

Visualforce - Beyond Basics Series 41 - Dynamic Forms

Issue with Standard Forms in Salesforce ?

In Standard record Edit Page, there's no way we can hide/show a set of Fields for Users to Fill In. This is the big issue when you have hundreds of fields that gets presented to the User.

How to solve with visualforce Page ?

In visualforce page, this problem can be solved by showing/hiding different sections based on the 'certain value' in Fields (or) certain User Action.

Where is the Code ?


Any Screenshots ?



Walk through in a video ?


Sunday, January 15, 2017

Visualforce - Beyond Basics Series 40 - Static Resource is not the only one

Where do you normally store resources in Salesforce ?

As a developer, we know that most of the resources for projects like images(icons, labels, loaders), javascript, css files is Static Resource. But, there are few different areas in salesforce we could leverage.


What are the specific purposes for different areas ?

These are the different areas where you could store resource & use them in your visualforce page.

Static Resource

Like the name suggests, one should store the resources that is a static one which doesn't change over the course of time. So, all images, css/js files which has a very stable version should be stored in it.


Tips :


  1. One tip is that Org should maintain a proper repository for their static resources & avoid duplicates among the resources. For example, i have seen jquery, loader images all over the static resource packages. This is very ineffective management for the storage space allocated for static resource.
  2. Another tip is to not create package per projects. This will lead to contain duplicate resources. Rather than, better maintain static resource per resource like JS, CSS, LOGOS, LOADERS, etc.


Notes & Attachments

If the resource like Text Documents (rtf, msdoc, csv, pdf, css, js, etc), Images (jpeg, png, gif), videos (flv, avi, mp4, etc) are attached to any Standard/Custom objects like Account, Contact, etc, we could leverage that & use those in Visualforce Pages.


Example :


For example, recently, i have built a visualforce page that displays the product image for an account. I could have uploaded them in static resource. But, its specific to the Account, so i have added them to Notes and Attachments & used them in visualforce.


Documents

This is the storage area one should use when the resource is not associated to any Object. If it's a single file that is slightly large one, could easily fit in this area. One more advantage is that not only developers, admins can also share this space.


Chatter Files

This is the storage area shared between chatter users, admin & developers. But, one should use this space only if the visualforce page is related to chatter functionality. Otherwise, there's no guarentee that this resource will exisit, as any chatter/admin could modify/delete this resource.

Hosted External

This is the technique of storing the resources outside Salesforce. This is also a efficient method, as there are so many reliable systems out there today for each resources.
         Javascript  - Google hosted resources, JQuery, Angular, etc
         Images      - Github, Flickr, etc
         CSS          - Google hosted resources, Bootstrap, W3.CSS, etc
         doc           - Google docs, etc

Where is the Code ?

For illustration, i have shown the images from 'Static Resource', 'Notes and attachments' & Documents.


Any Screenshots ?


Walk through in a video ?


Wednesday, January 11, 2017

Technical Architect - Easy Guide - Series End

What is new in Technical Architect Certification ?

Salesforce decided to split CTA exam into different parts based on different vertical. To be honest, this is a very cool move, as no one can really master everything in Salesforce.
I know few CTA's who worked in only few areas, but still  managed to get CTA. This is totally unfair when salesforce claims this is the top level certification they have.

  • Apex & Visualforce Architect
  • Application Architect
  • Communities Architect
  • Identity Architect
  • Deployment Architect
  • Integration Architect
  • Data & Access Architect
  • Mobile Architect


How it's going to impact us ?

As a developer/admin, this is going to really affect us, if we are preparing for it over few months/years. If anyone passed Salesforce Multiple Exam before 31 Jan 2017 they can still apply for Technical Review board round. Otherwise, they need to meet the new requirements to appear for
Review board.

Preparation Guide ?

Salesforce has given a collection of free resources in the form of free ebook. 

Click here - Free ebook - Salesorce Technical Architect


What i have decided ?

Since, i love to Architect, Design & Code myself, i really don't want to just focus on one level of skills. Moreover, if someone want an Architect job from me, they may not expect any development work, So, i really don't want to get to that point. That's why i decided to get architect certification whichever involves more development work like 'Apex & Visualforce Architect', 'Integration Architect','Mobile Architect'

Any idea on career path ?

I would advice all my blog readers that there are multiple domains & levels of skills required to do any kind of work in salesforce. So, be stick with what you really love to do & get expert in that.


No more videos on CTA ?

So, i have decided to stop contributing to CTA, as it is getting very diverse & I'm going to share what i'm currently working on, like Lightning, Javascript, Apex, etc.

Walk through in a video ?



Monday, January 2, 2017

Visualforce - Beyond Basics Series 39 - Modern Upload Button

How to upload an attachment to record ?

Using apex:inputFile tag, we can upload a file & store that as the attachment to the record. The master record id should be assigned to parentId for the Attachment.


What is the traditional way ?

Traditionally, developers use the same styling of inputFile as it is. That means there will be an upload button for user to select the file & there has to be a commandButton/commandLink to call the action function.


How to transform that to modern look ?

But, in a modern Upload button solution, a Upload label will be styled as a Button. Then, the inputFile tag will be inside the label & hidden from user. So, user will see only Label(Button), not the acutal inputFile.

Where is the Code ?

Here's the code that illustrates the traditional method & more modern method to upload the file.

Any Screenshots ?



Walk through in a video ?