Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

Overview

As of EngageIP 9.3.0 it is possible to bill accounts / packages in parallel rather than sequentially in order to reduce billing time. As well there is also configuration to bill branded owners in parallel (one bill run per branded owner at a time)

Requirements

You will need to have access to the EngageIP database in order to configure parallel billing.

Configuration Options

In the EngageIPOption table, the following entries can be configured:

Option

Setting

Description

BillUserPackageMaxDegreeOfParallelism

-1

"<0" , let the system decide on the amount on threads to use for billing user-packages (default)
"0" , use the current way (code path), no threading
">0" , use threading limited to the value set 1..n,  this indicates how many user-packages will bill in parallel depending on the threads available for processing

BillLogEveryUserPackage

true

Log every billed user-package and user-service in the Event Log, can set to false for performance reason if needed

BillSummaryLogBatchSize

1000

Logs a summary for every x (1000) user-packages billed per invoicer

BillRunMaxDegreeOfParallelism

5

If it is set with a value of -1, the OS (system) decides on the level of Parallelism
If value = 0, normal no parallel billing occurs (default behavior)
If the value is greater than 0 (1, 2, ....),  this indicates how many branded owners will bill in parallel depending on the threads available for processing

BillUserMaxDegreeOfParallelism

Configuration.MaxThread

MaxThread is used to configure any existing threading capability, including the number of invoicers to bill in parallel. This option could be used to override that value

Configuration Steps

  1. Update the EngageIPOption table with the rows and the values needed. Suggested default config: (-1,true,1000,5,Configuration.MaxThread)

  2. Reset IIS and Restart EngageIP Services to enable the new configuration

  3. Set a bill run to execute as per your regular processes

 

If multiple branded owners have bill runs scheduled at the same time, the system will spool up a billing service per branded owner to manage a single bill run that is scheduled to execute on that branded owner (if multiple enabled bill runs exist on the same owner, it will be sorted by ID smallest first and only run the smallest first and proceed through the list). It will spool up as many billing services as needed up to the maximum setting (5 in the example above). As bill runs complete and more spots open up, it will execute the next bill run for the existing branded owners or others that still need their bill runs executed.

 

The event log will show something similar to the below, noting that 2 or more bill runs have started and they will each process through their bill run steps as configured:

  • No labels