Files
tryton-db-migration/reports/updateChanges/country.md
T
uha4 c0dd24b6c5 Proteus-Zweig: dataset.yaml-Pipeline und 5.0/8.0-Modellbaumvergleich
- create_dataset.py, compare_snapshots.py, rst_to_dataset.py: Proteus-
  Testdatensatz anlegen/vergleichen bzw. aus *.rst-Szenarien extrahieren
- create_dataset.py: Feld-Alias-Fallback (FIELD_RENAMES) für bekannte
  Umbenennungen wie stock.move.uom -> unit, bidirektional
- merge_dedup_rsts.py: Extrahierte YAMLs pro Version zusammenführen,
  versionsinterne Duplikate entfernen, abhängigkeitskorrekt sortieren
- extract_model_tree.py: Modellbaum (Modelle/Felder) statisch aus dem
  Tryton-Quellcode ziehen, für 5.0 und 8.0
- model_diff.py, model_coverage.py: 5.0<->8.0-Modelländerungen finden und
  gegen die aktuelle Testdatenabdeckung abgleichen, priorisiert nach
  tatsächlicher Änderung
- reports/*_merged.yaml: Extraktionsergebnisse für die aktiven
  Module (rohe *.rst-Quellen bewusst nicht mitversioniert)
- Ordner doc ergänzt
2026-08-22 10:52:13 +02:00

866 lines
19 KiB
Markdown

# modul country
## Tabelle country_country
### 5.0
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'name_uniq'`
- code:
'table.drop_constraint('name_uniq')'
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'code_uniq'`
- code:
'table.drop_constraint('code_uniq')'
- **after_super** `not_null_action`
- object: `table`
- files:
- `country.py`
- args: `'code', 'remove'`
- code:
'table.not_null_action('code', 'remove')'
### 5.4
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'name_uniq'`
- code:
'table.drop_constraint('name_uniq')'
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'code_uniq'`
- code:
'table.drop_constraint('code_uniq')'
- **after_super** `not_null_action`
- object: `table`
- files:
- `country.py`
- args: `'code', 'remove'`
- code:
'table.not_null_action('code', 'remove')'
### 5.8
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'name_uniq'`
- code:
'table.drop_constraint('name_uniq')'
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'code_uniq'`
- code:
'table.drop_constraint('code_uniq')'
- **after_super** `not_null_action`
- object: `table`
- files:
- `country.py`
- args: `'code', 'remove'`
- code:
'table.not_null_action('code', 'remove')'
### 6.2
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'name_uniq'`
- code:
'table.drop_constraint('name_uniq')'
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'code_uniq'`
- code:
'table.drop_constraint('code_uniq')'
- **after_super** `not_null_action`
- object: `table`
- files:
- `country.py`
- args: `'code', 'remove'`
- code:
'table.not_null_action('code', 'remove')'
### 6.6
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'name_uniq'`
- code:
'table.drop_constraint('name_uniq')'
- **after_super** `drop_constraint`
- object: `table`
- files:
- `country.py`
- args: `'code_uniq'`
- code:
'table.drop_constraint('code_uniq')'
- **after_super** `not_null_action`
- object: `table`
- files:
- `country.py`
- args: `'code', 'remove'`
- code:
'table.not_null_action('code', 'remove')'
## Tabelle country_postal_code
### 6.0
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
- **before_super** `column_rename`
- object: `table_h`
- files:
- `country.py`
- args: `'zip', 'postal_code'`
- code:
'table_h.column_rename('zip', 'postal_code')'
### 6.4
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
- **before_super** `column_rename`
- object: `table_h`
- files:
- `country.py`
- args: `'zip', 'postal_code'`
- code:
'table_h.column_rename('zip', 'postal_code')'
### 6.8
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
- **before_super** `column_rename`
- object: `table_h`
- files:
- `country.py`
- args: `'zip', 'postal_code'`
- code:
'table_h.column_rename('zip', 'postal_code')'
### 7.2
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
- **before_super** `column_rename`
- object: `table_h`
- files:
- `country.py`
- args: `'zip', 'postal_code'`
- code:
'table_h.column_rename('zip', 'postal_code')'
## Tabelle country_subdivision
### 6.4
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'type'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('type', action='remove')'
### 6.6
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'code'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('code', action='remove')'
### 6.8
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'type'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('type', action='remove')'
### 7.0
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'code'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('code', action='remove')'
### 7.2
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'type'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('type', action='remove')'
### 7.4
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'code'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('code', action='remove')'
### 7.6
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'type'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('type', action='remove')'
### 7.8
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'code'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('code', action='remove')'
### 8.0
- **after_super** `not_null_action`
- object: `table_h`
- files:
- `country.py`
- args: `'type'`
- kwargs:
- action: `'remove'`
- code:
'table_h.not_null_action('type', action='remove')'
## Tabelle country_zip
### 6.0
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
### 6.4
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
### 6.8
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
### 7.2
- **before_super** `table_rename`
- object: `backend.TableHandler`
- files:
- `country.py`
- args: `'country_zip', cls._table`
- code:
'backend.TableHandler.table_rename('country_zip', cls._table)'
## Tabelle ir_model_data
### 5.4
- **after_super** `execute`
- object: `cursor`
- files:
- `country.py`
- args: `*data.delete(where=(data.module == 'country') & (data.model == cls.__name__))`
- code:
'(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country')
& (data.model == cls.__name__)))'
- **after_super** `delete`
- object: `data`
- files:
- `country.py`
- kwargs:
- where: `(data.module == 'country') & (data.model == cls.__name__)`
- code:
'data.delete(where=(data.module == 'country')
& (data.model == cls.__name__))'
### 5.8
- **after_super** `execute`
- object: `cursor`
- files:
- `country.py`
- args: `*data.delete(where=(data.module == 'country') & (data.model == cls.__name__))`
- code:
'(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country')
& (data.model == cls.__name__)))'
- **after_super** `delete`
- object: `data`
- files:
- `country.py`
- kwargs:
- where: `(data.module == 'country') & (data.model == cls.__name__)`
- code:
'data.delete(where=(data.module == 'country')
& (data.model == cls.__name__))'
### 6.2
- **after_super** `execute`
- object: `cursor`
- files:
- `country.py`
- args: `*data.delete(where=(data.module == 'country') & (data.model == cls.__name__))`
- code:
'(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country')
& (data.model == cls.__name__)))'
- **after_super** `delete`
- object: `data`
- files:
- `country.py`
- kwargs:
- where: `(data.module == 'country') & (data.model == cls.__name__)`
- code:
'data.delete(where=(data.module == 'country')
& (data.model == cls.__name__))'
### 6.6
- **after_super** `execute`
- object: `cursor`
- files:
- `country.py`
- args: `*data.delete(where=(data.module == 'country') & (data.model == cls.__name__))`
- code:
'(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country')
& (data.model == cls.__name__)))'
- **after_super** `delete`
- object: `data`
- files:
- `country.py`
- kwargs:
- where: `(data.module == 'country') & (data.model == cls.__name__)`
- code:
'data.delete(where=(data.module == 'country')
& (data.model == cls.__name__))'
### 7.0
- **after_super** `execute`
- object: `cursor`
- files:
- `country.py`
- args: `*data.delete(where=(data.module == 'country') & (data.model == cls.__name__))`
- code:
'(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country')
& (data.model == cls.__name__)))'
- **after_super** `delete`
- object: `data`
- files:
- `country.py`
- kwargs:
- where: `(data.module == 'country') & (data.model == cls.__name__)`
- code:
'data.delete(where=(data.module == 'country')
& (data.model == cls.__name__))'
### 7.4
- **after_super** `execute`
- object: `cursor`
- files:
- `country.py`
- args: `*data.delete(where=(data.module == 'country') & (data.model == cls.__name__))`
- code:
'(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country')
& (data.model == cls.__name__)))'
- **after_super** `delete`
- object: `data`
- files:
- `country.py`
- kwargs:
- where: `(data.module == 'country') & (data.model == cls.__name__)`
- code:
'data.delete(where=(data.module == 'country')
& (data.model == cls.__name__))'
## Tabelle unknown
### 5.0
- **before_super** `get`
- object: `backend`
- files:
- `party.py`
- args: `'TableHandler'`
- code:
'backend.get('(backend.get('TableHandler'))')'
- **before_super** `table_exist`
- object: `TableHandler`
- files:
- `party.py`
- args: `cls._table`
- code:
'(backend.get('TableHandler')).table_exist(cls._table)'
- **before_super** `column_exist`
- condition: `exist`
- object: `table`
- files:
- `party.py`
- args: `'company'`
- code:
'table.column_exist('company')'
- **after_super** `migrate_property`
- condition: `not exist`
- files:
- `party.py`
- args: `'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field`
- kwargs:
- fields: `['company']`
- code:
'migrate_property(
'party.configuration', cls._configuration_value_field,
cls, cls._configuration_value_field, fields=['company'])'
- **after_super** `_migrate_property`
- condition: `not exist`
- object: `super(PartyLang, cls)`
- files:
- `party.py`
- args: `field_names, value_names, fields`
- code:
'super(PartyLang, cls)._migrate_property(
field_names, value_names, fields)'
- **after_super** `super`
- condition: `not exist`
- files:
- `party.py`
- args: `PartyLang, cls`
- code:
'super(PartyLang, cls)'
### 5.4
- **before_super** `get`
- object: `backend`
- files:
- `party.py`
- args: `'TableHandler'`
- code:
'backend.get('(backend.get('TableHandler'))')'
- **before_super** `table_exist`
- object: `TableHandler`
- files:
- `party.py`
- args: `cls._table`
- code:
'(backend.get('TableHandler')).table_exist(cls._table)'
- **before_super** `column_exist`
- condition: `exist`
- object: `table`
- files:
- `party.py`
- args: `'company'`
- code:
'table.column_exist('company')'
- **after_super** `migrate_property`
- condition: `not exist`
- files:
- `party.py`
- args: `'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field`
- kwargs:
- fields: `['company']`
- code:
'migrate_property(
'party.configuration', cls._configuration_value_field,
cls, cls._configuration_value_field, fields=['company'])'
- **after_super** `_migrate_property`
- condition: `not exist`
- object: `super(PartyLang, cls)`
- files:
- `party.py`
- args: `field_names, value_names, fields`
- code:
'super(PartyLang, cls)._migrate_property(
field_names, value_names, fields)'
- **after_super** `super`
- condition: `not exist`
- files:
- `party.py`
- args: `PartyLang, cls`
- code:
'super(PartyLang, cls)'
- **before_super** `Pool`
- files:
- `country.py`
- code:
'Pool()'
- **before_super** `cursor`
- object: `Transaction().connection`
- files:
- `country.py`
- code:
'Transaction().connection.(Transaction().connection.cursor())()'
- **before_super** `Transaction`
- files:
- `country.py`
- code:
'Transaction()'
### 5.8
- **before_super** `column_exist`
- condition: `exist`
- object: `table`
- files:
- `party.py`
- args: `'company'`
- code:
'table.column_exist('company')'
- **after_super** `migrate_property`
- condition: `not exist`
- files:
- `party.py`
- args: `'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field`
- kwargs:
- fields: `['company']`
- code:
'migrate_property(
'party.configuration', cls._configuration_value_field,
cls, cls._configuration_value_field, fields=['company'])'
- **after_super** `_migrate_property`
- condition: `not exist`
- object: `super(PartyLang, cls)`
- files:
- `party.py`
- args: `field_names, value_names, fields`
- code:
'super(PartyLang, cls)._migrate_property(
field_names, value_names, fields)'
- **after_super** `super`
- condition: `not exist`
- files:
- `party.py`
- args: `PartyLang, cls`
- code:
'super(PartyLang, cls)'
- **before_super** `Pool`
- files:
- `country.py`
- code:
'Pool()'
- **before_super** `cursor`
- object: `Transaction().connection`
- files:
- `country.py`
- code:
'Transaction().connection.(Transaction().connection.cursor())()'
- **before_super** `Transaction`
- files:
- `country.py`
- code:
'Transaction()'
### 6.0
- **before_super** `Pool`
- files:
- `res.py`
- code:
'Pool()'
- **before_super** `Transaction`
- files:
- `res.py`
- code:
'Transaction()'
- **after_super** `cursor`
- object: `transaction.connection`
- files:
- `res.py`
- code:
'transaction.connection.(transaction.connection.cursor())()'
### 6.2
- **before_super** `column_exist`
- condition: `exist`
- object: `table`
- files:
- `party.py`
- args: `'company'`
- code:
'table.column_exist('company')'
- **after_super** `migrate_property`
- condition: `not exist`
- files:
- `party.py`
- args: `'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field`
- kwargs:
- fields: `['company']`
- code:
'migrate_property(
'party.configuration', cls._configuration_value_field,
cls, cls._configuration_value_field, fields=['company'])'
- **after_super** `_migrate_property`
- condition: `not exist`
- object: `super(PartyLang, cls)`
- files:
- `party.py`
- args: `field_names, value_names, fields`
- code:
'super(PartyLang, cls)._migrate_property(
field_names, value_names, fields)'
- **after_super** `super`
- condition: `not exist`
- files:
- `party.py`
- args: `PartyLang, cls`
- code:
'super(PartyLang, cls)'
- **before_super** `cursor`
- object: `Transaction().connection`
- files:
- `country.py`
- code:
'Transaction().connection.(Transaction().connection.cursor())()'
### 6.4
- **before_super** `Pool`
- files:
- `res.py`
- code:
'Pool()'
- **before_super** `Transaction`
- files:
- `res.py`
- code:
'Transaction()'
- **after_super** `cursor`
- object: `transaction.connection`
- files:
- `res.py`
- code:
'transaction.connection.(transaction.connection.cursor())()'
### 6.6
- **before_super** `column_exist`
- condition: `exist`
- object: `table`
- files:
- `party.py`
- args: `'company'`
- code:
'table.column_exist('company')'
- **after_super** `migrate_property`
- condition: `not exist`
- files:
- `party.py`
- args: `'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field`
- kwargs:
- fields: `['company']`
- code:
'migrate_property(
'party.configuration', cls._configuration_value_field,
cls, cls._configuration_value_field, fields=['company'])'
- **after_super** `_migrate_property`
- condition: `not exist`
- object: `super(PartyLang, cls)`
- files:
- `party.py`
- args: `field_names, value_names, fields`
- code:
'super(PartyLang, cls)._migrate_property(
field_names, value_names, fields)'
- **after_super** `super`
- condition: `not exist`
- files:
- `party.py`
- args: `PartyLang, cls`
- code:
'super(PartyLang, cls)'
- **before_super** `cursor`
- object: `Transaction().connection`
- files:
- `country.py`
- code:
'Transaction().connection.(Transaction().connection.cursor())()'
### 6.8
- **before_super** `Pool`
- files:
- `res.py`
- code:
'Pool()'
- **before_super** `Transaction`
- files:
- `res.py`
- code:
'Transaction()'
- **after_super** `cursor`
- object: `transaction.connection`
- files:
- `res.py`
- code:
'transaction.connection.(transaction.connection.cursor())()'
### 7.0
- **before_super** `cursor`
- object: `Transaction().connection`
- files:
- `country.py`
- code:
'Transaction().connection.(Transaction().connection.cursor())()'
### 7.2
- **before_super** `Pool`
- files:
- `res.py`
- code:
'Pool()'
- **before_super** `Transaction`
- files:
- `res.py`
- code:
'Transaction()'
- **after_super** `cursor`
- object: `transaction.connection`
- files:
- `res.py`
- code:
'transaction.connection.(transaction.connection.cursor())()'
### 7.4
- **before_super** `cursor`
- object: `Transaction().connection`
- files:
- `country.py`
- code:
'Transaction().connection.(Transaction().connection.cursor())()'