Msg 156, Level 15, State 1, Line 8 Incorrect syntax near the keyword 'CASE'
I am trying to join columns based on the column value.
If case conditon 1 is true then i want to join ON im.ItemNumber = left(tr.itemnumber,len(tr.itemnumber)-4)
if Case condition 2 is true then
ON tr.ItemNumber = im.LegacyItemNumber
else
tr.ItemNumber = im.ItemNumber
    SELECT 
           im.Category as RootCategory,GETDATE() AS LoadDate,tr.*  
          into transactionreport_stage_testNN
    FROM transaction tr
    LEFT OUTER JOIN ALLDW_ora.dbo.Location(NOLOCK) loc ON tr.location=loc.location
    CASE 
    when
    right(tr.itemnumber,4) = '_old' then 
    LEFT OUTER JOIN [Inventory](NOLOCK) im
    ON im.ItemNumber = left(tr.itemnumber,len(tr.itemnumber)-4)
    when 
    tr.itemnumber <> im.ItemNumber 
    then
    LEFT OUTER JOIN [Inventory](NOLOCK) im
    ON tr.ItemNumber = im.LegacyItemNumber
else
LEFT OUTER JOIN [Inventory](NOLOCK) im
ON tr.ItemNumber = im.itemnumber
    end 
    AND im.Location=loc.LocationNo
 
    