You get the specific message you're getting when you don't specify the size of the variable NVARCHAR so THAT defaults to 1. And the LENGTH is, after all your math, therefore zero.
Here's what shows my drift.
DECLARE @exampleY as nvarchar(20)
SET @exampleY = 'Nater Termi'
SELECT LEFT(@exampleY,CHARINDEX(' ',@exampleY)-1) AS [pisanCP01]-- 'Nater'
SELECT RIGHT(@exampleY,CHARINDEX(' ',@exampleY)-1) AS [pisanCP0A]-- 'Termi'
IF you did this:
DECLARE @exampleZ as nvarchar
SET @exampleZ = 'Scobie Agent'
Then tried to get the length of the string you're inputting, you'd get this:
SELECT LEN(@exampleZ)
Instead of '12'