Меню

Получение кириллических PDF-документов в системах SAP

|

В данной статье описывается порядок получения PDF-документов, содержащих символы кириллицы, из систем SAP. Получение PDF-документов из системы SAP рассматривается в узком смысле, а именно как результат конверсии двух типов объектов SAP — ABAP-списков и OTF-объектов (SAPscript). Рассматриваются предпосылки и приводятся примеры практического применения такой конверсии.


 

Прусов Михаил, фрилансер. С 1998 года работает консультантом SAP по базису и администрированию. Имеет сертификаты: Technology Consultant SAP NetWeaver'04 — SAP WebAS for Oracle, IBM eServer Certified Specialist: p5 and pSeries Technical Sales Support. В качестве фрилансера работает более 7 лет. Только за период 2007-2009 годов более чем у 20 заказчиков успешно осуществил инсталляцию ландшафта решений SAP, базисную поддержку проекта внедрения, внедрение функциональности SAP Solution Manager Operations и обучил специалистов Клиента. Проводит консультации по вопросам производительности, отказоустойчивости, безопасности продуктов SAP.

 

В данной статье описывается порядок получения PDF-документов, содержащих символы кириллицы, из систем SAP. Получение PDF-документов из системы SAP рассматривается в узком смысле, а именно как результат конверсии двух типов объектов SAP — ABAP-списков и OTF-объектов (SAPscript). Рассматриваются предпосылки и приводятся примеры практического применения такой конверсии.

Категории: ABAP, Adobe, PDF

1. Ограничения и предпосылки

Получение PDF-документов из системы SAP рассматривается в узком смысле, а именно как результат конверсии двух типов объектов SAP — ABAP-списков и OTF-объектов (SAPscript). Конверсия может осуществляться автоматически, например при отправке сообщения во внешнюю почтовую систему, либо явно, например при подготовке PDF-документа на базе существующего SPOOL-запроса.

Основным моментом, который относится к проблеме является то, что в общем случае стандартная система SAP не может корректно формировать PDF-документы, содержащие символы кириллицы. Это обусловлено двумя причинами:

  • стандартная таблица кодировки Adobe не включает в себя символы из кодировки ISO 8859-5,
  • стандартная система SAP не содержит каких-либо шрифтов в национальных кодировках и может подготавливать документы только в стандартной кодировке Adobe.

 

Проблема обуславливается второй причиной, поскольку первая лежит за пределами системы SAP.

2. Встраиваемые и внешние шрифты в PDF-документе

Для отображения национальных символов в PDF-документе, которые не включены в стандартную таблицу кодировки Adobe, возможны два подхода:

  • в PDF-документ явно добавляются все необходимые для отображения текста шрифты. Такие шрифты, в терминах Adobe, называются «встраиваемым» (embeded);
  • в PDF-документ включается лишь информация о требуемых для отображения шрифтах. Поиск необходимых/подходящих шрифтов осуществляется в момент просмотра документа на рабочей станции пользователя.

 

Оба подхода поддерживаются системами SAP. Выбор варианта - это компромисс между размером получаемого PDF-документа и его универсальностью. Ниже даются характеристики обоих вариантов с этих точек зрения.

2.1. Встраиваемые шрифты

Как уже отмечалось, при использовании встраиваемых шрифтов вся информация, необходимая для отображения символов, включается в PDF-документ.

2.1.1. Универсальность

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

Метод встраивания шрифтов наименее требователен к версии системы SAP: он доступен начиная с версии 3.1 системы SAP R/3.

Метод встраивания позволяет использовать в PDF-документе как шрифты Adobe Type 1, так и TrueType шрифты.

Таким образом, метод может использоваться для создания максимально переносимых PDF-документов, практически во всех версиях систем SAP и со всеми видами шрифтов.

2.1.2. Размер документа

Применение встраиваемых шрифтов приводит к «разбуханию» получаемого документа. Размер документа увеличивается на размер, равный сумме размеров встраиваемых шрифтов. Следует принимать во внимание то, что в документ включается весь шрифт, даже если используется всего один символ из набора.

Формирование документов с небольшой информативной частью или документов с большим числом стилей и начертаний шрифтов приводит к тому, что основную часть размера документа составляют встроенные шрифты.

2.2. Внешние шрифты

Вместо встроенного шрифта PDF-документ может содержать только информацию о том, какой шрифт необходим для корректного отображения — ссылаться на внешний шрифт.

2.2.1. Универсальность

Применение внешних шрифтов делает документ чувствительным к настройкам и платформе рабочий станции пользователя. Возникает опасность, что в отдельных случаях документ будет либо отображаться неправильно, либо его вообще невозможно будет отобразить.

Возможность использования внешних шрифтов появилась в версии 4.6 системы SAP R/3, хотя на текущий момент это уже не является серьёзным ограничением. Внешними в системе SAP могут быть объявлены только шрифты TrueType.

Таким образом, применение внешних шрифтов требует специального тестирования всех вариантов платформ рабочих станций и может использоваться только со шрифтами TrueType.

2.2.2. Размер документа

Возможность ссылаться на внешние шрифты позволяет получать компактные PDF-документы. В документы включается информативная часть, описание разметки документа и перечень необходимых для отображения документа шрифтов. Сами шрифты в документ не включаются.

PDF-документы с внешними шрифтами могут быть особенно полезными при формировании большого числа документов c небольшой информативной частью или документов с использованием большого числа семейств и стилей шрифтов.

2.3. Программные шрифты SAP

В предыдущем разделе был рассмотрен механизм включения информации о шрифтах национальных символов в PDF-документ. Здесь мы рассмотри возможности систем SAP по поддержке такого включения.

Для работы со шрифтами, отличными от стандартных, в системах SAP вводится понятие программного шрифта (softfont). Стандартная система SAP не содержит ни одного программного шрифта и поэтому необходимо:

  • подготовить требуемые шрифты;
  • выполнить их загрузку в систему SAP.

 

2.3.1. Подготовка шрифтов

В большинстве случаев системе SAP необходимо три семейства шрифтов — один моноширинный шрифт и два пропорциональных шрифта: шрифт с засечками (serif) и шрифт без засечек (sans serif). Семейство моноширинных шрифтов в системе SAP называется COURIER, или производным от него именем (например, COURCYR). Семейство пропорциональных шрифтов с засечками называется TIMES или производным от него именем (например, TIMECYR). Семейство пропорциональных шрифтов без засечек называется HELVE или производным от него именем (например, HELVCYR). Каждый шрифт имеет четыре начертания: обычный, курсив, полужирный и полужирный курсив. Таким образом, в итоге, требуется подготовить 12 различных шрифтов.

В зависимости от способа включения информации о шрифте в PDF-документ, а также версии системы SAP на тип шрифта и его кодировку могут накладываться ограничения. В версиях до 4.6C применимы только шрифты Adobe Type 1 в кодировке ISO 8859-5. Для под-ключения внешних шрифтов могут применяться только шрифты TTF.

В этом документе рассматриваются два набора шрифтов: шрифты ОС Solaris и шрифты ОС Windows. Характеристики каждого набора приведены в таблице ниже:

Характеристика

ОС Solris

ОС Windows

Источник

Шрифты поставляются в дистрибутиве операционной системы ОС Solaris.

Шрифты поставляются в дистрибутиве операционной системы ОС Windows.

Тип

Adobe Type 1

TrueType

Кодировка

ISO 8859-5

Unicode

Версия SAP

любая

от 4.6C

Способ включения

встраиваемый

встраиваемый либо внешний

Моноширинные шрифты

Courier

Courier

Пропорциональные шрифты с засечками

Times

Times

Пропорциональные шрифты без засечек

Arial

Arial

Начертания обоих наборов шрифтов подобны и сформированы на базе одного источника— начертаний Monotype.

Существуют и другие источники качественных и доступных шрифтов, например пакет PSCYR из архива CTAN (www.ctan.org).

2.3.2. Загрузка шрифтов

Во всех версиях систем SAP загрузка программных шрифтов выполняется с помощью программы RSTXPDF2. На Рис.1 показан селекционный экран, который используется в системах начиная с версии 4.6C.

Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland

У вас уже есть учетная запись?

Войти

Обсуждения Количество комментариев4

Комментарий от  

Сергей Трапезников

  |  04 октября 2010, 16:54

Хорошо было бы разложить по полкам настройку SAP GUI Java для Linux для отражения PDF документов. Есть ли практический

Комментарий от  

Сергей Трапезников

  |  04 октября 2010, 16:57

Хорошо бы написать статью про настройку печати PDF для SAP GUI Java для Lunix. Насколько я понимаю, теоретически это возможно, практически темный лес.

Комментарий от  

Денис Мужжухин

  |  22 октября 2010, 16:02

блестящая статья-инструкция. много раз обращался к ней на различных проектах.

Комментарий от  

Денис Данчин

  |  21 января 2014, 15:00

Вот нота где можете загрузить Unicode True type шрифты.  
1817893 - Monotype fonts for SAP customers