Текущее время: Сб, июл 19 2025, 08:17

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Получить бинарник PDF
СообщениеДобавлено: Чт, сен 19 2013, 13:53 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
Коллеги, как можно получить бинарник пдф формуляра после вызова непосредственно фмника этого формуляра?

_________________
crusty написал(а):
Логистика - понятие растяжимое


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

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
Посмотрите программы FP_PDF_TEST_* - там где то было

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 08:53 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
В тестовых ничего путного не нашел.
Зато нашел вот такое
Code:
  CALL FUNCTION ls_function
    EXPORTING
      /1BCDWB/DOCPARAMS = fp_docparams
      form_data         = gs_content
    IMPORTING
      /1BCDWB/FORMOUTPUT = fp_formoutput
    EXCEPTIONS
      usage_error       = 1
      system_error      = 2
      internal_error    = 3.

lv_pdf_binary = fp_formoutput-pdf.


Однако наткнулся на небольшую проблему:
Похоже что ФМник сам делает и JOB_OPEN и JOB_CLOSE, потому что я не могу запустить соответствующие ФМники чтоб самому создать open и close. Как мне сделать параметры запуска типа preview, no_dialog итд ?

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 12:27 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
Обычно вызов ФМ обрамляют JOB_OPEN и JOB_CLOSE вручную, сам ФМ не должен делать этого.
Какая ошибка возникает?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 12:32 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
weise написал(а):
Обычно вызов ФМ обрамляют JOB_OPEN и JOB_CLOSE вручную, сам ФМ не должен делать этого.
Какая ошибка возникает?

вылетает exception usage_error = 1

какая сейчас ситуация: фмник, который осуществляет печать - job_open -> вызов фм формуляра -> job_close.
Если проверять фмник через тест - он отваливается в вызове фм формуляра, с ошибкой что job уже open. Если убрать job_open и close, фм отлично работает

Этот фм вызывается в другой транзакции, и там ситуация прямо противоположная. С ручными job_open и close работает, без них как в тесте фм - нет. Мистика.

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 12:42 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
Упс, нужно использовать FP_JOB_OPEN и FP_JOB_CLOSE. Вы их используете?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 12:43 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
weise написал(а):
Упс, нужно использовать FP_JOB_OPEN и FP_JOB_CLOSE. Вы их используете?

да, про них и речь

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 15:42 
Специалист
Специалист

Зарегистрирован:
Чт, дек 16 2010, 15:23
Сообщения: 133
Откуда: Набережные Челны
Пол: Мужской
У нас работает следующим образом:

Code:
ie_outputparams-nodialog = abap_true.
ie_outputparams-dest = 'PDF'. "(принтер с postscript)
ie_outputparams-getpdf   = abap_true.


Сначала 'FP_JOB_OPEN', потом ФМ формуляра, далее 'FP_JOB_CLOSE'.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пт, сен 20 2013, 16:08 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
Должно работать, только что проверил. Приведите может код.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пн, сен 23 2013, 10:03 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
weise написал(а):
Должно работать, только что проверил. Приведите может код.

Code:
FORM open_form_pdf USING lv_dest lv_pdf_requested.


  fp_outputparams-pdftagged = 'X'.



  IF lv_pdf_requested = 'X'.
      fp_outputparams-getpdf = 'X'.
      fp_outputparams-nodialog   = 'X'.
      fp_outputparams-dest = 'ZPDF_PRT'.
  ELSEIF
      fp_outputparams-getpdf = ''.
      fp_outputparams-dest       = lv_dest.
    IF lv_dest IS INITIAL.
      fp_outputparams-nodialog   = ''.
      ELSEIF
      fp_outputparams-nodialog   = 'X'.
         ENDIF.
    ENDIF.
  "fp_outputparams-getxml = 'X'.




  CLEAR fp_outputparams-noprint.
  fp_outputparams-device     = 'PRINTER'.
  fp_outputparams-preview    = 'X'.
  fp_outputparams-reqnew     = 'X'.
  fp_outputparams-reqimm     = 'X'.
  "fp_outputparams-dest       = lv_dest.


"BREAK-POINT.

  CALL FUNCTION 'FP_JOB_OPEN'
    CHANGING
      ie_outputparams = fp_outputparams
    EXCEPTIONS
      cancel          = 1
      usage_error     = 2
      system_error    = 3
      internal_error  = 4
      OTHERS          = 5.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.


ENDFORM.



Code:

FORM make_form CHANGING lv_pdf_binary TYPE xstring.

  DATA: p_tnapr_sform TYPE na_fname VALUE 'Z_J_3R_M2_CONTEXT_1'. "'ZBOX_PRINT_LABEL',


  CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
    EXPORTING
      i_name     = p_tnapr_sform
    IMPORTING
      e_funcname = ls_function.

  IF sy-langu = 'R'.
    fp_docparams-langu = 'R'.
    fp_docparams-country = 'RU'.
  ENDIF.

* Формирование данных формуляра

*BREAK-POINT.

  CALL FUNCTION ls_function
    EXPORTING
      /1BCDWB/DOCPARAMS = fp_docparams
      form_data         = gs_content
    IMPORTING
      /1BCDWB/FORMOUTPUT = fp_formoutput
    EXCEPTIONS
      usage_error       = 1
      system_error      = 2
      internal_error    = 3.

lv_pdf_binary = fp_formoutput-pdf.

ENDFORM.




Code:
FORM close_job.

  CALL FUNCTION 'FP_JOB_CLOSE'
    EXCEPTIONS
      usage_error    = 1
      system_error   = 2
      internal_error = 3
      OTHERS         = 4.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

ENDFORM.

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пн, сен 23 2013, 10:56 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
А если не заполнять "fp_outputparams-device = 'PRINTER'."?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Пн, сен 23 2013, 11:53 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
То же самое

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Ср, сен 25 2013, 17:32 
Начинающий
Начинающий

Зарегистрирован:
Пн, авг 26 2013, 14:28
Сообщения: 13
Orgazm написал:
То же самое


ФМ CONVERT_OTF.

А вообще все лучше на sdn.sap.com искать - там все есть и много реальных спецов.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Ср, сен 25 2013, 17:45 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
А без бинарника - печать и предпросмотр работают? Интерфейс формуляра соответвует gs_content?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получить бинарник PDF
СообщениеДобавлено: Чт, сен 26 2013, 08:35 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 182
Пол: Мужской
Я же говорю - если тестировать сам фм печати - то он не работает с job_open и job_close, без них - все отлично.
А если тестировать этот фм вставленный в другую транзакцию, то он работает только с job_open и job_close.

_________________
crusty написал(а):
Логистика - понятие растяжимое


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

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


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

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


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

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