|  15.12.2002, 11:29 | #1 | 
| Участник |  Возможен ли такой Query 
			
			Можно ли в Query засунуть такой запрос: select ledgerTrans join dimensions_1 where ledgerTrans.Dimension[1] == dimensions_1.Num join dimensions_2 where ledgerTrans.Dimension[2] == dimensions_2.Num; Почему-то следующий код результатов не даёт :-( ds = query.dataSourceTable(tableNum(LedgerTrans)); ds1 = ds.addDataSource(tableNum(Dimensions)); ds1.addLink(fieldId2Ext(fieldNum(LedgerTable, Dimension), 12), fieldNum(Dimensions, Num)); range = ds1.addRange(fieldNum(Dimensions, DimensionCode)); range.value('11'); ds1 = ds.addDataSource(tableNum(Dimensions)); ds1.addLink(fieldId2Ext(fieldNum(LedgerTable, Dimension), 11), fieldNum(Dimensions, Num)); range = ds1.addRange(fieldNum(Dimensions, DimensionCode)); range.value('10'); | 
|  | 
|  15.12.2002, 14:33 | #2 | 
| Участник | 
			
			Привет! Можно такой запрос заделать - проблем нет. И ты все делаешь верно. Единственное, о чем ты забыл - это изменить FetchMode для дочерних источников. Вот модернизированный Job: PHP код: 
			
				__________________ С уважением, Андрей Беседин | 
|  | 
|  15.12.2002, 15:09 | #3 | 
| Участник | 
			
			Спасибо, Андрей! Всё работатет, но сразу же возникает ещё одна проблема. Хочеться соединять таблицы по OuterJoin. Говорю в том же коде ds1.joinMode(1) и получаю ошибку [Oracle][ODBC]Restricted data type attribute violation. Тот-же эффект даёт следующий код LedgerTrans LedgerTrans; Dimensions Dimensions; ; SELECT LedgerTrans OUTER JOIN Dimensions WHERE LedgerTrans.Dimension[12] == Dimensions.Num && Dimensions.DimensionCode == 11; Как с этим бороться? Буду очень признателен за ответ. | 
|  | 
|  07.05.2007, 13:01 | #4 | 
| Участник | 
			
			ds1.addLink(fieldId2Ext(fieldNum(LedgerTable, Dimension),1), fieldNum(Dimensions, Num)); а здесь у вас не возникает ошибка Недопустимая комбинация поля / поля ссылки? | 
|  | 
|  07.05.2007, 13:13 | #5 | 
| NavAx | 
			
			Прошу прощения за занудство, но такой хардкод: череват трудноуловимыми багами в будущем. Надежнее написать что-то вроде: (fieldId2Ext(fieldNum(LedgerTable, Dimension), SysDimension::Center + 1) 
				__________________ Isn't it nice when things just work? | 
|  | |
| За это сообщение автора поблагодарили: mazzy (5). | |