Показаны сообщения с ярлыком SAP NW CE. Показать все сообщения
Показаны сообщения с ярлыком SAP NW CE. Показать все сообщения

вторник, 3 сентября 2013 г.

Добавление нового языка в xlf NWDS на примере казахского\ Adding a new language to xlf NWDS

Ранее я описал проблему с добавлением неподдерживаемого языка в приложения Web Dynpro for Java и невозможность выбора казахского языка в среде NWDS  (http://sakryukin.blogspot.com/2013/06/sap-as-java-adding-new-locale-in-sap-as.html). 

В этой статье расскажу о добавлении языка в среду разработки NWDS. Чтобы получилось как на рисунке:





Для реализации необходимо будет разобрать один jar-файл из плагинов NWDS, который отвечает за интернализацию среды.

1. Нахожу библиотеку sap.com~tc~i18n~s2x~src~impl.jar, ее расположение будет примерно следующим: D:\eclipse\plugins\com.sap.s2x_2.0.0.120824043930\lib\sap.com~tc~i18n~s2x~src~impl.jar

2. Декомпилирую этот архив (конкретно нам нужен один файл - s2xDatatypes.xsd )

3. Создаю Java проект из полученных исходников в eclipse (NWDS, NetBeans, IntelliJ IDEA или где вам привычней работать), это условие необязательно - оно для удобства 



4. Нахожу файл s2xDatatypes.xsd (com\sap\s2x\validation\schema\s2xDatatypes.xsd) и добавляю в него строки:


<xsd:enumeration value="ru"> <xsd:annotation> <xsd:appinfo> <s2xAPI:iniInfo group="langtype" valueInternal="ruRU" valueExternal="Russian"/> </xsd:appinfo> <xsd:documentation>Russian</xsd:documentation> </xsd:annotation> </xsd:enumeration> <xsd:enumeration value="kk"> <xsd:annotation> <xsd:appinfo> <s2xAPI:iniInfo group="langtype" valueInternal="kkKK" valueExternal="Kazakh"/> </xsd:appinfo> <xsd:documentation>Kazakh</xsd:documentation> </xsd:annotation> </xsd:enumeration> <xsd:enumeration value="sk"> <xsd:annotation> <xsd:appinfo> <s2xAPI:iniInfo group="langtype" valueInternal="skSK" valueExternal="Slovakian"/> </xsd:appinfo> <xsd:documentation>Slovakian</xsd:documentation> </xsd:annotation> </xsd:enumeration>

5. Следующим шагом необходимо сделанные изменения собрать в архив. Для этого пишу простой ant-скрипт, следующего содержания:

<project>
    <target name="clean">
        <delete dir="build"/>
    </target>
    <target name="compile">
        <mkdir dir="build/classes"/>
        <copy srcdir="src" destdir="build/classes"/>
    </target>
    <target name="jar">
        <mkdir dir="build/jar"/>
        <jar destfile="build/jar/i18n.jar" basedir="build/classes">
            <manifest>
        <attribute name="Author" value="Sakryukin"/>
        </manifest>
        </jar>
    </target>
    <target name="run">
        <java jar="build/jar/i18n.jar" fork="true"/>
    </target>
</project>

6. Заменяю исходный jar новым и перезапускаю среду

После выполненных действий в среде NWDS будет доступен казахский язык (Kazakh). 

Но при сборке приложения NWDS отбросит файлы локализации kk и в итоговом архиве не удастся увидеть казахский язык. А что поделать - это SAP :)

Как побороть эту последнюю проблему  - опишу в следующей статье.

пятница, 7 июня 2013 г.

Добавление новой локали в приложения SAP AS Java на примере казахского языка \ Adding a new locale in SAP AS Java applications on the example of the Kazakh language


Несколько статей будет посвящено расширению функционала SAP, связанного с интернализацией (i18n) приложений  SAP AS Java, а именно применению недокументированных возможностей. Платформа, которая будет рассматриваться - 7.3(1). С небольшими изменениями приемлемо и для 7.0*

Проблема выявилась, когда возникла необходимость переводить приложения, разработанные для платформы CE (BPM, Web Dynpro), на казахский язык. SAP официально не поддерживает казахскую локаль, поэтому пришлось воспользоваться нетрадиционным программированием.

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

среда, 1 мая 2013 г.

Простая сортировка данных в Таблице для Web Dynpro Java 7.3 / simple sorting in a Table for Web Dynpro Java 7.3

Недавно встал вопрос о сортировке данных в таблицах Web Dynpro ( IWDTable ). Интерфейс есть, а реализации - нет.
На SCN'е,  да и на просторах интернета много статей, наглым образом позаимствованных у SAP, но выдаваемых уже от своего имени, все в основном для версии 7.0. Их отличительная черта - это тонны кода, предоставляемого SAP.

Но как оказалось,реализовать сортировку  - намного проще :)

вторник, 5 марта 2013 г.

Добавление казахских шрифтов в SAP Adobe Document Service / Adding kazakh fonts in SAP Adobe Document Service


Возникла проблема при добавлении казахских символов в генерируемые AdobeForms. Делал все как велит SAP, но не работает - отображаются квадратики вместо казахских букв.

Описание решения под катом.


NWDI.Developers permissions

Во время настройки прав доступа в NWDI SAP рекомендует включать группы NWDI.Developers и NWDI.Administrator.

Этих прав зачастую не хватает  и приходится разбираться куда  все-таки пытается получить доступ NWDI и какие полномочия ему для этого нужны

суббота, 3 ноября 2012 г.

WSDL is containing document/literal operations which does not conform with WS-I Basic Profile 1.0 R2204


При деплое (deploy)  компонента содержащего Web Service (sda, sca и тд), может возникнуть ошибка  "WSDL is containing document/literal operations which does not conform with WS-I Basic Profile 1.0 R2204."

О чем же говорит эта ошибка и как ее побороть? 

суббота, 13 октября 2012 г.

Динамическое создание и скачивание offline Adobe Interactive Forms на WebDynpro for Java/ Dynamically creating and downloads offline Adobe Interactive Forms on WebDynpro for Java

     Динамическое создание и загрузка offline Adobe Forms может вам потребоваться в том случае, если имеется один общий Adobe документ, но в зависимотси от условий значение некоторых полей будет изменяться.

Разработка будет вестись на SAP AS JAVA 7.31 и NWDS соответствующей версии.

Предварительное требование:


  • Установленный и настроенный ADS
  • Adobe LCD 9.8 (можно другую версию)
  • Настроенный NWDS