Just to be safe, let's make sure the cursor is a LOCAL one:
DECLARE @MyUpdateID int
DECLARE @ReturnCode int
DECLARE MyCur CURSOR LOCAL FAST_FORWARD FOR SELECT LocalUpdateID FROM #MyTempTable
OPEN MyCur
FETCH NEXT FROM MyCur INTO @MyUpdateID
WHILE @@FETCH_STATUS = 0 BEGIN
print 'EXECing proc spDeleteUpdate with id value = ' + CAST(@MyUpdateID AS varchar(10))
exec @ReturnCode = spDeleteUpdate @localUpdateID=@MyUpdateID
IF @ReturnCode <> 0 BEGIN
RAISERROR('Proc spDeleteUpdate got error %d when processing id %d.', 16, 1,
@ReturnCode, @MyUpdateID )
END /*IF*/
FETCH NEXT FROM MyCur INTO @MyUpdateID
END
CLOSE MyCur
DEALLOCATE MyCur