Conga Sign provides users the capability to cancel Conga Sign Transaction in bulk by leveraging Apex code.

Specifically, Salesforce administrators and developers can use the aptx_cancelTransactionsInvocable Apex Class as a sub Flow within a Process Builder or Flow solution to trigger bulk transaction cancellations. 

The aptx_cancelTransactionsInvocable Apex Class appears as Cancel Conga Sign Transactions when selecting it as in Apex Action in Flow Builder.

Additionally, administrators and developers can leverage the apxt_bulkTransactionService Apex Class to trigger bulk cancellations through the REST API.

Located below are tips, recommendations, and examples on using Apex to cancel Conga Sign Transactions in bulk.

Bulk Cancellation Scenarios Using Process Builder to Manage Conga Sign Transactions

  1. Cancel any incomplete Conga Sign Transactions when a Campaign status changes to Complete.
  2. Cancel any incomplete Conga Sign Transactions when an Opportunity is Won.
  3. Cancel any incomplete Conga Sign Transactions when a Campaign Offering Price change occurs.
  4. Cancel related Conga Sign Transactions when one Conga Sign Transaction is completed. 

    Salesforce solutions, such as Process Builder and Flows, leveraging Apex code are outside of the scope of Conga Support. It is highly suggested to only create custom solutions leveraging Apex Classes if you have prior experience with using Apex in Salesforce.

Common Steps to Manage and Bulk Cancel Conga Sign Transaction with Process Builder

  1. Define a Process Builder or Flow to trigger off of data changes to the standard or custom Salesforce object data or workflow state.
  2. Connect the Process Builder trigger action to the appropriate Flow for that use case.
  3. Follow Salesforce Best Practices for building Flows.
  4. For each of the different scenarios, the input, criteria, and rules change, but the steps from a Flow perspective are the same:
    1. A Get Records Data element that collects the Salesforce or Custom Objects and has the Conga Sign Transactions associated to it
    2. A Loop Logic element that iterates over the gathered Salesforce or Custom Object(s)
    3. A second Get Records Data element that finds the Conga Sign Transactions associated with the current iteration object
    4. A second Loop Logic element that collects the Conga Sign Transaction records that should be cancelled
    5. An Assignment Logic element that adds the record of the current iteration Conga Sign Transaction record to a Collection Variable Resource
    6. An ApexAction Interaction element that calls the Sub Flow aptx_cancelTransactionsInvocable Apex Class (Cancel Conga Sign Transactions) and sets the Input Variables:
      1. In_CongaSignTransactionRecords: [The Collection Variable containing Conga Sign Transaction Records]
      2. In_SendCancellationEmails: [GlobalConstant or some other variable containing a boolean; True (send recipients cancellation notice), False (do not send)] 
    7. An optional notification

Common Sub Flow - Send List of Transaction Ids to the Conga Sign Cancel Transaction Invocable

This flow is used as a sub flow in each of the example use cases below. Follow Salesforce Best Practices for building Flows.

  1. Input a list of Conga Sign Transaction records. 

    This list is gathered by other use case Flows as an input into this flow.

  2. Add a Decision Logic element to check that the input contains records.
    1. Add an Outcome that there are one or more records from the input and it is not null.
  3. Connect Start to the Decision.
  4. Add a Loop logic element to iterate over the Conga Sign Transactions.
  5. Connect the Decision to the Loop using the appropriate Outcome.
  6. Add an Assignment Logic element and add each Id to a Text collection variable.
  7. Connect the Loop to the Assignment with For Each Item and return from the Assignment to the Loop.
  8. Add an Apex Action Interaction element that calls the Conga Sign Cancel Transactions Invocable method.
    1. Configure the collected Conga Sign Transaction Id’s as the Input Variable “Conga Sign Transaction Record Ids”.
    2. Configure either “True” or “False” for the as the Input Variable “Send Cancellation Emails”. This will send cancellation emails to each recipient when set to true.
    3. (Optional) Configure the output variables to process return value and messages. (Shown As “Notify Cancel Conga Sign Transactions”).
  9. Connect the Loop to the Apex Action with After Last Item.
  10. Save and Activate the Flow.
     

Example: Cancel Any Incomplete Conga Sign Transactions When a Campaign Status Changes to Complete

  1. Create a new Process Builder.
  2. Select Campaign as the object.
  3. Select “when a record is created or edited” for Start the process.
  4. Add Criteria:
    1. Criteria Name: Campaign Price Changes
    2. Criteria for Executing Actions:
      1. Field: [Campaign].[Status]
      2. Operator: Equals
      3. Type: Picklist
      4. Value: Completed
    3. Conditions: All of the conditions are met (AND)
  5. Add Immediate Action:
    1. Action Type: Flows
    2. Action Name: Campaign Status Completed Cancel Conga Sign Transactions
    3. Flow: Campaign Status Completed Cancel Conga Sign Transactions
      1. Create the Flow using Common Steps, if not already created.
        1. Get all Opportunities related to the Campaign.
        2. Get all Conga Sign Transactions from the Opportunities related to the Campaign.
        3. Collect the Conga Sign Transaction Ids.
        4. Call the Cancel Conga Sign Transaction Invocable with the list of Conga Sign Transaction Ids.
           
    4. Set Flow Variables.
      1. Flow Variable: In_CampaignRecord (the input variable you used in your flow)
      2. Type: Field Reference
      3. Value: [Campaign] (select the campaign record that started your process)
    5. Save and activate the Process Builder.

Example: Cancel Any Incomplete Conga Sign Transactions When a Campaign Offering Price Change Occurs

  1. Create a new Process Builder.
  2. Select Campaign as the object.
  3. Select when a record is created or edited for Start the process.
  4. Add Criteria:
    1. Criteria Name: Campaign Price Changes
    2. Criteria for Executing Actions:
      1. Field: [Campaign].[OfferingPrice] (Use the field you monitor for price changes)
      2. Operator: Is Changed
      3. Type: Boolean
      4. Value: True
    3. Conditions: All of the conditions are met (AND)
  5. Add Immediate Action:
    1. Action Type: Flows
    2. Action Name: Campaign Price Change Cancel Conga Sign Transactions
    3. Flow: Campaign Price Change Cancel Conga Sign Transactions
      1. Create the Flow using Common Steps, if not already created.
        1. Get all Opportunities related to the Campaign.
        2. Get all active Conga Sign Transactions from Opportunities related to the Campaign.
        3. Collect the Conga Sign Transaction Ids.
        4. Call the Cancel Conga Sign Transaction Invocable with the of Conga Sign Transaction Ids.
    4. Set Flow Variables:
      1. Flow Variable: In_CampaignRecord (the input variable you used in your flow)
      2. Type: Field Reference
      3. Value: [Campaign] (select the campaign record that started your process)
  6. Save and activate the Process Builder.

Example: Cancel Related Conga Sign Transactions When One Conga Sign Transaction Is Completed

  1. Create a new Process Builder.
  2. Select Conga Sign Transaction as the object.
  3. Select when a record is created or edited for Start the process.
  4. Add Criteria:
    1. Criteria Name: Conga Sign Transaction Completed
    2. Criteria for Executing Actions:
      1. Field: [Transaction__c].[Status__c]
      2. Operator: Equals
      3. Type: Picklist
      4. Value: COMPLETE
    3. Conditions: All of the conditions are met (AND)
  5. Add Immediate Action:
    1. Action Type: Flows
    2. Action Name: Cancel Related Conga Sign Transactions
    3. Flow: Cancel Related Conga Sign Transactions
      1. Create the flow using Common Steps if not already created.
        1. Get all Active Conga Sign Transactions related to the Opportunity.
        2. Collect the Active Conga Sign Transaction Ids.
        3. Call the Cancel Conga Sign Transaction Invocable with the list of Active Conga Sign Transaction Ids.
           
    4. Set Flow Variables:
      1. Flow Variable: In_CongaSignTransactionRecord (the input variable you used in your flow)
      2. Type: Field Reference
      3. Value: [Transaction__c] (select the Conga Sign Transaction record that started your process)
  6. Save and activate the Process Builder.

Example: Cancel Any Incomplete Conga Sign Transactions When an Opportunity Is Won

  1. Create a new Process Builder.
  2. Select Conga Sign Transaction as the object.
  3. Select when a record is created or edited for Start the process.
  4. Add Criteria:
    1. Criteria Name: Is Opp Won
    2. Criteria for Executing Actions
      1. Field: [Opportunity].[Won]
      2. Operator: Equals
      3. Type: Boolean
      4. Value: True
    3. Conditions: All of the conditions are met (AND)
  5. Add Immediate Action:
    1. Action Type: Flows
    2. Action Name: Gather Active Conga Sign Transactions
    3. Flow: Gather Conga Sign Transaction Records for Won Opportunity
      1. Create the flow using Common Steps if not already created
        1. Get all Active Conga Sign Transactions related to the Opportunity.
        2. Collect the Active Conga Sign Transaction Ids.
        3. Call the Cancel Conga Sign Transaction Invocable with the list of Active Conga Sign Transaction Ids.
           
    4. Set Flow Variables
      1. Flow Variable: In_AnOpportunity (the input variable you used in your flow)
      2. Type: Field Reference
      3. Value: [Opportunity] (select the Opportunity record that started your process)
  6. Save and activate the Process Builder.