Текущее время: Пт, авг 01 2025, 14:58

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: подскажите почему не отправляется внешняя почта
СообщениеДобавлено: Чт, май 28 2009, 10:58 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, апр 08 2008, 14:44
Сообщения: 81
Добрый день.

почитал темы на форуме - посмотрел примеры и т.д. вроде все делаю как пишут но почта не формируется и не отправляется. Программа отрабатывает ошибок и дампа не выдает, ФМ тоже завершается с кодом 0.


Подскажите, пожалуйста где я делаю ошибку (или подскажите где взять описание ФМа SO_NEW_DOCUMENT_ATT_SEND_API1 - в системе документация отсутсвует в нете нашол только примеры программ, хотелось бы почитать назначение входных/выходных параметров и таблиц а также список возможных значений для них)


Можно ли отпралять письма без вложения? Необходимо просто слать небольшое информационное сообщение в теле письма.

вот текст моего кода
Code:
*&---------------------------------------------------------------------*
*& Report  ZMAIL
*&
*&---------------------------------------------------------------------*


REPORT  ZMAIL.

data: itcpo like itcpo,
      tab_lines like sy-tabix.


* Variables for EMAIL functionality
data: maildata   like sodocchgi1.
data: mailpack   like sopcklsti1 occurs 2 with header line.
data: mailhead   like solisti1 occurs 1 with header line.
data: mailbin    like solisti1 occurs 10 with header line.
data: mailtxt    like solisti1 occurs 10 with header line.
data: mailrec    like somlrec90 occurs 0  with header line.
data: solisti1   like solisti1 occurs 0 with header line.


perform send_form_via_email.

************************************************************************
*       FORM  SEND_FORM_VIA_EMAIL                                      *
************************************************************************
form  send_form_via_email.

  clear:    maildata, mailtxt, mailbin, mailpack, mailhead, mailrec.
  refresh:  mailtxt, mailbin, mailpack, mailhead, mailrec.

* Creation of the document to be sent File Name
  maildata-obj_name = 'TEST'.
* Mail Subject
  maildata-obj_descr = 'Subject'.

* Mail Contents
  mailtxt-line = 'Here is your file'.
  append mailtxt.

* Prepare Packing List
  perform prepare_packing_list.

* Set recipient - email address here!!!
  mailrec-receiver = 'user@user.com'.
  mailrec-rec_type  = 'U'.
  append mailrec.

* Sending the document
  call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
       exporting
            document_data              = maildata
            put_in_outbox              = ' '
       tables
            packing_list               = mailpack
            object_header              = mailhead
            contents_bin               = mailbin
            contents_txt               = mailtxt
            receivers                  = mailrec
       exceptions
            too_many_receivers         = 1
            document_not_sent          = 2
            operation_no_authorization = 4
            others                     = 99.

if sy-subrc = 0.
submit rsconn01 with mode = 'INT' and return.
endif.

endform.

************************************************************************
*      Form  PREPARE_PACKING_LIST
************************************************************************
form prepare_packing_list.

  clear:    mailpack, mailbin, mailhead.
  refresh:  mailpack, mailbin, mailhead.

  describe table mailtxt lines tab_lines.
  read table mailtxt index tab_lines.
  maildata-doc_size = ( tab_lines - 1 ) * 255 + strlen( mailtxt ).

* Creation of the entry for the compressed document
  clear mailpack-transf_bin.
  mailpack-head_start = 1.
  mailpack-head_num = 0.
  mailpack-body_start = 1.
  mailpack-body_num = tab_lines.
  mailpack-doc_type = 'RAW'.
  append mailpack.

  mailhead = 'TEST.TXT'.
  append mailhead.



* File
  mailbin = 'This is file 1'.
  append mailbin.

  describe table mailbin lines tab_lines.

  mailpack-transf_bin = 'X'.
  mailpack-head_start = 1.
  mailpack-head_num = 1.
  mailpack-body_start = 1.
  mailpack-body_num = tab_lines.
  mailpack-doc_type = 'TXT'.
  mailpack-obj_name = 'TEST1'.
  mailpack-obj_descr = 'Subject'.
  mailpack-doc_size = tab_lines * 255.
  append mailpack.

endform.


Заранее благодарен


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: подскажите почему не отправляется внешняя почта  Тема решена
СообщениеДобавлено: Чт, май 28 2009, 15:24 
Ассистент
Ассистент

Зарегистрирован:
Ср, апр 15 2009, 11:39
Сообщения: 26
Откуда: Москва
Пол: Женский
Пример без вложения.
Если у Вас он не отрабатывает, обратитесь к базису, пусть они сделают необходимые настройки в системе

DATA:
lt_header LIKE TABLE OF solisti1,
ls_document_data LIKE sodocchgi1,
lt_content TYPE TABLE OF solisti1,
lt_receivers TYPE TABLE OF somlreci1,
ls_receivers LIKE LINE OF lt_receivers,
ls_content LIKE LINE OF lt_content.

* получатель
ls_receivers-receiver = 'user@domain.com'.
ls_receivers-rec_type = 'U'.
APPEND ls_receivers TO lt_receivers.
* Заголовок
ls_document_data-obj_langu = sy-langu.
ls_document_data-obj_descr = 'Заголовок письма'.
* Тело письма
ls_content = 'Привет, Мир!'.
APPEND ls_content TO lt_content.
ls_content = 'С уважением.'.
APPEND ls_content TO lt_content.

* Отправка
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data = ls_document_data
put_in_outbox = 'X'
commit_work = 'X'
TABLES
object_header = lt_header
object_content = lt_content
receivers = lt_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.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: подскажите почему не отправляется внешняя почта
СообщениеДобавлено: Чт, май 28 2009, 15:56 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, апр 08 2008, 14:44
Сообщения: 81
yes написала:
Пример без вложения.
Если у Вас он не отрабатывает, обратитесь к базису, пусть они сделают необходимые настройки в системе

DATA:
lt_header LIKE TABLE OF solisti1,
ls_document_data LIKE sodocchgi1,
lt_content TYPE TABLE OF solisti1,
lt_receivers TYPE TABLE OF somlreci1,
ls_receivers LIKE LINE OF lt_receivers,
ls_content LIKE LINE OF lt_content.

* получатель
ls_receivers-receiver = 'user@domain.com'.
ls_receivers-rec_type = 'U'.
APPEND ls_receivers TO lt_receivers.
* Заголовок
ls_document_data-obj_langu = sy-langu.
ls_document_data-obj_descr = 'Заголовок письма'.
* Тело письма
ls_content = 'Привет, Мир!'.
APPEND ls_content TO lt_content.
ls_content = 'С уважением.'.
APPEND ls_content TO lt_content.

* Отправка
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data = ls_document_data
put_in_outbox = 'X'
commit_work = 'X'
TABLES
object_header = lt_header
object_content = lt_content
receivers = lt_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.




Спасибо большое - так, работает!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

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


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

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


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

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