зависает клиент при работе с Odbcconnection.

Тема в разделе "Lotus - Программирование", создана пользователем Реник, 21 окт 2010.

  1. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    Добрый день всем.!

    Возникла следующая проблема:

    На кнопку повесил код, который запускает RunOnserver агента, который должен соединяться с SQL-таблицей.

    На сервере, где должен запускаться агент настроил ODBC- драйвер для коннекции к таблице. Проверил коннекцию-соединение есть.

    Когда нажимаю на кнопку, то клиент польность зависает. Вот код агента :

    зависает нас строке "Call con.ConnectTo( sdatasource, suserid, spasswd)"

    Dim con As New ODBCConnection
    Dim sdatasource As String, suserid As String, spasswd As String

    Msgbox "Агент стартовал: GetBPInfo FromSQL"
    Set qry = New ODBCQuery
    Set result = New ODBCResultSet
    Set qry.Connection = con
    Set result.Query = qry
    sdatasource="Datasource"
    suserid="user1"
    spasswd="password"
    Msgbox "Коннектимся к таблице"
    Call con.ConnectTo( sdatasource, suserid, spasswd)
    Msgbox "Коннект есть"
    If Not con.ConnectTo("BP_Info") Then
    Msgbox "Не удалось подключиться к SQL-таблице"
    Else
    Msgbox "Подключение удалось"
    End If

    call con.Disconnect
     
  2. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Что в логе?
     
  3. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    В логе лотусового сервера : "Коннект есть".

    Больше ничего по поводу этого агента нет.
     
  4. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Это как? Если в логе "Коннект есть"

     
  5. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Вполне возможно, что зависание вызвано выводом диалогового окна, которого Вы не видите и не можете на него отреагировать (запрос пароля, информация об ошибке и т.п.)
     
  6. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    тогда как мне избавиться от этого окна?
     
  7. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Возможно, в этой строке не хватает логина/пароля.
     
  8. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    odbcCon.SilentMode = True
    If Not odbcCon.connectto( sdatasource, suserid, spasswd) Then

    так поставил
    всё равно виснет. Может быть сервер мне презагрузить?
     
  9. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Из справки про odbcConnection.SilentMode:
    Гуглоперевод:
     
  10. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0

    Вот что выяснил:

    если ставить агента по расписанию, то он отрабатывает без проблем.

    Если делать его RunOnServer, то зависает клиент
     
  11. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.079
    Симпатии:
    300
    на сервере пущать ОДБЦ - этакрута :)
     
  12. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    А что не так?
     
  13. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    А агент-то отрабатывает? Что в логе в первом и втором случае?
     
  14. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0

    если агент запускать по расписанию, то он отрабатывает до конца. Буквально за несколько секунд

    Если агент запускать по кнопке (RunOnServer) : то последнее сообщение в логе сервера "Коннектимся к таблице".
     
  15. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Да, кстати, а у агента какие параметры безопасности установлены? И есть ли нужные права у пользователя?
     
  16. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    агент могут запускать все пользователи.
     
  17. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Что-то не уверен. Судя по
    проблема в настройках безопасности агента и правах пользователей. Может попробовать толкать агента на сервере другим серверным агентом, подписанным сервером и от имени сервера (Run on behalf of)?
     
  18. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.079
    Симпатии:
    300
    не так - секурити о кот. грили выше, настройка под систем DSN, траблы по памяти (кот. могут уронить сервак), интреактивные окошки - кот. есть абсурд для сервера (а они могут выпрыгивать, вне зависимости от желаний)
     
  19. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    победил я эту траблу сам.

    У меня была реплика этой базы на другом серваке, я на нём настроил одбц и всё заработало))
     
  20. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.079
    Симпатии:
    300
    ждём визитов из серии:"а почему у меня сервер падает" ;)
     
Загрузка...
Похожие Темы - зависает клиент при
  1. k85
    Ответов:
    11
    Просмотров:
    2.335
  2. makaset
    Ответов:
    4
    Просмотров:
    2.611
  3. dimat
    Ответов:
    1
    Просмотров:
    2.066
  4. Bob84
    Ответов:
    4
    Просмотров:
    1.122
  5. XiNoID
    Ответов:
    13
    Просмотров:
    3.049

Поделиться этой страницей