ores.refdata.party_identifier
Table of Contents
External identifiers for parties, such as LEI codes, BIC/SWIFT codes, national registration numbers, and tax identifiers. Each party can have multiple identifiers across different schemes.
1. Flags
2. Columns
2.1. id
UUID uniquely identifying this party identifier.
Surrogate key for the party identifier record.
2.2. party_id
The party this identifier belongs to.
References the parent party record.
uuid_gen()
2.3. id_scheme
The identification scheme for this identifier.
References the party_id_scheme lookup table (e.g. LEI, BIC).
// no_generator_suffix: validated enum, a "-<idx>" suffix would be invalid. // Rotate so a batch of several identifiers for one party gets distinct // schemes (max one identifier per scheme per party). [idx]{ static constexpr const char* schemes[] = { "LEI", "BIC", "MIC", "NATIONAL_ID", "CEDB", "NATURAL_PERSON", "ACER", "DTCC_PARTICIPANT_ID", "MPID", "INTERNAL"}; return std::string(schemes[idx % 10]); }()
2.4. id_value
The identifier value.
The actual identifier string within the scheme. Part of the natural key alongside party_id and id_scheme — a party can hold more than one identifier under the same scheme as long as the value differs.
std::string(faker::string::alphanumeric(20))
2.5. description
Optional description of this identifier.
Free text description providing additional context.
std::string("Test identifier")
3. SQL
3.1. Flags
4. Foreign keys
4.1. party_id
5. Insert trigger
5.1. Validations
| column | validation_function | cardinality_limit_table | cardinality_limit_column | cardinality_scope_column | cardinality_noun |
|---|---|---|---|---|---|
| id_scheme | ores_refdata_validate_party_id_scheme_fn | ores_refdata_party_id_schemes_tbl | max_cardinality | party_id | identifier |
6. C++
6.1. Flags
6.2. Repository
6.3. Domain includes
#include <chrono> #include <string> #include <boost/uuid/uuid.hpp>
6.4. Entity includes
#include <string> #include "sqlgen/Timestamp.hpp" #include "sqlgen/PrimaryKey.hpp"
6.5. Conventions
6.6. Table display
| column | header |
|---|---|
| party_id | Party |
| id_scheme | Scheme |
| id_value | Value |
| description | Description |
| modified_by | Modified By |
| version | Version |
6.7. Custom repository methods
6.8. Presentation
Note: party_id is deliberately not exposed as a Detail field – like
Book's parent_portfolio_id, it's always known from the owning
context (the party's own Identifiers tab) and set programmatically
before the dialog is shown, never user-chosen.
6.8.1. Detail fields
| field | label | widget | type | is_key | is_required | placeholder | combo_domain_type | combo_fetch_include | combo_fetch_fn | combo_watcher_name | combo_code_field | combo_tooltip_field | combo_sort_field | combo_label | combo_setter_pascal | badge_key |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| id | Id | idEdit | line_edit | true | true | Party identifier id | ||||||||||
| id_scheme | Scheme | idSchemeCombo | dynamic_combo | false | true | refdata::domain::party_id_scheme | fetch_party_id_schemes | idSchemeWatcher | code | description | display_order | id schemes | IdSchemeCombo | |||
| id_value | Value | idValueEdit | line_edit | false | true | Enter identifier value | ||||||||||
| description | Description | descriptionEdit | line_edit | false | false | Enter description |
6.8.2. Columns
| enum_name | field | header | type | width |
|---|---|---|---|---|
| IdScheme | id_scheme | Scheme | string | 100 |
| IdValue | id_value | Value | string | 180 |
| Description | description | Description | string | 200 |
| Version | version | Version | int | 80 |
| ModifiedBy | modified_by | Modified By | string | 120 |
| RecordedAt | recorded_at | Recorded At | timestamp | 150 |
7. See also
- ores.refdata — component group overview.