Текущее время: Пт, мар 29 2024, 14:25

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Проблемы с выводом PDF формуляров
СообщениеДобавлено: Вт, авг 09 2016, 10:10 
Начинающий
Начинающий

Зарегистрирован:
Сб, ноя 23 2013, 14:58
Сообщения: 23
Здравствуй, уважаемые форумчане.
Проблема такова. К программе прикручены две кнопки выводящие разные формуляры. Оба формуляра сгенирированы и сделаны в одном языке входа RU, в тесте в SFP выводятся на экран. Вот теперь самое интересное. По нажатию на одну кнопку один формуляр выводится, а по нажатию на другую кнопку второй формуляр нет. К обоим кнопкам, выводам формуляров привязаны одинаковые коды вывода на печать. Доходит до вывода диалога печати, далее нажимаешь "Предварительный просмотр" (ну я так сделал, чтобы увидеть до какого момента доходит код) - один формуляр выводится в PDF, другой нет!
Один формуляр трассируется и выводится лог, другой нет....
Тот который не выводится на экран в дебагере на точке CALL FUNCTION fm_name сваливается в
Code:
CATCH cx_root INTO w_cx_root.
      mesg = w_cx_root->get_text( ).

и дальше в
Code:
METHOD if_message~get_text .
  CALL METHOD cl_message_helper=>get_text_for_message
    EXPORTING
      text   = me
    RECEIVING
      result = result.
ENDMETHOD.

и тд.
Который выводится сваливается сразу
Code:
SFPSY-DATE = SY-DATUM.
SFPSY-TIME = SY-UZEIT.
SFPSY-USERNAME = SY-UNAME.

%CONTROL_PARAMETERS-LANGU = /1BCDWB/DOCPARAMS-LANGU.
%CONTROL_PARAMETERS-REPLANGU1 = /1BCDWB/DOCPARAMS-REPLANGU1.
%CONTROL_PARAMETERS-REPLANGU2 = /1BCDWB/DOCPARAMS-REPLANGU2.
%CONTROL_PARAMETERS-REPLANGU3 = /1BCDWB/DOCPARAMS-REPLANGU3.
%CONTROL_PARAMETERS_INIT.
CALL FUNCTION 'FPCOMP_GET_XFP_STATUS'
  IMPORTING
    E_XFP_STATUS = %SFPXFPOPT.

И тд.
Все коды обработки и вывода на печать совершенно одинаковы, как в order_prepare и в order_m4, так и в print_ord и в print_m4. За исключением интерфейсов к PDF формулярам, потому что разные документы.
Code:
WHEN 'ORDER'.           " Распечатка заявок
      PERFORM order_prepare .
      PERFORM print_ord USING 'ZPR_PDF'.  " Печать Non-Stock Issue
      CLEAR: head_pdf, t_pdf[].
    WHEN 'PRIH'. " Печать Приходного ордера
      PERFORM order_m4.
      PERFORM print_m4 USING 'ZJM_4_PDF'. "'ZJRM4_PDF'. " Печать Приходного ордера
      CLEAR: head_m4_pdf, m4_pdf[].

Не могу понять в чем проблема. Помогите разобраться.

Провел сейчас тест. Тот формуляр, который не выводится на экран и на печать, в SFP при тесте в отладчике проваливается как надо в
Code:
SFPSY-DATE = SY-DATUM.
SFPSY-TIME = SY-UZEIT.
SFPSY-USERNAME = SY-UNAME.

%CONTROL_PARAMETERS-LANGU = /1BCDWB/DOCPARAMS-LANGU.
%CONTROL_PARAMETERS-REPLANGU1 = /1BCDWB/DOCPARAMS-REPLANGU1.
%CONTROL_PARAMETERS-REPLANGU2 = /1BCDWB/DOCPARAMS-REPLANGU2.
%CONTROL_PARAMETERS-REPLANGU3 = /1BCDWB/DOCPARAMS-REPLANGU3.
%CONTROL_PARAMETERS_INIT.
CALL FUNCTION 'FPCOMP_GET_XFP_STATUS'
  IMPORTING
    E_XFP_STATUS = %SFPXFPOPT.

И PDF форма выводится и все видно.
В программе одна кнопка работает. Другая - НЕТ. Клик и молчек. Если в тесте формуляр проходит, почему в программе нет?


Последний раз редактировалось peleken1972 Вт, авг 09 2016, 18:55, всего редактировалось 1 раз.

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Проблемы с выводом PDF формуляров
СообщениеДобавлено: Вт, авг 09 2016, 11:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1246
Начните с простого: посмотрите сообщение возвращаемого эксепшена. Кстати, подозреваю, что оно там ни разу не cx_root. Т.е. стоит обрабатывать его почеловече, т.е. с правильным типом(если я ничего не путаю, синт. проверка вам должна на ваш код warning выдавать)

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблемы с выводом PDF формуляров
СообщениеДобавлено: Вт, авг 09 2016, 15:26 
Начинающий
Начинающий

Зарегистрирован:
Сб, ноя 23 2013, 14:58
Сообщения: 23
Кодер написал(а):
Начните с простого: посмотрите сообщение возвращаемого эксепшена. Кстати, подозреваю, что оно там ни разу не cx_root. Т.е. стоит обрабатывать его почеловече, т.е. с правильным типом(если я ничего не путаю, синт. проверка вам должна на ваш код warning выдавать)


Изображение

Дальше я плыву. Что это может означать не знаю. В этом ли проблема?

Синтаксическая проверка выявила ошибки. Но факт - один формуляр выводится, второй нет.
Изображение


Последний раз редактировалось peleken1972 Вт, авг 09 2016, 16:29, всего редактировалось 2 раз(а).

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Проблемы с выводом PDF формуляров
СообщениеДобавлено: Вт, авг 09 2016, 15:36 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1246
2 peleken1972: картинки не грузяццо

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблемы с выводом PDF формуляров
СообщениеДобавлено: Вт, авг 09 2016, 20:29 
Начинающий
Начинающий

Зарегистрирован:
Сб, ноя 23 2013, 14:58
Сообщения: 23
Переделал немного программу вывода.
И получил дамп.
Code:
ДинамОшибка            CALL_FUNCTION_PARM_MISSING
Исключ.                CX_SY_DYN_CALL_PARAM_MISSING
Дата и время           09.08.2016 21:22:25
Краткий текст
     Incorrect parameter with CALL FUNCTION.

Что произошло?
     When calling a function module, one of the parmaeters was not
     specified.

Анализ ошибки
     An exception occurred that is explained in detail below.
     The exception, which is assigned to class 'CX_SY_DYN_CALL_PARAM_MISSING', was
      not caught in
     procedure "PRINT_M4" "(FORM)", nor was it propagated by a RAISING clause.
     Since the caller of the procedure could not have anticipated that the
     exception would occur, the current program is terminated.
     The reason for the exception is:
     When calling the function module "/1BCDWB/SM00000070", one of the parameters
     needed according to the interface description was not specified.

     This parameter was "H_HEAD".

Ошибочное утверждение RAISING в интерфейсе:
     Программа                               ZPR_REC
     Include                                 ZPR_REC_PRINT_M4
     Строка                                  12
     Тип модуля                              (FORM)
     Имя модуля                              PRINT_M4

Вопрос. Что значит ... description was not specified?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Проблемы с выводом PDF формуляров
СообщениеДобавлено: Вт, авг 09 2016, 21:01 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1246
в дампе написано, что определение параметра H_HEAD не соответствует переменной, которая передается при вызове ФМ.
О! кстати, тут у меня ваши картинки подгрузились: там как раз в объекте исключения(на скриншоте) то же самое, что в вашем дампе было написано.

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблемы с выводом PDF формуляров  Тема решена
СообщениеДобавлено: Ср, авг 10 2016, 12:31 
Начинающий
Начинающий

Зарегистрирован:
Сб, ноя 23 2013, 14:58
Сообщения: 23
Кодер написал(а):
в дампе написано, что определение параметра H_HEAD не соответствует переменной, которая передается при вызове ФМ.
О! кстати, тут у меня ваши картинки подгрузились: там как раз в объекте исключения(на скриншоте) то же самое, что в вашем дампе было написано.


Сколько раз делал, сколько раз переделывал. И все равно, что-нибудь забываешь.
Параметр h_head и h_item в CALL FUNCTION fm_name не передал. Как были старые после копирования, так и остались от другого интерфейса.
Стареем, глупеем.

Все, тема закрыта!


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

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


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

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


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

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