DECLARE @anItemUID uniqueidentifier
SET @anItemUID = NEWID()
itemUID is a bigint (aka int8 or 64 bits) while NEWID generates a 128-bit (CLSID like) value.
this is no implicit (nor explicit) convertion between uniqueidentifier and numeric types, so we have to convert it to string (sole possible conversion), then extract/keep 64 of the 128 bits and finally convert the hexa-string to a bigint value:
Code:
declare @UID uniqueidentifier = NEWID()
declare @str varchar(64) = convert(varchar(64), @UID)
declare @part varchar(64)
declare @itemUID bigint
set @part = SUBSTRING(@str, 15, 4) + SUBSTRING(@str, 25, 12)
set @itemUID = CONVERT(bigint,CONVERT(BINARY(8), @part, 2))
note that a 4294967295 * rand() is likely also valid, the sole purpose of the ItemUID column is to contain an unique identifier (to prevent item dupe and so on), there this is no strong proof of uniqueness of values obtained by NEWID as opposed to rand (both function can internally rely on the same pseudo random generator).