VirtoCommerce/vc-platform

Item Properties using dictionaries don't update when dictionary value is updated or deleted

alynabriscoe opened this issue · 6 comments

Describe the bug
When you update the value in the dictionary for a given property, that change is not propagated to the items with that property value.

Steps to reproduce
Steps to reproduce the behavior:

  1. Go to an item in the catalog
  2. Click on the properties widget
  3. If you don't already have a property that uses a dictionary, create new property with Value Type "Short Text" and then toggle Dictionary to true. Click Manage Dictionary and add a few values to the list
  4. Back on the item's Property list blade, set the property to one of the dictionary values
  5. Click OK
  6. Click Save on the Physical item details blade
  7. Open the Properties again
  8. Click the edit pencil icon next to the property created
  9. Click Manage Dictionary
  10. EITHER OF THE FOLLOWING
  11. Click on the value you have saved on the item, edit the value text and click Save
  12. OR Delete the value from the dictionary

Expected behavior
If you edited the dictionary value, the property value on the item should reflect the updated value.
If you deleted the value from the dictionary, it should not still be selected in that property.

Screenshots (optional)
If applicable, add screenshots to help explain your problem.

Version info (please complete the following information):

  • Browser version: Google Chrome Version 116.0.5845.97
  • Platform version: 3.31.6.0

Additional context (optional)
Add any other context about the problem here.

Dan-BV commented

Hi, @alynabriscoe!
Please send us the full platform manifest (with modules installed).
image

vc-platform-info.zip
Here's both the manifest and package @Dan-BV

Dan-BV commented

@alynabriscoe
We thank you for your appeal. A bug has been added to the platform project on this issue. We will inform you about the change in its status.

OlegoO commented

@alynabriscoe @Dan-BV I think, it's correct behaviour. By default. if you update/delete the value in the dictionary for a given property, that change is not propagated to the items with that property value.

It's preventing from data corruption.

To achieve your requirement, I think we can implement options,that we did for catalog module:

  1. Update Metadata Only
  2. Apply on items

image

@OlegoO that sounds like a good option to me! Would that work for both updating a value as well as deleting it?