Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
У меня есть вычисляемый член IsAvaiable - 1 (есть в наличии), 0 (товара нет в наличии). Создаю еще один вычисляемый член IsAvaiableSum (сумма дней, когда товар был в наличии): Код: plaintext 1. И собственно вопрос. Когда я выбираю на клиенте целый месяц сумма считается нормально. Когда выбираю только несколько дней из месяца, все равно сумма считается на целый месяц. А можно как-то сделать, чтобы если на клиенте ставить фильтр на конкретные дни, то сумма также считалась на эти конкретные дни? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 12:57 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
А клиет кто? Вы MDX-запрос смотрел, что серверу посылается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 15:51 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Клиент Excel 2002. Сорри, но как его посмотреть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 18:48 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Найдите файлик [имя источника].oqy Его содержимое будет вида. QueryType=OLEDB Version=1 CommandType=Cube Connection=Provider=MSOLAP.2;Data Source=[server];Initial Catalog=[database]; Log File=c:\excelolaplog.txt; Client Cache Size=25;Auto Synch Period=10000 CommandText=[cube] вставьте в свой файл параметр Log File и занимайтесь изучением MDX :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2004, 19:42 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Изучение MDX - это конечно хорошо, но можно немного изменить суть вопроса. Можно ли как то на сервере при задании формулы для Calculated Member (который занимается допустим суммированием каких -то значений нижних членов иерархии) задать учитывать ли фильтр, который установлен в Excel или нет? Тоесть допустим если у меня есть Calculated Member, который показывает 1, если товар есть и 0 - если его нет для дня. Могу ли я задать два разных Calculated Member, один из которых учитывает фильтр на клиенте, а другой нет? Тоесть если товар был в налиичии 20 дней в месяце и я выбрал в фильтре 2 из этих дней, то один из мемберсов покажет 2, а второй все равно 20. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2004, 19:24 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
На сколько я понимаю, сервер не знает что там выбранно у клиента и ему это ни как нельзя передать. Все эти вещи делаются MDX запросами, которые генерит клиент. А вот как он генерит запросы - это уже основная "фишка" клиентов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 10:40 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Maxim - не могли бы Вы пояснить пару вещей 1. Почему у DESCENDANDS используется BEFORE_AND_AFTER флаг ? Не будет ли это создавать ситуацию при которой IsAvailable считается больше одного раза ? 2. А как собственно определено IsAvailable ? Выбор нескольких элементов в Excel (как впрочем и в OWC и во всех остальных client tools с которыми я знаком) создает calculated member на измерении Time_Dim, на самом верхнем уровне, с выражением Aggregate( <days> ). Если выражение для IsAvailable дистрибутивно, то не должно быть проблем сделать его так чтобы оно заработало в этой ситуации. Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 11:23 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
2Mosha: 1. Сейчас я немного изменил выражения, итак у меня есть следующие Calculated members: а) Остаток товара [Rest]: Код: plaintext где ChangeRest = Приход - Расход б) Кол-во дней когда товар был в наличии [IsAvailableSum]: Код: plaintext 2. Так вот, я хочу, чтобы IsAvailableSum считался с учетом фильтра, т.е. на произвольные периоды. Это возможно? Может его можно как то считать по этому создаваему Calculated Member'у? P.S. Может можно где-то подробнее почитать про работу клиента при выборе нескольких элементов. Просто я ничего не нашел :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 12:27 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
И а) и б) выглядят правильно. Теперь вопрос в их использвании. Не могли бы вы привести то, что посылает Excel к OLAP? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 12:42 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Не ну я могу конечно, но Вы уж не обесудьте. Итак я ставлю отбор в екселе - только 1 сентября 2003 года. На сервер посылается следующий запрос: Код: plaintext В результате получаем, что итоги по IncomeCnt (обычное измерение) считаются с учетом фильтра, а итоги по IsAvailableSum считаются без его учета: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 13:35 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Создаем промежуточный CalculatedMember Trigger: Код: plaintext Создаем CalculatedMember IsAvailable Код: plaintext Как такой вариант отрабатывает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 14:27 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Кстати, по ходу обсуждения... 1. Возможно вместо формулы Код: plaintext Код: plaintext 2. Для расчета остатков вместо PeriodsToDate, пожалуй, оптимальнее будут такие формулы а) для начальных остатков Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 14:36 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Maxim TereschenkoНе ну я могу конечно, но Вы уж не обесудьте. Итак я ставлю отбор в екселе - только 1 сентября 2003 года. На сервер посылается следующий запрос: .... В результате получаем, что итоги по IncomeCnt (обычное измерение) считаются с учетом фильтра, а итоги по IsAvailableSum считаются без его учета: Вы бы хотя бы потрудились запросик отформатировать, чтобы те кто может вам помочь, могли его прочитать. Хотя бы так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. Как видно из запроса, итоговые суммы нигде не считаются. Что выдает зарос, если его выполнить в MDX Sample Application. Хотелось бы видеть этот результат. У меня также подозрение на SOLVE_ORDER P.S. Да, интересно, кто писал генератор запросов MDX для OWC наверное не особо мудрствовал, а потом мы удивляемся, почему OWC так кисло работает на мало мальски серъезных вещах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 15:13 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
2backfire: Прошу прощения на счет запроса. Впредь буду форматировать. 1. Выполнил запрос в MDX Sample Application и получил потрясающий результат - фильтр при расчете итогов не учитывается ни у IncomeCNT, ни у IsAvaiableSum. Почему же тогда Excel показывает другие результаты для IncomeCNT? 2. Solve Order лучше выставить по порядку? Сейчас он стоит везде по нулям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 17:04 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Maxim1. Выполнил запрос в MDX Sample Application и получил потрясающий результат - фильтр при расчете итогов не учитывается ни у IncomeCNT, ни у IsAvaiableSum. Почему же тогда Excel показывает другие результаты для IncomeCNT? Вопросы к разработчикам OWC. Maxim2. Solve Order лучше выставить по порядку? Сейчас он стоит везде по нулям. Надо поставить так оно должно по логике быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 17:29 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
ОК, ситуяция прояснилась. Максим имел в виду не multi-member slicing как я в начале подумал, а выбор нескольких елементов на axis. Maxim1. Выполнил запрос в MDX Sample Application и получил потрясающий результат - фильтр при расчете итогов не учитывается ни у IncomeCNT, ни у IsAvaiableSum. Почему же тогда Excel показывает другие результаты для IncomeCNT? Excel работает в так называемом режиме Visual Totals, т.е. он показывает аггрегацию по видимым елементам. В OWC можно включать и выключать режим Visual Totals, а в Excel я не уверен что это возможно. Maxim2. Solve Order лучше выставить по порядку? Сейчас он стоит везде по нулям. Поменять SOLVE_ORDER режима Visual Totals невозможно, он всегда самый маленький, т.е. операция выполняется как самая вложенная. Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2004, 20:40 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
2 Mosha: Я так понял, что режим Visual Totals работает только для Measures. А можно его как-то заставить работать для Calculated Members? Если нет, тогда я вообще не понимаю, как считать итоги по вычислимым членам по произвольным периодам. Это же вполне распространенная задача. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2004, 11:38 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
MaximЯ так понял, что режим Visual Totals работает только для Measures. А можно его как-то заставить работать для Calculated Members? В упрощенном обьяснении, режим VisualTotals работает так: Допустим, что есть member P с сыновьями A,B,C,D. В нормальном режиме, P вычисляется по формуле P=Aggregate({A,B,C,D}). В режиме VisualTotals, формула для P зависит от формы запроса. Например, при запросе SELECT {P, A, C} on 0 from Sales P будет вычисятся по формуле P=Aggregate({A,C}). Поскольку calculated members имеют свои собственные формулы, а не implied Aggregate, то режим VisualTotals к ним не особенно применим (т.е. применим только косвенно, если они ссылаются на P). Поскольку в Вашем случае IsAvailable является calculated member, то я могу предложить вместо этого воспользоваться cell calculation. Они будут аггрегироваться как Вам надо, и к ним режим VisualTotals применим. Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 02:23 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
2 Mosha Знаете, меня иногда посещает одна мысль... Возможно, даже "чайниковская". :-) А возможно ли теоретически сделать (пусть в будущих версиях), нечто среднее между физической Measure и Calculated Member? Ну что-то вроде "Calculated Measure"? Поясню: хотелось бы иметь вычисляемый показатель (вся полнота MDX в действии), который, тем не менее, мог бы агрегироваться. Как полагаете, такое возможно? Имеет ли смысл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 09:41 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
LordOfSilenceА возможно ли теоретически сделать (пусть в будущих версиях), нечто среднее между физической Measure и Calculated Member? Ну что-то вроде "Calculated Measure"? Поясню: хотелось бы иметь вычисляемый показатель (вся полнота MDX в действии), который, тем не менее, мог бы агрегироваться. Как полагаете, такое возможно? Мне кажется это уже возможно при помощи Custom Rollup, Custom Member Formula и в самом общем случае при помощи Cell Calculations. Или я неправильно понял вопрос ? Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 11:27 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
МошаИли я неправильно понял вопрос ? Хм... Затрудняюсь даже сказать. Может это я не совсем корректно обозначил проблему. Попробую чуточку раскрыть. В общем-то ноги вопроса растут из этого топика. Если не затруднит, обратите, пожалуйста, на него внимание. У меня есть подозрение (возможно, беспочвенное), что если бы была возможность агрегировать (а не вычислять на лету) показатели остатка и товарного запаса (суммарного по времени остатка), то производительность подобных вычислений была бы повыше. Или я не прав? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 12:10 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
2 LordOfSilence: Я так понял, Вы хотите Calculated Member, который будет рассчитываться при процессинге куба и результаты которого будут храниться в многомерной базе, а не вычисляться на лету. Правильно? Если да, то я тоже очень часто задумываюсь о нехватке такой возможности. 2Mosha: Спасибо, с помощью Calculated Cells действительно удалось решить проблему. Я сделал следующим образом: создал measure по "левому" полю с агрегацией суммирование. Потом с помощью Calculated Cell "подменил" значения данного measure для листьев измерения времени на IIF([Rest]>0,1,NULL). Visual Totals заработал! Но, мне показался такой поход каким-то извращенным, или я не прав? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 15:49 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
2 Maxim Tereschenko Да, Вы правильно поняли. :-) Приятно встретить единомышленника. ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 16:01 |
|
||
|
Почему не учитывается фильтр?
|
|||
|---|---|---|---|
|
#18+
Я так понял, Вы хотите Calculated Member, который будет рассчитываться при процессинге куба и результаты которого будут храниться в многомерной базе, а не вычисляться на лету. Правильно? Если да, то я тоже очень часто задумываюсь о нехватке такой возможности Спасибо, я теперь понял что Вы имеете в виду. Привожу цитату из публичного описания Юкона http://www.microsoft.com/technet/prodtechnol/sql/yukon/evaluate/dwsqlsy.mspx : YukonA calculation can be cached: The CACHE keyword indicates that the result of the script calculation should be stored on disk, rather than computed at run-time. Cached calculations enable very high performance for queries on large cubes that contain a lot of complex calculations Сразу оговорюсь что не все так просто. Caching неаддитивных вычислений - задача гораздо более сложная чем caching аддитивных или семиаддитивных вычислений. Но подробности про Юкон на сегодняшний день - только для участников Беты :( Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2004, 22:20 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32565004&tid=1872501]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
80ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 280ms |
| total: | 459ms |

| 0 / 0 |
