Ошибка: В строке № для номенклатуры запрещен ввод дробного количества.
Причина возникновения: Возникает при попытке указания не целого значения количества номенклатуры в табличной части. К примеру данная ошибка будет возникать при вводе количества: 1.4 шт. или 0,22 шт.
Где расположена: Общий модуль - НоменклатураВДокументах Клиент - Процедура ПроверитьТабличнуюЧасть НаЗапретДробныхЗначений
Что делать: Проверьте указанное значения количества номенклатуры в табличной части документа, измените на целое число.
Обратится за помощью к программисту 1С.
Для программиста: Данная процедура отбирает всю номенклатуру из табличной части документа, с параметром поиска "ЗапретитВводДробногоКоличества" и проверяет введенное количество в документе с преобразованием этого же количества к целочисленному, в случае если введенное количество не является целочисленным то код вызовет эту ошибку.
Текст процедуры и Список регистров:
// Проверяет на дробные значения количество для номенклатуры с запретом дробных значений // // Параметры: // ТабличнаяЧасть - ТабличнаяЧасть - табличная часть документа для проверки // Отказ - булево - табличная часть документа для проверки // Процедура ПроверитьТабличнуюЧастьНаЗапретДробныхЗначений(Объект, ИмяТабличнойЧасти = "Запасы", Отказ = Ложь) Экспорт ПараметрыПоиска = Новый Структура("ЗапретитьВводДробногоКоличества", Истина); НайденныеСтроки = Объект[ИмяТабличнойЧасти].НайтиСтроки(ПараметрыПоиска); Для Каждого СтрокаТабличнойЧасти Из НайденныеСтроки Цикл Если Не СтрокаТабличнойЧасти.Количество = Цел(СтрокаТабличнойЧасти.Количество) Тогда Сообщение = Новый СообщениеПользователю; Сообщение.Текст = СтрШаблон(НСтр("ru = 'В строке №%1 для номенклатуры запрещен ввод дробного количества.'"), Строка(СтрокаТабличнойЧасти.НомерСтроки)); Если Не Отказ = Неопределено Тогда Сообщение.Поле = "Объект." + ИмяТабличнойЧасти +".Количество"; Сообщение.Сообщить(); Отказ = Истина; Прервать; КонецЕсли; Сообщение.Сообщить(); КонецЕсли; КонецЦикла; КонецПроцедуры