Perform On-Demand

  1. start BC Run (BillCycleStatus = IN_PROGRESS)

  2. for each account in billcycle

    1. validate already in progress (AccountBillCycleRun)

    2. validate payment responsible

    3. validate activation date (activatedValidFrom < bc.endDate)

    4. validate registered payer

    5. store AccountBillCycleRun (AccountSemaphore = WAITING)

    6. start async CreateOcsBillRunInvoiceAsyncProcess Perform On-Demand