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

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


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

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


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

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