Analytical Accounting Subledger Query

This is a template Dynamics GP Analytical Accounting Subledger query
select aa0.DOCNUMBR, aa0.DOCTYPE,
        aa1.aaSubLedgerHdrID, aa1.aaSubLedgerDistID, aa1.INTERID, aa1.ACTINDX, aa1.DEBITAMT, aa1.CRDTAMNT,
        aa2.DEBITAMT, aa2.CRDTAMNT, aa2.aaAssignedPercent / 100 as assignedPct,
        aa3.aaTrxDimID, aa3.aaTrxCodeID,
        aa401.aaTrxDimCode, aa401.aaTrxDimCodeDescr,
        aa400.aaTrxDim, aaTrxDimDescr
    from AAG20000 aa0
        left join AAG20001 aa1 on aa0.aaSubLedgerHdrID = aa1.aaSubLedgerHdrID
        left join AAG20002 aa2 on aa2.aaSubLedgerHdrID = aa1.aaSubLedgerHdrID and aa2.aaSubLedgerDistID = aa1.aaSubLedgerDistID
        left join AAG20003 aa3 on aa3.aaSubLedgerHdrID = aa2.aaSubLedgerHdrID and aa3.aaSubLedgerAssignID = aa2.aaSubLedgerAssignID and aa2.aaSubLedgerDistID = aa3.aaSubLedgerDistID
        left join AAG00401 aa401 on aa401.aaTrxDimID = aa3.aaTrxDimID and aa401.aaTrxDimCodeID = aa3.aaTrxCodeID
        left join AAG00400 aa400 on aa400.aaTrxDimID = aa401.aaTrxDimID    
    where aa2.aaAssignedPercent <> 10000       

 

EDIT 10/26/2020 User TFM sent in this code (see the comment below)

select aa0.DOCNUMBR, aa0.DOCTYPE,
        aa1.aaSubLedgerHdrID, aa1.aaSubLedgerDistID, aa1.INTERID, aa1.ACTINDX, aa1.DEBITAMT, aa1.CRDTAMNT,
        aa2.DEBITAMT, aa2.CRDTAMNT, aa2.aaAssignedPercent / 100 as assignedPct,
        aa3.aaTrxDimID, aa3.aaTrxCodeID,
        aa400.aaTrxDim, aaTrxDimDescr,
        case aa400.aaDataType
        when 1 then
            aa401.aaTrxDimCode
        when 2 then
            cast(aa402.aaTrxDimCodeNum as varchar)
        when 3 then
            cast(aa403.aaTrxDimCodeBool as varchar)
        when 4 then
            cast(aa404.aaTrxDimCodeDate as varchar)
        end as aaTrxDimCode,
        aa401.aaTrxDimCodeDescr
    from AAG20000 aa0
        left join AAG20001 aa1 on aa0.aaSubLedgerHdrID = aa1.aaSubLedgerHdrID
        left join AAG20002 aa2 on aa2.aaSubLedgerHdrID = aa1.aaSubLedgerHdrID and aa2.aaSubLedgerDistID = aa1.aaSubLedgerDistID
        left join AAG20003 aa3 on aa3.aaSubLedgerHdrID = aa2.aaSubLedgerHdrID and aa3.aaSubLedgerAssignID = aa2.aaSubLedgerAssignID and aa2.aaSubLedgerDistID = aa3.aaSubLedgerDistID
        left join AAG00400 aa400 on aa400.aaTrxDimID = aa3.aaTrxDimID    --dimension information
        left join AAG00401 aa401 on aa401.aaTrxDimID = aa3.aaTrxDimID and aa401.aaTrxDimCodeID = aa3.aaTrxCodeID --character values
        left join aag00402 aa402 on aa402.aaTrxDimID = aa3.aaTrxDimID and aa402.aaTrxDimCodeNumID = aa3.aaTrxCodeID --numeric values
        left join aag00403 aa403 on aa403.aaTrxDimID = aa3.aaTrxDimID and aa403.aaTrxDimCodeBoolID = aa3.aaTrxCodeID --boolean values
        left join aag00404 aa404 on aa404.aaTrxDimID = aa3.aaTrxDimID and aa404.aaTrxDimCodeDateID = aa3.aaTrxCodeID --datetime values
    where aaTrxCodeID is not null and aaTrxCodeID <> 0

 


RealWorldCode gives developers practical, real‑world solutions with clean, working code — no fluff, no theory, just answers.
Links
Home
Knowledge Areas
Sitemap
Contact
Et cetera
Privacy Policy
Terms and Conditions
Cookie Preferences