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

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


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

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


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

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