SAPфорум.RU https://sapboard.ru/forum/ |
|
InfoObject: Conversion Routine типа INPUT. https://sapboard.ru/forum/viewtopic.php?f=12&t=95257 |
Страница 1 из 1 |
Автор: | Olapster [ Вт, авг 08 2017, 11:55 ] |
Заголовок сообщения: | InfoObject: Conversion Routine типа INPUT. |
Всем привет. По подсказкам уважаемого 12ozmdm протестировал следующее: 1. У признака 0VENDOR есть атрибут 0POBOX. 2. В поле conversion routine этого признака, я указал, созданный мною: CONVERSION_EXIT_ZASCR_INPUT 3. В этом ФМ я вызываю метод моего класса, который берёт параметр INPUT и возвращает результат в параметр OUTPUT. 4. Далее, загружаю в ПСА 20 значений, среди которых, для поля 0POBOX, есть строки с кракозябрами. 5. Прокачиваю атрибуты, ожидая, что "EXIT_INPUT" автоматически исправит эти значения. 6. Но нифига! Судя по SM50 он даже не запускается! В результате возникает ошибка, данные не обновляются. Но! 1. Открываю этот атрибут на ввод данных (кнопка "Ведение"). 2. Вбиваю вручную значения с кракозябрами, жму "Сохранить". 3. Смотрю в инфообъект - и вижу - что всё ОК! Значения таки были исправлены! В связи с этим возникает два вопроса: 1. Почему CONVERSION_EXIT_INPUT не работает при закачке данных? Или он и не должен? Он что ИСКЛЮЧИТЕЛЬНО для ручного ввода значений в признак предназначен? 2. Далее, правильно ли я понимаю что коррекцию атрибута на лету нужно делать именно "Подпрограммой переноса" (Transfer Routine)? (Нет, понятно, что можно и по другому, трансформацией, например, но меня щас интересуют именно функционал инфообъекта). |
Автор: | Olapster [ Ср, авг 09 2017, 10:47 ] |
Заголовок сообщения: | Re: InfoObject: Conversion Routine типа INPUT. |
Olapster написал(а): 1. Почему CONVERSION_EXIT_INPUT не работает при закачке данных? Или он и не должен? Он что ИСКЛЮЧИТЕЛЬНО для ручного ввода значений в признак предназначен? Вот по этому вопросу перечитал ссылки. Но всё еще картина неоднозначна... Есть некоторые промежуточные наблюдения/соображения: - Конверсия данных при загрузке атрибутов зависит от настройки поля Format в PSA: External, Internal, Check В моём случае это значение - Internal, и вероятно, это значит, что конверсионный экзит просто игнорируется. Типа - раз формат уже правильный, то зачем тебе, кафир, его проверять, лллее? Щербет лучше купи, чохмох. - Хотел переключить поле Format в Check, но в PSA 3.0 возникает проблема: непонятно как это сделать. При редактировании PSA предлагается редактировать инфо-источник, и где в нём переключатель - неясно. В худшем случае, этот подход работает только для PSA 7.0, но эту версию еще не проверял. - Вот в этом доке упоминается транзакция RSMDEXITON, но такой транзакции не существует. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |