Текущее время: Пт, апр 19 2024, 01:50

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


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

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


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

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