Domanda

Ho seguente situazione: Ho bisogno di unirsi VendInvoiceJour.InvoiceAccount <- VendTable.AccountNum e prendere VendTable.Vendgroup. In tutti i casi (query o viste anche) Dynamics AX unisce tavoli VendInvoiceJour.OrderAccount <- VendTable.AccountNum non VendInvoiceJour.InvoiceAccount <- VendTable.AccountNum. I `m cercando di utilizzare questo tipo di query:

qBdSVendJour = element.query().dataSourceTable(tablenum(VendInvoiceJour));
qBdSVendTbl = qBdSVendJour.addDataSource(tablenum(VendTable));
qBdSVendTbl.relations(true);
qBdSVendTbl.joinMode(JoinMOde::InnerJoin);
qBdSVendTbl.fetchMode(QueryFetchMode::One2One);

qBdSVendTbl.addLink(
    FieldNum(VendInvoiceJour,InvoiceAccount)
    ,FieldNum(VendTable,AccountNum)
); //(Dynamics ax automatically corrects InvoiceAccount to orderaccount 
   //in reports if trying this link in morphx)
È stato utile?

Soluzione

Se si rimuove la riga:

  *qBdSVendTbl.relations(true);*

quindi non sarà necessario aggiungere:

  *BdSVendJour.clearDynalink();*

Per essere sicuri che la query reale è l'atteso stampare il conent di:

  *qBdSVendJour.toString();*

Altri suggerimenti

qBdSVendJour.clearDynalink() farà il trucco.

Credo che le qBdSVendTbl.relations istruzione (veri) avranno AX valutano le relazioni definite sui tavoli in questione e li usa a prescindere.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top