Текущее время: Ср, май 14 2025, 03:43

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: А насколько автоматизируема сап-почта?
СообщениеДобавлено: Вт, апр 26 2005, 06:53 
Гость
Есть-ли ФМ (или классы) для интеграции оной, чтобы программно проделать примерно следующее:
-просмотреть список входящих писем
-проанализировать текст внутри сообщений
-выгрузить прикрипленные файлы в определенный каталог
-сформировать своё письмо и отосолать его

т.е. чтото типа MAPI :roll:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 26 2005, 08:04 
Гость
Класс разработок SO посмотри


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 26 2005, 08:18 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Ср, мар 23 2005, 14:21
Сообщения: 1443
Откуда: Пермь
Пол: Мужской
Кстати, да. Меня тоже интересует этот вопрос! Особенно вопрос, касающийся наличия ФМ создания и отправки сообщения...


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 26 2005, 09:43 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Есть функциональный модуль SO_NEW_DOCUMENT_ATT_SEND_API1, можно найти примеры использования. Пользовался, работает. Только нужно еще настроить сервер, чтобы он мог отправлять вовне. Насколько помню в ТТГ 6.10, так что он должен уметь. Настройка - в транзакции SCOT.
Чтобы автоматом принимать почту, можно почитать ноту 455140. Прием почты и выгрузку делал, правда здесь 6.20. Работает ли на 6.10, не знаю. В help.sap.com поищи CL_BCS - это центральный класс для работы с почтой. В принципе, прямо по туториалу можно добиться успеха.

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 26 2005, 10:07 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, авг 26 2004, 09:14
Сообщения: 92
Откуда: Киев
Отправлять вовне это хорошо.. а как вовнутрь письма получать извне?

_________________
Сохрани нас Бог от дураков, а уж с врагами мы сами справимся...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 26 2005, 10:21 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Дык я же говорю, нота 455140. Там достаточно подробная инструкция.

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: *
СообщениеДобавлено: Вт, апр 26 2005, 11:08 
Гость
спасиба ... археологи роют дальше :lol:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 29 2005, 14:57 
Гость
Чтение папок
CALL FUNCTION 'SO_FOLDER_LIST_READ'
EXPORTING
OWNER = OWNER
REGION = 'P'
TABLES
FOLDER_LIST = LIST_FOLDER

Чтение документа
CALL FUNCTION 'SO_DOCUMENT_READ_API1'
EXPORTING
DOCUMENT_ID = DOCUMENT_ID
IMPORTING
DOCUMENT_DATA = DOCUMENT_DATA
TABLES
OBJECT_CONTENT = MESSAGE_CONT
ATTACHMENT_LIST = ATTACHMENT_LIST

Чтение аттача
CALL FUNCTION 'SO_ATTACHMENT_READ_API1'
EXPORTING
attachment_id = attachment_id
IMPORTING
attachment_data = attachment_data
TABLES
attachment_header = attach_head
attachment_content = attach_cont
contents_hex = attach_cont_hex

Отправка сообщений
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
DOCUMENT_DATA = DOCUMENT_DATA
PUT_IN_OUTBOX = PUT_IN_OUTBOX
IMPORTING
NEW_OBJECT_ID = NEW_OBJECT_ID
TABLES
OBJECT_CONTENT = OBJECT_CONTENT
RECEIVERS = API_RECEIVERS


Модулей для работы с этой потехой много(как RFC так и не RFC), здесь некоторые из них.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 31 2005, 10:57 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
Лупень написал(а):
Чтение папок

Отправка сообщений
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
DOCUMENT_DATA = DOCUMENT_DATA
PUT_IN_OUTBOX = PUT_IN_OUTBOX
IMPORTING
NEW_OBJECT_ID = NEW_OBJECT_ID
TABLES
OBJECT_CONTENT = OBJECT_CONTENT
RECEIVERS = API_RECEIVERS



а можно какой нить пример работы с фм,

желательно с созданием текст. файла и аттачем его к письму,

особенно что касается DOCUMENT_DATA, с остальным вроде как всё понятно

?

_________________
полный SAPец


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 31 2005, 12:46 
Гость
FUNCTION 'SO_OBJECT_SEND' а можно и так отправлять письма с обработанными данными, при этом если все настроено, то и на внешние ящики


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 31 2005, 13:12 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
slash написал(а):
особенно что касается DOCUMENT_DATA, с остальным вроде как всё понятно

Ну мне хватало всего двух полей:
Code:
  document_data-obj_descr = text-001.
  document_data-obj_langu = 'R'.


obj_descr - тема сообщения. Вообще, вот фрагмент, отсылающий XML файл на внешний адрес:
Code:
  CALL METHOD xml_doc->render_2_table
    IMPORTING
      size  = size
      table = contents_hex.

  document_data-obj_descr = text-001.
  document_data-obj_langu = 'R'.

  contents_line-line = text-002.
  APPEND contents_line TO contents_txt.

  CLEAR packing.
  packing-head_start = 1.
  packing-head_num = 1.
  packing-body_start = 1.
  packing-body_num = LINES( contents_txt ).
  packing-doc_type = 'RAW'.
  packing-obj_name = 'BODY'.
  packing-obj_langu = 'R'.
  APPEND packing TO packing_list.

  CLEAR packing.
  packing-transf_bin = 'X'.
  packing-head_start = 2.
  packing-head_num = 1.
  packing-body_start = 1.
  packing-body_num = LINES( contents_hex ).
  packing-doc_type = 'XML'.
  packing-doc_size = size.
  CONCATENATE idoc_control-docnum '.xml'
    INTO packing-obj_descr.
  packing-obj_langu = 'R'.
  APPEND packing TO packing_list.

  CLEAR object_header.
  APPEND object_header TO object_headers.

  object_header = packing-obj_descr.
  APPEND object_header TO object_headers.

  receiver-rec_type = 'U'.
  receiver-receiver = smtp_address.

  receiver-notif_del = 'X'.
  receiver-notif_read = 'X'.
  receiver-notif_ndel = 'X'.

  APPEND receiver TO receivers.

  CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
    EXPORTING
      document_data              = document_data
      put_in_outbox              = put_in_outbox
      commit_work                = 'X'
    TABLES
      packing_list               = packing_list
      object_header              = object_headers
      contents_txt               = contents_txt
      contents_hex               = contents_hex
      receivers                  = receivers
    EXCEPTIONS
      too_many_receivers         = 1
      document_not_sent          = 2
      document_type_not_exist    = 3
      operation_no_authorization = 4
      parameter_error            = 5
      x_error                    = 6
      enqueue_error              = 7
      OTHERS                     = 8.


Если у вас 4.7, то можно пользоваться библиотекой классов BCS, про нее есть в хэлпе, начальный класс CL_BCS. Есть ли она в 4.6, не знаю.

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 31 2005, 13:55 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
вот это восстановил:
[code]DATA: contents_line LIKE SOLISTI1,
contents_txt LIKE SOLISTI1 OCCURS 1,
contents_hex LIKE SOLIX OCCURS 1,
document_data LIKE SODOCCHGI1,
object_header LIKE SOLISTI1,
object_headers LIKE SOLISTI1 OCCURS 1,
packing LIKE SOPCKLSTI1,
packing_list LIKE SOPCKLSTI1 OCCURS 1,
receiver LIKE SOMLRECI1,
receivers LIKE SOMLRECI1 OCCURS 1,
size TYPE I,
put_in_outbox LIKE SONV-FLAG.

а как насчёт:


put_in_outbox = 'X' = сохранять в ящике отправленных?

и вот насчёт этого:
idoc_control
немного поподробнее..

_________________
полный SAPец


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 31 2005, 14:10 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Цитата:
idoc_control

на это не обращайте внимания, фрагмент "выкушен" из обработки idoc.

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 31 2005, 14:38 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
отправка работает, спасибо
Code:
CLEAR packing.
  packing-transf_bin = 'X'.
  packing-head_start = 2.
  packing-head_num = 1.
  packing-body_start = 1.
  packing-body_num = LINES( contents_hex ).
  packing-doc_type = 'XML'.
  packing-doc_size = size.
  CONCATENATE idoc_control-docnum '.xml'
    INTO packing-obj_descr.
  packing-obj_langu = 'R'.
  APPEND packing TO packing_list.

а как вместо xml отправлять просто текстовый файл (формируется из select-а)?

вопрос снят
в packing-doc_type ставим 'TXT'.

_________________
полный SAPец


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Ср, июн 01 2005, 11:06 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
а на сколько важны вот эти места:
Code:
    TABLES
      packing_list               = packing_list
      object_header              = object_headers
      contents_txt               = contents_txt
      contents_hex               = contents_hex  <--!!!

и
Code:
  packing-doc_size = 255 * lcnt.

а то письма с файлами доходят но файлы пустые,
к тому же несмотря на
Code:
  CONCATENATE 'PUTSRAIF_' sy_datum '.dat'
    INTO packing-obj_descr.
и
Code:
  packing-doc_type = 'TXT'.
файл приходит с разрешение .txt

_________________
полный SAPец


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

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


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

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


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

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