When Salesforce is life!

Tag: madeinitaly

[MadeInItaly] Salesforce PowerTools: improve your administrative skills

For the #MadeInItaly series where I want to showcase amazing artisanal Italian products from our incredible Italian Ohana, today’s guest post is delivered by Antonio Balduzzi, a computer engineer with a degree from the University of Florence. His passion for technological innovation led him to develop the SmartUnifi application, the current official app of the University of Florence. Over the years, he gained extensive experience in web application development, specializing in C# and collaborating with various companies. More recently, he focused on developing solutions on the Salesforce CRM platform, working on projects aimed at improving efficiency and business process management.


Salesforce PowerTools is a Chrome extension designed to extract and reprocess information from a Salesforce organization, providing daily support to Salesforce administrators and developers.

Currently in beta, the extension includes the following key features:

1. Who See the Record

2. Navigate Relationships

3. Compare

4. Search

The “Who See the Record”, “Compare,” and “Search” features share some common characteristics:

– Partial CSV Download: Allows you to download a CSV containing only the rows currently visible in the table. For example, if there are 10 rows visible in the table and filtering leaves only 4 visible, the partial download will only save those 4 rows.

– All CSV Download: Downloads the entire table of results, regardless of applied filters.

– Search within the table: You can search for items within the table using the “Search” input field.

Feature Details

Who See the Record

This feature allows you to determine who can see a specific record based on a selected profile. By entering the Salesforce record ID and selecting the profile to check, the extension will retrieve the users of that profile who have access to the record. If Field Tracking is enabled, the Field History will also be shown.

Navigate Relationships

This feature allows you to build a relationship tree starting from a record ID (root). After entering the record ID, you can select a related lookup object and the extension will then create a visual relationship tree. For example, by selecting “Account,” the function will search for all Accounts related to the root record and then Accounts related to the children, and so on.

Compare

The “Compare” feature allows you to compare two profiles or two permission sets at the object and field access level.

To facilitate analysis, the objects in the table will be grouped with different colors, making it easy to see the differences between the two selected profiles.

Search

The search feature allows you to search for a word within the Salesforce organization using the Parameterized Search API. You can specify the object to search on, the fields to extract for each object, and the maximum number of records to return.

[MadeInItaly] Move-QCP: a Salesforce CLI plugin to manage the Salesforce CPQ (SteelBrick) QCP

For the #MadeInItaly series where I want to showcase amazing artisanal Italian products from our incredible Italian Ohana, today’s guest post is delivered by Raffaele Preziosi, a certified Salesforce Developer and Application Architect who was born in Naples (Italy). He is passionate about the Salesforce platform, JavaScript, and DevOps. Currently, he works as a consultant at Accenture Nordics in Copenhagen, where he continues to innovate and develop solutions for clients in the Salesforce ecosystem.


The Javascript Quote Calculator Plugin (QCP) of SteelBrick CPQ is a tool that allows users to enhance the functionality of the quote line editor within Salesforce.

By utilizing JavaScript, users can implement custom logic to manipulate quotes and quote lines both before and after pricing rules are calculated.

This customization extends to managing the visibility and editability of the fields displayed in the quote process.

The Challenge: Managing QCP Code within Salesforce

Unfortunately, the javascript QCP code must be stored as data within Salesforce (in the field SBQQ__Code__c of the object SBQQ__CustomScript__c) making it difficult to manage and track changes effectively.
As developer you would like to manage that code in your IDE alongside other metadata within your version control system.

The move-qcp sf CLI plugin can address this issue. This tool allows you to efficiently organize the QCP code, and automate the its deployment.

The  move-qcp plugin changes the way you develop and deploy QCP by allowing you to:

  • Versioning QCP Code: Your code is securely stored, easily accessible, and conveniently managed alongside your other version-controlled assets. This ensures that you have complete control over your qcp code and can effectively track and review changes.
  • Automated Deployment: The plugin automatically deploys the QCP to the target org, avoiding the need to manually copy and paste the code into Salesforce.
  • Modularization: Take advantage of modularization by utilizing modules to split the QCP code into multiple files. By splitting your QCP code into multiple files using modules, you can enhance readability, maintainability, and collaboration among your development team.
  • Code Minification: The plugin automatically minifies the code before deploying it to the target org. This optimization step helps avoid reaching the maximum character limit of the textarea field.

How to Get Started

  1. Open your terminal and run the command (Salesforce CLI is necessary):
    sf plugins install move-qcp
  2. Within your repository, create a dedicated folder for your QCP using the create command. This is where you’ll organize your QCP-related files. Replace “MyQCP” with your desired custom script name, which will also be the folder name.
    sf cpq qcp create -n MyQCP

    The command will create separate files for each method of the quote calculator plugin.
    The main.js file will import modules from other files, enhancing code organization.
    The config.json file can include additional fields for your quote calculator plugin.
    Main.js and config.json are the only required files, the other ones can be deleted/replaced.

3. When your changes are ready run the following command to insert/update your QCP in the Org. Replace “orgAlias” with the authenticated org alias/username and ./QCP with the directory of your QCP
sf cpq qcp deploy -u orgAlias -d ./MyQCP

If the command succeeds, it will print the Id of the custom script:

While you can add multiple custom scripts to your repository, it’s important to note that Salesforce CPQ currently allows only one active script at a time.

You can streamline your deployment process, integrating the command into your CI/CD pipeline!

[MadeInItaly] Salesforce Productivity Burst for VSCode

For the #MadeInItaly series where I want to showcase amazing artisanal Italian products from our incredible Italian Ohana, today’s guest post is delivered by Raffaele Preziosi, a certified Salesforce Developer and Application Architect who was born in Naples (Italy). He is passionate about the Salesforce platform, JavaScript, and DevOps. Currently, he works as a consultant at Accenture Nordics in Copenhagen, where he continues to innovate and develop solutions for clients in the Salesforce ecosystem.


Productivity is key when working with complex systems like Salesforce and installing the right tools can significantly increase it.

Salesforce Productivity Burst is a Visual Studio Code extension that can boost the productivity of Salesforce developers by streamlining their workflow.

The most interesting feature of this extension is the ability to open a wide range of Salesforce metadata types directly from VSCode, without the need to navigate the Salesforce user interface. This feature can save developers and admins a lot of time during the working day.

To use this feature, simply install it (Salesforce Productivity Burst – Visual Studio Marketplace), open the XML metadata component file and click the search icon in the status bar.

The extension operates by querying the metadata to retrieve the necessary ID, which will be used to generate the final URL. To improve the extension’s responsiveness, data is cached in the .sfdx/tools/SPB folder. By running the SPB:Refresh Metadata command, all required data can be pre-cached, resulting in significantly faster access to the components in subsequent operations.

It currently supports the following metadata types: Flow, Fields, Layouts, Profiles, Validation Rules, Global Picklists, Lightning Pages, Permission Sets, Permission Set Groups, Apex Classes, Apex Triggers, Quick Actions and Approval Processes.

In addition to this feature, SPB offers the ability to get total coverage and single-method test coverage of Apex classes/triggers, similar to what is available in the developer console. It also allows for quick activation of debug logging for your user, automated process, or integration platform user.

Powered by WordPress & Theme by Anders Norén