Текущее время: Вт, июн 17 2025, 22:03

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot]


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

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