Skip to main content

Posts

Apex JSON Parser

Below apex method helps in finding record corresponding to a key from the JSON. public static String parserUtility(String jsonString, String recordType){         try{             JSONParser parser = JSON.createParser(jsonString);             while (parser.nextToken() != null) {                 if (parser.getCurrentToken() == JSONToken.FIELD_NAME) {                     parser.nextToken();                     if(parser.getCurrentName() == recordType){                         return parser.getText();                     }                 }             }         }c...

Moving Javascript Buttons to lightning alternatives

As locker service is being introduced, Below are the alternatives with the required functionalities that were fulfilled by custom javascript buttons: JavaScript Button Top Use Cases Lightning Alternatives Declarative/Programmatic Validate fields (presave) Quick actions (using default values and/or formulas) D Apex triggers P Create records with prepopulated values Quick actions (using default values and/or formulas) D Redirect to a record page Custom URL buttons D Redirect to a Visualforce page Visualforce quick actions P Lightning actions P Prefill values based on inputs Lightning actions P Confirmation pop-up screens Lightning actions P API calls (Salesforce and third-party) Lightning actions P Feedback pop-up screens Lightning actions P Third-party integration Lightning actions P Mass actions on list view records Custom Visualforce buttons on list views P Use link: https://trailhead.salesforce.com/modules/lex_javascript_button_migration/units/javascript_button...

Creating Remote Site Settings Dynamically

As remote site setting is essential for making callouts to external systems. We can create remote site through apex code: Steps: 1.       Add a metadataService class either through WSDL or you can use attached  file: metadataService.class 2.       Use below code: public void createRemoteSiteSetting (){     MetadataService.MetadataPort service = createService();     MetadataService.RemoteSiteSetting remoteSiteSettings = new MetadataService.RemoteSiteSetting();     remoteSiteSettings.fullName = ‘abc123';     remoteSiteSettings.url = 'http://www.clrdp727.com';     remoteSiteSettings.isActive=true;     remoteSiteSettings.disableProtocolSecurity=false;     service.createMetadata(new List<MetadataService.Metadata> { remoteSiteSettings }); } // This method returns the metadata service, using this we ...

Fetching the list of Classes along with their code coverage using API

Tooling API Fetching the list of Classes along with their code coverage using Tooling API We can find the list of classes along with their code coverages from external system. PFB code to fetch the list of classes along with their coverage details, Using  Tooling API. (Here rest call is made, same can be implemented by SOAP). ----------------------------------------------------------------------------------------------------------------------     HTTPRequest req = new HTTPRequest();     String myQuery=’ select+id,ApexClassOrTrigger.Name,NumLinesCovered,NumLinesUncovered+from+ApexCodeCoverageAggregate’;     req.setEndpoint('<Login Instance> /services/data/v39.0/tooling/query/?q= '+myQuery); // Login Instance Example:  https://demo727-dev-ed.my.salesforce.com     req.setMethod('GET');     req.setHeader('Authorization', 'Bearer ' +<Enter the Session Id>); // Example: U...