Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: 1с предприятие 8.1 + oracle
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
shomo
Как работать с oracl из 1с 8.1?
Batchir
1. В документации должно быть описание как работать
2. Текст не мой. Вырезка из закрытой конференции 1С.
Цитата первая
Цитата
1. Создание базы Oracle. Поскольку надо ставить кодировку особую, то приходится создавать базу без шаблона (Custom). Здесь неясно какие компоненты базы ставить. Например, тот же Oracle Intermedia - нужен ли он? Лишнего ставить не хочется.

Предложение: разработать и выложить шаблон на создание базы Oracle для 1С, который включает требуемые компоненты, но не включает избыточных. В нем же и кодировку можно прописать, и настройки по памяти и дисковому пространству, и т.д.

2. Генерация NLB-файлов. Ни одна из опробованных версий Oracle не смогла проглотить исходный файл lx327c5.nlt. А пробовал: 10.2.0.3, 10.2.0.4, 11.1.0.6. Перед тем как полностью отчаяться, решил глянуть что в нем внутри. И обнаружил следующий фрагмент:
<!DOCTYPE NLSDATA SYSTEM "lx.dtd">
<!--
Copyright © Joint stock company "1С JOINT STOCK VENTURE", 1996-2009. All rights reserved.
For the sole purpose of using with 1C:Enterprise.
-->

Насколько знаю, комментарии в Oracle начинаются с символа # (или --). Фрагмент удалил и случилось чудо: файлы удалось сгенерить. Сложилось впечатление, что данный фрагмент был вставлен из html-файла или еще откуда-то перед тем, как выложить файл для скачивания.

Предложение: скорректировать NLT-файл.

3. Опять же насчет NLB: файл lx0boot.nlb получился очень маленьким (128 байт), и опять же в руководстве по Local Builder про него не сказано, что его надо вернуть. Поэтому на всякий случай возвращать не стал.

Предложение: проверить корректность руководства администратора - действительно ли надо возвращать файл lx0boot.nlb.

4. Непонятно, под каким пользователем необходимо создавать базу на сервере 1С:Предприятия. Использовал SYSTEM. К этому еще больше неясностей привносит фраза из руководства "При создании информационной базы в 1С:Предприятии в Ocarle Database создается пользователь и его схема данных". У меня были следующие варианты:

- Указать имя пользователя, который должен быть создан в Oracle Database - но ведь тогда 1С не сможет подключиться с базе, не знает логина.

- Указать имя существующего пользователя, а 1С создаст какого-то нового с предопредленным именем. В принципе возможно, но что будет с настройками ИБ на сервере предприятия - куда денется изначально указанный пользователь?

- Создать пользователя самому в Oracle, и его указать на сервере предприятия - здесь предполагал погрешность в руководстве.

В общем вопросов много.

Предолжение: уточнить руководство в плане создания базы Oracle, пользователя и т.п.

5. 1С:Предприятие, я так понял, не умеет создавать самостоятельно базы Oracle. Однако флажок "Создать базу в случае ее отсутствия" ставить надо обязательно. В ином случае возникает ошибка ORA-01435: пользователь не существует. Здесь затрудняюсь как-то прокомментировать, получено методом проб и ошибок.



После этого база на сервере 1С:Предприятия создалась, и в нее удалось загрузить ИБ.


Цитата вторая:

Цитата
Удалось подключить демо базу к Ораклу версии 10.2.0.4.

1. Скачал версию 10.2.0.3
скачиваем 10203_vista_w2k8_x86_production_db.zip

2. Потом придется накатить патч p6810189_10204_Win32 , (устанавливаем в ту же Oracle_Home что и в п.1 )

3. Заходим в Database Configuration Assistant (Пуск --программы--Oracle--Configuration and Migration Tools), делаем Create database выбираем Custom Database (именно в ней удалось выбрать Character Set описанный в документации).

4. Выполняем действия описанные в документации 8.2 Администрирование---Установка серверов баз данных. Предварительно не забываем скорректировать файл lx327c5.nlt (см предыдущий пост)

5. Пробуем добавить Демо базу на базе БД Оракл.
Fynjy
8.1 поддерживает оракл? Что то новое ...
Travis
Только это уже не 8.1 а 8.2.
8.1 аж никак не работает с Oracle =)
shomo
Спасибо за информацию. Но вопрос заключался в том, что бы программно подключиться к базе oracl из 1с 8.1 и забрать (положить) информацию.
shomo
а 8.2 действительно имеет возможность работы с oracle
shomo
Цитата(Travis @ 15.07.10, 10:32) необходимо зарегистрироваться для просмотра ссылки
Только это уже не 8.1 а 8.2.
8.1 аж никак не работает с Oracle =)


Почему никак? Через COM объекты-то должно работатать.... Только вот как?
Batchir
Цитата(Fynjy @ 15.07.10, 9:32) необходимо зарегистрироваться для просмотра ссылки
8.1 поддерживает оракл? Что то новое ...

А я это ... даже не обратил внимания ...

Цитата
Спасибо за информацию. Но вопрос заключался в том, что бы программно подключиться к базе oracl из 1с 8.1 и забрать (положить) информацию.


Ивиняюсь, не правильно понял вопрос.

search.gif необходимо зарегистрироваться для просмотра ссылки
Travis
Цитата(shomo @ 15.07.10, 11:04) необходимо зарегистрироваться для просмотра ссылки
Почему никак? Через COM объекты-то должно работатать.... Только вот как?


Тогда уж лучше не через com а через ado.
На эту тему посмотри тут: необходимо зарегистрироваться для просмотра ссылки
Тут посмотри что есть Ado: необходимо зарегистрироваться для просмотра ссылки
shomo
Спасибо. Будем рассматривать ADO.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.