2017-02-11 273 views
1

我想重建這個SQL查詢作爲AX查詢。複雜AX查詢

我嘗試了幾種方法,但我不明白。

我不是AX全新的查詢,但我只有一些簡單的查詢經驗,而不是這種複雜的SQL查詢。

SELECT * FROM ( SELECT DH.[RECID]       AS RECID_DIMENSIONHIERARCHY 
         ,DH.[NAME]       AS NAME__DIMENSIONHIERARCHY 
         ,DH.[DESCRIPTION]      AS DESC__DIMENSIONHIERARCHY 
         ,DH.[PARTITION]      AS PARTITION_DIMENSIONHIERARCHY 
         ,DL.[DIMENSIONATTRIBUTE]    AS RECID_DIMENSIONATTRIBUTE 
         ,DA.[NAME]       AS NAME_DIMENSIONATTRIBUTE   
         ,DN.[RECID]       AS RECID_DIMENSIONCONSTRAINTNODE 
         ,DNC.[RECID]       AS RECID_DIMENSIONCONSTRAINTNODECRITERIA 
         ,DNC.[RANGETO]      AS #Owner 
         ,DNCR.[WILDCARDSTRING]    AS #Agreement            
      FROM (SELECT * FROM [dbo].[DIMENSIONHIERARCHY]  
          WHERE [STRUCTURETYPE] = 1 AND [NAME] LIKE 'AG-OW%' 
       )                   AS DH 
     INNER JOIN [dbo].[DIMENSIONHIERARCHYLEVEL] AS DL 
        ON DH.[RECID]  = DL.[DIMENSIONHIERARCHY] 
       AND DH.[PARTITION]  = DL.[PARTITION]  
     INNER JOIN [dbo].[DIMENSIONATTRIBUTE] AS DA 
        ON DL.[DIMENSIONATTRIBUTE]  = DA.[RECID] 
       AND DL.[PARTITION]       = DA.[PARTITION]  
     INNER JOIN [dbo].[DIMENSIONCONSTRAINTNODE] AS DN 
        ON DL.[RECID]       = DN.[DIMENSIONHIERARCHYLEVEL] 
       AND DL.[PARTITION]       = DN.[PARTITION] 
     INNER JOIN [dbo].[DIMENSIONCONSTRAINTNODECRITERIA]   AS DNC 
        ON DN.[RECID]       = DNC.[DIMENSIONCONSTRAINTNODE] 
       AND DN.[PARTITION]       = DNC.[PARTITION] 
     INNER JOIN [dbo].[DIMENSIONCONSTRAINTNODECRITERIA] AS DNCR 
        ON DN.[PARENTCONSTRAINTNODE]   = DNCR.[DIMENSIONCONSTRAINTNODE] 
       AND DN.[PARTITION]       = DNCR.[PARTITION]       
       ) AS Sub 
+1

你想在AOT創建一個實際的查詢對象,或做你想要寫X ++代碼來創建查詢?無論哪種情況,您是否開始在Dynamics中創建查詢,並且可以顯示迄今爲止嘗試的內容?如果您可以對業務案例進行簡短描述,那麼也可能有所幫助,但在Dynamics中重新創建此查詢可能不是最佳解決方案。 –

回答

0

您需要細分您的查詢並以小塊實現它。然後將其全部組合以獲得期望的結果。

有兩種方法可以在X ++中創建查詢。

  1. 使用select語句,例如創建查詢:

    Select * from HcmWorker join * from DirPerson where DirPerson.RecId == HcmWorker.Person

    請參閱此鏈接:Select statement syntax

  2. 創建AOT結構查詢。你可能想看看下面的鏈接:

    Create query in AOT by using X++