Пример, необходимо выписать счет на сумму 1775,46 грн, расчитывается примерное количество вручную ("свои ньансы"), в кол-ве 4 знака после запятой, вообщем в данном случае 10 шт, 1с 1775,46/10 = 177,546 округляет до точности 2 знаков,
получаем цену 177,55 * 10 = сумма меняется на 1775,50, а надо именно 1775,46, вообщем надо написать код что б не меняя сумма выводилось
"Предупреждение" с текстом возможных КОЛИЧЕСТВО*ЦЕНА = 1775,46 ну и потом юзер поставил нужные цифры не высчитывая самому долго и нудно,
варинт 1*1775,46 = 1775,46 не вариант, я вот что то такое придумал пока, но думаю у Вас будут варианты эффективней
СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные;
Если СтрокаТабличнойЧасти.Сумма > 0 Тогда
СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Сумма/СтрокаТабличнойЧасти.Количество;
Если СтрокаТабличнойЧасти.Цена*СтрокаТабличнойЧасти.Количество <> СтрокаТабличнойЧасти.Сумма
Тогда
Количество1 = СтрокаТабличнойЧасти.Количество;
Количество2 = СтрокаТабличнойЧасти.Количество;
Цена1 = СтрокаТабличнойЧасти.Цена;
Цена2 = СтрокаТабличнойЧасти.Цена;
Пока Количество1*СтрокаТабличнойЧасти.Цена <> СтрокаТабличнойЧасти.Сумма
ИЛИ Количество2*СтрокаТабличнойЧасти.Цена <> СтрокаТабличнойЧасти.Сумма
ИЛИ СтрокаТабличнойЧасти.Количество*Цена1 <> СтрокаТабличнойЧасти.Сумма
ИЛИ СтрокаТабличнойЧасти.Количество*Цена2 <> СтрокаТабличнойЧасти.Сумма
ИЛИ Количество1*Цена1 <> СтрокаТабличнойЧасти.Сумма
ИЛИ Количество2*Цена2 <> СтрокаТабличнойЧасти.Сумма
ИЛИ Количество1*Цена2 <> СтрокаТабличнойЧасти.Сумма
ИЛИ Количество2*Цена1 <> СтрокаТабличнойЧасти.Сумма
Цикл
Количество1 = Количество1 + 0.0001;
Количество2 = Количество2 - 0.0001;
Цена1 = Цена1 + 0.01;
Цена2 = Цена2 - 0.01;
КонецЦикла;
Предупреждение(" Предупреждение " );
КонецЕсли;
При выполнении этого кода программа зависает
Ковыряю 1С 8.2.14.528 конфигурация УТП ред. 1.2.1.3
1С 8.3 (8.3.1.531) конфиг УТ 2.3.16.1
1С 7.7 Торговля+Склад