SSDT OPENJSON 不正确的警告消息

SSDT OPENJSON Incorrect warning message

下面的函数给出 SSDT 14.0.60923.0 中的警告 SQL71502:函数:[dbo].[fn_CheckPolicy] 在 Visual Studio 2015.

中错误地引用了对象 [dbo].[Users].[d] 的未解析引用

有解决办法还是 SSDT 中的错误?

CREATE FUNCTION [dbo].[fn_CheckPolicy] (@NameIdentifier nvarchar(128),
                                        @Id             uniqueidentifier)
RETURNS @returntable TABLE (
  [Id]  uniqueidentifier,
  [Acl] int )
AS
  BEGIN
      WITH cte
           AS (SELECT 1                                 AS [Level],
                      JSON_VALUE(d.[value], '$.id')     AS 'Id',
                      JSON_VALUE(d.[value], '$.acl')    AS 'acl',
                      JSON_VALUE(d.[value], '$.type')   AS 'type',
                      JSON_QUERY(d.[value], '$.s')      AS 'data'
               FROM   [dbo].[Users] u
                      CROSS apply OPENJSON(JSON_QUERY(u.[Policy], '$.c')) d
               WHERE  u.[NameIdentifier] = @nameIdentifier
               UNION ALL
               SELECT [Level] + 1,
                      ISNULL(JSON_VALUE(d.[value], '$.id'), '00000000-0000-0000-0000-000000000000'),
                      JSON_VALUE(d.[value], '$.acl'),
                      JSON_VALUE(d.[value], '$.type')        'type',
                      JSON_QUERY(d.[value], '$.a')           'data'
               FROM   cte
                      CROSS apply OPENJSON(JSON_QUERY([data], '$')) d)
      INSERT INTO @returnTable
      SELECT [Id],
             CONVERT(int, CONVERT(varbinary, [Acl], 1))
      FROM   cte
      WHERE  [Id] = @id

      IF @@ROWCOUNT = 0
        INSERT INTO @returntable
                    ([Id],[Acl])
        VALUES      (@id,'0xff')

      RETURN
  END 

这看起来像是在 SSDT 中处理 OPENJSON 的错误。在最近版本的 SSDT 中修复了这方面的一些错误,但这似乎是另一个问题。您能否使用类别 "Developer Tools (SSDT, BIDS, etc.)" 在 https://connect.microsoft.com/SQLServer/feedback/CreateFeedback.aspx 上为此提交一个连接错误?谢谢!