Algorithms Used in C1-HoldUploadRequest

The following table lists the algorithms which are used in the lifecycle of the C1-HoldUploadRequest business object:

Status System Event Algorithm Algorithm Type Description
Draft Enter C1-HLD-DERIV C1-HLD-DERIV This algorithm reads the data in the BO_​DATA_​AREA column of the C1_​UPL_​REQUEST table and accordingly inserts the records in the C1_​UPLOAD_​REQ_​DTLS table. In addition, the status of each record in the C1_​UPLOAD_​REQ_​DTLS table is set to Pending.

If the hold entity is ACCT and the entity ID is not specified in the record, it derives the account ID using the account identifier type and account identifier combination. Similarly, if the hold entity is PERS and the entity ID is not specified in the record, it derives the person ID using the person identifier type and person identifier combination. Once the account ID or person 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 or if the system could not derive the person ID using the person identifier type and person identifier combination, the status of the record in the C1_​UPLOAD_​REQ_​DTLS table is changed to Invalid.

Validated Enter C1-HLD-VALID C1-HLD-VALID This algorithm is invoked when the user clicks the Validate button. It validates the records which are in the Pending status. It checks whether the data provided for creating a hold request is valid. If the entity ID and hold data are valid, the status of the record in the C1_​UPLOAD_​REQ_​DTLS table is changed to Valid.

If the hold entity is ACCT and the entity ID is invalid, it derives the account ID using the account identifier type and account identifier combination and updates the record accordingly. Similarly, if the hold entity is PERS and the entity ID is invalid, it derives the person ID using the person identifier type and person identifier combination and updates the record accordingly. In addition, it changes the status of the record in the C1_​UPLOAD_​REQ_​DTLS table to Valid. However, if the system could not derive the account ID using the account identifier type and account identifier combination, or if the system could not derive the person ID using the person identifier type and person identifier combination, or if the hold data is invalid, the status of the record in the C1_​UPLOAD_​REQ_​DTLS table is changed to Invalid.

Submitted Enter C1-UPLSUBENT C1-UPLSUBENT This algorithm is invoked when the user clicks the Submit button. It checks whether the approval is required for the upload request. If the approval is required for an upload request, the status of the upload request is changed to Approval In Progress. However, if the approval is not required for an upload request, the status of the upload request remains in the Submitted status.
Submitted Enter C1-DEFERUPLD C1-DEFERUPLD This algorithm is invoked when the status of the upload request is changed to Submitted or Approved. It checks whether the upload request must be processed in the real time (i.e. immediately) or in the deferred mode (i.e. in the background). If the number of valid records in the upload request does not exceed the online record process limit, the system changes the status of the upload request to Processing. However, if the number of valid records in the upload request exceeds the online record process limit, the system changes the status of the upload request to Deferred Processing.

It contains the following parameter:

  • Online Record Process Limit - Used to indicate the maximum number of valid records you can process in the real time (i.e. immediately).

Submitted Monitor F1-AT-RQJ F1-GEN-BOMNJ This algorithm transitions the current status to the specified status. You can specify the status to which you want the business object to transition in the following parameters:
  • Next Status

  • Next Transition Condition

At a time, you can specify value for either the Next Status or Next Transition Condition parameter. If you don't specify any value for these parameters, the system will transition the business object to the default next status specified in its lifecycle.

Approval In Progress Enter C1-UPLAPPENT C1-UPLAPPENT This algorithm creates a To Do using the To Do type specified in the upload request type. The To Do is sent to the appropriate users with the To Do role which is specified in the upload request type. In addition, a log entry is added when a To Do is created using the To Do type.
Approval In Progress Exit C1-UPLAPPEXT C1-UPLAPPEXT This algorithm checks whether the approver is associated with the approval To Do role specified in the upload request type. If not, it does not allow the approver to approve or reject the upload request. In addition, it does not allow the submitter to approve or reject the upload request.
Approval In Progress Exit F1-TODOCOMPL F1-TODOCOMPL This algorithm completes To Do entries that are created for the business object when the business object exits the given status. It finds and completes all open To Do entries where the business object's primary key is defined as a drill key. However, if the Exclude To Do Entries From Auto Completion characteristic is defined for the business object, then the system does not automatically complete the respective To Do entry.
Approved Enter C1-DEFERUPLD C1-DEFERUPLD This algorithm is invoked when the status of the upload request is changed to Submitted or Approved. It checks whether the upload request must be processed in the real time (i.e. immediately) or in the deferred mode (i.e. in the background). If the number of valid records in the upload request does not exceed the online record process limit, the system changes the status of the upload request to Processing. However, if the number of valid records in the upload request exceeds the online record process limit, the system changes the status of the upload request to Deferred Processing.

It contains the following parameter:

  • Online Record Process Limit - Used to indicate the maximum number of valid records you can process in the real time (i.e. immediately).

Approved Monitor F1-AT-RQJ F1-GEN-BOMNJ This algorithm transitions the current status to the specified status. You can specify the status to which you want the business object to transition in the following parameters:
  • Next Status

  • Next Transition Condition

At a time, you can specify value for either the Next Status or Next Transition Condition parameter. If you don't specify any value for these parameters, the system will transition the business object to the default next status specified in its lifecycle.

Deferred Processing Monitor F1-AT-RQJ F1-GEN-BOMNJ This algorithm transitions the current status to the specified status. You can specify the status to which you want the business object to transition in the following parameters:
  • Next Status

  • Next Transition Condition

At a time, you can specify value for either the Next Status or Next Transition Condition parameter. If you don't specify any value for these parameters, the system will transition the business object to the default next status specified in its lifecycle.

Processing Enter C1-HLD-PROC C1-HLD-PROC This algorithm fetches a list of records which are in the Valid status. For each valid record with a unique combination of the hold request type, start date, end date, hold reason, hold entity, hold entity start date, hold entity end date, comments, hold process details, and hold characteristic details, it creates one hold request using the entity business object defined in the upload request type. However, if there are multiple entity IDs with the same combination, all are added in the same hold request. The hold request is created in the Draft status and then transitioned to Submit.

From the Submit status, the status of the hold request is either changed to Approval In Progress or Active depending on whether the Approval Required flag is set to Yes. If the number of bills of the entities which are kept on hold through the hold request does not exceed the defer processing count (defined in the hold request type), the status of the hold request is changed to Active. However, if the number of bills of the entities which are kept on hold through the hold request exceeds the defer processing count, the status of the hold request is changed to Deferred Processing. If the record is successfully processed, the status of the record is changed to Processed. However, if the record could not be processed successfully due to any reason, the status of the record is changed to Error. Finally, the status of the upload request is changed to Processed.

Processing Monitor F1-AT-RQJ F1-GEN-BOMNJ This algorithm transitions the current status to the specified status. You can specify the status to which you want the business object to transition in the following parameters:
  • Next Status

  • Next Transition Condition

At a time, you can specify value for either the Next Status or Next Transition Condition parameter. If you don't specify any value for these parameters, the system will transition the business object to the default next status specified in its lifecycle.