Showing posts with label SFDC. Show all posts
Showing posts with label SFDC. Show all posts

Monday, October 15, 2018

Difference Between Custom Settings, Custom Object & Custom Metadata Types in Salesforce

Difference Between Custom Settings, Custom Object & Custom Metadata Types in Salesforce

Custom settings are similar to custom objects. Application developers can create custom sets of data and associate custom data for an organization, profile, or specific user. All custom settings data is exposed in the application cache, which enables efficient access without the cost of repeated queries to the database. Formula fields, validation rules, flows, Apex, and the SOAP API can then use this data.

Reference:

Saturday, October 13, 2018

Execution Mode for Process Builder and Flow

Process Builder and Flow Execution ModeUser-added image
Process Builder runs in the system mode so the object and field level permissions both will be ignored for the user who triggers the Process.
However, if a Process is launching a Flow (which runs in system mode), the whole automation will run in the system mode.

Process Builder like Workflows runs in the System Mode hence not restricted by Field Level Security or object level permissions
Flows run in User Mode, Flows when Launched using a Process builder will run in the System mode.


for more detials:

Monday, October 8, 2018

Difference between Salesforce Process Builder and Workflow

Difference between Salesforce Process Builder and Workflow

Workflows Rules allow you to define the following actions:
  • Field Updates
  • Email Alerts
  • Create Tasks
  • Send an Outbound Message
Process Builder now allows Admins to do the following actions to compare the workflow rules:
  • Create Records (not just task records)
  • Update fields on any related record
  • Post to Chatter
  • Invoke other processes
  • Launch a Flow
  • Submit a record for Approval
  • Call/invoke an Apex class
Process Builder vs Workflow


Wednesday, September 5, 2018

Salesforce Report List Using XML Format

Salesforce Report List Using XML Format


Generate Salesforce Reports as a XML format using the below way:
  1. Login to your salesforce ORG using your credentails
  2. Replease the URL after your salesforce domain  like "servlet/servlet.ReportList/"
https://theblogreader-developer-edition.my.salesforce.com/servlet/servlet.ReportList/
here https://theblogreader-developer-edition.my.salesforce.com/ -> domain 

Difference Between Managed Packages and Unmanaged Packages in Salesforce

Difference Between Managed Packages and Unmanaged Packages in Salesforce



Its based on three attributes:
  1. Customization
  2. Upgrades
  3. Org Limits









Attribute        Managed PackagesUnmanaged Packages
Customization You can’t view or change the offering’s code or metadata like Apex Class, Trigger, VF Page & Lightning Component, etc.You can customize code and metadata, if desired.
Upgrades The provider can automatically upgrade the offering.To receive an upgrade message, you must uninstall the package from your org and then reinstall a new version from AppExchange.
Org limits The contents of the package don’t count against the app, tab, and object limits in your org.The contents of the package count against the app, tab, and object limits in your org.

Sunday, September 2, 2018

Difference types of Record level access in salesforce

Difference types of Record level access in salesforce



There are four types of record level access in salesforce


  1. Org-wide defaults
  2. Role hierarchies
  3. Sharing rules
  4. Manual sharing

Salesforce Trailhead Challenge: Create a validation rule to check that a contact is in the zip code of its account

Salesforce Trailhead Challenge: Create a validation rule to check that a contact is in the zip code of its account




Error Condition Formula:

AND (
NOT(ISBLANK( AccountId )),
MailingPostalCode <> Account.ShippingPostalCode

)

Monday, August 27, 2018

Salesforce Package XML Format for Workbench and ANT Tool Deployment

Salesforce Package XML Format for Workbench and ANT Tool Deployment

Salesforce Package XML Format : 

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <!-- Custom Object Tab, Web Tab and Visualforce tab -->
    <types>
        <members>Employee__c</members>
        <name>CustomTab</name>
    </types>
    <types>
        <members>*</members>
        <name>ApexClass</name>
    </types>
    <types>
        <members>*</members>
        <name>ApexComponent</name>
    </types>
    <types>
        <members>*</members>
        <name>ApexPage</name>
    </types>
    <types>
        <members>*</members>
        <name>ApexTrigger</name>
    </types>
    <types>
        <members>*</members>
        <name>CustomApplication</name>
    </types>
    <types>
        <members>Activity.Closed__c</members>
        <name>CustomField</name>
    </types>
    <types>
        <members>*</members>
        <members>Account</members>
        <name>CustomObject</name>
    </types>
    <types>
        <members>*</members>
        <name>CustomTab</name>
    </types>
    <types>
        <members>Images/Logo.png</members>
        <name>Document</name>
    </types>
<!--     For retrieving and deploying Email Templates, folder name is mandatory       -->
    <types>
        <members>unfiled$public/Test_Notification</members>
        <members>EmailTemplates/InquiryPortal</members>
        <name>EmailTemplate</name>
    </types>
    <types>
        <members>*</members>
        <name>HomePageComponent</name>
    </types>
    <types>
        <members>*</members>
        <name>HomePageLayout</name>
    </types>
<!-- Home Page Custom Link -->
    <types>
        <members>*</members>
        <name>CustomPageWebLink</name>
    </types>
   <types>
        <members>Account.My_Account_Team</members>
        <name>ListView</name>
   </types>
    <types>
        <members>Account-Account Layout</members>
        <name>Layout</name>
    </types>
    <types>
        <members>Analyst</members>
        <name>Profile</name>
    </types>
    <types>
        <members>ExtraReports</members><!--Report Folder-->
        <members>ExtraReports/AnyOccupation</members><!--Report-->
        <members>unfiled$public/Test</members><!--Report from Unfiled Public Reports-->
        <name>Report</name>
    </types>
    <types>
        <members>ExtraDashboards</members><!--Dashboard Folder-->
        <members>ExtraDashboards/AnyOccupation</members><!--Dashboard-->
        <name>Dashboard</name>
    </types>
    <types>
        <members>*</members>
        <name>ReportType</name>
    </types>
    <types>
        <members>*</members>
        <name>StaticResource</name>
    </types>
    <types>
        <members>Contact.SelectTitle</members>
        <name>WebLink</name>
    </types>
    <types>
        <members>*</members>
        <name>PermissionSet</name>
    </types>

     <types>
        <members>*</members>
        <name>QuickAction</name>
    </types>
    <!--
 Workflow includes WorkflowFieldUpdate,
 WorkflowAlert, WorkflowOutboundMessage, WorkflowRule
    -->
    <types>
        <members>ObjectName.WorkFlowName</members>
        <name>Workflow</name>
    </types>
    <types>
        <members>ObjectName.FieldUpdateName</members>
        <name>WorkflowFieldUpdate</name>
    </types>
    <types>
        <members>ObjectName.FieldUpdateName</members>
        <name>WorkflowAlert</name>
    </types>
    <types>
        <members>ObjectName.FieldUpdateName</members>
        <name>WorkflowOutboundMessage</members>
    </types>
    <types>
        <members>ObjectName.FieldUpdateName</members>
        <name>WorkflowRule</name>
    </types>
    <types>
        <members>ObjectName.FieldUpdateName</members>
        <name>WorkflowTask</name>
    </types>
<!--        Custom Button/Link         -->
   <types>
        <members>Directory_Edition__c.Final_Letter_Renewal</members>
        <name>WebLink</name>
    </types>
<!--        Standard Tabs and Fields renames        -->
    <types>
          <members>*</members>
          <name>CustomObjectTranslation</name>
    </types>
<!--        Validation Rules        -->
    <types>
<members>Object Name.Validation Name</members>
        <name>ValidationRule</name>
    </types> 
<!--        Record Types        -->
    <types>
<members>Object Name.Record Type Name</members>
        <name>RecordType</name>
    </types>
<!--       Role        -->
    <types>
          <members>*</members>
          <name>Role</name>
    </types>
<!--       Queue        -->
    <types>
          <members>*</members>
          <name>Queue</name>
    </types>
<!--       Public Group        -->
    <types>
          <members>*</members>
          <name>Group</name>
    </types>
<!--      Custom Labels        -->
    <types>
          <members>*</members>
          <name>CustomLabel</name>
    </types>
<!--      LetterHead       -->
<types>
<members>*</members>
<name>Letterhead</name>
</types>
<!--      Process Builder and Flow  -->
    <types>
        <members>*</members>
        <name>Flow</name>
    </types>
<types>
<members>LogACall</members><!--Global Action -->
<members>Task.TestingAction</members><!--Object Quick Action -->
<name>QuickAction</name>
</types>
<!-- Platform Event -->
<types>
<members>EventName__e</members>
<name>CustomObject</name>
</types>
<!-- Sharing Rule -->
    <types>
        <members>Account.*</members>
        <name>SharingCriteriaRule</name>
    </types>
    <types>
        <members>Account.*</members>
        <name>SharingOwnerRule</name>
    </types>
<!-- Lightning Component -->
<types>
<members>ComponentName</members>
<name>AuraDefinitionBundle</name>
</types>
    <version>41.0</version>
</Package>


Reference:
Ant Migration Tool Guide