Author Archives: Lin

KISS principle for apex code with List and Map in Salesforce
- Mar
- 17
- Posted by Lin
- Posted in APEX, Salesforce
Here are some KISS (Keep it simple, stupid) principles for cleaning our apex code with List and Map in Salesforce, as Linus Torvalds said: “Talk is cheap. Show me the code”, let me show you as below: Initialize Map Normal KISS principle Select(SOQL) to Map Normal KISS principle Initialize List Normal KISS principle Map keys […]
read moreBatch Apex running mode (parallel and series) and how to maintain state in it
- Jan
- 09
- Posted by Lin
- Posted in APEX, Salesforce
In my early post, I’d shared about how to write a Schedulable Batch Apex in Salesforce, and I’ll show you how transactions run in batch Apex and how to maintain their state across these transactions in this post.Batch Apex running mode (parallel / series) As we know, each execution of a batch Apex job is […]
read moreForce.com command-line tool : Force CLI and Salesforce DX
- Nov
- 08
- Posted by Lin
- Posted in Metadata API, Other, Salesforce, Salesforce DX

The Force CLI is an open source app, which is written in Go, it allows us to work with Force.com data directly from the command line. Sometimes we might confuse Salesforce DX with Force CLI, which made its debut during the Salesforce For Developers Keynote 2016, as the two commond-line tools looks very similar, so […]
read moreSalesforce Mass Editor (Chrome Extension) – Mass create, mass update, mass clone, mass delete on any list view. Support for both Classic and Lightning!
- Oct
- 28
- Posted by Lin
- Posted in Apps, Salesforce

This’s my second Chrome Extension (First one is HERE) this year, named “Salesforce Mass Editor” and it supports for doing the below things : ・Makes any Salesforce list view to be a powerful mass editor. ・Mass insert, mass clone, mass update, mass delete, ALL-IN-ONE. Support for both Classic and Lightning! ・Export record data to CSV […]
read moreInstantiating an Apex class based on dynamic string name with Type class
- Sep
- 30
- Posted by Lin
- Posted in APEX, Salesforce

Somtimes we need to instantiate a Apex class by dynamic value in Salesforce, which can make our program more modular and more readable, such as the below case : 1. Each Contact has its socail fields : “Type__c” and “AccessToken__c” 2. Needs to request its profile via socail api in Apex First we need to […]
read moreWriting a Schedulable Batch Apex in Salesforce
- Sep
- 26
- Posted by Lin
- Posted in APEX, Salesforce

To use batch Apex, you have to create an Apex class that implements interface Database.Batchable in Salesforce, like the following sample code:Execute batch Then you can use Database.executebatch method to execute it.Schedule Apex job To schedule your batch Apex to run at regular intervals, you also need an Apex class that implements interface Schedulable, like […]
read moreUsing Aggregate SOQL queries/results in Batch Apex
- Sep
- 26
- Posted by Lin
- Posted in APEX, Salesforce

In previous post, we had created a schedulable batch apex that implements Database.Batchable<sObject> in Salesforce, but if you want to use SOQL having aggregate functions like SUM(), MAX(), COUNT() on results grouped by “GROUP BY” clause in start execution, changing to interface Database.Batchable<AggregateResult> isn’t a workable way, because it fails with the below compile error […]
read moreZip attachments only with Apex in Salesforce
- Sep
- 07
- Posted by Lin
- Posted in APEX, Salesforce, Visualforce

Before this post (about 2 years ago), I’d shared a post that is about how to zip attachments with JSZip and Apex in Salesforce, and recently I found a more simple way to do that thing, which is only using an Apex library named “Zippex” ( view on Github). Here is the outline of my […]
read moreTo fix “portal account owner must have a role” Error in Salesforce Community Unit Test
- Aug
- 29
- Posted by Lin
- Posted in APEX, Salesforce, Unit Tests

In Salesforce, if you’re trying to run Unit Test with a Non-Role user, which includes part of creating Portal / Community User test data, the following error will be occured, that is because the portal account’s owner does not have a role to be assigned. System.DmlException: Insert failed. First exception on row 0; first error: […]
read moreTo fix MIXED_DML_OPERATION error(setup and non-setup objects) in Salesforce
- Jul
- 21
- Posted by Lin
- Posted in APEX, Salesforce
The following error will be occured if you’re trying to perform DML operation on both setup and non-setup objects in the same transation.` MIXED_DML_OPERATION, DML operation on setup object is not permitted after you have updated a non-setup object (or vice versa): CustomObject__c, original object: User: [] ` Here is the sample code that can […]
read moreRecent Posts
- Salesforce DevTools Release Notes (version 3.9.0) – Object Fields, SOQL Query Editor
- Salesforce DevTools Release Notes (version 3.8.0)
- Salesforce DevTools JUST HIT 10,000 USERS! THANK YOU!
- Using Promise for Apex Server-Side request in Lightning Component
- Pipeline for Salesforce – Be less busy, less mistake in Salesforce metadata deploy
Top Posts
- Salesforce DevTools – Powerful Chrome extension for Saleforce.com developer - 173.6K views
- Date format and DateTime format - 145.2K views
- Setup an awesome Salesforce developer environment with Sublime Text 3 - 115.5K views
- Salesforce Mass Editor (Chrome Extension) – Mass create, mass update, mass clone, mass delete on any list view. Support for both Classic and Lightning! - 113.9K views
- Writing a Schedulable Batch Apex in Salesforce - 82.7K views
Categories
- APEX
- Apps
- Custom Label
- Custom Metadata
- Custom Setting
- Design & UI
- Event
- Heroku
- iOS & Object-c
- Lightnint Component
- Linux & Mac OS
- Metadata API
- Node.js
- Open Source
- Other
- PHP Framework
- Release Notes
- REST API
- Salesforce
- Salesforce DevTools
- Salesforce DX
- SOQL
- Tooling API
- Unit Tests
- Validation Rule
- Visualforce
- WordPress
You must be logged in to post a comment.