W twoim przykładzie wartość @daysInPeriod/@YEAR_360 to 37.0444444444444444444 . Więc nie możesz przypisać tej wartości do parametru typu danych DECIMAL(38,38) , ponieważ nie zostawiasz miejsca na część wewnętrzną. DECIMAL(38,38) oznacza, że możesz zapisać 38 cyfr, a 38 z nich znajduje się w części dziesiętnej, więc każda wartość większa niż 0.999999999999 spowoduje błąd.