|  07.08.2007, 12:48 | #1 | 
| Участник | Помогите с запросом 
			
			Добрый день. Пытаюсь строить запрос на основе query из АОТ OLAPSalesMargin (Аксапта 3.0 СП1 СУБД SQL).В процессе работы не выбираються записи из таблицы InventTable и InventItemGroup. Кто-нибудь сталкивался с такой проблемой? | 
|  | 
|  07.08.2007, 12:57 | #2 | 
| Участник | 
			
			А какой у Вас запрос получается? Такой вот у меня - вроде все верно. | 
|  | 
|  07.08.2007, 13:07 | #3 | 
| Участник | 
			
			Да запрос, получаеться в такой же. И при написании этого запроса с помощью while select все работает нормально... А вот так query = new Query(queryStr("OLAPSalesMargin")); qr = new QueryRun(query); while (qr.next()) { custInvoiceTrans = qr.get(tableNum(CustInvoiceTrans)); inventTable = qr.get(tableNum(inventTable)); InventItemGroup = qr.get(tableNum(InventItemGroup)); } записи inventTable и InventItemGroup не выбираються.... | 
|  | 
|  07.08.2007, 13:49 | #4 | 
| Участник | 
			
			Попробуйте для CustInvoiceJour установить свойство FetchMode в 1:n
		 
				__________________ Axapta v.3.0 sp5 kr2 | 
|  | 
|  07.08.2007, 13:54 | #5 | 
| Участник | 
			
			Тогда верхние источники вообще отрубятся. SP5 KR2 - у меня InventTable и InventItemGroup тоже пустые.. Просто особо помочь если б и хотел, не получается исследовать - запрос выполняется около получаса у меня.   Последний раз редактировалось kashperuk; 07.08.2007 в 13:55. Причина: исправил нижние на верхние | 
|  | |
| За это сообщение автора поблагодарили: AvrDen (1). | |
|  07.08.2007, 14:09 | #6 | 
| Участник | 
			
			Попробовал... Теперь при первом проходе цикла выбираються сначала CustInvoiceTrans,InventTable,InventItemGroup, потом только CustInvoiceJour,CustTable,CustGroup такой вариант не подходит - необходимо за один проход получить все таблицы | 
|  | 
|  07.08.2007, 14:16 | #7 | 
| Участник | 
			
			Спасибо всем, но видно не судьба построить такой запрос - Query из 7 таблиц
		 | 
|  | 
|  07.08.2007, 15:06 | #8 | 
| Участник | 
			
			Хм. Действительно. Интересно получается На деле запрос разбивается на два. Первый по CustInvoiceTrans, inventTable и InventItemGroup. Второй - по CustInvoiceJour, CustTable, CustGroup. Причем, второй идет уже подзапросами. В итоге, при пробежке по queryRun при первом вызове next() снача получаются табличные переменные из первого запроса, при втором вызове - на сервер идет второй запрос с подстановкой в него параметров из первого 
				__________________ Axapta v.3.0 sp5 kr2 | 
|  | 
|  07.08.2007, 15:24 | #9 | 
| Участник | 
			
			Интересно еще следующая вещь: если взять текст запроса из info(query.dataSourceNo(1).toString()) и сделать из него while select, то все работает отлично...
		 | 
|  | 
| Теги | 
| olap, ax3.0 | 
|  | 
|  Похожие темы | ||||
| Тема | Ответов | |||
| Помогите с запросом | 4 | |||
| помогите с запросом | 4 | |||
| Помогите с запросом.. | 2 | |||
| Помогите с SQL запросом | 8 | |||
| Пожалуйста, помогите с запросом | 19 | |||
| 
 |