02.05.2015, 16:58 | #1 |
Участник
|
Помогите с запросом
Если необохдимо в запрос добавить несколько таблиц не связывая их никак, только накладывая на даты условия, верно ли сделано?
Query query = new Query(); QueryBuildDataSource qbds,qbdt; ; qbds = query.addDataSource(tablenum( VendInvoiceJour )); qbdt = query.addDataSource(tablenum( CustInvoiceJour )); qbdt.joinMode(JoinMode::NoExistsJoin); Условия на запрос накладываются позже в следующем методе Query .query().dataSourceTable( tablenum( VendInvoiceJour ) ).addRange( fieldnum( VendInvoiceJour, INVOICEDATE ) ).value( SysQuery::range( dateFrom, dateTo ) ); Query .query().dataSourceTable( tablenum( CustInvoiceJour ) ).addRange( fieldnum( CustInvoiceJour, INVOICEDATE ) ).value( SysQuery::range( dateFrom, dateTo ) ); Не получаю нужного результата. Подскажите как добавить несвязанные таблицы Full Join т.е. И ЕЩЕ, в прошлом вопросе спрашивал про LEFT JOIN и как-то неловко чувствовал себя, от того что в принципе это OUTER JOIN всего лишь. Все таки нашелся тот пост, который тогда сподвиг меня на вопрос как LEFT JOIN сделать Как перевести из sql в axapta |
|
02.05.2015, 18:27 | #2 |
Участник
|
Попробуйте описать обычными словами, что Вы хотите получить в результате. Без какого-либо кодирования. Просто словами.
Если я Вас правильно понимаю: список накладных за период, где в левой части - накладные поставщика (приход), а в правой - накладные клиента (расход). Ну, или что Вам надо на самом деле? Если "человеческими" словами уж совсем никак, то хотя бы напишите запрос, который хотите получить в синтаксисе MS SQL Куда пойдет результат выборки: на форму в Grid, в отчет или обработка в коде без отображения пользователю
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
02.05.2015, 19:54 | #3 |
Участник
|
Задача вывести информацию по доставкам настроенных и на продажах и на покупках. Документы продажи и покупки должны ограничиваться периодами. Время выполнения долгое и делаем прогрессбар, для него надо знать сколько документов всего. И мне надо, чтоб в одном запросе были и документы по продаже и документы по покупке, ограниченные датами.
|
|
02.05.2015, 21:56 | #4 |
Administrator
|
Цитата:
Сообщение от trudel
Задача вывести информацию по доставкам настроенных и на продажах и на покупках. Документы продажи и покупки должны ограничиваться периодами. Время выполнения долгое и делаем прогрессбар, для него надо знать сколько документов всего. И мне надо, чтоб в одном запросе были и документы по продаже и документы по покупке, ограниченные датами.
Понятие "Разноска" собственно и служит для того, чтобы информацию из документа скопировать в единую таблицу, из которой впоследствии можно выбирать данные, суммарно и по покупкам и по продажам. Т.о., если Вам нужна информация допустим только по продажам - то Вам надо брать таблицы накладных клиентов. В случае покупок - накладных поставщиков. Однако, если Вам нужна информация и по продажам и по покупкам - Вам надо брать таблицу проводок. Складских или финансовых - зависит от того - какая информация Вам требуется в отчете. Например, если Вы возьмете табличку InventTrans, то Вы одним несложным запросом по одной таблице получите все строки всех документов и по покупке и по продаже. И даже сможете отфильтроваться по дате (DateFinancial). А дальше - все зависит от того - какие данные нужно взять в отчет.
__________________
Возможно сделать все. Вопрос времени |
|
03.05.2015, 08:28 | #5 |
Участник
|
Там еще аналогично и deliveryOrderTable присоединяется. Т.е. мне надо
VendTableJour full join CustTableJour on 1=2 full join DeliveryOrderTable on 1=2 ... Where (VendTableJour.invoiceDate between dtn and dte) Or (CustTableJour between dtn and dte) Or(DeliveryOrderTable.Date between dtn and dte) Последний раз редактировалось trudel; 03.05.2015 в 09:51. |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Помогите с запросом | 8 | |||
Помогите с запросом.. | 2 | |||
Помогите с SQL запросом | 8 | |||
Помогите пожалуйста с запросом... | 18 | |||
Пожалуйста, помогите с запросом | 19 |
|