That's generally frowned upon, because you can risk a race condition where a new file can be created after you check but before you create your new file.
A safer way is to copy the file using a unique name, then try to rename it. If the rename fails, keep trying with new names.
use AppleScript version "2.4" -- Yosemite (10.10) or later
use framework "Foundation"
use scripting additions
set sourcePath to "/Users/shane/Desktop/Place Images Report.txt"
set sourcePath to current application's NSString's stringWithString:sourcePath
set sourceName to sourcePath's lastPathComponent()'s stringByDeletingPathExtension()
set sourceExt to sourcePath's pathExtension()
set destFolder to "/Users/shane/Desktop/Somewhere else/"
set destFolder to current application's NSString's stringWithString:destFolder
set someName to current application's NSUUID's UUID()'s UUIDString() -- unique UUID string
set destTempPath to destFolder's stringByAppendingPathComponent:someName
-- move or copy to temp path
set fileManager to current application's NSFileManager's defaultManager()
fileManager's copyItemAtPath:sourcePath toPath:destTempPath |error|:(missing value)
-- try rename
set theResult to fileManager's moveItemAtPath:destTempPath toPath:(destFolder's stringByAppendingPathComponent:(sourcePath's lastPathComponent())) |error|:(missing value)
if theResult as boolean is false then
--try renaming
repeat with i from 1 to 1000
set destName to current application's NSString's stringWithFormat_("%@-%@.%@", sourceName, i, sourceExt)
set theResult to (fileManager's moveItemAtPath:destTempPath toPath:(destFolder's stringByAppendingPathComponent:destName) |error|:(missing value))
if theResult as boolean then exit repeat
end repeat
end if
if theResult as boolean is false then
-- oops
end if