gvee, Yes, datatypes was a concern which you have dealt with (nicely). However, you solution has the same problem as my original one. Since the OP wants to convert a Julian day to an actual date, taking the day part of the Julian day and adding it offsets the date by 1 day. This is easily seen if you use 200901 as the Julian day.
Using your query if the Year is 2009 and the Day_of_Year is 1, you would be 2009-01-02 as the result when it should be 2009-01-01. 1 needs to be subtracted from the Day_of_Year to correct this.
DECLARE @year int
, @day_of_year int
SET @year = 2009
SET @day_of_year = 152 - 1 <<< subtract 1 day
SELECT DateAdd(yy, @year - 1900, 0) As yy
, DateAdd(dd, @day_of_year, 0) As dd
, DateAdd(dd, @day_of_year, DateAdd(yy, @year -1900, 0)) As done