Cédric Krier pushed to branch branch/5.0 at Tryton / Tryton
Commits: 15ec9e64 by Cédric Krier at 2023-04-19T16:06:51+02:00 Add empty option for taxon rank Closes #12228 (grafted from efa359afaf8b3f2169f4ba4ffb7866e1e6337b56) - - - - - a80a9ff1 by Adrià Tarroja Caubet at 2023-04-27T11:53:42+02:00 Add active field on operation form view Closes #12236 (grafted from 4fc98d159d9e14259a86ade8c0c9f2285447e838) - - - - - d54e1674 by Cédric Krier at 2023-04-22T18:29:44+02:00 Do not update related records by foreign key if they are going to be deleted Closes #3689 (grafted from a99b53347ecf5f6ffaff45b62086209b61e7ab72) - - - - - 69d63640 by Cédric Krier at 2023-04-22T18:31:30+02:00 Do not override deleted record instances by related records (grafted from 5b67535bb4cdf07df76c15e6fb4b425f44f4ad23) - - - - - 6dd05770 by Cédric Krier at 2023-04-30T00:06:09+02:00 Format sum without digits Closes #12204 (grafted from b96579a49fa33288c9a10c71746c9dd51aada49c) - - - - - 4 changed files: - modules/product_classification_taxonomic/product.py - modules/production_routing/view/operation_form.xml - sao/src/view/tree.js - trytond/trytond/model/modelsql.py Changes: ===================================== modules/product_classification_taxonomic/product.py ===================================== @@ -23,6 +23,7 @@ 'Taxon' __name__ = 'product.taxon' rank = fields.Selection([ + (None, ""), ('domain', 'Domain'), ('kingdom', 'Kingdom'), ('phylum', 'Phylum'), ===================================== modules/production_routing/view/operation_form.xml ===================================== @@ -4,4 +4,6 @@ <form> <label name="name"/> <field name="name"/> + <label name="active"/> + <field name="active"/> </form> ===================================== sao/src/view/tree.js ===================================== @@ -593,6 +593,11 @@ Sao.i18n.BC47(Sao.i18n.getlang()), options); sum_ = (sum_ || 0).toLocaleString( Sao.i18n.BC47(Sao.i18n.getlang()), options); + } else { + selected_sum = (selected_sum || 0).toLocaleString( + Sao.i18n.BC47(Sao.i18n.getlang())); + sum_ = (sum_ || 0).toLocaleString( + Sao.i18n.BC47(Sao.i18n.getlang())); } aggregate = selected_sum + ' / ' + sum_; } ===================================== trytond/trytond/model/modelsql.py ===================================== @@ -1073,6 +1073,7 @@ Column(foreign_table, field_name), sub_ids) cursor.execute(*foreign_table.select(foreign_table.id, where=foreign_red_sql)) - records = Model.browse([x[0] for x in cursor.fetchall()]) + related_records = Model.browse( + [x[0] for x in cursor.fetchall()]) else: with transaction.set_context(active_test=False): @@ -1077,7 +1078,10 @@ else: with transaction.set_context(active_test=False): - records = Model.search([(field_name, 'in', sub_ids)]) - return records + related_records = Model.search( + [(field_name, 'in', sub_ids)]) + if Model == cls: + related_records = list(set(related_records) - set(records)) + return related_records for sub_ids, sub_records in zip( grouped_slice(ids), grouped_slice(records)): @@ -1091,9 +1095,10 @@ if (not hasattr(Model, 'search') or not hasattr(Model, 'write')): continue - records = get_related_records(Model, field_name, sub_ids) - if records: - Model.write(records, { + related_records = get_related_records( + Model, field_name, sub_ids) + if related_records: + Model.write(related_records, { field_name: None, }) @@ -1101,9 +1106,10 @@ if (not hasattr(Model, 'search') or not hasattr(Model, 'delete')): continue - records = get_related_records(Model, field_name, sub_ids) - if records: - Model.delete(records) + related_records = get_related_records( + Model, field_name, sub_ids) + if related_records: + Model.delete(related_records) for Model, field_name in foreign_keys_tocheck: with Transaction().set_context( View it on Heptapod: https://foss.heptapod.net/tryton/tryton/-/compare/8e37b862159be745a2acbb4651556731074859ae...6dd05770213bd08492fe7cc5100a7d7a515734cb -- View it on Heptapod: https://foss.heptapod.net/tryton/tryton/-/compare/8e37b862159be745a2acbb4651556731074859ae...6dd05770213bd08492fe7cc5100a7d7a515734cb You're receiving this email because of your account on foss.heptapod.net.