Move SoR Record

Actors

  • User
  • Database
  • OpenRegistry

Pre-Conditions

  • PRE1: User is authenticated and authorized to perform move sor records.
  • PRE2: Identified PRC person to move sor records from (most likely via Search for Person Use Case)
  • PRE3: Identified PRC person to receive SoR Records (either via Search for Person Use Case or will indicate that this is a new person)
  • PRE4: Defined list of calculation rules to be executed.

Flow

  1. User provides the following information to the OpenRegistry System:
    1. Required:
      • From Person.
      • The sor_person_id for each sor record to move.
    2. Optional:
      • To Person for the case where the person to receive the sor_records is already in the registry.
  2. If the person to receive the the sor records is not already in the registry then OpenRegistry will:
    1. add a new prc_person record.
    2. generate identifiers normally generated on an add of a person to the registry using data from the sor record.
    3. establish prc_person data using data from the sor record.
  3. For each sor record being moved:
    1. Check if there exists a prs_person record for the receiving person with a matching sor source:
      1. if found give error message.  System of record is responsible to fix own data errors.
      2. if not found:
        1. associate moving prs_person record with the prc_person_id of the receiving person.
    2. For each prs_role record associated with the moving prs_person record, find the prc_role record pointed to by the prs_role record and point the prc_role record to the prc_person record of the person receiving the sor records.

Post Conditions

  • From person and to Person are recalculated.
  • Downstream systems are notified of change.

Exceptions

  • EX1: If any rule calculation fails, the flow should fail.