Текущее время: Пн, авг 04 2025, 08:03

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Получение данных через RFC
СообщениеДобавлено: Вт, фев 12 2008, 14:12 
Начинающий
Начинающий

Зарегистрирован:
Чт, авг 16 2007, 09:04
Сообщения: 4
Добрый день. Уважаемые специалисты, проконсультируйте пожалуйста новичка по поводу получения данных через RFC.

Есть RFC, есть таблица с данными в SAP. Задача вытащить данные из этой таблицы с помощью RFC во временную таблицу SQL.

Вот мой код:

create table #Z_TAB
( Z05 char(20),
Z06 char(5),
Z07 char(10),
Z08 char(16),
Z09 char(1),
Z10 char(20),
Z11 char (1),
Z12 char (30),
Z13 char (35),
Z14 char (4) )


DECLARE @object int
DECLARE @hr int
DECLARE @func int
DECLARE @ret int
DECLARE @src varchar(255), @desc varchar(255)
DECLARE @property int
DECLARE @property1 int
DECLARE @hp int
-- -
EXEC @hr = sp_OACreate 'SAP.Functions', @object OUT
EXEC @hr = sp_OASetProperty @object, 'LOGFILENAME', 'C:\SAP_paid.txt'
EXEC @hr = sp_OASetProperty @object, 'LOGLEVEL', 10

--Получаем параметр соединения и присваиваем переменные

EXEC @hr = sp_OAGetProperty @object, 'Connection', @property OUT
EXEC @hr = sp_OASetProperty @property, 'System', 'RNP'
EXEC @hr = sp_OASetProperty @property, 'SystemNumber', '04'
EXEC @hr = sp_OASetProperty @property, 'SapRouter', '/*/*.*.*.*/*/****/*/'
EXEC @hr = sp_OASetProperty @property, 'MessageServer', 'PRODUKT'
EXEC @hr = sp_OASetProperty @property, 'GroupName', 'TEST'
EXEC @hr = sp_OASetProperty @property, 'CLIENT', '***'
EXEC @hr = sp_OASetProperty @property, 'Language', 'RU'
EXEC @hr = sp_OASetProperty @property, 'User', '********'
EXEC @hr = sp_OASetProperty @property, 'Password', '******'

--Соединяемся
EXEC @hr = sp_OAMethod @property, 'Logon', @ret OUT, 0, 'TRUE'
select @hr
--Присваиваем функцию RFC
EXEC @hr = sp_OAMethod @object, 'ADD', @func OUT,'z_tap_read_rfc'
select @hr

DECLARE
@param_col integer,
@param_col1 integer,
@param_col3 integer,
@EXPORT integer,
@EXPORT1 integer,
@TABLE integer,
@TABLE1 integer,
@Funct integer,
@Z01 integer,
@Z02 integer,
@Z03 integer,
@Z04 integer



--Присваеваем параметры запуска RFC
EXEC @hr = sp_OAGetProperty @Funct, 'Exports', @EXPORT OUT
EXEC @hr = sp_OAGetProperty @EXPORT, 'Z01', @Z01 OUT
EXEC @hr = sp_OAGetProperty @EXPORT, 'Z02', @Z02 OUT
EXEC @hr = sp_OAGetProperty @EXPORT, 'Z03', @Z03 OUT
EXEC @hr = sp_OAGetProperty @EXPORT, 'Z04', @Z04 OUT
EXEC @hr = sp_OASetProperty @Z01, 'VALUE', '1111'
EXEC @hr = sp_OASetProperty @Z02, 'VALUE', '0002'
EXEC @hr = sp_OASetProperty @Z03, 'VALUE', '2007'
EXEC @hr = sp_OASetProperty @Z04, 'VALUE', '123456'


А вот как получить данные из SAP таблицы (имеющей такие же поля как и временная таблица SQL), увы не знаю....
Помогите пожалуйста. Может есть ссылочка полезная, где можно посмотреть, как это делается... Если укажите на мои ошибки, буду очень благодарен!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 12 2008, 14:31 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
Судя по вашему коду, данные из таблицы SAP должен выбирать ФМ z_tap_read_rfc. Он их выбирает?

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 13 2008, 07:31 
Начинающий
Начинающий

Зарегистрирован:
Чт, авг 16 2007, 09:04
Сообщения: 4
При запуске ФМ из SAP данные выбираются. Т.е. сам ФМ работает. Вопрос в том, как сделать такую же выборку запуская RFC из моей процедуры, чтоб данные попадали в SQL таблицу.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: re
СообщениеДобавлено: Ср, фев 13 2008, 08:30 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
http://www.sql.ru/forum/actualthread.as ... 24380&pg=1


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

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


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

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


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

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