This first step will guide you through the installation steps of our generation solution
We're going to go through 5 simple steps to achieve this:
You can check this from Setup.
From the tab, go to the “Installed Packages”
Attention, Here you must click on the arrow next to New to click on “New Inherited” and enter the following information:
Label:
Gonexa Doc (case sensitive)
Name:
Gonexa_Doc (case sensitive)
URL:
Production : https://api.exadoc.gonexa.fr
tes Copy URLURL
Sandbox : https://api.exadoc-test.gonexa.fr
tes Copy URLIdentity type:
Named principal
Authentication protocol:
Password authentication
User name:
Gonexa
Password:
[Security key retrieved in the previous step. Unique key for a production environment. Same key for all your Sandbox or Dev environments]
Generate an authorization header:
Allow merge fields in the HTTP header:
Allow merge fields in the HTTP body:
Outbound network connection:
Type of action:
Lightning component
Lightning component:
GNX: GenerateDocument
Label:
[Text that appears to the user]
Name:
[Automatic]
Set up your first template using an example using Word or Google Doc
We're going to go through 3 simple steps to achieve this:
The main object is the starting point for generation, it is the basic context for creating a document.
Child objects are items that are linked to the main object. These are the “lists associated” with your main object. For example, we will have the “Opportunity Products” linked to an opportunity.
Important, it is not mandatory to have a child object to allow a generation. Only the main object is mandatory.
You can start from a document template that you already have or download a pre-designed template directly accessible via our page: Pre-designed templates
You will need to know what information you want to dynamically generate in your template.
Important : It is recommended to keep the weight of the file as small as possible to optimize the generation
Your template is now available for generation to anyone who has the “Gonexa Doc Users permission sets”
Your generated document appears in the standard Salesforce preview by default. You can overload it with the Gonexa preview.
💡 Tip, thus give your users access to useful commands such as printing, zooming, or quickly downloading the generated document.
⚠️ Attention, Si lors dela génération du document, l'utilisateur ne peut pas voir le modèle généré référez-vous à la gestion des règles de partage du modèle de document ;s'il est en privé l'accès au modèle peut être bloqué si aucune règle de partage n'a pété créé, nous vous recomandons de passer le paramètre de partage du modèle à public lecture seule.
Learn Word tips and best practices to build a foundation for your Gonexa document.
We are going to travel in 3 simple steps to design a Word document:
Create a stable, consistent, and clean document by first structuring your document.
💡 Change spacing by hand with horizontal and vertical rulers
Create a stable, consistent, and clean document by first structuring your document.
Make document generation available based on criteria based on your main object.
💡 Add as many conditions as needed and choose whether your conditions should be strictly verified with AND or if you want one to be verified only by writing OR.
Place the generic Gonexa generation date tag with the desired date format.
Short format: DD/MM/YYYY
Long format: the JJ MMMM AAAA
By default, the Salesforce layout is applied to the content of a rich text field placed in a Word document upon generation. Add one or more tag extensions to change these settings.
To apply the format applied to the tag in the word template instead of the format used in the Salesforce field, you will need to use a tag extension to allow you to choose exactly the right format.
There are 5 types of formats that can be modified: “f” for “font” = font, “s” for “size” = size, “c” for color = color, “t” for “type form” = character shape, “i” for “indentation” = indentation
To help you, the assistant will guide you:
Your tag is copied and can be pasted into your template using the following format:
E.g.: {! Account|Description (HTML,f, s)} for a case where I want to apply the font and size that is defined in the template.
From the assistant, access the Rich Text field containing your image
💡 Tip, Set the height or width only so that the source image ratio is applied automatically and thus avoid image distortion.
In the case of URL image insertion, it is likely that you will need to authorize access to your platform's URL database
You can easily insert a tag that refers to a rich text field, or URL whose content is an image, in your document.
Insert items related to your main context in the form of tables
We're going to go through 3 simple steps to achieve this:
A table corresponds to a related list in Salesforce. For example, if I am on an account, the contacts are children of the account. If I find myself on an opportunity, the opportunity products are children of the opportunity.
These relationships can be standard or built using custom objects. Gonexa technology will simply allow you to display information related to your context.
Many use cases are possible such as displaying the products, services, and options related to my business opportunity in 3 separate tables in my document even though they are all in the same Salesforce object (ProductLineItems).
This step is based on standard tables offered by Word. For more simplicity, feel free to use our pre-designed templates available on our website.
To make it easier to understand, you can download the template shown during the demonstration below:
Filters ensure that you only see data that is relevant to your context. Here, we want to filter only the “Product” category in the 1st table, the “Services” in the 2nd, and the “Options” in the last. We use the same Salesforce object 3 times but with different views.
This step is optional since it will simply improve the organization of the data in your table a bit at the time of generation.
⚠️ The use of extensions requires being on a package version that is later than 1.7. Please update the package via the AppExchange as required.
Add up the amounts of the same child object, a group or even hidden information and combine multi-currencies. This way, avoid formula-type fields in Salesforce and easily display subtotals.
Word configuration vs build output
Cumulate the records in the child object to show the number of rows in a table or that meet a criteria specified in Salesforce.
Add up the amounts of the same child object, a group or even hidden information and combine multi-currencies. This way, avoid formula-type fields in Salesforce and easily display subtotals.
Group all the elements of a child object that match a criterion, that is, group the rows of a table in a Word document according to a Salesforce field, such as the family of a product, for example.
From the child object of your document template:
Word configuration vs build output
Bring dynamism to your template by creating conditions for displaying paragraphs, images, or any element in your document.
We are going to break down the training into 2 simple steps :
A condition allows you to display or not display text, an image, a table, and other elements based on a criterion found in Salesforce. This is very useful to add a legal paragraph in the T&Cs based on a checkbox, for example in Salesforce, or to hide a part that shows the possible discounts when no discount has been applied in a quote.
The idea is to personalize a template without multiplying the number of different templates.
The logic in our example will be simple, we want to display the word “Apple” when the checkbox on the “Show the word Apple” account is checked.
Note that it is the condition if false that will be displayed by default in the template but that the condition will execute according to our criterion at the time of generation.
We assume that we have a template with an array where there is a currency field to be able to make the condition. In our example, we use opportunity and opportunity products.
We're starting with an example where we want to display a checkbox in the same way as in Salesforce.
Note that if we use emojis here but we could easily insert images, you simply have to make this change after having inserted the condition, toggle the field codes with a right click on the condition.
Create multiple nested conditions (or, and, and +or), and display images, tables, pyctograms, checkboxes, or display a specific layout with advanced SI condition constructs.
Download the template for inspiration.
Check out our help page: The Word IF condition inserted in the document does not trigger
Facilitate your deployments between 2 environments via our import/export tools.
We're going to go through 3 simple steps to achieve this:
The Gonexa configuration cannot be deployed using a change set or a traditional deployment tool since it is not about deploying meta-data.
A document template is configured using data (Input in the “Template name” fields, output format, version management policy, etc.) but also the file that carries the tags.
If you had to deploy this without any particular tool, you would have to export data+export files and re-create the links in the new environment. For this reason, we have developed a tool that allows you to export on the one hand and import into the new environment in a few clicks.
It is possible to import templates onto a production or a sandbox. Also note that if you repeat the operation, the templates will be updated and not a duplicate will be created as long as they are the same templates.
This step allows all of the new imported templates to be sent to our Azure servers for the generations to work.
This step is not necessary if you have installed the “Bordeaux” version directly (February 2023). This part is only necessary in case of an update from an earlier version.
Your Gonexa support team may need to log in to your application using your ID to resolve and repair issues arising from your request. To do this, you must first allow us access.
Create a document template in PDF input format to have specific information filled in by the recipient.
We're going to go through 2 simple steps to achieve this:
Create the background of a form with the method of your choice (Canva, Google Docs, Word, Figma, or directly with PDF).
Open your PDF template (fixed background) with Adobe Acrobat to add tags. Access the available tools from the banner, select “Prepare the form” and click “Start.”
Attention, If a Salesforce Picklist value does not exist, that is to say is empty, specify Null in the value element in your options list.
Attention, A checkbox tag can only be called once in the document.
Save, upload your document to Salesforce, and test it.
Open your PDF template (fixed background) with Adobe Acrobat to add tags. Access the available tools from the banner, select “Prepare the form” and click “Start.”
Attention, If a Salesforce Picklist value does not exist, that is to say is empty, specify Null in the value element in your options list.
Attention, A checkbox tag can only be called once in the document.
Create a document template in Excel input format.
We are going to break this training down into 4 steps :
From the document template, add tags on the main objects at your convenience using the assistant banner.
To add tags to a child object, you must first set up a child object in the document template.
💡 Tip: Please define the printable content of your Excel page so that all items can appear on a PDF page when generated. Access the final version by activating the page mode in your Excel.
Save, upload your document to Salesforce, and test it.
Do calculations like the average, the maximum, and the sum linked to your table.
Save, upload your document to Salesforce, and test it.
Avoid making a formula field in Salesforce and add the logic directly into your Excel document.
💡 Tip: Add the expected formats: standard, monetary, fraction, time, date... to show the right format to the generation.
Save, upload your document to Salesforce, and test it.
Display a graph and dynamically cross-referenced information in your document on a separate sheet.
Save, upload your document to Salesforce, and test it.
💡 Attention: You won't be able to add Gonexa doc tags on the same page as your PivotTable.
Display a graph and dynamically cross-referenced information in your document on a separate sheet.
Save, upload your document to Salesforce, and test it.
Save time and eliminate repetitive actions with Salesforce flow actions.
We are going to break this training down into 4 steps :
Go to our sample flow org to get inspired. Find the use cases most used by our customers.
From the Salesforce Setup, go to Flows (Flow), and then click New Feeds.
Select the type of flow to set up.
Click on Create
💡 Tip; The recordID variable is almost systematic for all screen flows. It is used to variabilize the recordID field, and to provide the flow with the context from which we launch the generation.
From the process, click on the + and choose the item: screen
💡 Tip; Rename the next button in the footer configuration to improve the user experience.
Validate
To update the data entered in the previous screen, you can add an update action. It will trigger a next action.
From the process, click on the + and choose the item: update records
Validate, save, name, and activate your flow.
Place the feed on your context.
Build your process at your convenience (screen, decision, success message...) and add the Gonexa action.
You can variabilize this value with a screen by creating new choice resources.
This value should be variabilized with a text variable, available for input.
This value can be variabilized on a screen or selected among the documents according to certain criteria such as the name of the document or the azure id.
Save, activate, and test.
Generate several documents at once from a list view.
Add a registration requirement to your flow
Field: Id
Operator : in
Value : Sides
To fill in the value field, create a new resource:
💡 Attention case sensitive name
Validate
Add action on the page layout of your main object.
💡 Tip You can find the URL of your feed in the feed details.
Validate and test
The characters included in the Date format string are interpreted as a custom format and time string. Add a standard specifier to define how the desired information is displayed.
FORMAT SPECIFIER
DESCRIPTION
example
{! Tag | API name(d)}
Short date
01/09/2023
{! Tag | API name(D)}
Long date
Monday September 10, 2023
{! Tag | API name(f)}
Long date+short hour
Monday September 10, 2023 13:30
{! Tag | API name(F)}
Long date+long hour
Monday September 10, 2023 13:30:50
{! Tag | API name(g)}
Short date+short time
10/09/2023 13:30:50
{! Tag | API name(G)}
Short date+short time
10/09/2023 13:30
{! Tag | API name(M)}
Month+day
September 10
{! Tag | API name(R)}
RFC1123
Monday, September 10, 2023 13:30:03
{! Tag | API name(T)}
Long hour
13:30:50
{! Tag | API name(t)}
Short hour
13:30
{! Tag | API name(Y)}
Date+month
September 2023
FORMAT SPECIFIER
DESCRIPTION
example
{! Tag | API name(by MMMM yyyy)}
You can create complex tags with the following format specifiers in the form {! obj|field (dd MMMM yyyy)} for example. You can also choose to use hyphens or “/” between each date format.
01 09 2023
FORMAT SPECIFIER
DESCRIPTION
example
{! Tag | API name(d)}
Day of the month, from 1 to 31
1
{! Tag | API name(DDDD)}
Full name of the day of the week
monday
{! Tag | API name(yyyy)}
4-digit year
2023
FORMAT SPECIFIER
FIELD TYPE
example
{! Tag | API name(C)}
MOTTO
123,45€
{! Tag | API name(D)}
Optional: precision specifier
{! Tag | API name(D6)}
DECIMAL
1234
-001234
{! Tag | API name(F)}
Optional: precision specifier
{! Tag | API name(F4)}
FIXED POINT
1234,56
1234,5600
{! Tag | API name(P)}
Optional: precision specifier
{! Tag | API name(P4)}
PERCENTAGE
100.00%
-39.7%
{! Tag | API name(N)}
Optional: desired number of decimals
{! Tag | API name(N3)}
NUMBER
1,234567
1,234
For more information, see the following article: https://learn.microsoft.com/fr-fr/dotnet/standard/base-types/standard-date-and-time-format-strings