Текущее время: Вс, июл 27 2025, 23:34

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Как загрузить JPEG через WEB-портал, написанный на встроенном ITS
СообщениеДобавлено: Вт, окт 07 2008, 15:15 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
Привет!
У нас есть самописный портал построенный на ITS-сервисах (SAP ECC 6.0). Сейчас потребовалось загружать от пользователей портала JPEG-файлы в BDS....
Может кто знает стандартное САП-овское решение задачи, а именно, как взять файл с машины клиента (HTMLB-функция, ФМ, класс)? А то мы уже от отчаяния начали поднимать РНР-сервак....


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

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Да нух нах... Давайте сначала подумаем...
Вам чистый ITS, или BSP, или WebDynpro?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, окт 10 2008, 06:18 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
Мне чистый ITS пожалуйста :), решения для BSP и WebDynpro нашел на SDN...


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

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Так, на вскидку...
http://www.sap-img.com/abap/use-bds-to- ... el-jpg.htm


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, окт 10 2008, 12:28 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
Спасибо за ссылку!
Очень интересно, я так понимаю, что существует возможность публикации ALV-grid отчета на web-страничке, постороенной на встроенном ITS-сервисе?? Вот было бы здорово научиться это делать! Может у вас есть примеры реализации?


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

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
в сервисе ~GENERATEDYNPRO = 1 и все работает :)
И даже без шаблонов...


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

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
как вариант:

в свой шаблон вставьте форму с саповского шаблона
вместе с контекстом (гуевые переменные)

добавьте в тэг form параметр
enctype="multipart/form-data"

и внутрь формы <input type=file ..>

в абапе используйте
ALEWEB_GET_MIME_INFO
ALEWEB_GET_MIME_DATA

получите raw data, а дальше сами знаете


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

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Да и вообще посмотрите Include AVWRTCXM,

Макросы, начинающиеся с MIME-...

(mime-info, mime-upload)...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, окт 10 2008, 14:59 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
2troop:
не совсем понятно :( Что передавать в ФМ ALEWEB_GET_MIME_INFO, путь до файла, который указал пользователь ?


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

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
нет, ничего не передавать

он вернет вам mime содержимое главной формы
(с названием вида webguiform, в которую вы вставили
enctype=multipart/form-data и <input type=file ..),
в виде таблицы,
посмотрите содержимое, обычно в index 0 записывается,
в aleweb_get_mime_data передайте строчку mime с index 0,
он вернет вам xstring

путь до файла пользователя нам до лампочки,
файл(mime) в web-форму подгрузит сам браузер, надо просто выдернуть
эти данные через aleweb


схема:
program-screen -> web-enabled-transaction -> its -> template-for-program-screen

template-for-program-screen сюда пихаем input type=file (+ multipart..)
в program-screen в pai запускаем aleweb_*


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, окт 13 2008, 10:33 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
Пробую - получаю дамп с ошибкой Exception condition "INVALID_INDEX" raised после выполнения ALEWEB_GET_MIME_INFO.
Где я ошибся, подскажите пожалуйста ?????

Вот мой HTML template:
`include(~service="system", ~language="", ~theme="dm", ~name="TemplateLibraryDHTML.html")`
`SAP_TopInclude()`
<html>
<head>
<title> Load file</title>
`SAP_PageTitle()`
`SAP_Stylesheet()`
`SAP_JavaScript()`
</head>
<!-- ***************************** ТЕЛО СКРИПТА ********************** -->
<body `SAP_BodyAttributes()` onload="`SAP_OnloadJavaScript()`">
`SAP_TemplateHeader()`
`SAP_BodyContentBegin()`
`SAP_FormBegin()`
<TABLE width="100%" border="0" cellspacing="0" cellpadding="1">
<tr>
<td height="40">&nbsp;</td>
</tr>
<tr>
<td width="5%">&nbsp;</td>
<td width="90%">
<form name="webguiform" action="`wgateurl()`" method="post" enctype = "mulitpart/form-data" >
<TABLE width="100%" style="border:1px solid #777777;" cellspacing="0" cellpadding="1">
<tr> <input type="file" name = "file_name" id = "file_name" > </tr>
<tr> <input type="submit" name = "~OkCode=2600" value = "Загрузить" > </tr>
</TABLE>
</form>
</td>
</tr>
</TABLE>

`SAP_FormEnd()`
`SAP_BodyContentEnd()`
</body>
</html>
<!-- ***************************** ТЕЛО СКРИПТА ********************** -->
</HTML>
Дальше отрабатывает PAI логика экрана (у меня он 2600), где вызывается ФМ
CALL FUNCTION 'ALEWEB_GET_MIME_INFO'
TABLES
MIME_INFO = it_mime.
... и возвращается DUMP :(
(it_mime TYPE TABLE OF savwmpmime WITH HEADER LINE.)


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

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
Dump в студию...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, окт 14 2008, 06:22 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
Динамическая ошибка RAISE_EXCEPTION
Дата и время 13.10.2008 10:51:08
Краткий текст
Exception condition "INVALID_INDEX" raised.
Что произошло?
The current ABAP/4 program encountered an unexpected
situation.
Анализ ошибки
A RAISE statement in the program "SAPLAWRT" raised the exception
condition "INVALID_INDEX".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
Информация о месте прерывания
Termination occurred in the ABAP program "SAPLAWRT" - in
"ALEWEB_GET_MIME_INFO".
The main program was "ZRUGMAVB2BSLS ".
In the source code you have the termination point in line 48
of the (Include) program "LAWRTU04".
Фрагмент исходного текста программы

Строк ИсхднТкст

18 * Check, if ITS is available.
19 * --------------------------------------------------------------------
20 CALL FUNCTION 'ITS_PING'
21 EXCEPTIONS
22 its_not_available = 1
23 OTHERS = 2.
24
25 IF sy-subrc <> 0.
26 RAISE its_not_available.
27 ENDIF.
28 * --------------------------------------------------------------------
29
30 DO.
31
32 * CALL FUNCTION 'ALEWEB_GET_MP_MIME_INFO'
33 * change to call extended function able to handle 1024 char long fields
34 CALL FUNCTION 'ALEWEB_GET_MP_MIME_INFO_EXT'
35 DESTINATION 'SAPGUI'
36 EXPORTING
37 mp_mime_index = sy-index
38 IMPORTING
39 mp_mime_info = mime_info
40 EXCEPTIONS
41 invalid_index = 1
42 communication_failure = 2 MESSAGE msg_text
43 system_failure = 3 MESSAGE msg_text
44 OTHERS = 4.
45 CASE sy-subrc.
46 WHEN 0.
47 WHEN 1.
>>>>> RAISE invalid_index.
49 WHEN OTHERS.
50 RAISE its_not_available.
51 ENDCASE.
52
53 APPEND mime_info.
54
55 ENDDO.
56
57 ENDFUNCTION.

Надеюсь, что информации достаточно...


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

Зарегистрирован:
Ср, ноя 01 2006, 22:58
Сообщения: 794
Откуда: Заарбрюкен
Пол: Мужской
sy-index при вызове - неправильно,

используйте единичку...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, окт 14 2008, 14:16 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 14 2007, 05:34
Сообщения: 78
Откуда: Уфа
Пол: Мужской
Хорошо, попробую....
Параллельно я воспользовался вашим советом и сгенерил ITS сервис на основе Z-транзакции. Данные загрузить получилось, только вот хотелось бы ограничить пользователя в рамках этой транзакции (чтоб не мог выйти в SAP-меню ). Возможно ли это?
Еще 2 вопроса - как организовать возврат из сгенерированного интерфейса в вызывающий экран? Можно ли передать туда значения переменных и как?
Спасибо за науку!


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

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


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

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


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

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