|  07.10.2005, 16:09 | #1 | 
| Участник |  Как реализовать Query или View на примере такого T-SQL запроса для OLAP? 
			
			Здравствуйте. Вот такой запрос: select DAY(getdate() - createddate) from SalesTable Как такую штуку в Query или View сделать и можно ли вообще? Запрос или вид планируется использовать для создания куба. Это поле будет aналитикой в кубе. | 
|  | 
|  07.10.2005, 16:23 | #2 | 
| злыдень | 
			
			DATEDIFF([Day], { fn NOW() }, dbo.ля-ля.DATE) AS DAYтру-ля-ля
		 | 
|  | 
|  07.10.2005, 16:33 | #3 | 
| Участник | 
			
			наверно вопрос неправильно задал. извините. Имел ввиду Query или View аксаптовские, статические.
		 | 
|  | 
|  07.10.2005, 17:12 | #4 | 
| Участник | 
			
			function based fields - это display methods ....без права на фильтрацию и сортировку  альтернатива  - денормализация .... C уважением, itfs. | 
|  | 
|  07.10.2005, 17:37 | #5 | 
| Участник | 
			
			Да действительно можно создать в View display метод, а потом подцепить его в форме.  Не подходит такой вариант, потому как при создании аналитики в кубе (в Axapta) надо указать таблицу(вид) и соответствующее поле. Под денормализацией вы имели ввиду создание в таблице еще одного поля, где хранить эти данные? Это вариант, но не самый красивый. правда сейчас это единственный. особо и не выберешь   Попутно еще вопрос. КУБ естественно можно создать напрямую без Аксапты, но возникает вопрос как рассчитывать суммы в разных валютах. Если кто нибудь подобное делал напрямую, буду благодарен если поделитесь опытом. | 
|  | 
|  07.10.2005, 17:53 | #6 | 
| злыдень | 
			
			но возникает вопрос как рассчитывать суммы в разных валютах- а в чём именно вопрос? Попутно еще ответ. КУБ естественно НУЖНО создать напрямую без Аксапты | 
|  | 
|  07.10.2005, 18:03 | #7 | 
| Участник | 
			
			Например надо посчитать суммы оплат по заказу. А оплаты происходили в разных валютах.Соответственно в кубе будут схлопыватся суммы в разных валютах.  Не случайно в Аксапте при формировании куба указывается обязательным полем валюта. | 
|  | 
|  07.10.2005, 18:10 | #8 | 
| злыдень | 
			
			Куб - не дебил - он агрегирует данные по скормленной ему таблице фактов, если у разработчика ума не хватит сделать измерение по полю валюта - туда разработчику и дорога. И нечего на куб валить Если надо пересчитать в единую валюту по соотв-му курсу - PHP код: 
			и последнее: а что у вас в системе в основную валюту операции не пересчитываются? | 
|  | 
|  07.10.2005, 18:37 | #9 | 
| Участник | 
			
			1. Если я создам измерение валюта, то возвращаясь к нашему примеру увидим несколько оплат в разных валютах по заказу. А если нам надо узнать сколько, еще не доплатил клиент по заказу. должны найти разницу. Это не решение. 2. В View нельзя использовать курсоры, временные таблицы и exec вызовы. В этом сложность и состоит. Пока не пытался реализовывать этот алгоритм пересчета в основную валюту. Поэтому вопрос был скорее по реализации этогого алгоритма. 3. не пересчитываются. это самопальный модуль. | 
|  | 
|  07.10.2005, 18:57 | #10 | 
| злыдень | 
			
			1. Естественно, Вы же не хотели чтобы они схлопывались, вот они и не схлопнуться 2. Join тоже во вью нельзя использовать??? Не говоря уже о ДТС 3. Все ясно. Какой модуль, такой и куб будет  Остается непонятным только одно, Вы рассчитывали что если будете строить в Аксапте, Куб сам догадается что и как и во что надо пересчитать? Ну да ладно, вопрос риторический, удачи PS. Почитайте BOL + SQL.ru | 
|  |