Текущее время: Чт, дек 11 2025, 02:01

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




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: RFC в payload передает обрезанные значения
СообщениеДобавлено: Вт, окт 23 2012, 15:31 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, мар 21 2007, 07:42
Сообщения: 51
Привет всем,

передаю таблицу из R3 в PI посредством RFC модуля.
На входе в RFC все значения нормальные в PI попадают обрезанные т.е.

пример:
передаю

параметр А01

таблица:
char 4 char 10 char 10 char 12 date time
2101 0000000001 0000000011 USER_011 20121023 182655

в payload имею след. значения

А01
2101
0000010000
_01120
55


Как это побороть?
может кто-нибудь сталкивался с этой проблемой?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Вт, окт 23 2012, 16:04 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
RFC адаптер не самодостаточен: вызов данных не работает без корректного репозитория на стороне джавы.
То-ли структуру данных поменяли, то-ли кодировку (юникод). Рестартуй канал, вплоть до его изменения в конфигураторе.

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 07:34 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, мар 21 2007, 07:42
Сообщения: 51
Канал рестартанул. Структуры не менялись. Единственное когда запускаю RFC PI выдает какую-то ошибку
Wed Oct 24 10:23:02 ALMT 2012 2410cc08-7083-0481-4020-718d08804b2c Error in processing caused by: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: lookup of alternativeServiceIdentifier .

Можешь подсказать в какую сторону копать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 09:36 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
попробуй не просто рестартовать канал а именно переактивировать его в конфигурации.
Сам adapter engine живой? остальное всё работает?

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 09:42 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
Да, а [не]юникодность-то совпадает?

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 10:46 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, мар 21 2007, 07:42
Сообщения: 51
Остальное все работает. Поэтому думаю что адаптер живой. Не юникодность совпадает. Канал создал новый та же проблема переконфигурировал старый ничего не поменялось.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 13:28 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
или ссылка на репозиторий неверная или репозиторий не соответствует реальности.

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 14:11 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, мар 21 2007, 07:42
Сообщения: 51
Не подскажешь где посмотреть ссылку и сам репозиторий?
И как его проверить?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Ср, окт 24 2012, 14:34 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
посмотреть в канале-сендере, там и прописана, RFC Metadata Repository Parameter.

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Чт, окт 25 2012, 06:27 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, мар 21 2007, 07:42
Сообщения: 51
привет,
я разобрался почему передавались кривые данные.
спасибо за помошь.
только можешь объяснить почему так происходило?
из R3 системы я вызывал RFC модуль. В нем я вызывал еще один уже с назначением в PI.
так вот если в первом модуле я делал импортные параметры и таблицу и во втором тоже самое тогда передаются кривые данные.
если в первом не делать импортные параметры а прописать в нем выбор данных и передать во второй тогда все прекрасно работает.


пример рабочий:

FUNCTION z_export_smartcard_start.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*"----------------------------------------------------------------------
DATA: action TYPE zaction,
lt_rfc TYPE zsmartcard_int_r OCCURS 0 WITH HEADER LINE.
DATA gt_tab_101 TYPE zsmartcard_int OCCURS 0 WITH HEADER LINE.
SELECT * FROM zsmartcard_int INTO TABLE gt_tab_101.
LOOP AT gt_tab_101.
MOVE-CORRESPONDING gt_tab_101 TO lt_rfc.
lt_rfc-beg_num = gt_tab_101-beg_num.
lt_rfc-end_num = gt_tab_101-end_num.
APPEND lt_rfc.
CLEAR: lt_rfc.
ENDLOOP.

action = 'A01'.

CALL FUNCTION 'Z_EXPORT_SMARTCARD'
IN BACKGROUND TASK
DESTINATION 'PP-02'
EXPORTING
action = action
TABLES
zsmartcard_int = lt_rfc.
WAIT UP TO 2 SECONDS.
COMMIT WORK.

ENDFUNCTION.


FUNCTION Z_EXPORT_SMARTCARD.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*" IMPORTING
*" VALUE(ACTION) TYPE ZACTION
*" TABLES
*" ZSMARTCARD_INT STRUCTURE ZSMARTCARD_INT_R OPTIONAL
*"----------------------------------------------------------------------

ENDFUNCTION.



пример работающий коряво:



FUNCTION z_export_smartcard_start.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*" IMPORTING
*" VALUE(ACTION) TYPE ZACTION
*" TABLES
*" ZSMARTCARD_INT STRUCTURE ZSMARTCARD_INT_R OPTIONAL

CALL FUNCTION 'Z_EXPORT_SMARTCARD'
IN BACKGROUND TASK
DESTINATION 'PP-02'
EXPORTING
action = ZACTION
TABLES
zsmartcard_int = ZSMARTCARD_INT.
WAIT UP TO 2 SECONDS.
COMMIT WORK.

ENDFUNCTION.


FUNCTION Z_EXPORT_SMARTCARD.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*" IMPORTING
*" VALUE(ACTION) TYPE ZACTION
*" TABLES
*" ZSMARTCARD_INT STRUCTURE ZSMARTCARD_INT_R OPTIONAL
*"----------------------------------------------------------------------

ENDFUNCTION.


в отладчике проверял передаются данные нормально так и не понял почему обрезало данные.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: RFC в payload передает обрезанные значения
СообщениеДобавлено: Чт, окт 25 2012, 15:43 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
проверь юникодность проги, которая вызывает первый ФМ, и уникодность группы функций.

_________________
Telegram-chat: PO, CPI-PI, java, groovy


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

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


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

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


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

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