More often than not, members from various groups might post about different roadblocks they might have hit, with regards to their implementation of Salesforce projects, asking for help or some form of assistance. While everyone might not be well versed with the issue faced, when it is put out on a document generation app on Salesforce such as PDFButler, one is sure to find a helping hand. Often, conversations are taken ahead via emails or texts, and zoom meetings are scheduled to help deal with the issue at hand. The issues one might face on a document generation app on Salesforce can be many and quite far fetched.

Let’s try looking at the issue by considering a hypothetical example, to help understand the basics of the document generation app on Salesforce a bit better.


For example, one might have e-commerce business-related issues that require fresh Salesforce implementation. While a business model might look simple the implementation of it in the Sales cloud of Salesforce might be a difficult task. Chances are that the products that are available for sale on the client’s website share a stark difference with the actual products which are going to be shipped. Maybe, each of the products has a corresponding item or a collection of items associated with it.

Thus, in such a situation, let us assume that there is a ‘crate 1’ which is to be shipped when the ‘single crate’ has been ordered or when crates – 1 to 6 is going to be sent together – that is when the ‘6-month crate’ is ordered or each of the crates is individually shipped monthly following a sequence when the order is taken as a ‘subscription for 6 months’. When the client asks for a forecast of the order of the crates that are to be shipped, along with confirmed order dates, it is provided because it helps the client not just maintain a proper and healthy inventory of the different crates, properly manage the orders as well as provide accurate shipping dates.


The step which would come next is – the configuration of them in the document generation app on the Salesforce platform. Usually, the first thought is to create a sort of custom child ‘crate’ objects that will consist of the master products, after which custom reports can be created to fulfill all the requirements. Sometimes, you might notice that a part of the problem can easily be solved by enabling a quantity scheduling as well as a revenue schedule. By doing this, you can easily set up a monthly quantity scheduling for all subscription products that are automatically able to create monthly schedules when they are added to an ‘opportunity record.’

Next, you will have to create a custom object ‘crate’ that will provide you with the reporting crates for every single product that is sold. A ‘crate’ object will not be having any direct relationship with the ‘product’ as every product will have one or more crates linked to it. Nonetheless, all the products and crates will have one common link between them, and that is – the product category. You can create a custom object ‘product category’ which will be linked to the ‘product’ object by using a lookup relationship. The ‘crate’ will basically object as its child. Once you’ve made a list of the number of objects that need to be in the ‘report’, add them in but keep in mind that it isn’t possible for juncture objects to be a part of custom reports, and they need to be done differently – but how?


You will have to use the ‘process automation components’. However, keep in mind that these will not be able to produce reports. Thus, you will have to create another ‘custom object’ and then opt for a ‘crates schedule’ that will have all the necessary fields that will be required in the report. It will consist of lookup relations that will go to ‘accounts’, ‘products’, ‘opportunities’,’product category objects’ as well as ‘crate’. The data which is present in the ‘crates schedule’ will begin to get populated through the ‘process builder and flows’ from all related objects. Then, you can create an ‘auto launch flow’ that is going to be triggered by the Process Builder.


The step-wise breakup of the same would be

  • Make a Loop on each Opp Product, wherein the flow loops will pass through every opportunity product records and will be passed on to the Process Builder through a Record Collection variable
  • The next step will be to provide an assignment of schedule date over to a new date variable. This data for the date will be used at a later stage in order to calculate the shipping dates of each individual crate and its items
  • You’ll be able to get all crates based on two conditions – one is that both the crate as well as product will have to match with the product category and the second is when the number of the product’s crates is to be more than what is mentioned as the ‘sort order’ number for each crate. This will provide us with all the crates of that product which is stored in a ‘crate record collection variable’
  • The fourth step would be to let the flop enter another loop that is on all the crates and which can be found in the previous step
  • The fifth step is to check whether the product has any quantity schedule enabled. 
  • All the given fields of the ‘crate schedule record’ has been assigned with a product that has a separate quantity schedule enabled to it

Using the steps given, you can easily use a document generation app on Salesforce.


Please enter your comment!
Please enter your name here

47  +    =  53