Thanks Sergey
>Mark,
>
>The default lenght for char and varchar in CAST is 30 characters. That what causes truncation in the fourh part of expression. Specifaing varchar lenght explicitly should fix it.
CAST(LEFT (RTRIM(dbo.[section].sect_desc), 25) + ' / ' +
> LEFT (CAST(dbo.heading.head_desc AS VARCHAR), 25) + ' / ' +
> LEFT (CAST(dbo.item.item_desc AS VARCHAR), 25) + ' / ' +
> LEFT (RTRIM(CAST(dbo.subitem.sub_desc AS VARCHAR(50))), 50) AS varchar(600))
I prefer always specify lenght in char/varchar so I don't have to worry about defaults.
>
>>In the following expression
>>the field returned is truncated unexpectedly to 120 characters long.
>>
>>CAST(LEFT (RTRIM(dbo.[section].sect_desc), 25) + ' / ' + LEFT (CAST(dbo.heading.head_desc AS VARCHAR), 25) + ' / ' +
>>LEFT (CAST(dbo.item.item_desc AS VARCHAR), 25) + ' / ' + LEFT (RTRIM(CAST(dbo.subitem.sub_desc AS VARCHAR)), 50) AS varchar(600))
><snip>