miniShop2
miniShop2 copied to clipboard
Нет предупреждения о том, что такие опции уже существуют
Сообщение об ошибке / Error message
Резюме / Summary
Словит сегодня ошибку, которая по тихому портит данные. Предыстория.
У меня есть скрипт, который из Google таблицы вытягивает данные, достает по артикулу товар и записывает определенные поля. Опции там не участвуют никак. Но, оказалось, что если добавить опцию color
, и попробовать пересохранить товар в скрипте, то он вместо этой опции берет свойство документа "Цвета", которое получается пустым, так как его никто не заполнял и оно перезатирает втихую значения из опции, которые добавлены пользователем. Я думаю, это будет касаться любых опций, которые совпадают. Переименовал опцию в custom_color и проблема решилась.
Шаг для воспроизведения / Step to play
Описал в пункте выше, но попробую накидать скрипт для консоли, чтобы воспроизвести.
Наблюдаемое поведение / Observed behavior
Сейчас опция с одинаковым названием, как и свойство документа, в случае, если свойство документа пустое, будет так же очищаться при сохранении скриптом.
Ожидаемое поведение / Expected behavior
При создании опций нужно предупреждать, что такой ключ уже используется напрямую в документе и что это может привести к непредвиденным последствиям (потеря работы за день, например). Либо вовсе запретить создание. Ну и возможно предусмотреть правильное разграничение в механизме сохранения товара.
Environment
Версия miniShop2 2.9.2