| 
    
            
         
         | 
    
    
  | 
1С Запрос, количество знаков после запятой при группировке | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        CepeLLlka    
     07.06.24 
            ✎
    15:52 
 | 
         
        Добрый день.
 
        В клиент-серверном варианте, на платформе 8.3.22.2239 и СУБД SQL Server 2012 я столкнулся с такой ошибкой: ВЫБРАТЬ ТестОбороты.Товар КАК Товар, ТестОбороты.КоличествоОборот КАК КоличествоОборот ИЗ РегистрНакопления.Тест.Обороты КАК ТестОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТестОбороты.Товар КАК Товар, СУММА(ТестОбороты.КоличествоОборот) КАК КоличествоОборот ИЗ РегистрНакопления.Тест.Обороты КАК ТестОбороты СГРУППИРОВАТЬ ПО ТестОбороты.Товар Два этих запроса выдают разный результат, при условии, что в оборотном регистре накопления "Тест" только одна запись Товар № 1 с количеством -0,003494665 Первый запрос выводит количество равное -0,003494665 А второй запрос в результат выводит -0,00349467 по сути округляя и теряя один знак после запятой. Подскажите пожалуйста, что можно сделать, чтобы не было округления и считалось верно?  | 
|||
| 
    1
    
        Волшебник    
     07.06.24 
            ✎
    15:51 
 | 
         
        "Тест" — плохое название регистра     
         | 
|||
| 
    2
    
        mikecool    
     07.06.24 
            ✎
    15:51 
 | 
         
        ВЫРАЗИТЬ в СУММА() попробуй запихнуть     
         | 
|||
| 
    3
    
        maxab72    
     07.06.24 
            ✎
    15:51 
 | 
         
        Какая размерность у ресурса "Количество"?     
         | 
|||
| 
    4
    
        CepeLLlka    
     07.06.24 
            ✎
    15:52 
 | 
         
        (3)22 символа и 9 из них, после запятой.     
         | 
|||
| 
    5
    
        Eiffil123    
     07.06.24 
            ✎
    15:53 
 | 
         
        (0) сталкивались с чем-то похожим на ERP (при расчете себестоимости при очень малом количестве). Выходили из положения тем, что сумму внутри агрегатной функции умножали на 10000, а потом итоговую сумму делили на 10000.     
         | 
|||
| 
    6
    
        PR    
     07.06.24 
            ✎
    15:53 
 | 
||||
| 
    7
    
        CepeLLlka    
     07.06.24 
            ✎
    15:53 
 | 
         
        (2)Вопрос решён. Спасибо.     
         | 
|||
| 
    8
    
        CepeLLlka    
     07.06.24 
            ✎
    15:54 
 | 
         
        (6)Виноват, да.     
         | 
|||
| 
    9
    
        Мультук    
     07.06.24 
            ✎
    15:55 
 | 
         
        (0) 
 
        Хранить в виде 3494,665 ? А затем там где надо делить?  | 
|||
| 
    10
    
        PR    
     07.06.24 
            ✎
    15:56 
 | 
         
        Именно поэтому https://its.1c.ru/db/v8std/content/535/hdoc     
         | 
|||
| 
    11
    
        CepeLLlka    
     07.06.24 
            ✎
    15:57 
 | 
         
        (9)Вариант из (2) помог, всё норм. Спасибо.     
         | 
|||
| 
    12
    
        PR    
     07.06.24 
            ✎
    15:58 
 | 
         
        (8) Я не про то, я про то, что не помню где, ищи сам, но причина в том, что скуль округляет все вычисления до скольки-то там знаков, до 6 вроде
 
        И 1С тут бессильна Можно в запросе все умножать на миллиард, а потом в 1С уже делить на миллиард, например  | 
|||
| 
    13
    
        Garykom    
     07.06.24 
            ✎
    15:59 
 | 
         
        (10)  
        При выполнении арифметических операций в запросах к базе данных платформа 1С:Предприятия поддерживает точность вычислений до 8 разрядов дробной части.      | 
|||
| 
    14
    
        CepeLLlka    
     07.06.24 
            ✎
    16:02 
 | 
         
        (13)В файловой то всё норм было, я тестил     
         | 
|||
| 
    15
    
        breezee    
     07.06.24 
            ✎
    20:31 
 | 
         
        Сделайте единицу измерения Микро*.
 
        И создавайте запись в регистр 100 микро(допустим, грамм)  | 
|||
| 
    16
    
        timurhv    
     07.06.24 
            ✎
    21:37 
 | 
         
        (0) К числам с плавающей точкой всегда надо относиться особенно осторожно.
 
    
Тут Excel вроде уже начинает считать не как целые числа, а как с плавающей точкой со всеми вытекающими. А то начнется эта ваша 1С неправильно считает. 
  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |