![]() |
#13 |
MCTS
|
Не уверен, что это верно, но вроде можно обойтись одним датасорсом CustTable, в init которого
X++: public void init() { QueryBuildDataSource qb; super(); qb = CustTable_ds.query().dataSourceName('CustTable'); qb.clearLinks(); qb.fetchMode(QueryFetchMode::One2One); qb.addLink(fieldNum(CustInvoiceJour,InvoiceAccount),fieldNum(CustTable,AccountNum)); qb.addLink(fieldNum(CustInvoiceJour,OrderAccount ),fieldNum(CustTable,AccountNum)); qb.addSelectionField(fieldNum(CustTable,RecId)); qb.addSelectionField(fieldNum(CustTable,Name)); } Цитата:
Информация:
SELECT RecId, SalesId FROM CustInvoiceJour WHERE ((InvoiceDate>={ts '2008-08-08 00:00:00.000'} AND InvoiceDate<={ts '2008-08-08 00:00:00.000'})) JOIN RecId FROM CustTable WHERE CustInvoiceJour.InvoiceAccount = CustTable.AccountNum AND CustInvoiceJour.OrderAccount = CustTable.AccountNum Цитата:
SELECT * FROM CustInvoiceJour WHERE ((InvoiceDate>={ts '2008-05-01 00:00:00.000'} AND InvoiceDate<={ts '2008-05-31 00:00:00.000'}))
JOIN * FROM CustTable WHERE CustInvoiceJour.OrderAccount = CustTable.AccountNum JOIN * FROM CustTable WHERE CustInvoiceJour.InvoiceAccount = CustTable.AccountNum судя по данным - равносильно и можно обойтись без addSelectionField, выбирая сразу все поля. Последний раз редактировалось Eldar9x; 08.08.2008 в 17:57. |
|
|
|