Good Morning,
One of our clients is having the following problem with Dynamics AX 2009:
It is generating the query bellow with no clauses to make the relationship between tables CUSTTRANS and CUSTSETTLEMENT.
)SELECT A.ACCOUNTNUM,A.TRANSDATE,A.VOUCHER,A.INVOICE,A.TXT,A.AMOUNTCUR,A.SETTLEAMOUNTCUR,A.AMOUNTMST,A.SETTLEAMOUNTMST,A.CURRENCYCODE,A.DUEDATE,A.LASTSETTLEVOUCHER,A.LASTSETTLEDATE,A.LASTEXCHADJVOUCHER,A.CLOSED,A.TRANSTYPE,A.APPROVEDBY,A.APPROVED,A.DIMENSION,A.DIMENSION2_,A.DIMENSION3_,A.DIMENSION4_,A.DIMENSION5_,A.DIMENSION6_,A.EXCHADJUSTMENT,A.DOCUMENTNUM,A.DOCUMENTDATE,A.LASTEXCHADJRATE,A.FIXEDEXCHRATE,A.LASTEXCHADJ,A.CORRECT,A.BANKCENTRALBANKPURPOSECODE,A.BANKCENTRALBANKPURPOSETEXT,A.SETTLEMENT,A.INTEREST,A.COLLECTIONLETTER,A.POSTINGPROFILECLOSE,A.EXCHRATESECOND,A.EXCHRATE,A.LASTSETTLEACCOUNTNUM,A.COMPANYBANKACCOUNTID,A.THIRDPARTYBANKACCOUNTID,A.PAYMMODE,A.PAYMREFERENCE,A.PAYMMETHOD,A.CASHPAYMENT,A.CONTROLNUM,A.DELIVERYMODE,A.POSTINGPROFILE,A.OFFSETRECID,A.EUROTRIANGULATION,A.ORDERACCOUNT,A.CASHDISCCODE,A.PREPAYMENT,A.PAYMSPEC,A.CUSTEXCHADJUSTMENTREALIZED,A.CUSTEXCHADJUSTMENTUNREALIZED,A.DEL_OCRLINE,A.PAYMMANLACKDATE,A.PAYMMANBATCH,A.PAYMID,A.BILLOFEXCHANGEID,A.BILLOFEXCHANGESTATUS,A.BILLOFEXCHANGESEQNUM,A.BANKREMITTANCEFILEID,A.COLLECTIONLETTERCODE,A.INVOICEPROJECT,A.LASTSETTLECOMPANY,A.CANCELLEDPAYMENT,A.REASONREFRECID,A.FININTERESTAMOUNT,A.FINEAMOUNT,A.PAYMENTTYPE,A.PAYMENTWAY,A.FININTERESTCODE,A.DEL_FININTERESTAMOUNTPAYMCUR,A.FINECODE,A.DEL_FINEAMOUNTPAYMCUR,A.TAXINVOICESALESID,A.DEL_ELETRONICINVOICEDATE,A.DEL_ELETRONICINVOICETIME,A.ELETRONICINVOICEVALIDATIONNUM,A.RPSSEND,A.DEL_RPSSENDDATE,A.ELETRONICINVOICE,A.TAXWITHHOLDCALCULATE,A.TOTALTAXAMOUNTRETAINED,A.INVOICESERVICESAMOUNT,A.CONSOLIDATEDINVOICE_JP,A.TAXWITHHOLDAMOUNTORIGIN_IN,A.TDSAMOUNT_IN,A.TCSAMOUNT_IN,A.REFVOUCHER_IN,A.ADVANCEPAYMENT_IN,A.ELECTRONICINVOICEDATETIME,A.ELECTRONICINVOICEDATETIMETZID,A.RPSSENDDATETIME,A.RPSSENDDATETIMETZID,A.TOTPARC,A.MODIFIEDDATETIME,A.DEL_MODIFIEDTIME,A.MODIFIEDBY,A.MODIFIEDTRANSACTIONID,A.CREATEDDATETIME,A.DEL_CREATEDTIME,A.CREATEDBY,A.CREATEDTRANSACTIONID,A.DATAAREAID,A.RECVERSION,A.RECID,B.TRANSRECID,B.TRANSDATE,B.OFFSETTRANSVOUCHER,B.ACCOUNTNUM,B.SETTLEAMOUNTCUR,B.SETTLEAMOUNTMST,B.EXCHADJUSTMENT,B.SETTLEMENTVOUCHER,B.TRANSCOMPANY,B.OFFSETRECID,B.DUEDATE,B.UTILIZEDCASHDISC,B.CUSTCASHDISCDATE,B.LASTINTERESTDATE,B.PENNYDIFF,B.CANBEREVERSED,B.CASHDISCACCOUNT,B.DIMENSION,B.DIMENSION2_,B.DIMENSION3_,B.DIMENSION4_,B.DIMENSION5_,B.DIMENSION6_,B.SETTLETAX1099AMOUNT,B.SETTLETAX1099STATEAMOUNT,B.EUSALESLIST,B.OFFSETCOMPANY,B.OFFSETACCOUNTNUM,B.SETTLEMENTGROUP,B.WITHHOLDINGTRANS_IN,B.FININTERESTAMOUNT,B.FINEAMOUNT,B.FININTERESTCODE,B.FINECODE,B.INVOICEPARC,B.CREATEDDATETIME,B.DEL_CREATEDTIME,B.CREATEDBY,B.DATAAREAID,B.RECVERSION,B.RECID FROM CUSTTRANS A,CUSTSETTLEMENT B WHERE (B.CANBEREVERSED=@P1) ORDER BY A.INVOICE DESC,A.ACCOUNTNUM DESC,B.DATAAREAID DESC,B.TRANSRECID DESC,B.TRANSDATE DESC OPTION(FAST 1)
Because of that, more than two billions rows are being returned to tempdb (order by).
Does someone know why AX is not including the clauses to make the relationship between both tables?
Regards