Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Нужен пример асинхронного запроса к olap кубу. adodb,cellset - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Нужен пример асинхронного запроса к olap кубу. adodb,cellset (Макросы/Sub)
Нужен пример асинхронного запроса к olap кубу. adodb,cellset
excelhelprus Дата: Вторник, 18.07.2017, 18:24 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 63
Репутация: 5 ±
Замечаний: 20% ±

2015
Добрый день. суть в названии.
Кто работал с olap и знает как запустить асинхронный запрос?
Пробовал читать справку Microsoft, но разобраться не удалось.
Ссылка на справку:
https://docs.microsoft.com/en-us....cordset

пример кода:
[vba]
Код

Set cn = CreateObject("ADODB.Connection")
        cn.ConnectionString = _
        "provider=msolap;" & _
        "persist security info=true;" & _
        "user id=;" & _
        "data source=" & Connection & ";" & _
        "initial catalog=" & Catalog
       
    iSync = adConnectUnspecified: If ASync = True Then iSync = adAsyncConnect

    cn.Open 'cn.ConnectionString, , , iSync
    Set cs = CreateObject("ADOMD.Cellset")
    cs.ActiveConnection = cn
    cs.Source = Mdx
    cs.Open
[/vba]
Насколько я понял, если adomd cellset открываем - то тут нельзя асинхронность использовать.
Но надо.


Сообщение отредактировал excelhelprus - Среда, 19.07.2017, 15:14
 
Ответить
СообщениеДобрый день. суть в названии.
Кто работал с olap и знает как запустить асинхронный запрос?
Пробовал читать справку Microsoft, но разобраться не удалось.
Ссылка на справку:
https://docs.microsoft.com/en-us....cordset

пример кода:
[vba]
Код

Set cn = CreateObject("ADODB.Connection")
        cn.ConnectionString = _
        "provider=msolap;" & _
        "persist security info=true;" & _
        "user id=;" & _
        "data source=" & Connection & ";" & _
        "initial catalog=" & Catalog
       
    iSync = adConnectUnspecified: If ASync = True Then iSync = adAsyncConnect

    cn.Open 'cn.ConnectionString, , , iSync
    Set cs = CreateObject("ADOMD.Cellset")
    cs.ActiveConnection = cn
    cs.Source = Mdx
    cs.Open
[/vba]
Насколько я понял, если adomd cellset открываем - то тут нельзя асинхронность использовать.
Но надо.

Автор - excelhelprus
Дата добавления - 18.07.2017 в 18:24
excelhelprus Дата: Среда, 19.07.2017, 15:18 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 63
Репутация: 5 ±
Замечаний: 20% ±

2015
Пришел к следующему:
[vba]
Код

Dim cn As New ADODB.Connection: Dim cs As New ADODB.Recordset
iSync = adConnectUnspecified: If ASync = True Then iSync = adAsyncConnect
    cn.Open "provider=msolap;" & _
        "persist security info=true;" & _
        "user id=;" & _
        "data source=" & Connection & ";" & _
        "initial catalog=" & Catalog, , , iSync 'тут получилось запустить асинхронность, но как с этим работать я не понял
    Do While cn.State = 2
        DoEvents
    Loop
    cs.Open Mdx, cn 'это место все равно ждет, пока вернет ответ на mdx запрос. не хочет дальше без этого ни в какую.
    
    Get_response = Vivesti_V_massiv(cs)
[/vba]
 
Ответить
СообщениеПришел к следующему:
[vba]
Код

Dim cn As New ADODB.Connection: Dim cs As New ADODB.Recordset
iSync = adConnectUnspecified: If ASync = True Then iSync = adAsyncConnect
    cn.Open "provider=msolap;" & _
        "persist security info=true;" & _
        "user id=;" & _
        "data source=" & Connection & ";" & _
        "initial catalog=" & Catalog, , , iSync 'тут получилось запустить асинхронность, но как с этим работать я не понял
    Do While cn.State = 2
        DoEvents
    Loop
    cs.Open Mdx, cn 'это место все равно ждет, пока вернет ответ на mdx запрос. не хочет дальше без этого ни в какую.
    
    Get_response = Vivesti_V_massiv(cs)
[/vba]

Автор - excelhelprus
Дата добавления - 19.07.2017 в 15:18
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Нужен пример асинхронного запроса к olap кубу. adodb,cellset (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!