Переключение на Главную Страницу Страницы: 1 2 3 [4] 5 6 7 ОтправитьПечать
Очень популярная тема (более 25 ответов) Запросы для OLAP (число прочтений - 42711 )
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #45 - 30. Ноября 2006 :: 12:13
Печать  
steban писал(а) 30. Ноября 2006 :: 11:59:
"C:\Program Files\Common Files\Microsoft Shared\Web Components\11\1049\OWCVBA11.CHM"

http://msdn2.microsoft.com/en-us/library/aa207546(office.11).aspx

О! Хорошая штука!
P.S. Только у неё один минус есть (для меня): она на Англицком...

А ссылку ты потом добавил, поэтому сначала не узрел. То что надо.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #46 - 30. Ноября 2006 :: 12:54
Печать  
Наконец-то нашёл ссылку на книгу по ОЛАП на русском!  Очень довольный
Теперь будет чем заняться на выходных.  Подмигивание
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #47 - 19. Декабря 2006 :: 13:16
Печать  
Вот в этой книжке вычитал про компонент ChartSpace (графики, диаграммы). Да, я построил его для своего куба. Теперь хочется, чтобы объект класса ChartSpace менялся синхронно с объектом класса PivotTable, который расположен "здесь же".
В книге написано, что это просто сделать:
Цитата:
Следующий этап создания диаграммы заключается в выборе источника данных для
построения. В нашем случае это будет уже имеющийся компонент PivotTable List (см. прикреплённый файл)

Млин, а програмно как-нить можно установить такую "КоннекшнСтринг"? Я бы сам посмотрел во ФронтПадже чё он там делает, но за неимением последнего спрашиваю здесь. Возможно ли? Или это только в веб?

Вот если ещё вот это вот прикрутить, то практически идеальная подсистемка анализа продаж получится.
  

chart.JPG ( 22 KB | Загрузки )
chart.JPG
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #48 - 20. Декабря 2006 :: 10:20
Печать  
Отвечаю сам (после долгих изысканий).
Чтобы сделать их синхронными, достаточно атребут "DataSource" объекта ChartSpace установить в нужный вам объект класса PivotTable. Вот как это выглядит у меня:
Код
Выбрать все
	//создаем график
	Диаграмма=СоздатьОбъект("АктивИкс");
	гРФорма.ПолучитьАтрибут("фГрафик").СоздатьЭлементУправления(Диаграмма);
	Диаграмма.СоздатьЭУ("OWC11.ChartSpace");

	Диаграмма.Объект.DataSource = Сводная.Объект;
 



П.С. Здесь "Сводная" - это "OWC11.PivotTable"

Теперь у меня такая загвоздка. Не могу установить нужный мне тип диаграммы. Вот такой вот код:
Код
Выбрать все
ChartSpace1.Charts(0).Type = chChartTypeBar3D 


в VB отрабатывается нормально.
Пытаюсь переложить тоже самое в 1С, делаю вот так:
Код
Выбрать все
	Scr=СоздатьОбъект("MSScriptControl.ScriptControl");
	scr.Language="vbscript";
	   scr.AddObject("ch1", Диаграмма.Объект);
	Scr.ExecuteStatement("ch1.Charts(0).Type = chChartTypeAreaOverlapped3D"); 


Но, почему-то тип диаграммы не меняется. Подскажите, пжлст, как это сделать.
  
Наверх
 
IP записан
 
Славко
Senior Member
****
Отсутствует



Сообщений: 467
Местоположение: Украина, г. Днепропетровск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #49 - 20. Декабря 2006 :: 10:38
Печать  
предупреждаю сразу, с OLAP не знаком вообще, так что могу ступить, но используя общий принцип, может в MSDN посмотреть значение chChartTypeAreaOverlapped3D, которое к примеру может быть 3, и тогда:
Код
Выбрать все
	Scr=СоздатьОбъект("MSScriptControl.ScriptControl");
	scr.Language="vbscript";
	   scr.AddObject("ch1", Диаграмма.Объект);
	Scr.ExecuteStatement("ch1.Charts(0).Type = 3");  


  

Ламер, самый обычный ламер...    сначала мы ...   а потом мы ...
Наверх
wwwICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #50 - 20. Декабря 2006 :: 11:01
Печать  
Нет, не канает.  Нерешительный
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #51 - 20. Декабря 2006 :: 12:35
Печать  
JohnyDeath писал(а) 20. Декабря 2006 :: 11:01:
Нет, не канает.  Нерешительный

Дико извиняюсь, всё работает, просто так случилось, что '3' и то что ставилось по умолчанию - одно и то же!

Вот тут нашёл соответствие циферок и констант
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #52 - 21. Декабря 2006 :: 11:30
Печать  
Степан (ну или кто-нибудь, кто хоть немного знает язык этих запросов), возможно ли добавить измерение "КоличествоКлиентов" - характерезующее количество уникальных контрагентов, которым делали отгрузку?
Я чего-то вообще не соображу как это сделать...  Нерешительный

П.С. А синхронное построение таблички и диаграммы СДЕЛАЛ!
+ Возможность интерактивного изменения типа диаграммы
+ Доп. измерения, которые являлись свойствами контрагентов\номенклатуры.
Итог: OLAP - бомба!

П.С.2.
И ещё с печатью немного не понятно. Я не нашёл такого метода ни в PivotTable, ни в ChartSpace.
Но извернутся можно так (из тех методов, которые я обнаружил):
1) Сохраняем(экспортируем\копируем) текущую картинку ChartSpace
2) Экспортируем данные PivotTable в Excel
3) Добавляем в экселевский файл картинку из п.1
4) Печатаем экселевский файл
5) Удаляем (если были сохранены) картинку и экселевский файл.
Мутновато конечно, но жить можно, а вот как быть с "КоличествоКлиентов" ума не приложу
  
Наверх
 
IP записан
 
igorru
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 2
Зарегистрирован: 21. Декабря 2006
Re: Запросы для OLAP
Ответ #53 - 21. Декабря 2006 :: 14:35
Печать  
В первый раз зашел на сайт.
Глаза просто разбегаются !!
Может ступлю но расскажите как юзает Olap конечный пользователь ? как он использует measures и dimensions ?
я так просто гружу данные из 1с  через Ado  или Ole в Sql таблицы, потом обновляю куб
через Analysis Manager (куб естественно уже создан) и потом юзера через клиентов
ProClarity (лучше), Hyperion и Crystal Reports (хуже) работают.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #54 - 21. Декабря 2006 :: 15:11
Печать  
igorru писал(а) 21. Декабря 2006 :: 14:35:
В первый раз зашел на сайт.
Глаза просто разбегаются !!
Может ступлю но расскажите как юзает Olap конечный пользователь ? как он использует measures и dimensions ?
я так просто гружу данные из 1с  через Ado  или Ole в Sql таблицы, потом обновляю куб
через Analysis Manager (куб естественно уже создан) и потом юзера через клиентов
ProClarity (лучше), Hyperion и Crystal Reports (хуже) работают.

А у тебя база 1С ДБФ?
У меня - да. Я делал на основе Степановской обработки. За что ему очередной ОГРОМНЕЙШИЙ респект.

А ты случаем по моему последнему вопросу ничего не скажешь?
  
Наверх
 
IP записан
 
steban
1c++ developer
Отсутствует


#define sizeof(x) rand()

Сообщений: 787
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #55 - 26. Февраля 2007 :: 03:57
Печать  
JohnyDeath писал(а) 30. Ноября 2006 :: 12:54:
Наконец-то нашёл ссылку на книгу по ОЛАП на русском!  Очень довольный

Книга называется "Введение в OLAP". Авторы: Алексей Федоров и Наталия Елманова.
Кстати очень хороший бук именно как "введение".
Ничего нового там не нашел, однако сильно пожалел, что эта книга не попалась мне лет 5 назад.
Там в сжатом виде изложены основы OLAP, необходимые для понимания и некоторые технические подробности о реализации OLAP в Microsoft Analysis Services.
Когда-то эту инфу приходилось добывать по крупицам из разных источников.
  

int getRandomNumber()&&{&&  return 4; //chosen by fair dice roll&&         //guaranteed to be random&&}
Наверх
 
IP записан
 
steban
1c++ developer
Отсутствует


#define sizeof(x) rand()

Сообщений: 787
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #56 - 26. Февраля 2007 :: 04:08
Печать  
JohnyDeath писал(а) 21. Декабря 2006 :: 11:30:
возможно ли добавить измерение "КоличествоКлиентов" - характерезующее количество уникальных контрагентов, которым делали отгрузку?

Скорее всего возможно. Надо курить MDX Reference.
Кстати в OWC.PivotTable можно интерактивно добавлять вычисляемые члены, что очень удобно при отладке.
Когда MDX-выражение для вычисляемого члена отлажено, можно его вставить в определение куба.
  

int getRandomNumber()&&{&&  return 4; //chosen by fair dice roll&&         //guaranteed to be random&&}
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: Запросы для OLAP
Ответ #57 - 26. Февраля 2007 :: 06:10
Печать  
Цитата:
Книга называется "Введение в OLAP". Авторы: Алексей Федоров и Наталия Елманова.

Алексей Федоров aka АЛьФ? Очень довольный
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Запросы для OLAP
Ответ #58 - 18. Сентября 2007 :: 02:43
Печать  
Люди ктонить это сейчас юзает? Посмотрел, нравится, есть два вопроса:
1. Быстродействие - как моожно ускорить отображение
2. печать средствами 1С
  
Наверх
ICQ  
IP записан
 
steban
1c++ developer
Отсутствует


#define sizeof(x) rand()

Сообщений: 787
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запросы для OLAP
Ответ #59 - 18. Сентября 2007 :: 06:05
Печать  
Nick писал(а) 18. Сентября 2007 :: 02:43:
Люди ктонить это сейчас юзает?

Насколько я знаю, до сих пор юзают Улыбка

Nick писал(а) 18. Сентября 2007 :: 02:43:
1. Быстродействие - как можно ускорить отображение

При отображении ничего не должно тормозить. В локальных кубах уже все агрегаты посчитаны. При отображении сводной никаких расчетов не производится. Может быть, в природе существуют и другие ActiveX-компоненты, способные отображать локальные кубы (файлы .cub), может быть даже работают быстрее.

Nick писал(а) 18. Сентября 2007 :: 02:43:
2. печать средствами 1С

Ничего лучше, чем копировать через Clipboard в Excel и оттуда печатать я не придумал.
  

int getRandomNumber()&&{&&  return 4; //chosen by fair dice roll&&         //guaranteed to be random&&}
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 2 3 [4] 5 6 7
ОтправитьПечать