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.


Reply via email to