Table sola.transaction.transaction
Transactions are used to group changes to registered data (i.e. Property, RRR and Parcels). Each service initiates a transaction that is then recorded against any data edits made by the user. When the service is complete and the application approved, the data associated with the transction can be approved/registered as well. If the user chooses to reject their changes prior to approval, the transaction can be used to determine which data edits need to be removed from the system without affecting the currently registered data.
Tags: FLOSS SOLA Extension, Change History

Generated by
Primary key columns
Columns with indexes
Implied relationships
Excluded column relationships
< n > number of related tables
Column Type Size Nulls Auto Default Children Parents Comments
id varchar 40
ba_unit.transaction_id ba_unit_transaction_id_fk40 C
ba_unit_target.transaction_id ba_unit_target_transaction_id_fk84 C
cadastre_object.transaction_id cadastre_object_transaction_id_fk65 C
cadastre_object_node_target.transaction_id cadastre_object_node_target_transaction_id_fk102 C
cadastre_object_target.transaction_id cadastre_object_target_transaction_id_fk98 C
notation.transaction_id notation_transaction_id_fk73 C
rrr.transaction_id rrr_transaction_id_fk44 C
source.transaction_id source_transaction_id_fk5 C
spatial_unit.transaction_id spatial_unit_transaction_id_fk67 C
spatial_unit_temporary.transaction_id spatial_unit_temporary_transaction_id_fk132 C
survey_point.transaction_id survey_point_transaction_id_fk99 C
transaction_source.transaction_id transaction_source_transaction_id_fk100 C
Identifier for the transaction.
from_service_id varchar 40  √  null transaction_from_service_id_fk6 R
The identifier of the service that initiated the transaction. NULL if the transaction has been created using other means. E.g. for migration or bulk data loading purposes.
status_code varchar 20 'pending'::character varying
transaction_status_type.code transaction_status_code_fk27 R
The status of the transaction
approval_datetime timestamp 29,6  √  null The date and time the transaction is approved.
bulk_generate_first_part bool 1 false Flag used by the bulk operations functionality to determine if the first_namepart for cadastre objects should be automatically generated.
is_bulk_operation bool 1 false Flag used to indicate the transaction was created in support of a bulk operation.
rowidentifier varchar 40 uuid_generate_v1() Identifies the all change records for the row in the transaction_historic table
rowversion int4 10 0 Sequential value indicating the number of times this row has been modified.
change_action bpchar 1 'i'::bpchar Indicates if the last data modification action that occurred to the row was insert (i), update (u) or delete (d).
change_user varchar 50  √  null The user id of the last person to modify the row.
change_time timestamp 29,6 now() The date and time the row was last modified.

Analyzed at Tue May 31 09:59 NZST 2016

Column(s) Type Sort Constraint Name Anomalies
id Primary key Asc transaction_pkey  
from_service_id Performance Asc transaction_from_service_id_fk6_ind  
from_service_id Must be unique Asc transaction_from_service_id_unique This unique column is also nullable
rowidentifier Performance Asc transaction_index_on_rowidentifier  
status_code Performance Asc transaction_status_code_fk27_ind  

Close relationships  within of separation:

Excluded from diagram's relationships: transaction_source.change_action  transaction_source.rowidentifier  transaction_source.rowversion  transaction_source.change_user  transaction_source.change_time