Posts

Showing posts from November, 2023

Org2Org File Transfer in salesforce (code written in destination org)

Image
Last Updated: 09-11-2023   Let's define the terms we will use in this blog post: Source org - The org that has all the files. Current org (destination) - The destination org where all files are to be fetched from the source org. Because all code will be written in the destination org only; no coding will be done in the source org. To upload files from one Salesforce org to another using Salesforce REST APIs, you can follow these general steps:  Get Session Token , Org Base URL of source org. Get Record Ids from which we need to get the related files. Hit the  Salesforce REST APIs to fetch the files from source org.  Create Content Version in current org (destination). Create Content Document Link in current org (destination) which will associate the file with the record you want. Before going to code let's make our current org ready, we will create 2 fields in our object level  Ext_Record_Id__c - The record id of the record in the source org that we need to retrieve the fi

Database Methods vs. DML in Salesforce Apex

Image
  Apex contains the built-in Database class, which provides methods that perform DML operations and mirror the DML statement counterparts. These Database methods are static and are called on the class name. Database.insert() Database.update() Database.upsert() Database.delete() Database.undelete() Database.merge() Unlike DML statements, Database methods have an optional allOrNone parameter that allows you to specify whether the operation should partially succeed. When this parameter is set to false, if errors occur on a partial set of records, the successful records will be committed and errors will be returned for the failed records. Also, no exceptions are thrown with the partial success option. This is how you call the insert method with the allOrNone set to false. Database.insert(recordList, false); The Database methods return result objects containing success or failure information for each record. For example, insert and update operations each return an array of Database.SaveRes