动态导航查询设计器

时间:2016-05-10 14:08:37

标签: nav

我是Dynamics NAV Query Designer的新手。 任何正文都可以帮助我如何在Dynamic Nav 2013中的查询对象中进行翻译

Select ProductNo , ParentProductNo 
from  Producttable 

Where  ProductNo  = ParentProductNo 


 AND ProductNo in 
             (  Select ProductNo from Sales
                 Where SalesType =BB
             )

And ParentProductNo  not in 
    (  Select ParentProductNo  where ProductType = 'Indoor' ) 

1 个答案:

答案 0 :(得分:0)

NAV查询是一个简单的对象,它从不打算向C / AL揭示SQL的全部力量,它不支持子查询。 但是您可以重写查询以使用连接而不是嵌套选择。

它应该是这样的:

select p1.ProductNo, p1.ParentProductNo from 
  Producttable p1 join Sales s on p1.ProductNo = s.ProductNo and s.SalesType = 'BB'
    left outer join Producttable p2 on p1.ParentProductNo = p2.ParentProductNo and p2.ProductType = 'Indoor'
where p2.ParentProductNo is null and p1.ProductNo = p1.ParentProductNo

缺少最后一个select语句中的表名,但我认为它是“Producttable”。

现在可以创建一个包含3个数据项的NAV查询对象。第一个内连接通过简单的数据项链接链接(只需设置DataItemLink属性)。 对于外连接,选择DataItemLinkType =“SQL Advanced Options”并选择“Left Outer Join”作为连接类型(“SQLJoinType”属性)。