Taux de change daté, table globale en ajout seul. Exprimé en rapport de deux entiers, en unités majeures : 655957/1000 veut dire 1 EUR = 655,957 XOF (EC-028, EC-070). Pour convertir des montants en unités mineures, le domaine l’adapte avec les décimales de chaque devise (app.devise, packages/domain/devises).
| Name |
Type |
Default |
Nullable |
Children |
Parents |
Comment |
| id |
uuid |
app.uuid_v7() |
false |
|
|
Identifiant du taux (UUID v7). |
| devise_source |
text |
|
false |
|
|
Devise de départ, code ISO 4217. |
| devise_cible |
text |
|
false |
|
|
Devise d’arrivée, code ISO 4217. |
| numerateur |
bigint |
|
false |
|
|
Numérateur du taux publié, en unités majeures : taux = numérateur / dénominateur unités de la devise cible pour une unité de la devise source. |
| denominateur |
bigint |
|
false |
|
|
Dénominateur du taux publié, en unités majeures. |
| applicable_du |
date |
|
false |
|
|
Date à partir de laquelle le taux s’applique. |
| source |
text |
|
false |
|
|
Origine du taux. |
| cree_le |
timestamp with time zone |
now() |
false |
|
|
Date de création de la ligne. |
| Name |
Type |
Definition |
| taux_change_check |
CHECK |
CHECK ((devise_source <> devise_cible)) |
| taux_change_denominateur_check |
CHECK |
CHECK ((denominateur > 0)) |
| taux_change_devise_cible_check |
CHECK |
CHECK ((devise_cible ~ ‘^[A-Z]{3}$’::text)) |
| taux_change_devise_source_check |
CHECK |
CHECK ((devise_source ~ ‘^[A-Z]{3}$’::text)) |
| taux_change_numerateur_check |
CHECK |
CHECK ((numerateur > 0)) |
| taux_change_pkey |
PRIMARY KEY |
PRIMARY KEY (id) |
| taux_change_devise_source_devise_cible_applicable_du_key |
UNIQUE |
UNIQUE (devise_source, devise_cible, applicable_du) |
| Name |
Definition |
| taux_change_pkey |
CREATE UNIQUE INDEX taux_change_pkey ON app.taux_change USING btree (id) |
| taux_change_devise_source_devise_cible_applicable_du_key |
CREATE UNIQUE INDEX taux_change_devise_source_devise_cible_applicable_du_key ON app.taux_change USING btree (devise_source, devise_cible, applicable_du) |
| Name |
Definition |
| journal |
CREATE TRIGGER journal AFTER INSERT OR DELETE OR UPDATE ON app.taux_change FOR EACH ROW EXECUTE FUNCTION journal.tg_journaliser() |
| ajout_seul |
CREATE TRIGGER ajout_seul BEFORE DELETE OR UPDATE ON app.taux_change FOR EACH ROW EXECUTE FUNCTION app.tg_ajout_seul() |
erDiagram
"app.taux_change" {
uuid id "Identifiant du taux (UUID v7)."
text devise_source "Devise de départ, code ISO 4217."
text devise_cible "Devise d'arrivée, code ISO 4217."
bigint numerateur "Numérateur du taux publié, en unités majeures : taux = numérateur / dénominateur unités de la devise cible pour une unité de la devise source."
bigint denominateur "Dénominateur du taux publié, en unités majeures."
date applicable_du "Date à partir de laquelle le taux s'applique."
text source "Origine du taux."
timestamp_with_time_zone cree_le "Date de création de la ligne."
}
Generated by tbls