|
v7: 1c7.7 обмен данными c Oracle | ☑ | ||
---|---|---|---|---|
0
Ан_Дрей
naïve
27.01.19
✎
08:48
|
Доброго времени суток.
Как из 1С7.7 помощью ADOBE приконнектится к серверу ORACLE? Дано: сервер moon (m1111). MOON = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 123.4.56.78)(PORT = 1111)) ) (CONNECT_DATA = (SID = PRD)) ) Подключение ко всем серверам осуществлять пользователем XXXX с паролем xxxx. После подключения необходимо инициализировать окружение вызовом функции: xxeq_interface.login(user_name, password) RETURN numeric где user_name, password - имя пользователя и пароль входа в OEBS. |
|||
1
ДенисЧ
27.01.19
✎
09:08
|
А в чём именно проблема?
Вызвать функцию? Или создать подключение? |
|||
2
Ан_Дрей
naïve
27.01.19
✎
12:30
|
создать подключение.
попробовал так: Соединение = СоздатьОбъект("ADODB.Connection"); ConnectionString = "driver={SQL Server}; server= |(DESCRIPTION = | (ADDRESS_LIST = | (ADDRESS = (PROTOCOL = TCP)(HOST = 123.4.56.78)(PORT = 1111)) | ) | (CONNECT_DATA = (SID = PRD)) |) |; uid=XXXX; Pwd=xxxx; Database =moon"; Соединение.Open(ConnectionString); не соединяется |
|||
3
ДенисЧ
27.01.19
✎
12:31
|
||||
4
Ан_Дрей
naïve
27.01.19
✎
12:34
|
так не пробовал.
а как через 77 оформить? |
|||
5
Ан_Дрей
naïve
27.01.19
✎
12:37
|
ps все реальные данные\адреса заменены
|
|||
6
rsv
27.01.19
✎
12:37
|
(0) создайте файлик на машине подключения с расширением UDL . Откройте его , интерактивно настройте подключение и нажмите кнопку тест. Это очевидней и наглядней. Путь к файлику прошишите в строке ADO
|
|||
7
ДенисЧ
27.01.19
✎
12:40
|
(4) Ну сформируй строку подключения к серверу, как нарисовано по ссылке. И подключайся.
Ничего хитрого там нет. Максимум - повозиться придётся с 32/64 бит и кодировкой. |
|||
8
Ан_Дрей
naïve
27.01.19
✎
12:40
|
спасибо. буду пробовать.
|
|||
9
Ан_Дрей
naïve
27.01.19
✎
12:42
|
(7) а где
(ADDRESS = (PROTOCOL = TCP)(HOST = 123.4.56.78)(PORT = 1111)) прописывать? |
|||
10
ДенисЧ
27.01.19
✎
12:44
|
(9) В TNSnames.ora
|
|||
11
ДенисЧ
27.01.19
✎
12:44
|
||||
12
trdm
27.01.19
✎
16:26
|
(11) кто на том форуме хозяйничает?
у него капча поехала, не зарегиться не восстановить пароль. |
|||
13
trdm
27.01.19
✎
16:32
|
+(12) рукожопству нет пределов :)
https://prnt.sc/mct9fe |
|||
14
ДенисЧ
27.01.19
✎
17:26
|
(11) Не знаю, я по ссылке из гугля туда прошёд
|
|||
15
Svetka
28.01.19
✎
08:44
|
// ---Прописать в файле tnsnames.ora
GP = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 123.4.56.78)(PORT = 1111)) ) (CONNECT_DATA = (SERVICE_NAME = GP) ) ) //---функция подключения в 1С Перем ТаймАутКоманды,ТаймАутСоединения, Соединение, Команда, Результат; Функция ОткрытиеСоединения() Соединение = СоздатьОбъект("ADODB.Connection"); Команда = СоздатьОбъект("ADODB.Command"); Соединение.Provider="MSDAORA.1"; Соединение.ConnectionString="Data Source=GP;User ID=MIGR;Password=book2018"; Если ПустоеЗначение(ТаймАутКоманды)=0 Тогда Соединение.CommandTimeout=ТаймАутКоманды; Иначе Соединение.CommandTimeout=30; КонецЕсли; Если ПустоеЗначение(ТаймАутСоединения)=0 Тогда Соединение.ConnectionTimeOut=ТаймАутСоединения; Иначе Соединение.ConnectionTimeOut=15; КонецЕсли; Соединение.CursorLocation=2; Попытка Соединение.Open(); Сообщить("Соединение c MIGR установлено"); Исключение Сообщить("Нет коннекта к MIGR. Повторите попытку"); Возврат ПолучитьПустоеЗначение(); КонецПопытки; Возврат 1; КонецФункции //---Обращение к функции, перебор рекордсета Если ОткрытиеСоединения() = 1 Тогда Команда.ActiveConnection=Соединение; Команда.CommandType=1; СтрокаСелекта = "SELECT kod, nreg FROM kod_amort WHERE pred= "+Константа.КодБазы; Команда.CommandText = СтрокаСелекта; Результат = Команда.Execute(); Если Результат.EOF()=0 Тогда Пока Результат.EOF()=0 Цикл Состояние("Перебор "+Число(СокрЛП(Результат.Fields.Item("nreg").Value))); ТЗ.НоваяСтрока(); ТЗ.РегНомер = Число(СокрЛП(Результат.Fields.Item("nreg").Value)); ТЗ.Код = СокрЛП(Результат.Fields.Item("kod").Value); Результат.MoveNext(); КонецЦикла; КонецЕсли; Соединение.Close(); Сообщить("Получены данные","i"); Иначе Предупреждение("Не получены данные"); Возврат; КонецЕсли; |
|||
16
Ан_Дрей
naïve
03.02.19
✎
17:49
|
Microsoft OLE DB Provider for Oracle: ORA-00604: error occurred at recursive SQL level %s
ошибка чото делать ПК Цшт 7 32 bit |
|||
17
Ан_Дрей
naïve
03.02.19
✎
17:51
|
пк Win 7 что можно сделать ?
|
|||
18
ДенисЧ
03.02.19
✎
18:05
|
||||
19
Ан_Дрей
naïve
03.02.19
✎
18:14
|
(18) Я только пытаюсь приконнектится к базе.пеще ничего не делаю.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |