Текущее время: Чт, мар 28 2024, 14:31

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Из ORACLE в R/3
СообщениеДобавлено: Вт, авг 24 2004, 15:07 
Гость
Коллеги! Подскажите, пожалуйста, как средствами ADO считать данные в R/3 - во внутреннюю таблицу или в прозрачную таблицу. Если можно, маленький примерчик. Заранее спасибо.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, авг 24 2004, 15:26 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
Коллега, а что все что я когда то рассказывал не помогло что ли...???
Странно...а в чем вопрос то....ты строку подключения не знаешь как написать или что?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 25 2004, 07:49 
Гость
Большое спасибо за пример. Очень помогло. Строку подключения я написала. Все хорошо. смогла создать таблицу во внешней базе и бросить туда данные, а прочитать их в R/3 обратно я их не могу. select проходит, а как увидеть данные?
Помогите, пожалуйста. Я наверное чего-то не понимаю.

INCLUDE ole2incl.
*data: it like dd02l-tabname.
types: begin of t_it,
a1(3),
a2(3),
end of t_it.
data: it type t_it.
data:
connection type ole2_object,
rs type ole2_object,
connectionstring(500),
state type i,
sql(1000),
eof.

*concatenate
*'Provider=SQLOLEDB.1;Integrated Security=SSPI;'
*'Persist Security Info=False;Initial Catalog=<имя>;'
*'Data Source=<имя>' into connectionstring.

concatenate
'Provider=OraOLEDB.Oracle.1;password=tiger;'
'User ID=scott;Data Source=tr;Persist Security Info=False'
into connectionstring.

*Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User
*ID=system;Data Source=tr
data fi(50).
*Provider=MSDAORA.1;User ID=sys;Data Source=tr;Persist Security
*Info=False
*Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial
*Catalog=gazfond;Data Source=R3_PROG4\LENA
break zapeka.
*concatenate

*'CREATE TABLE tanya1 (a1 CHAR(3) NOT NULL, '
* ' a2 CHAR(3) NOT NULL)' INTO sql.
*
sql = 'select a1,a2 from tanya'.

*sql = 'INSERT INTO tanya (a1, a2) VALUES ('' c'','' d'') '.

create object connection 'adodb.connection'.
if sy-subrc ne 0.
PERFORM end_program.
endif.

set property of connection 'ConnectionString' = connectionstring.
if sy-subrc ne 0.
PERFORM end_program.
endif.

call method of connection 'Open'.
if sy-subrc ne 0.
PERFORM end_program.
endif.

create object rs 'adodb.recordset'.
if sy-subrc ne 0.
PERFORM end_program.
endif.

get property of rs 'State' = state.
if sy-subrc ne 0.
PERFORM end_program.
else.
if state = 1.
call method of rs 'Close'.
if sy-subrc ne 0.
PERFORM end_program.
endif.
endif.
endif.

set property of rs 'CursorType' = 3.
if sy-subrc ne 0.
PERFORM end_program.
endif.

set property of rs 'LockType' = 1.
if sy-subrc ne 0.
PERFORM end_program.
endif.

set property of rs 'CursorLocation' = 2.
if sy-subrc ne 0.
PERFORM end_program.
endif.

set property of rs 'ActiveConnection' = connection.
if sy-subrc ne 0.
PERFORM end_program.
endif.

call method of rs 'Open' exporting #1 = sql.

if sy-subrc ne 0.
PERFORM end_program.

endif.


call method of rs 'MoveFirst' .
if sy-subrc ne 0.
PERFORM end_program.
endif.
form end_program.

endform.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 25 2004, 12:24 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
а разве так вот не получается??? после вызова MoveFirst пишешь это...
данные во внутренней таблице будут...

DATA:
a1 type ole2_object,
a2 type ole2_object.

DATA: BEGIN OF itab OCCURS 100,
a1 LIKE <тип поля>,
a2 LIKE <тип поля>.
DATA: END OF itab.


get property of rs 'EOF' = eof.
if sy-subrc ne 0.
PERFORM end_program.
endif.

call method of rs 'Fields' = a1
exporting #1 = 'a1'.
if sy-subrc ne 0.
PERFORM end_program.
endif.

call method of rs 'Fields' = a2
exporting #1 = 'a2'.
if sy-subrc ne 0.
PERFORM end_program.
endif.


WHILE eof = '0'.

CLEAR itab.
get property of a1 'Value' = itab-a1.
if sy-subrc ne 0.
PERFORM end_program.
endif.

get property of a2 'Value' = itab-a2.
if sy-subrc ne 0.
PERFORM end_program.
endif.


call method of rs 'MoveNext'.
if sy-subrc ne 0.
PERFORM end_program.
endif.

get property of rs 'EOF' = eof.
if sy-subrc ne 0.
PERFORM end_program.
endif.
APPEND itab.
ENDWHILE.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 25 2004, 13:45 
Гость
Спасибо огромное за ответ. Может, подскажешь где можно посмотреть все методы и свойства объекта типа ole2_object. Заранее спасибо.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 25 2004, 14:57 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
:shock: как то неправильно выразилась :?: :?:

ole2_object - это не объект, это тип переменной, ну как Char, Integer и т.д.
Переменная этого типа может принимать разные объекты(объекты Excel, Word, Access и т.д. или например объекты таких библиотек доступа к базам данных как ADO ну или DAO или RDO, в общем все поддерживающие технологию OLE).

И соответсвенно все зависит от того какой объект присвоен переменной, методы и свойства этого объекта и будут доступны...

Пример:
1.
connection type ole2_object,
create object connection 'adodb.connection'.
set property of connection 'ConnectionString' = connectionstring.

создает объект adodb.connection и устанавливает свойство ConnectionString этого объекта
2.
connection type ole2_object,
create object connection 'EXCEL.APPLICATION'.
set property of connection 'VISIBLE' = 0.

создает объект EXCEL.APPLICATION и устанавливает свойство VISIBLE этого объекта, фактически запускает EXCEL только не видно его будет, потому как 'VISIBLE' = 0

да в общем то про интеграцию Office в хелпе написано
ну а про методы и свойства объектов нужно искать в литературе посвященной работе с этими объектами...ну а посмотреть можно скажем в браузере объектов в VB...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 25 2004, 15:16 
Гость
Ну а конкретно пл adodb.connection где посмотреть свойства и методы?
В help по Oracle или где-то еще. Где ты их нашел? Я хочу посмотреть что там еще есть и не знаю , где это можно найти. Спасибо. Извини за глупые вопросы, но все рано или поздно учатся.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 25 2004, 15:42 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
да ладно не извиняйся...я тоже бывает учусь и вопросов глупых не меньше задаю... :D :D

посмотреть можно например здесь

http://www.activeserverpages.ru/ado/

а можно поискать какую нибудь книжку типа руководство разработчика баз данных на VB или на Delphi, только для профессионалов...в такой книге стопроцентно будут рассмотрены структура объектов и возможности библиотеки ADO...
мне то самому больше на VB приходилось работать, могу порекомендовать пару книг если найдешь...
1. Р.Дженнингс - Руководство разработчика баз данных на VB 6
2. Д. МакМанус - Обработка баз данных на VB 6

первая посложнее, вторая полегче
удачи... :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 26 2004, 06:41 
Гость
Спасибо большое за рекомендации и особенно за ссылку. Там очень много полезного - перевариваю.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 26 2004, 08:14 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
считать данные то получилось?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 26 2004, 08:44 
Гость
Да получилось!!! Еще вчера. Спасибо огромное за помощь!!!


Принять этот ответ
Вернуться к началу
  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB