ores.refdata.counterparty_identifier
Table of Contents
External identifiers for counterparties, such as LEI codes, BIC/SWIFT codes, national registration numbers, and tax identifiers. Each counterparty can have multiple identifiers across different schemes.
Flags
Columns
id
UUID uniquely identifying this counterparty identifier.
Surrogate key for the counterparty identifier record.
counterparty_id
The counterparty this identifier belongs to.
References the parent counterparty record.
uuid_gen()
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 counterparty gets // distinct schemes (max one identifier per scheme per counterparty). [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]); }()
id_value
The identifier value.
The actual identifier string within the scheme. Part of the natural key alongside counterparty_id and id_scheme — a counterparty can hold more than one identifier under the same scheme as long as the value differs.
std::string(faker::string::alphanumeric(20))
description
Optional description of this identifier.
Free text description providing additional context.
std::string("Test identifier")
SQL
Flags
Foreign keys
counterparty_id
Insert trigger
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 | counterparty_id | identifier |
C++
Flags
Repository
Domain includes
#include <chrono> #include <string> #include <boost/uuid/uuid.hpp>
Entity includes
#include <string> #include "sqlgen/Timestamp.hpp" #include "sqlgen/PrimaryKey.hpp"
Conventions
Table display
| column | header |
|---|---|
| counterparty_id | Counterparty |
| id_scheme | Scheme |
| id_value | Value |
| description | Description |
| modified_by | Modified By |
| version | Version |
Custom repository methods
Qt
Note: counterparty_id is deliberately not exposed as a Detail field
– like Book's parent_portfolio_id, it's always known from the
owning context (the counterparty's own Identifiers tab) and set
programmatically before the dialog is shown, never user-chosen.
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 | Counterparty identifier id | ||||||||||
| id_scheme | Scheme | idSchemeCombo | dynamic_combo | false | true | refdata::domain::party_id_scheme | ores.qt/LookupFetcher.hpp | 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 |
Columns (Qt model)
| 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 |
See also
- ores.refdata — component group overview.