Files
tryton-db-migration/reports/production.md
T
uha4 b549063ff6 Dedublizierung gefixt
- lange existierender Updatecode wurde in jeder 2. Version angezeigt
- UPDATEANALYSE.md ergänzt.
2026-08-20 13:27:23 +02:00

77 KiB

modul production

Tabelle ir_cron

5.2

  • after_super drop_column
    • object: table_h
    • files:
      • cron.py
    • args: column
    • code: 'table_h.drop_column(column)'
  • after_super not_null_action
    • object: table_h
    • files:
      • cron.py
    • args: 'next_call', 'remove'
    • code: 'table_h.not_null_action('next_call', 'remove')'

5.6

  • after_super drop_column
    • object: table_h
    • files:
      • cron.py
    • args: column
    • code: 'table_h.drop_column(column)'
  • after_super not_null_action
    • object: table_h
    • files:
      • cron.py
    • args: 'next_call', 'remove'
    • code: 'table_h.not_null_action('next_call', 'remove')'

6.0

  • after_super drop_column
    • object: table_h
    • files:
      • cron.py
    • args: column
    • code: 'table_h.drop_column(column)'
  • after_super not_null_action
    • object: table_h
    • files:
      • cron.py
    • args: 'next_call', 'remove'
    • code: 'table_h.not_null_action('next_call', 'remove')'

6.4

  • after_super drop_column
    • object: table_h
    • files:
      • cron.py
    • args: column
    • code: 'table_h.drop_column(column)'
  • after_super not_null_action
    • object: table_h
    • files:
      • cron.py
    • args: 'next_call', 'remove'
    • code: 'table_h.not_null_action('next_call', 'remove')'

6.8

  • after_super drop_column
    • object: table_h
    • files:
      • cron.py
    • args: column
    • code: 'table_h.drop_column(column)'
  • after_super not_null_action
    • object: table_h
    • files:
      • cron.py
    • args: 'next_call', 'remove'
    • code: 'table_h.not_null_action('next_call', 'remove')'

7.2

  • after_super drop_column
    • object: table_h
    • files:
      • cron.py
    • args: column
    • code: 'table_h.drop_column(column)'
  • after_super not_null_action
    • object: table_h
    • files:
      • cron.py
    • args: 'next_call', 'remove'
    • code: 'table_h.not_null_action('next_call', 'remove')'
  • after_super execute
    • object: cursor
    • files:
      • ir.py
    • args: *table.update([table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron'))'
  • after_super update
    • object: table
    • files:
      • ir.py
    • args: [table.method], ['ir.cron|stock_shipment_assign_try']
    • kwargs:
      • where: table.method == 'production|assign_cron'
    • code: 'table.update( [table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron')'

7.6

  • after_super execute
    • object: cursor
    • files:
      • ir.py
    • args: *table.update([table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron'))'
  • after_super update
    • object: table
    • files:
      • ir.py
    • args: [table.method], ['ir.cron|stock_shipment_assign_try']
    • kwargs:
      • where: table.method == 'production|assign_cron'
    • code: 'table.update( [table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron')'

8.0

  • after_super execute
    • object: cursor
    • files:
      • ir.py
    • args: *table.update([table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron'))'
  • after_super update
    • object: table
    • files:
      • ir.py
    • args: [table.method], ['ir.cron|stock_shipment_assign_try']
    • kwargs:
      • where: table.method == 'production|assign_cron'
    • code: 'table.update( [table.method], ['ir.cron|stock_shipment_assign_try'], where=table.method == 'production|assign_cron')'

Tabelle production

5.0

  • before_super column_rename
    • condition: table_h.column_exist('code')
    • object: table_h
    • files:
      • production.py
    • args: 'code', 'number'
    • code: 'table_h.column_rename('code', 'number')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null)))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.planned_start_date], [table.planned_date]
    • kwargs:
      • where: (table.planned_start_date == Null) & (table.planned_date != Null)
    • code: 'table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))'

5.4

  • before_super column_rename
    • condition: table_h.column_exist('code')
    • object: table_h
    • files:
      • production.py
    • args: 'code', 'number'
    • code: 'table_h.column_rename('code', 'number')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null)))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.planned_start_date], [table.planned_date]
    • kwargs:
      • where: (table.planned_start_date == Null) & (table.planned_date != Null)
    • code: 'table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))'

5.8

  • before_super column_rename
    • condition: table_h.column_exist('code')
    • object: table_h
    • files:
      • production.py
    • args: 'code', 'number'
    • code: 'table_h.column_rename('code', 'number')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null)))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.planned_start_date], [table.planned_date]
    • kwargs:
      • where: (table.planned_start_date == Null) & (table.planned_date != Null)
    • code: 'table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.state], ['cancelled'], where=table.state == 'cancel')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.state], ['cancelled'], where=table.state == 'cancel'))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.state], ['cancelled']
    • kwargs:
      • where: table.state == 'cancel'
    • code: 'table.update( [table.state], ['cancelled'], where=table.state == 'cancel')'

6.2

  • before_super column_rename
    • condition: table_h.column_exist('code')
    • object: table_h
    • files:
      • production.py
    • args: 'code', 'number'
    • code: 'table_h.column_rename('code', 'number')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null)))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.planned_start_date], [table.planned_date]
    • kwargs:
      • where: (table.planned_start_date == Null) & (table.planned_date != Null)
    • code: 'table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.state], ['cancelled'], where=table.state == 'cancel')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.state], ['cancelled'], where=table.state == 'cancel'))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.state], ['cancelled']
    • kwargs:
      • where: table.state == 'cancel'
    • code: 'table.update( [table.state], ['cancelled'], where=table.state == 'cancel')'

6.6

  • before_super column_rename
    • condition: table_h.column_exist('code')
    • object: table_h
    • files:
      • production.py
    • args: 'code', 'number'
    • code: 'table_h.column_rename('code', 'number')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null)))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.planned_start_date], [table.planned_date]
    • kwargs:
      • where: (table.planned_start_date == Null) & (table.planned_date != Null)
    • code: 'table.update( [table.planned_start_date], [table.planned_date], where=(table.planned_start_date == Null) & (table.planned_date != Null))'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.state], ['cancelled'], where=table.state == 'cancel')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.state], ['cancelled'], where=table.state == 'cancel'))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.state], ['cancelled']
    • kwargs:
      • where: table.state == 'cancel'
    • code: 'table.update( [table.state], ['cancelled'], where=table.state == 'cancel')'

7.0

  • before_super column_rename
    • condition: table_h.column_exist('uom') and (not table_h.column_exist('unit'))
    • object: table_h
    • files:
      • production.py
    • args: 'uom', 'unit'
    • code: 'table_h.column_rename('uom', 'unit')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.state], ['cancelled'], where=table.state == 'cancel')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.state], ['cancelled'], where=table.state == 'cancel'))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.state], ['cancelled']
    • kwargs:
      • where: table.state == 'cancel'
    • code: 'table.update( [table.state], ['cancelled'], where=table.state == 'cancel')'

7.4

  • before_super column_rename
    • condition: table_h.column_exist('uom') and (not table_h.column_exist('unit'))
    • object: table_h
    • files:
      • production.py
    • args: 'uom', 'unit'
    • code: 'table_h.column_rename('uom', 'unit')'
  • after_super execute
    • object: cursor
    • files:
      • production.py
    • args: *table.update([table.state], ['cancelled'], where=table.state == 'cancel')
    • code: '(Transaction().connection.cursor()).execute(*table.update( [table.state], ['cancelled'], where=table.state == 'cancel'))'
  • after_super update
    • object: table
    • files:
      • production.py
    • args: [table.state], ['cancelled']
    • kwargs:
      • where: table.state == 'cancel'
    • code: 'table.update( [table.state], ['cancelled'], where=table.state == 'cancel')'

7.8

  • before_super column_rename
    • condition: table_h.column_exist('uom') and (not table_h.column_exist('unit'))
    • object: table_h
    • files:
      • production.py
    • args: 'uom', 'unit'
    • code: 'table_h.column_rename('uom', 'unit')'

Tabelle production_bom_input

6.2

  • after_super drop_constraint
    • object: table_h
    • files:
      • bom.py
    • args: 'product_bom_uniq'
    • code: 'table_h.drop_constraint('product_bom_uniq')'

6.6

  • after_super drop_constraint
    • object: table_h
    • files:
      • bom.py
    • args: 'product_bom_uniq'
    • code: 'table_h.drop_constraint('product_bom_uniq')'

7.0

  • before_super column_rename
    • condition: table_h.column_exist('uom') and (not table_h.column_exist('unit'))
    • object: table_h
    • files:
      • bom.py
    • args: 'uom', 'unit'
    • code: 'table_h.column_rename('uom', 'unit')'
  • after_super drop_constraint
    • object: table_h
    • files:
      • bom.py
    • args: 'product_bom_uniq'
    • code: 'table_h.drop_constraint('product_bom_uniq')'

7.4

  • before_super column_rename
    • condition: table_h.column_exist('uom') and (not table_h.column_exist('unit'))
    • object: table_h
    • files:
      • bom.py
    • args: 'uom', 'unit'
    • code: 'table_h.column_rename('uom', 'unit')'
  • after_super drop_constraint
    • object: table_h
    • files:
      • bom.py
    • args: 'product_bom_uniq'
    • code: 'table_h.drop_constraint('product_bom_uniq')'

7.8

  • before_super column_rename
    • condition: table_h.column_exist('uom') and (not table_h.column_exist('unit'))
    • object: table_h
    • files:
      • bom.py
    • args: 'uom', 'unit'
    • code: 'table_h.column_rename('uom', 'unit')'
  • after_super drop_constraint
    • object: table_h
    • files:
      • bom.py
    • args: 'product_bom_uniq'
    • code: 'table_h.drop_constraint('product_bom_uniq')'
  • after_super not_null_action
    • object: table_h
    • files:
      • bom.py
    • args: 'product', 'remove'
    • code: 'table_h.not_null_action('product', 'remove')'

Tabelle production_configuration_production_sequence

5.6

  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'

6.0

  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'

6.4

  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'

6.8

  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'

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)'
  • after_super Transaction
    • files:
      • action.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • action.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • before_super cursor
    • object: Transaction().connection
    • files:
      • action.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super Transaction
    • files:
      • action.py
    • code: 'Transaction()'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: Concat(attachment.digest, '-'), attachment.collision
    • code: 'Concat(Concat(attachment.digest, '-'), attachment.collision)'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: attachment.digest, '-'
    • code: 'Concat(attachment.digest, '-')'
  • before_super Pool
    • files:
      • module.py
    • code: 'Pool()'
  • before_super table_rename
    • condition: TableHandler.table_exist(old_table)
    • object: TableHandler
    • files:
      • module.py
    • args: old_table, cls._table
    • code: '(backend.get('TableHandler')).table_rename(old_table, cls._table)'
  • after_super in_
    • object: model_data_sql_table.fs_id
    • files:
      • module.py
    • args: button_fs_ids
    • code: 'model_data_sql_table.fs_id.in_(button_fs_ids)'
  • before_super cursor
    • object: transaction.connection
    • files:
      • translation.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super timedelta
    • condition: table.column_exist('minimum_delay')
    • object: datetime
    • files:
      • trigger.py
    • kwargs:
      • hours: delay
    • code: 'datetime.timedelta(hours=(datetime.timedelta(hours=delay)))'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, ''))
    • code: 'Concat( Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, '')))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.street, ''
    • code: 'Coalesce(sql_table.street, '')'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: '\n', Coalesce(sql_table.streetbis, '')
    • code: 'Concat('\n', Coalesce(sql_table.streetbis, ''))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.streetbis, ''
    • code: 'Coalesce(sql_table.streetbis, '')'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'party.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'party.configuration', field_names, cls, value_names, fields=fields)'
  • after_super execute
    • condition: party_h.column_exist('lang')
    • object: cursor
    • files:
      • party.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.insert( [table.party, table.lang], party.select(party.id, party.lang))))'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.party', field_names, cls, value_names
    • kwargs:
      • parent: 'party'
      • fields: fields
    • code: 'migrate_property( 'party.party', field_names, cls, value_names, parent='party', fields=fields)'
  • after_super cls
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • kwargs:
      • party: party_id
      • code: code
      • type: type
    • code: 'cls(party=party_id, code=code, type=type)'
  • after_super save
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: cls
    • files:
      • party.py
    • args: identifiers
    • code: 'cls.save(identifiers)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'product.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'product.configuration', field_names, cls, value_names, fields=fields)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • product.py
    • args: 'product.template', field_names, cls, value_names
    • kwargs:
      • parent: 'template'
      • fields: fields
    • code: 'migrate_property( 'product.template', field_names, cls, value_names, parent='template', fields=fields)'
  • before_super table_exist
    • object: TableHandler
    • files:
      • product.py
    • args: ProductCostPrice._table
    • code: '(backend.get('TableHandler')).table_exist(ProductCostPrice._table)'
  • after_super TableHandler
    • condition: not exist and cost_price_exist
    • files:
      • product.py
    • args: ProductCostPrice, module_name
    • code: '(backend.get('TableHandler'))(ProductCostPrice, module_name)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: sql_table, c
    • code: 'Column(sql_table, c)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: cost_price, c
    • code: 'Column(cost_price, c)'
  • after_super select
    • condition: table.column_exist('template')
    • object: sql_table.join(product, condition=sql_table.template == product.template)
    • files:
      • product.py
    • args: *[Column(sql_table, c) for c in columns] + [product.id]
    • kwargs:
      • where: (sql_table.template != Null) & (sql_table.product == Null)
    • code: 'sql_table.join(product, condition=sql_table.template == product.template ).select( *[Column(sql_table, c) for c in columns] + [product.id], where=(sql_table.template != Null) & (sql_table.product == Null))'
  • after_super join
    • condition: table.column_exist('template')
    • object: sql_table
    • files:
      • product.py
    • args: product
    • kwargs:
      • condition: sql_table.template == product.template
    • code: 'sql_table.join(product, condition=sql_table.template == product.template )'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'production.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'production.configuration', field_names, cls, value_names, fields=fields)'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • production.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'

5.2

  • after_super get_cc_module
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • args: *type.split('_', 1)
    • code: 'get_cc_module(*type.split('_', 1))'
  • after_super split
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: type
    • files:
      • party.py
    • args: '_', 1
    • code: 'type.split('_', 1)'

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()'
  • after_super Transaction
    • files:
      • action.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • action.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: Concat(attachment.digest, '-'), attachment.collision
    • code: 'Concat(Concat(attachment.digest, '-'), attachment.collision)'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: attachment.digest, '-'
    • code: 'Concat(attachment.digest, '-')'
  • before_super table_rename
    • condition: TableHandler.table_exist(old_table)
    • object: TableHandler
    • files:
      • module.py
    • args: old_table, cls._table
    • code: '(backend.get('TableHandler')).table_rename(old_table, cls._table)'
  • after_super in_
    • object: model_data_sql_table.fs_id
    • files:
      • module.py
    • args: button_fs_ids
    • code: 'model_data_sql_table.fs_id.in_(button_fs_ids)'
  • before_super cursor
    • object: transaction.connection
    • files:
      • translation.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super timedelta
    • condition: table.column_exist('minimum_delay')
    • object: datetime
    • files:
      • trigger.py
    • kwargs:
      • hours: delay
    • code: 'datetime.timedelta(hours=(datetime.timedelta(hours=delay)))'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, ''))
    • code: 'Concat( Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, '')))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.street, ''
    • code: 'Coalesce(sql_table.street, '')'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: '\n', Coalesce(sql_table.streetbis, '')
    • code: 'Concat('\n', Coalesce(sql_table.streetbis, ''))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.streetbis, ''
    • code: 'Coalesce(sql_table.streetbis, '')'
  • after_super execute
    • condition: table_h.column_exist('country')
    • object: cursor
    • files:
      • address.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.update( [table.language_code], language.select( Substring(language.code, 0, 2), where=language.id == table.language))))'
  • after_super Substring
    • condition: table_h.column_exist('language')
    • files:
      • address.py
    • args: language.code, 0, 2
    • code: 'Substring(language.code, 0, 2)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'party.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'party.configuration', field_names, cls, value_names, fields=fields)'
  • after_super execute
    • condition: party_h.column_exist('lang')
    • object: cursor
    • files:
      • party.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.insert( [table.party, table.lang], party.select(party.id, party.lang))))'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.party', field_names, cls, value_names
    • kwargs:
      • parent: 'party'
      • fields: fields
    • code: 'migrate_property( 'party.party', field_names, cls, value_names, parent='party', fields=fields)'
  • after_super cls
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • kwargs:
      • party: party_id
      • code: code
      • type: type
    • code: 'cls(party=party_id, code=code, type=type)'
  • after_super save
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: cls
    • files:
      • party.py
    • args: identifiers
    • code: 'cls.save(identifiers)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'product.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'product.configuration', field_names, cls, value_names, fields=fields)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • product.py
    • args: 'product.template', field_names, cls, value_names
    • kwargs:
      • parent: 'template'
      • fields: fields
    • code: 'migrate_property( 'product.template', field_names, cls, value_names, parent='template', fields=fields)'
  • before_super table_exist
    • object: TableHandler
    • files:
      • product.py
    • args: ProductCostPrice._table
    • code: '(backend.get('TableHandler')).table_exist(ProductCostPrice._table)'
  • after_super TableHandler
    • condition: not exist and cost_price_exist
    • files:
      • product.py
    • args: ProductCostPrice, module_name
    • code: '(backend.get('TableHandler'))(ProductCostPrice, module_name)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: sql_table, c
    • code: 'Column(sql_table, c)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: cost_price, c
    • code: 'Column(cost_price, c)'
  • after_super select
    • condition: table.column_exist('template')
    • object: sql_table.join(product, condition=sql_table.template == product.template)
    • files:
      • product.py
    • args: *[Column(sql_table, c) for c in columns] + [product.id]
    • kwargs:
      • where: (sql_table.template != Null) & (sql_table.product == Null)
    • code: 'sql_table.join(product, condition=sql_table.template == product.template ).select( *[Column(sql_table, c) for c in columns] + [product.id], where=(sql_table.template != Null) & (sql_table.product == Null))'
  • after_super join
    • condition: table.column_exist('template')
    • object: sql_table
    • files:
      • product.py
    • args: product
    • kwargs:
      • condition: sql_table.template == product.template
    • code: 'sql_table.join(product, condition=sql_table.template == product.template )'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'production.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'production.configuration', field_names, cls, value_names, fields=fields)'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • production.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'

5.6

  • after_super Pool
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • code: 'Pool()'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: action_model, Concat('|', sql_table.action_function)
    • code: 'Concat((model.select( model.model, where=model.id == sql_table.action_model)), Concat( '|', sql_table.action_function))'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: '|', sql_table.action_function
    • code: 'Concat( '|', sql_table.action_function)'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'
  • after_super get_cc_module
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • args: *type.split('_', 1)
    • code: 'get_cc_module(*type.split('_', 1))'
  • after_super split
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: type
    • files:
      • party.py
    • args: '_', 1
    • code: 'type.split('_', 1)'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'code'
    • code: 'table_h.column_exist('code')'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'suffix_code'
    • code: 'table_h.column_exist('suffix_code')'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • product.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • product.py
    • args: ProductCostPrice._table
    • code: 'backend.TableHandler.table_exist( ProductCostPrice._table)'
  • after_super TableHandler
    • condition: not exist and cost_price_exist
    • object: backend
    • files:
      • product.py
    • args: ProductCostPrice, module_name
    • code: 'backend.TableHandler( ProductCostPrice, module_name)'

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()'
  • after_super Transaction
    • files:
      • action.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • action.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: Concat(attachment.digest, '-'), attachment.collision
    • code: 'Concat(Concat(attachment.digest, '-'), attachment.collision)'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: attachment.digest, '-'
    • code: 'Concat(attachment.digest, '-')'
  • after_super in_
    • object: model_data_sql_table.fs_id
    • files:
      • module.py
    • args: button_fs_ids
    • code: 'model_data_sql_table.fs_id.in_(button_fs_ids)'
  • before_super cursor
    • object: transaction.connection
    • files:
      • translation.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super timedelta
    • condition: table.column_exist('minimum_delay')
    • object: datetime
    • files:
      • trigger.py
    • kwargs:
      • hours: delay
    • code: 'datetime.timedelta(hours=(datetime.timedelta(hours=delay)))'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, ''))
    • code: 'Concat( Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, '')))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.street, ''
    • code: 'Coalesce(sql_table.street, '')'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: '\n', Coalesce(sql_table.streetbis, '')
    • code: 'Concat('\n', Coalesce(sql_table.streetbis, ''))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.streetbis, ''
    • code: 'Coalesce(sql_table.streetbis, '')'
  • after_super execute
    • condition: table_h.column_exist('country')
    • object: cursor
    • files:
      • address.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.update( [table.language_code], language.select( Substring(language.code, 0, 2), where=language.id == table.language))))'
  • after_super Substring
    • condition: table_h.column_exist('language')
    • files:
      • address.py
    • args: language.code, 0, 2
    • code: 'Substring(language.code, 0, 2)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'party.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'party.configuration', field_names, cls, value_names, fields=fields)'
  • after_super execute
    • condition: party_h.column_exist('lang')
    • object: cursor
    • files:
      • party.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.insert( [table.party, table.lang], party.select(party.id, party.lang))))'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.party', field_names, cls, value_names
    • kwargs:
      • parent: 'party'
      • fields: fields
    • code: 'migrate_property( 'party.party', field_names, cls, value_names, parent='party', fields=fields)'
  • after_super cls
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • kwargs:
      • party: party_id
      • code: code
      • type: type
    • code: 'cls(party=party_id, code=code, type=type)'
  • after_super save
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: cls
    • files:
      • party.py
    • args: identifiers
    • code: 'cls.save(identifiers)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'product.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'product.configuration', field_names, cls, value_names, fields=fields)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • product.py
    • args: 'product.template', field_names, cls, value_names
    • kwargs:
      • parent: 'template'
      • fields: fields
    • code: 'migrate_property( 'product.template', field_names, cls, value_names, parent='template', fields=fields)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: sql_table, c
    • code: 'Column(sql_table, c)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: cost_price, c
    • code: 'Column(cost_price, c)'
  • after_super select
    • condition: table.column_exist('template')
    • object: sql_table.join(product, condition=sql_table.template == product.template)
    • files:
      • product.py
    • args: *[Column(sql_table, c) for c in columns] + [product.id]
    • kwargs:
      • where: (sql_table.template != Null) & (sql_table.product == Null)
    • code: 'sql_table.join(product, condition=sql_table.template == product.template ).select( *[Column(sql_table, c) for c in columns] + [product.id], where=(sql_table.template != Null) & (sql_table.product == Null))'
  • after_super join
    • condition: table.column_exist('template')
    • object: sql_table
    • files:
      • product.py
    • args: product
    • kwargs:
      • condition: sql_table.template == product.template
    • code: 'sql_table.join(product, condition=sql_table.template == product.template )'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'production.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'production.configuration', field_names, cls, value_names, fields=fields)'

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())()'
  • after_super Pool
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • code: 'Pool()'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: action_model, Concat('|', sql_table.action_function)
    • code: 'Concat((model.select( model.model, where=model.id == sql_table.action_model)), Concat( '|', sql_table.action_function))'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: '|', sql_table.action_function
    • code: 'Concat( '|', sql_table.action_function)'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'
  • after_super get_cc_module
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • args: *type.split('_', 1)
    • code: 'get_cc_module(*type.split('_', 1))'
  • after_super split
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: type
    • files:
      • party.py
    • args: '_', 1
    • code: 'type.split('_', 1)'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'code'
    • code: 'table_h.column_exist('code')'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'suffix_code'
    • code: 'table_h.column_exist('suffix_code')'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • product.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • product.py
    • args: ProductCostPrice._table
    • code: 'backend.TableHandler.table_exist( ProductCostPrice._table)'
  • after_super TableHandler
    • condition: not exist and cost_price_exist
    • object: backend
    • files:
      • product.py
    • args: ProductCostPrice, module_name
    • code: 'backend.TableHandler( ProductCostPrice, module_name)'

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())()'
  • after_super Transaction
    • files:
      • action.py
    • code: 'Transaction()'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: Concat(attachment.digest, '-'), attachment.collision
    • code: 'Concat(Concat(attachment.digest, '-'), attachment.collision)'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: attachment.digest, '-'
    • code: 'Concat(attachment.digest, '-')'
  • after_super in_
    • object: model_data_sql_table.fs_id
    • files:
      • module.py
    • args: button_fs_ids
    • code: 'model_data_sql_table.fs_id.in_(button_fs_ids)'
  • before_super cursor
    • object: transaction.connection
    • files:
      • translation.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super timedelta
    • condition: table.column_exist('minimum_delay')
    • object: datetime
    • files:
      • trigger.py
    • kwargs:
      • hours: delay
    • code: 'datetime.timedelta(hours=(datetime.timedelta(hours=delay)))'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, ''))
    • code: 'Concat( Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, '')))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.street, ''
    • code: 'Coalesce(sql_table.street, '')'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: '\n', Coalesce(sql_table.streetbis, '')
    • code: 'Concat('\n', Coalesce(sql_table.streetbis, ''))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.streetbis, ''
    • code: 'Coalesce(sql_table.streetbis, '')'
  • after_super execute
    • condition: table_h.column_exist('country')
    • object: cursor
    • files:
      • address.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.update( [table.language_code], language.select( Substring(language.code, 0, 2), where=language.id == table.language))))'
  • after_super Substring
    • condition: table_h.column_exist('language')
    • files:
      • address.py
    • args: language.code, 0, 2
    • code: 'Substring(language.code, 0, 2)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'party.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'party.configuration', field_names, cls, value_names, fields=fields)'
  • after_super execute
    • condition: party_h.column_exist('lang')
    • object: cursor
    • files:
      • party.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.insert( [table.party, table.lang], party.select(party.id, party.lang))))'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.party', field_names, cls, value_names
    • kwargs:
      • parent: 'party'
      • fields: fields
    • code: 'migrate_property( 'party.party', field_names, cls, value_names, parent='party', fields=fields)'
  • after_super cls
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • kwargs:
      • party: party_id
      • code: code
      • type: type
    • code: 'cls(party=party_id, code=code, type=type)'
  • after_super save
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: cls
    • files:
      • party.py
    • args: identifiers
    • code: 'cls.save(identifiers)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'product.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'product.configuration', field_names, cls, value_names, fields=fields)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • product.py
    • args: 'product.template', field_names, cls, value_names
    • kwargs:
      • parent: 'template'
      • fields: fields
    • code: 'migrate_property( 'product.template', field_names, cls, value_names, parent='template', fields=fields)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: sql_table, c
    • code: 'Column(sql_table, c)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: cost_price, c
    • code: 'Column(cost_price, c)'
  • after_super select
    • condition: table.column_exist('template')
    • object: sql_table.join(product, condition=sql_table.template == product.template)
    • files:
      • product.py
    • args: *[Column(sql_table, c) for c in columns] + [product.id]
    • kwargs:
      • where: (sql_table.template != Null) & (sql_table.product == Null)
    • code: 'sql_table.join(product, condition=sql_table.template == product.template ).select( *[Column(sql_table, c) for c in columns] + [product.id], where=(sql_table.template != Null) & (sql_table.product == Null))'
  • after_super join
    • condition: table.column_exist('template')
    • object: sql_table
    • files:
      • product.py
    • args: product
    • kwargs:
      • condition: sql_table.template == product.template
    • code: 'sql_table.join(product, condition=sql_table.template == product.template )'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'production.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'production.configuration', field_names, cls, value_names, fields=fields)'

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())()'
  • after_super Pool
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • code: 'Pool()'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: action_model, Concat('|', sql_table.action_function)
    • code: 'Concat((model.select( model.model, where=model.id == sql_table.action_model)), Concat( '|', sql_table.action_function))'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: '|', sql_table.action_function
    • code: 'Concat( '|', sql_table.action_function)'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'
  • after_super get_cc_module
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • args: *type.split('_', 1)
    • code: 'get_cc_module(*type.split('_', 1))'
  • after_super split
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: type
    • files:
      • party.py
    • args: '_', 1
    • code: 'type.split('_', 1)'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'code'
    • code: 'table_h.column_exist('code')'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'suffix_code'
    • code: 'table_h.column_exist('suffix_code')'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • product.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • product.py
    • args: ProductCostPrice._table
    • code: 'backend.TableHandler.table_exist( ProductCostPrice._table)'
  • after_super TableHandler
    • condition: not exist and cost_price_exist
    • object: backend
    • files:
      • product.py
    • args: ProductCostPrice, module_name
    • code: 'backend.TableHandler( ProductCostPrice, module_name)'

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())()'
  • after_super Transaction
    • files:
      • action.py
    • code: 'Transaction()'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: Concat(attachment.digest, '-'), attachment.collision
    • code: 'Concat(Concat(attachment.digest, '-'), attachment.collision)'
  • after_super Concat
    • condition: table.column_exist('digest') and table.column_exist('collision')
    • files:
      • attachment.py
    • args: attachment.digest, '-'
    • code: 'Concat(attachment.digest, '-')'
  • after_super in_
    • object: model_data_sql_table.fs_id
    • files:
      • module.py
    • args: button_fs_ids
    • code: 'model_data_sql_table.fs_id.in_(button_fs_ids)'
  • before_super cursor
    • object: transaction.connection
    • files:
      • translation.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super timedelta
    • condition: table.column_exist('minimum_delay')
    • object: datetime
    • files:
      • trigger.py
    • kwargs:
      • hours: delay
    • code: 'datetime.timedelta(hours=(datetime.timedelta(hours=delay)))'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, ''))
    • code: 'Concat( Coalesce(sql_table.street, ''), Concat('\n', Coalesce(sql_table.streetbis, '')))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.street, ''
    • code: 'Coalesce(sql_table.street, '')'
  • after_super Concat
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: '\n', Coalesce(sql_table.streetbis, '')
    • code: 'Concat('\n', Coalesce(sql_table.streetbis, ''))'
  • after_super Coalesce
    • condition: table.column_exist('streetbis')
    • files:
      • address.py
    • args: sql_table.streetbis, ''
    • code: 'Coalesce(sql_table.streetbis, '')'
  • after_super execute
    • condition: table_h.column_exist('country')
    • object: cursor
    • files:
      • address.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.update( [table.language_code], language.select( Substring(language.code, 0, 2), where=language.id == table.language))))'
  • after_super Substring
    • condition: table_h.column_exist('language')
    • files:
      • address.py
    • args: language.code, 0, 2
    • code: 'Substring(language.code, 0, 2)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'party.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'party.configuration', field_names, cls, value_names, fields=fields)'
  • after_super execute
    • condition: party_h.column_exist('lang')
    • object: cursor
    • files:
      • party.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.insert( [table.party, table.lang], party.select(party.id, party.lang))))'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.party', field_names, cls, value_names
    • kwargs:
      • parent: 'party'
      • fields: fields
    • code: 'migrate_property( 'party.party', field_names, cls, value_names, parent='party', fields=fields)'
  • after_super cls
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • kwargs:
      • party: party_id
      • code: code
      • type: type
    • code: 'cls(party=party_id, code=code, type=type)'
  • after_super save
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: cls
    • files:
      • party.py
    • args: identifiers
    • code: 'cls.save(identifiers)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'product.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'product.configuration', field_names, cls, value_names, fields=fields)'
  • after_super migrate_property
    • condition: not exist
    • files:
      • product.py
    • args: 'product.template', field_names, cls, value_names
    • kwargs:
      • parent: 'template'
      • fields: fields
    • code: 'migrate_property( 'product.template', field_names, cls, value_names, parent='template', fields=fields)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: sql_table, c
    • code: 'Column(sql_table, c)'
  • after_super Column
    • condition: cost_price_table.column_exist('template')
    • files:
      • product.py
    • args: cost_price, c
    • code: 'Column(cost_price, c)'
  • after_super select
    • condition: table.column_exist('template')
    • object: sql_table.join(product, condition=sql_table.template == product.template)
    • files:
      • product.py
    • args: *[Column(sql_table, c) for c in columns] + [product.id]
    • kwargs:
      • where: (sql_table.template != Null) & (sql_table.product == Null)
    • code: 'sql_table.join(product, condition=sql_table.template == product.template ).select( *[Column(sql_table, c) for c in columns] + [product.id], where=(sql_table.template != Null) & (sql_table.product == Null))'
  • after_super join
    • condition: table.column_exist('template')
    • object: sql_table
    • files:
      • product.py
    • args: product
    • kwargs:
      • condition: sql_table.template == product.template
    • code: 'sql_table.join(product, condition=sql_table.template == product.template )'
  • after_super migrate_property
    • condition: not exist
    • files:
      • configuration.py
    • args: 'production.configuration', field_names, cls, value_names
    • kwargs:
      • fields: fields
    • code: 'migrate_property( 'production.configuration', field_names, cls, value_names, fields=fields)'

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())()'
  • after_super Pool
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • code: 'Pool()'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: action_model, Concat('|', sql_table.action_function)
    • code: 'Concat((model.select( model.model, where=model.id == sql_table.action_model)), Concat( '|', sql_table.action_function))'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: '|', sql_table.action_function
    • code: 'Concat( '|', sql_table.action_function)'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • configuration.py
    • args: cls._table
    • code: 'backend.TableHandler.table_exist(cls._table)'
  • after_super get_cc_module
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • files:
      • party.py
    • args: *type.split('_', 1)
    • code: 'get_cc_module(*type.split('_', 1))'
  • after_super split
    • condition: party_h.column_exist('vat_number') and party_h.column_exist('vat_country')
    • object: type
    • files:
      • party.py
    • args: '_', 1
    • code: 'type.split('_', 1)'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'code'
    • code: 'table_h.column_exist('code')'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'suffix_code'
    • code: 'table_h.column_exist('suffix_code')'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • product.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super table_exist
    • object: backend.TableHandler
    • files:
      • product.py
    • args: ProductCostPrice._table
    • code: 'backend.TableHandler.table_exist( ProductCostPrice._table)'

7.0

  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super column_exist
    • object: table_h
    • files:
      • export.py
    • args: 'user'
    • code: 'table_h.column_exist('user')'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • trigger.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • after_super Transaction
    • files:
      • trigger.py
    • code: 'Transaction()'
  • after_super execute
    • condition: table_h.column_exist('country')
    • object: cursor
    • files:
      • address.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.update( [table.language_code], language.select( Substring(language.code, 0, 2), where=language.id == table.language))))'
  • after_super Substring
    • condition: table_h.column_exist('language')
    • files:
      • address.py
    • args: language.code, 0, 2
    • code: 'Substring(language.code, 0, 2)'
  • after_super cls
    • files:
      • configuration.py
    • args: 1
    • code: 'cls(1)'
  • after_super tuple
    • condition: configuration.identifier_types
    • files:
      • configuration.py
    • args: map(replace_vat, configuration.identifier_types)
    • code: 'tuple(map( replace_vat, configuration.identifier_types))'
  • after_super map
    • condition: configuration.identifier_types
    • files:
      • configuration.py
    • args: replace_vat, configuration.identifier_types
    • code: 'map( replace_vat, configuration.identifier_types)'
  • after_super sql_format
    • condition: configuration.identifier_types != identifier_types
    • object: cls.identifier_types
    • files:
      • configuration.py
    • args: identifier_types
    • code: 'cls.identifier_types.sql_format(identifier_types)'
  • after_super replace_vat
    • files:
      • party.py
    • args: old
    • code: 'replace_vat(old)'

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())()'
  • before_super cursor
    • object: transaction.connection
    • files:
      • model.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • after_super Pool
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • code: 'Pool()'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: action_model, Concat('|', sql_table.action_function)
    • code: 'Concat((model.select( model.model, where=model.id == sql_table.action_model)), Concat( '|', sql_table.action_function))'
  • after_super Concat
    • condition: table_h.column_exist('action_model') and table_h.column_exist('action_function')
    • files:
      • trigger.py
    • args: '|', sql_table.action_function
    • code: 'Concat( '|', sql_table.action_function)'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'code'
    • code: 'table_h.column_exist('code')'
  • before_super column_exist
    • object: table_h
    • files:
      • product.py
    • args: 'suffix_code'
    • code: 'table_h.column_exist('suffix_code')'

7.4

  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super column_exist
    • object: table_h
    • files:
      • export.py
    • args: 'user'
    • code: 'table_h.column_exist('user')'
  • after_super cursor
    • object: Transaction().connection
    • files:
      • trigger.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • after_super Transaction
    • files:
      • trigger.py
    • code: 'Transaction()'
  • after_super execute
    • condition: table_h.column_exist('country')
    • object: cursor
    • files:
      • address.py
    • args: *query
    • code: '(Transaction().connection.cursor()).execute(*(table.update( [table.language_code], language.select( Substring(language.code, 0, 2), where=language.id == table.language))))'
  • after_super Substring
    • condition: table_h.column_exist('language')
    • files:
      • address.py
    • args: language.code, 0, 2
    • code: 'Substring(language.code, 0, 2)'
  • after_super cls
    • files:
      • configuration.py
    • args: 1
    • code: 'cls(1)'
  • after_super tuple
    • condition: configuration.identifier_types
    • files:
      • configuration.py
    • args: map(replace_vat, configuration.identifier_types)
    • code: 'tuple(map( replace_vat, configuration.identifier_types))'
  • after_super map
    • condition: configuration.identifier_types
    • files:
      • configuration.py
    • args: replace_vat, configuration.identifier_types
    • code: 'map( replace_vat, configuration.identifier_types)'
  • after_super sql_format
    • condition: configuration.identifier_types != identifier_types
    • object: cls.identifier_types
    • files:
      • configuration.py
    • args: identifier_types
    • code: 'cls.identifier_types.sql_format(identifier_types)'
  • after_super replace_vat
    • files:
      • party.py
    • args: old
    • code: 'replace_vat(old)'

7.6

  • before_super Transaction
    • files:
      • export.py
    • code: 'Transaction()'
  • before_super Pool
    • files:
      • model.py
    • code: 'Pool()'
  • before_super cursor
    • object: transaction.connection
    • files:
      • model.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'

7.8

  • before_super cursor
    • object: Transaction().connection
    • files:
      • export.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super column_exist
    • object: table_h
    • files:
      • export.py
    • args: 'user'
    • code: 'table_h.column_exist('user')'
  • after_super cls
    • files:
      • configuration.py
    • args: 1
    • code: 'cls(1)'
  • after_super tuple
    • condition: configuration.identifier_types
    • files:
      • configuration.py
    • args: map(replace_vat, configuration.identifier_types)
    • code: 'tuple(map( replace_vat, configuration.identifier_types))'
  • after_super map
    • condition: configuration.identifier_types
    • files:
      • configuration.py
    • args: replace_vat, configuration.identifier_types
    • code: 'map( replace_vat, configuration.identifier_types)'
  • after_super sql_format
    • condition: configuration.identifier_types != identifier_types
    • object: cls.identifier_types
    • files:
      • configuration.py
    • args: identifier_types
    • code: 'cls.identifier_types.sql_format(identifier_types)'
  • after_super replace_vat
    • files:
      • party.py
    • args: old
    • code: 'replace_vat(old)'

8.0

  • before_super Transaction
    • files:
      • export.py
    • code: 'Transaction()'
  • before_super Pool
    • files:
      • model.py
    • code: 'Pool()'
  • before_super cursor
    • object: transaction.connection
    • files:
      • model.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'
  • before_super column_exist
    • object: table_h
    • files:
      • party.py
    • args: 'code'
    • code: 'table_h.column_exist('code')'
  • before_super column_exist
    • object: table_h
    • files:
      • party.py
    • args: 'code_compact'
    • code: 'table_h.column_exist('code_compact')'