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

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


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

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


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

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