Вход | Регистрация

  1  2
1С:Предприятие :: 1С:Предприятие 8 общая

Функция Банковское округление

Функция Банковское округление
Я
   alex44ru
 
31.10.18 - 14:27
Недавно озадачили получать число банковским округлением. На скорую руку родил функцию.

Функция ПолучитьБанковскоеОкругление(Число, Разрядность)Экспорт
    
    Число = Формат(Число,"ЧГ=0");
    СтрокаЧисел = "";
    Для Индекс = 1 По СтрДлина(Число) Цикл    
        Символ = Сред(Число, Индекс, 1); 
        Если КодСимвола(Символ) = 44 Тогда 
            Для Сч = 0 По Разрядность Цикл
                Символ = Сред(Число, Индекс, 1);
                СтрокаЧисел = СтрокаЧисел + Символ;
                Индекс = Индекс + 1;
            КонецЦикла;
            Если Число(Символ)%2 Тогда
                Возврат Окр(Число(Число), Разрядность, РежимОкругления.Окр15как20);
            КонецЕсли;
            СледСивол = Сред(Число, Индекс, 1);
            Если КодСимвола(СледСивол) <= 53 Тогда        
                Возврат Число(СтрокаЧисел);
            Иначе
                Возврат Окр(Число(Число), Разрядность, РежимОкругления.Окр15как20);
            КонецЕсли;
        Иначе
            СтрокаЧисел = СтрокаЧисел + Символ;
        КонецЕсли;    
    КонецЦикла;
    
КонецФункции

Просто оставлю это здесь, может кому то сбережет время. За критику буду благодарен.
 
 
   PR
 
101 - 31.10.18 - 17:23
(100) Ну повтори, если видишь _определение_, а я не вижу
Или не выеживайся
  1  2

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует