Build Custom Feature (BYOF)

Admin Setup & User Impact Guide

Administrators can dynamically control the Pre-Sales Cloud layout by creating or editing records in Custom Metadata Types. This eliminates the need for code deployments when changing application navigation.


A. Main Navigation Dropdown

  1. Admin Setup: Go to Custom Metadata Types > Manage Records on PSC Extensible Navigation Item. Add a record with the desired label and target destination link.
  2. User Impact: Directly injects a new option into the central Navigation Menu dropdown. Users click this to hop between high-level workspaces like Overview, Scope Size Effort, and Generate SOW.

B. Scoping Workspace Tabs

  1. Admin Setup: Go to Custom Metadata Types > Manage Records on PSC Additional Scope Tab. Create a record to define a new scoping feature layout.
  2. User Impact: Appears as a horizontal sub-tab inside the main Scope Size Effort view. Users use these tabs (e.g., GenAI Scoping, SOW) to break down complex estimation tasks.

C. Timeline & Resource Schedule Tabs

  1. Admin Setup: Go to Custom Metadata Types > Manage Records on PSC Additional Schedule Tab. Create a record to link a scheduling or cost tracking view.
  2. User Impact: Appears as a contextual sub-tab embedded inside specific project or opportunity timeline records. Users interact with these tabs to manage specific financial and staffing details.



If you're building an Aura Component within the "Build Your Own" feature, ensure the following pre-requisites are met to ensure your custom component functions correctly:


Component Markup (.cmp):

<aura:attribute name="recordId" type="String" access="global"/>
<aura:attribute name="parentGlobalId" type="String" access="global" default=""/>
<aura:attribute name="isPresentMode" type="boolean" access="global"/>
<aura:registerEvent name="showHideApplicationSpinner" type="c:PSC_ShowHideSpinnerEvt"/>


Controller Logic (controller.js):

// Communicate with QuoteX to hide the loading spinner
var showOrHideSpinner = component.getEvent('showHideApplicationSpinner');
showOrHideSpinner.setParams({ "showSpinner" : false });
showOrHideSpinner.fire();


If you're building a Lightning Web Component (LWC) within the "Build Your Own" feature, please follow these guidelines:

Component JavaScript (LWC):

@api recordId;
@api parentGlobalId;
@api isPresentMode;

// Communicate with QuoteX to hide the loading spinner
const selectedEvent = new CustomEvent('loadcomplete', {
detail: { showSpinner: false }
});
this.dispatchEvent(selectedEvent);




1. What is the "Build Your Own Feature" in QuoteX?

The "Build Your Own Feature" allows organizations to customize and extend QuoteX to meet unique business requirements. This includes adding new tabs, modifying estimates/quotes, introducing navigation menus, or integrating external applications into the QuoteX UI.


2. Who benefits most from the "Build Your Own Feature"?

Organizations with in-house Salesforce development teams or those needing highly customized workflows benefit the most. This feature provides the flexibility to tailor QuoteX to specific needs and integrate with external tools and applications.


3. What kind of customizations can be made using the "Build Your Own Feature"?

Customizations include expanding scope, size, or effort estimates, adding custom tabs or navigation menus, and even integrating external applications. Developers can build new components to enhance the platform’s functionality and user experience.


4. Can I integrate external applications into QuoteX using the "Build Your Own Feature"?

Yes, the "Build Your Own Feature" allows you to integrate external applications directly into the QuoteX user interface, making the platform even more powerful and aligned with your organization's workflows.


5. What are the pre-requisites for developing custom components in QuoteX?

For Aura Components, you need to define attributes like recordId, parentGlobalId, and isPresentMode, and implement event handling for UI elements. For Lightning Web Components (LWC), similar attributes are required, and custom events should be dispatched to handle the UI state, like hiding loading spinners.


6. What types of custom components can be built with the "Build Your Own Feature"?

You can build both Aura Components and Lightning Web Components (LWC) to introduce custom tabs, timelines, navigation elements, or integrate specific external tools.


7. How do I ensure seamless integration of custom components with QuoteX?

By following the pre-defined guidelines for component development (e.g., using correct attributes and event handling), you can ensure that your custom components integrate seamlessly with QuoteX and work efficiently with its existing functionalities.


8. What are the key attributes required for Aura Components?

For Aura Components, key attributes include:

  1. recordId: String
  2. parentGlobalId: String
  3. isPresentMode: Boolean These attributes should be used for managing the component state and interactions.


9. How do I communicate with QuoteX to control the UI state in custom components?

For Aura Components, use the showHideApplicationSpinner event to show or hide loading spinners. For LWCs, dispatch a CustomEvent like loadcomplete to manage the UI state.


10. What is the importance of event handling in the "Build Your Own Feature"?

Event handling ensures proper interaction between custom components and QuoteX, like controlling UI elements (e.g., hiding loading spinners) after custom operations are complete. It helps maintain a seamless user experience.


11. Can I use both Aura Components and Lightning Web Components for customization?

Yes, both Aura Components and Lightning Web Components can be used to build and extend QuoteX based on your organization’s specific needs.



By adhering to these pre-requisites, you can ensure seamless integration of your custom components with QuoteX, enhancing its functionality and aligning it with your organization’s specific needs.




Redirecting you to the article... Click here if you are not redirected automatically.