соединение 82 и Оракл #538705


#0 by Evgenchik
Работали на 81. Есть вполне успешно работающая обработка, которая соединяется с базой оракла, забирает оттуда данные и загружает в 1С. Платформа 1С:Предприятие 8.1 (8.1.15.14) Вот такой код успешно работает СтрокаСвязи = "Driver={Microsoft ODBC for Oracle};Data Source="+ИмяБазы+";User ID="+ИмяПользователя+";Password="+Пароль+";"; Теперь надо как то переходить на 82. У вот тут затык. Не срабатывает такое соединение на платформе 1С:Предприятие 8.2 (8.2.13.205) ошибка такая Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for Oracle): ђё  - тут козяблики каждый раз разные Что может быть? подскажите варианты?
#1 by ДенисЧ
TNS похоже не настроены...
#2 by detec
Конфа, разрядность сервера, архитектура базы (файловая, клиент-серверная)?
#3 by Evgenchik
у себя на компе пока тестирую, файловая база, винда XP, конфа бухгалтерия  - но это не важно. мне надо будет использовать эту обработку в разных конфигурациях.
#4 by detec
Похоже, что не настроен или неверно настроен клиент Оракла. Почему не пользуетесь родным оракловым клиентом?
#5 by Evgenchik
клиент Оракла грят, что у нас 8й. надо поставит 10 и попробовать. как им пользоваться? там другая стрка подключения чтоли?
#6 by ДенисЧ
ну да, другая... У меня через клиента так идёт
#7 by Evgenchik
а, ну этот вариант я тоже пробовал. ошибка та же видимо все таки клиента помучать надо
#8 by ДенисЧ
для начала клиента настрой, сделай odbc-соедниение, его настрой и проверь...
#9 by Evgenchik
снес все старые клиенты. поставил 10го. теперь уже не работает и на 81 :( odbc- соединение не получается сделать, в TNS Service Name выпадают какие то левые имена (MZђ, rsrc), а должно я так понимаю подхватываться из файлика tnsnames.ora
#10 by ДенисЧ
переменные окружения прописал?
#11 by Evgenchik
нет, это где и как ?
#12 by ДенисЧ
как минимум TNS_Admin с путём до папки с tnsnames.ora И каталог клиента в PATH вставить... А как - мой компьютер - свойства - дополнительно - переменные окружения...
#13 by Evgenchik
как минимум TNS_Admin с путём до папки с tnsnames.ora TNS_Admin - это где такое? пути прописаны, может в реестре где еще подпраивить надо?
#14 by ДенисЧ
TNA_Admin - это имя переменной окружения... ЗЫ. Вот и выросло поколение, не знающее о переменных...
#15 by Evgenchik
да знаю я про переменные.. просто 1С мозг разъело :)
#16 by Evgenchik
ладно, завтра еще попытаю
#17 by Evgenchik
подниму ветку... значит так. вроде настроили 10го клиента. через odbc соединяется нормально, через 81 соединяется нормально. Через 82 упорно не хочет. вот ошибка {Форма.Форма.Форма}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for Oracle): ORA-12154: TNS:could not resolve the connect identifier specified я так понимаю, что система не принимает имя TNS. Откуда соединение берет имя? может в реестре где посмотреть?
#18 by ДенисЧ
соединение берёт имя из строки соединения. Потом лезет за ним в tnsnames.ora
#19 by Evgenchik
пробую так: Ошибка: (Microsoft OLE DB Provider for Oracle): ORA-12737: Instant Client Light: unsupported server character set %s
#20 by detec
Я бы сходил на сайт типа connectionstrings, там наверняка можно будет подобрать рабочий вариант строки соединения с каким-нибудь из клиентов.
#21 by Evgenchik
я бы хотел узнать где 1с82 ищет файлик tnsnames.ora причем 1с81 этот файлик находит
#22 by ДенисЧ
там же ищет. В переменных окружения. Под кем запущена 81 и 82? Разрядность?
#23 by ДенисЧ
более того, сама 82 ничего не ищет
#24 by Evgenchik
запущена под пользователем с правами админа, разрядность 32х сама не ищет... а кто ищет? почему на 81 срабатывает?
#25 by Evgenchik
нашел вот что Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword; по прежнему ругается на кодировку ORA-12737: Instant Client Light: unsupported server character set %s
#26 by ДенисЧ
попробуй в hklmsoftwareoracle прописать переменную NLS_LANG, строковую, со значением AMERICAN_AMERICA.CL8MSWIN1251
#27 by Evgenchik
не помогло. подскажи, у тебя кроме _ОраклБД.Open("Provider=MSDASQL.1;Data Source=Oracle7;UID=scaner;Password=scaner;"); есть еще другие параметры для соединения?
#28 by ДенисЧ
в 1с - нет. ТОлько в настройках клиента
#29 by Evgenchik
я так понял, что у тебя odbc создано, а в 1С ты уже к нему цепляешься? я так сделал... ошибка тля ее раздери Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Oracle][ODBC][Ora]ORA-12154: TNS:could not resolve the connect identifier specified
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С