![]() |
#2 |
Участник
|
В данной функции есть еще один странный момент касающийся метода deleteConfigChoice. В качестве значения параметра itemId передается значение переменной fromItemId с помощью метода parmFromItemId(). А значение для переменной fromItemId устанавливается в методе validateItem() из критерия запроса по полю ItemId this.parmFromItemId(queryBuildRangeItemId.value()).
В случае если в этом критерии указана не одна номенклатура, а какие-то символы фильтрации или список номенклатур через "," , то как видно из кода (configChoice.ChosenItemId == itemId) - удаление корректно работать не будет. Да и EDT ItemID в стандарте имеет длину в 10 символов, так что при передачи параметра критерия запроса по полю ItemId будет обрезан до 10 символов. Я так понимаю, что в методе validateItem() нужно добавлять проверку на проставлении в критерии по полю ItemId только одного кода номенклатуры, без всяких "излишеств". Тогда проще его вынести в параметры, а критерий по полю ItemId в запросе скрыть от пользователя. |
|
|
|