Отчет BI из Oracle APEX распечатывается как пустой при обнаружении специальных символов - PullRequest
1 голос
/ 12 марта 2019

Я использую Oracle APEX версии 5.1, и пользователи пытаются распечатать отчеты BI из Oracle APEX.В настоящее время мы используем «APEX_UTIL.DOWNLOAD_PRINT_DOCUMENT» (Подпись 4) для печати данных, присутствующих на странице APEX, в отчет BI.

Все работает нормально, пока программа не встретит «&» или «<» или«>» в ​​тегах XML.Когда в «XML BI report» или «APEX_UTIL.DOWNLOAD_PRINT_DOCUMENT» (я упомянул оба, потому что я не знаю, где возникает проблема) встречаются эти символы, отчет выдается пустым.Если вышеупомянутые символы удаляются вручную из тегов XML, отчет BI работает нормально и распечатывается.

Шаги для воспроизведения: 1) Создайте данные XML, как показано в примере ниже.См. «&» В XML-теге «GMRISKMITIGATION» (вы можете заменить это «&» на «<» или «>», и вы получите тот же результат)

<?xml version="1.0"?>
<ROWSET>
<ROW>
  <ID>1234</ID>
  <ADDITIONAL_COMMENTS>New "test" front test test test test test test.</ADDITIONAL_COMMENTS>
  <GMRISKMITIGATION> test test  test  test &  test.</GMRISKMITIGATION>
</ROW>
</ROWSET>

2) Теперь у вас естьданные, а затем с помощью процедуры, приведенной ниже из «Кнопка» на странице APEX, чтобы загрузить отчет BI.

APEX_UTIL.DOWNLOAD_PRINT_DOCUMENT (p_file_name => 'myreport',p_content_disposition => 'attachment', p_report_data => l_clob, /* XML data in clob format */ p_report_layout => l_file_as_clob,p_report_layout_type => 'rtf',
  p_document_format => 'rtf');

3) Теперь, если вы нажмете кнопку, отчет BI будет загружен успешно, но он будетбыть пустым.

1 Ответ

1 голос
/ 14 марта 2019

Наконец-то я смог решить эту проблему.Я смог решить проблему с символами, все, что я сделал, это заменил «&» на «% 26», и все работает нормально, и теперь мне не нужно также конвертировать символы из собственного набора символов, это улучшило производительность, так какхорошо.

l_clob := replace(l_clob,'&','%26');

Пожалуйста, найдите ниже URL для дальнейшей справки.

https://community.oracle.com/message/14039814#14039814 https://community.oracle.com/message/3756610#3756610

...