
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
  | 
| 
 14.01.2003, 10:38 
 | 
|||
|---|---|---|---|
  
  | 
|||
Использование Descendants  | 
|||
| 
 #18+ 
  
    
  Народ, кто юзал эту ф-ию, отзовитесь! Есть: 1. Измерение типа Parent-Child "Товары_Иерархия", несбалансированная. 2. Мера "Кол" - количество. Нужно, создать вычисляемое поле, в котором, выводилось бы это количество, помноженное на опреденную константу. Допустим константа = 1, и сначала достаточно просто вывести в вычисляемом поле тоже "Кол". Для этого использую следующий запрос: with member measures.[Ed] as ' iif (isleaf([Товары_иерархия].currentmember),[Measures].[Кол], sum(descendants([Товары_иерархия].currentmember,[Товары_иерархия].currentmember.level,after),[Ed]) ) ' Т.е., если член иерархии "Товары_икрархия" не содержит потомков, то количество приравнивается числу в мере "Кол". Иначе производится суммирование количества (в мере "Ed" !) значений предыдущего уровня (именно предыдущего (следующего по вложенности), а не всех предыдущих!). Для этого и используем descendants, которая по идее должна возвратить для данного члена "Товары_иерархия" множество состоящее из значений указанного уровня иерархии. Получается: Товары.....................................................Кол........Ed Не.стаканы..........Кешка.Кеша.ваф...............30.........30 ...................................Кеша.прост.............70.........70 ..........................Кешка.Итог.....................100.......100 ..........................Фишка............................60.........60 Не.стаканы.Итог........................................160.......260 Стаканы...............Эскимо.в.стакане...........1320.....1320 Стаканы.Итог............................................1320.....1320 Общий.итог..............................................1480.....3160 В итоге видим, что колонки "Кол" и "Ед", которые должны быть равны, получаются отличными друг от друга. Т.е., начиная с 3-го, от последнего по вложенности, уровня иерархии (Не стаканы Итог), суммирование производится каким то странным образом. Если посмотреть в descendants, то модно увидеть что я использую флаг "after", что по моему мнению должно приводить к получению множеста со значением предыдущего уровня. Или он возвращает не предыдущий а предыдущИЕ уровни???? Хотя не должен. Тогда как ограничить выборку? Или может построить запрос по другому? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 14.01.2003, 13:37 
 | 
|||
|---|---|---|---|
Использование Descendants  | 
|||
| 
 #18+ 
  
    
  флаг AFTER дает результат именно по всем нижележащим мемберам. Попробуйте использовать вызов Descendants с указанием уровня в числовом виде - тогда сумма вам нужна по Descendants с уровнем -1 относительно родителя. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 14.01.2003, 13:45 
 | 
|||
|---|---|---|---|
  
  | 
|||
Использование Descendants  | 
|||
| 
 #18+ 
  
    
  А куда ентот -1 в  Descendants вставить? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 14.01.2003, 13:48 
 | 
|||
|---|---|---|---|
  
  | 
|||
Использование Descendants  | 
|||
| 
 #18+ 
  
    
  И что меня удивляет, так то что судя по примеру в BOL, After должен был выдать именно члены предыдущие иерархии, а не всех ниже вложенных. Example (из BOL) Assume the levels in the Location dimension are named (in hierarchical order) Countries, States, Counties, and Cities. Expression Returns Descendants(USA) - All states, counties and cities in USA Descendants(USA, Counties) - All counties in USA Descendants(USA, Counties, SELF) - All counties in USA Descendants(USA, Counties, BEFORE) - All states in USA Descendants(USA, Counties, AFTER) - All cities in USA ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 15.01.2003, 07:34 
 | 
|||
|---|---|---|---|
Использование Descendants  | 
|||
| 
 #18+ 
  
    
  Descendants([Товары_иерархия].currentmember,,LEAVES) Ирина ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights P.S. Остальное пока не получается - работы много. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
  | 

start [/forum/topic.php?fid=49&tablet=1&tid=1873590]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    12ms | 
check forum access:  | 
    3ms | 
check topic access:  | 
    3ms | 
track hit:  | 
    44ms | 
get topic data:  | 
    13ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    69ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 11ms | 
| total: | 169ms | 

    | 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...