Fixes issue
36877: New Organization selector for Purchase Order Report
related to issue
36929: revert change due to failure in CI
fixes bug
36929: include SelectorPickListFieldsDataSourceTest in the test suite
Fixes bug
36908:Updating the column length on table referenced by a view works
There was a problem when a the column length of a table (T) referenced by a view (V) was updated, if that view was referenced by another view (V2).
In the step to update the model, the following steps were done in single batch:
- The views are dropped (forced = true)
- The model is updated (forced = false)
- The views are recreated
What happened is that the view V1 could not be dropped because V2 referenced it (and drop on cascade was not used). Then the batch failed, and only those
commands with forced=true were recreated, so the model was not updated.
To fix this, now the views are dropped in a different batch than the one used to update the model. There is an API change, since before this change this step
was enough to do the whole update of the model:
getSqlBuilder().alterDatabase(currentModel, desiredModel, params);
And now this it is required to call and evalue the following command:
getSqlBuilder().prepareDatabaseForAlter(currentModel, desiredModel, params, changes);
This has been changed in all Openbravo occurrences, and no occurrences outside Openbravo have been found.
Related with issue
36112: Minor code review improvements
- Some typos are fixed.
- Improved the name of a method.
- Use getLog().error instead of System.out.
- Now invokeAdDbModified method only execute ad_db_modify('N'). Updated its name to isAdDbModified. Reverted changes in updatedCRC method.
fixed bug
36909: encryption/decryption utils were not thread safe
They could fail when used concurrently because they were sharing an static instance
of a no-thread-safe javax.crypto.Cipher.
Fixed by creating a new Cipher instance whenver it's required to be used.
related to bug
36909: added test cases
which prove that using CryptoUtility methods concurrently fail
Fixed issue
36611: Selection is lost when an error is raised removing a record
Backout changeset a6d788e3208b because some problems appears in the common case (succesful deletion). It is decided to fix the most uncommon case (failed deletion) by recovering the selection when the deletion fails.
As mentioned in the original fix, when were removing a row and an error was raising (e.g. Deleting a already processed "Good Shipment" is stopped by a trigger) the selection of the record was lost. This generates an inconsistent grid state that creates all
the reported problems.
Now the problem is fixed by take into account the described situation recovering the selection when the deletion fails. Now the selection is maintained if the record can't be removed properly.
Fixes issue
36725: Records cannot be created using grid's contextual menu
Now if the user cannot add records because its role does not have access to the organization selected in the parent tab, it will not be possible
to add records using the grid's contextual menu.
This needs to be addressed in two different contextuals menus:
- The one shown when right-clicking on a grid record
- The one shown when right-clicking on the grid empty space
Also, simplifies an if condition to check for null/undefined