C1-BC-VALID

This algorithm is invoked when the user clicks the Validate button. It validates the records which are in the Pending status. It validates the following:

  • The account ID given in the record is valid.

    Note: If the account ID is invalid, it derives the account ID using the respective account identifier type and account identifier combination. Once the account ID is derived, the corresponding record is updated in the C1_​UPLOAD_​REQ_​DTLS table. If the system could not derive the account ID using the account identifier type and account identifier combination, the status of the record in the C1_​UPLOAD_​REQ_​DTLS table is changed to Invalid.
  • The billable charge’s start date is equal to or later than the contract start date and earlier than or equal to the contract end date.

  • The billable charge’s start date is equal to or earlier than the billable charge’s end date.

  • The billable charge’s end date is equal to or later than the billable charge’s start date.

  • At least one pass-through charge line or SQ based charge details is specified in the record.

  • The Description on Bill, Amount, and Currency are specified when the record contains pass-through charge line details.

  • The SQI and SQI Value are specified when the record contains SQ based charge details.

  • The distribution code is required when the Memo Only flag of the respective pass-through charge line is set to N.

  • The distribution code is not specified when the Memo Only flag of the respective pass-through charge line is set to Y.

  • The distribution code given in the record is valid.

  • The currency code given in the record is valid.

  • The amount matches the decimal positions of the respective currency.

  • The SQI given in the record is valid.

  • The same SQI is not repeated multiple times in the record.

  • The contract ID given in the record is valid and is not in the Canceled status.

  • If both the account ID and contract ID are given in the record, the contract belongs to the account.

  • The charge type given in the record is valid.

  • The price item given in the record is valid.

  • The Price Item Usage flag of the price item is set to Pricing and Billing.

  • The contract type considered for billing should match the contract type specified in the price item.

  • If the Use Calendar Billing field in the contract type is not set to Allow Advanced Billing, then bill after date is not earlier than the contract start date.

  • The recurring flag in the record is either set to BP or FR.

  • If the recurring flag is set to BP, then the bill period given in the record is valid. However, if the recurring flag is set to FR, then the frequency given in the record is valid.

  • If the Multi Price Parameter option type of the C1_​PPARM_​FLG feature configuration is set to TRUE, then only the price item is given in the record.

  • The price item parameters are not specified when the price item is not given in the record.

  • The same price item parameter is not repeated multiple times in the record.

  • The characteristic type given in the record is valid and its characteristic entity is set to Billable Charge.

  • The adhoc characteristic values are validated as per the validations defined in the respective algorithm.

  • The predefined characteristic value is already defined for the characteristic type.

  • The foreign key reference characteristic value is valid.

  • The mandatory parameter of the price item is included in the record when the billable charge start and end dates fall within the price item parameter date range.

    Note: If the billable charge start and end dates do not fall within the price item parameter date range, the billable charge can be created without the mandatory price item parameter.
  • The adhoc, predefined, and reference price item parameter values are valid.

  • The source entity of the price item parameter is set to Transaction.

  • Both the price item parameter and its value are given in the record.

  • The price item parameter should be valid for the price item in the given date range.

  • The adhoc bill value in the record is either set to Y or N.

If any of above validations fail, the status of the record in the C1_​UPLOAD_​REQ_​DTLS table is changed to Invalid. However, if all the above validations are successful, the status of the record in the C1_​UPLOAD_​REQ_​DTLS table is changed to Valid. Once all the pending records in the upload request are validated, the status of the upload request is changed to Validated.

Note: If there are no pending records while validating an upload request, a message appears indicating that there are no records to be validated. In such case, you can only delete an upload request.