#APS Lab.  //Форумы
rus eng

Помощь | Пишите
Поиск
Регистрация | Вход


Информация
 
- О компании
- Новости
- Ссылки
- Цены

Продукты
 
- Phone Xpress

Описание
Возможности
Цена
Скриншоты
FAQ
Документация
Закачка

Поддержка
 
- Обратная связь
- Закачка
- FAQ
- Форумы
- Авторизация
- Регистрация
- Карта сайта

/* Форумы
*/

  • Перейти к списку тем
  • Перейти к списку форумов
  • Создать новую тему
  • Ответить
  • >>>

    Phone Xpress и Oracle Автор: evgen 
    22.07.2005 08:53

    Подскажите плз пытаюсь настроить подключение через ODBC драйвер (Oracle ODBC Driver), с ORACLE сервером (версия сервера и клиента 8.1.7), таблицы создались нормально, но при попытке просмотреть звонки через Анализатор выдается ошибка: 42000:[Oracle][ODBC]Syntax error or access violation.
    Еще заметил, что после инсталляции регионов только Украина отображается нормально в таблице, остальные начинаются с символа @ и далее набор латинских букв (это таблица regions). Это так и должно быть?
    С использованием FireBird сервера программа работает нормально.
    Цитата


    Re: Phone Xpress и Oracle Автор: Pavel Matvienko 
    22.07.2005 13:57

    Добрый день!

    > evgen (22.07.05 08:53):
    >
    > Подскажите плз пытаюсь настроить подключение через ODBC
    > драйвер (Oracle ODBC Driver), с ORACLE сервером (версия
    > сервера и клиента 8.1.7), таблицы создались нормально, но при
    > попытке просмотреть звонки через Анализатор выдается ошибка:
    > 42000:[Oracle][ODBC]Syntax error or access violation.
    > Еще заметил, что после инсталляции регионов только Украина
    > отображается нормально в таблице, остальные начинаются с
    > символа @ и далее набор латинских букв (это таблица regions).
    > Это так и должно быть?
    > С использованием FireBird сервера программа работает нормально.

    Если смотреть данные средствами Оракла, то это нормально. Данные по регионам зашифрованы, Администратор и Анализатор нормально их увидит. Ошибка на Оракле 8 вполне возможна, нестыковка синтаксиса. Можем проверить только на 9ом. Но можем исправить баг и с восьмым. Пришлите нам заархивированные логи сервера (лежат в папке Logs каталога инсталляции программы). Но лучше сначала включите из Администратора в насройках Сервера полную детализацию ведения логов. Потом повтороите ошибку и пришлите логи. Там явно затык в синтаксисе SQL при выборке звонков или отчетах.
    Цитата


    Re: Re: Phone Xpress и Oracle Автор: evgen 
    25.07.2005 05:23

    Проблема похоже действительно в синтаксисе. Запрос из под Администратора не работает:
    select l.*,o.oper_name,group_name from {oj {oj extlines l left outer join operators o on l.oper_id=o.oper_id} left outer join groups g on l.group_id=g.group_id} where l.deleted=0 and l.pbx_id=2
    Под Анализатором:
    select pbx_id,p.reg_code_id,rc.region_id,country_id from {oj {oj pbx p left outer join reg_codes rc on p.reg_code_id=rc.reg_code_id} left outer join regions r on rc.region_id=r.region_id} order by pbx_id
    Где ошибка пока не разобрался.
    Логи на адрес поддержки отправил...
    Цитата


    Re: Re: Re: Phone Xpress и Oracle Автор: Pavel Matvienko 
    25.07.2005 18:05

    Добрый день!

    > Проблема похоже действительно в синтаксисе. Запрос из под
    > Администратора не работает:
    > select l.*,o.oper_name,group_name from {oj {oj extlines l
    > left outer join operators o on l.oper_id=o.oper_id} left
    > outer join groups g on l.group_id=g.group_id} where
    > l.deleted=0 and l.pbx_id=2
    > Под Анализатором:
    > select pbx_id,p.reg_code_id,rc.region_id,country_id from {oj
    > {oj pbx p left outer join reg_codes rc on
    > p.reg_code_id=rc.reg_code_id} left outer join regions r on
    > rc.region_id=r.region_id} order by pbx_id
    > Где ошибка пока не разобрался.
    > Логи на адрес поддержки отправил...


    Логи получили. Проблема в том что Оракл до 9 версии не совсем поддерживал стандарт SQL92, если это вам о чемто говорит. Это ближе уже к программированию и написанию SQL запросов. Если вы программист, то вы меня поймете :) В каратце в этих двух запросах идет объединение 2х таблиц, как "левое" присоединение. Т.е. если во второй таблице нету значений соответствующих первой, то нужно проставить пустое значение. За это отвечает консткукция "left outer join groups g on l.group_id=g.group_id". 8 Оракл не понимает конструкций с "left outer join". В нем используется для левого объединения знак "+", т.е. выглядеть должно так "l.group_id(+)=g.group_id". Попробуем исправить в новом релизе в начале августа, все не так просто. так как код SQL запросов должен работать и с другими SQL серверами, а так же с 9-ой версией Оракла.
    Цитата


    Re: Re: Re: Re: Phone Xpress и Oracle Автор: evgen 
    26.07.2005 13:57

    Для нашей организации желательно чтобы ваш продукт работал под 8-м ораклом, он у нас более распространен. Очень надеюсь, что Вам удастся побороть проблему с ситаксисом SQL для 8-ки в указанные вами сроки.
    9-й oracle тоже используется у нас в организации (как тестовый) - попробую протестироваться на нем.
    Еще не понравилось, что при создании базы выскакивает запрос, что база содержит такие-то таблицы, использовать ее? Это несколько пугающее сообщение. По идее он должен делать select объектов используемой схемы, а не всей базы.
    Цитата


    Re: Re: Re: Re: Re: Phone Xpress и Oracle Автор: Pavel Matvienko 
    26.07.2005 14:30

    Добрый день!

    > Для нашей организации желательно чтобы ваш продукт работал
    > под 8-м ораклом, он у нас более распространен. Очень надеюсь,
    > что Вам удастся побороть проблему с ситаксисом SQL для 8-ки в
    > указанные вами сроки.

    Постараемся.

    > 9-й oracle тоже используется у нас в организации (как
    > тестовый) - попробую протестироваться на нем.
    > Еще не понравилось, что при создании базы выскакивает запрос,
    > что база содержит такие-то таблицы, использовать ее? Это
    > несколько пугающее сообщение. По идее он должен делать select
    > объектов используемой схемы, а не всей базы.

    Потестируйте с 9-м Ораклом. Там тоже могут быть проблемки... Просто через ODBC драйвер очень тяжело работать со схемами, так как это используется только в Оракле. В остальных базах такого нету... Способ подключения через ODBC к базам данных был выбран для унификаци и использования как можно большего перечня SQL серверов. Поэтому в запросах используется только самый простой набор команд SQL, который поддерживается практически всеми БД, но есть исключения... Только в более последних версиях разработчики подтянули свои SQL сервера к стандарту SQL92... Поэтому и есть проблемы в работе с различными серверами. Возможности гуляют еще и от ODBC драйвера к драйверу. кто и как его написал и т.д. Так что проблем хватает.
    Цитата


    Re: Re: Re: Re: Re: Re: Phone Xpress и Oracle Автор: evgen 
    27.07.2005 06:15

    Ошибка та же и на 9-м oracle. Похоже проблема в использовании конструкции с join. Как сказал наш гуру в oracle, она в 9-м oracle хоть и присутствует, но синтаксис вашего запроса соответствует MSSQL, а не oracle. Под oracle же (любым, 8-м или 9-м) работает например такой запрос:
    SELECT pbx_id, p.reg_code_id, rc.region_id, country_id
    FROM pbx p, reg_codes rc, regions r
    WHERE p.reg_code_id(+) = rc.reg_code_id AND rc.region_id(+) = r.region_id
    ORDER BY pbx_id

    Правильно ли переписан ваш запрос?
    select pbx_id,p.reg_code_id,rc.region_id,country_id from {oj {oj pbx p left outer join reg_codes rc on p.reg_code_id=rc.reg_code_id} left outer join regions r on rc.region_id=r.region_id} order by pbx_id

    Если у Вас есть 9-й oracle просьба проверить работу программы на нем и посмотреть, появится ли подобная ошибка.
    Цитата


    Re: Re: Re: Re: Re: Re: Re: Phone Xpress и Oracle Автор: Pavel Matvienko 
    27.07.2005 18:20

    Добрый день!

    > Ошибка та же и на 9-м oracle. Похоже проблема в использовании
    > конструкции с join. Как сказал наш гуру в oracle, она в 9-м
    > oracle хоть и присутствует, но синтаксис вашего запроса
    > соответствует MSSQL, а не oracle. Под oracle же (любым, 8-м
    > или 9-м) работает например такой запрос:
    > SELECT pbx_id, p.reg_code_id, rc.region_id, country_id
    > FROM pbx p, reg_codes rc, regions r
    > WHERE p.reg_code_id(+) = rc.reg_code_id AND
    > rc.region_id(+) = r.region_id
    > ORDER BY pbx_id
    >
    > Правильно ли переписан ваш запрос?
    > select pbx_id,p.reg_code_id,rc.region_id,country_id from {oj
    > {oj pbx p left outer join reg_codes rc on
    > p.reg_code_id=rc.reg_code_id} left outer join regions r on
    > rc.region_id=r.region_id} order by pbx_id
    >
    > Если у Вас есть 9-й oracle просьба проверить работу программы
    > на нем и посмотреть, появится ли подобная ошибка.

    Да, вы верно переписали запрос, не дотянул Оракл и в 9ой версии свой сервак до SQL92. Мы включим исправление в ближайшую версию программы.
    Цитата


    Re: Re: Re: Re: Re: Re: Re: Re: Phone Xpress и Oracle Автор: Pavel Matvienko 
    01.08.2005 17:32

    Добрый день!

    > > Если у Вас есть 9-й oracle просьба проверить работу
    > программы
    > > на нем и посмотреть, появится ли подобная ошибка.

    При попытке быстро решить даную проблему появились непредвиденные сложности. В общем быстро решить данную проблему нельзя, так как перестает все работать на MySQL. Нужно внедрять в программу контроль типа SQL сервера, а быстро и правильно это сделать не получится. Локализуем эту проблему до конца августа. Сорри...
    Цитата


    проблема с Ораклом решена Автор: APS Lab. 
    05.09.2005 19:27

    Проблема при работе с Ораклом решена в версиях старше 1.0.167 RC3.
    Цитата



    Ответить

     Ваше Имя:
     Ваш Email:
     Тема:
    Отправлять по Email ответы на данную тему по указанному выше адресу.
       





    © Copyright 2001-2008 #APS. All rights reserved.
    © Developed by NewAgeLab.com

    bigmir)net TOP 100