Skip to end of metadata
Go to start of metadata

Purpose

Indicate the necessity for this enhancement. What does it accomplish?
Allow an initiator or qualified document role (Document Aggregator in KC's example) to recall a routed document. They may need to update or add information on the document or, in some cases, cancel/disapprove the document.

Detailed Description

Give a detailed description for the enhancement. Clearly describe all concerns, eliminating ambiguities.
Current tools allow for a document that is enroute to be returned to any node in the route chain, however it does not return the document to SAVED status when returned to the initiators action list. Additionally, the provided Return to Previous functionality only allows for those with a pending action to return the document. This enhancement would provide a new route control button labeled "Recall" that can be configured to allow an initiator or qualified document role, by accessing the document from Document Search, to return the document to their own action list.

Applications will have different rules for when the recall for routing can be used and what level of notifications are sent. The requirements below outline the need for configuration options and permissions that can be used to tailor this option for a given application.

Usage Scenarios

Include at least one usage scenario, from the user's task perspective, that might be helpful in understanding the issue:

  1. After routing an eDoc, an initiator realizes that an important, but optional field or attachment was not provided. Using document search, they find the document, open it and use the Recall button to bring the document back to their action list for Completion before routing the document again through the normal approval chain.
  2. After a document has been routed by an initiator, a qualified document aggregator (a specific KC Role for a given document), notices that a document has changes that need to be made. While they are not the one that initiated the document, they access the document from doc search and invoke Recall action to move the document to their action list for correction or cancellation with a status of Saved and action request of Complete. After making the changes they route the document on and it follows the normal flow from the beginning of the route chain.

Mocks and Diagrams

Include any mocks (for UI enhancements) or diagrams that might be helpful in understanding the issue:
n/a

Performance

If applicable, list expectations for performance (optimal and worst cases would be fine, give time in seconds):
n/a

References

Include links to other confluence pages or external resources that might be helpful for this issue:

Requirements Listing

List all requirements (individual verifiable statements) that indicate whether the work for this item has been complete. If there are requirements that are not essential to the functionality but would be nice to have if time allows, enter those under 'Non-Essential':

Primary:
  1. Provide a new button in the route controls section titled "RECALL"
  2. Provide a new route status of RECALLED, this is a terminal route status
  3. Provide a new action taken of RECALLED that is noted in the route log when the Recall action is taken
  4. Recall action invoke a confirmation screen, much like cancel has now, and require a note be added.
    1. On the confirmation screen, provide the option for the user to RECALL TO ACTION LIST, or RECALL & CANCEL (drop down, radio, or checkbox)
    2. Force a selection, no default
  5. When invoked, RECALL TO ACTION LIST action will return the document back to their action list with the route status of SAVED and requested action of COMPLETE.
    1. This rolls the document back to the first node in the route chain.
    2. Reload the document
  6. When invoked, RECALL & CANCEL action will perform the RECALL and set the route status of the document to the new, terminal status of RECALLED
  7. Provide a configuration option for sending notifications back to any prior approvers
  8. Provide a configuration option to allow notifications back to other persons, groups, or roles.  
    1. Recall actions will be noted in the route log with the specific action taken of RECALLED
  9. Allow Recall action can only be taken on ENROUTE documents, those that are PROCESSED, FINAL, or RECALLED can not be recalled. In these cases, the button should not be presented
  10. Limit Recall action by permission, when permissions are inadequate, the button should not be presented. A new permission template will be needed to enforce this which includes configurations for:
    1. document type
    2. current node
    3. document status
    4. application status
Non-Essential:

out of scope items that may be worth noting for future enhancements

  1. provide Recall function for approvers of documents
  2. instead of going back to their action list after recalling the document, refresh the document right away and allow them to edit it without the extra step.

Dependencies

List any functional or technical work that must be completed before work on this item can begin:

Issues

List any issues that need to be resolved before work on this item can begin:

Functional:
  1. In the related KFS Jira, there is a request to have a COPY function added where the disapproved eDoc would have an option to copy the information a new one. However, if we use the KC concept of returning the document to SAVED with an Action of complete, the initiator would not need to create a new document and could update the exiting one and reroute. This would simplify the code and save some steps for the user. We need to confirm with the KFS Functional group that this deviation from their original request is acceptable.
Technical:
  1. on the backend implement this as a specialized version of "Return To Previous" which returns back to the first node on the document, changes the status back to SAVED
  2. as a general development note, we should implement this by delegating to the return to previous action, instead of copying code from that action class!
  3. implement the permission template (and corresponding authz check in DocumentTypePermissionService) for the recall permission (10 hrs)
  4. add an "afterActionTaken" hook to the post processor which gets executed after an action has been successfully taken (4hrs)
    1. rename "onActionTaken" to "beforeActionTaken" since I think that it's invoked now before the actual action is taken. KC can then use them to send custom notifications to their document aggregators

QA or Regression Testing Plan

List steps needed to test the basic functionality of this update, enhancement, bug fix

Recall as initiator before any approvals
  1. Route document
  2. Access document from document search as initiator, invoke recall action
  3. Ensure document is back in action list with status of SAVED and requested action of COMPLETE
  4. Ensure recall action and required note is listed in route log
    1. If applicable, ensure email notification of action is sent
Recall as initiator after a single approval
  1. Route document
  2. Approve as next approver in route chain
  3. Access document from document search as initiator, invoke recall action
  4. Ensure document is back in action list with status of SAVED and requested action of COMPLETE
  5. Ensure recall action and required note is listed in route log
  6. Ensure email notification of action is sent to prior approver
Recall when document is PROCESSED
  1. Route document
  2. Approve as next approver in route chain till document is PROCESSED (all approvals w/outstanding acknowledgements or FYIs)
  3. Access document from document search as initiator
  4. Ensure Recall button is not presented
Recall when document is FINAL
  1. Route document
  2. Approve as next approver in route chain till document is FINAL
  3. Access document from document search as initiator
  4. Ensure Recall button is not presented

Checkoff

Functional Analysis Complete? Yes (completed by SME)

Needs Review by KAI? DONE(completed by BA)

Technical Analysis Complete? No (completed by DM)

Needs Review by KTI? No (completed by DM)

Estimate: 1w 1d 2h(completed by DM)

Technical Design: KULRICE-5931 Recall from Routing Technical Docs Link Here (completed by DM)

Jira: https://jira.kuali.org/browse/KULRICE-5931 (completed by SME)

Final Documentation:KULRICE-5931 Recall from Routing User Documentation  Link Here (completed by DM)

Added to QA: No (completed by SME)

  • No labels