【JPIERE-0450】デスクトップクラスのプラグイン化

 オープンソースのERP iDempiereでは、Systemコンフィグ設定で、デスクトップクラスを差し替えられるようになっています。しかしながら、そのクラスはorg.adempiere.ui.zkのプラグインプロジェクトに配置されている必要があります。

 そのため、JPiereではorg.adempiere.ui.zkのプラグインプロジェクト以外にも、デスクトップクラスを配置して、DefaultDesktopクラスを差し替えられるようにしました。

 

デスクトップクラスのプラグイン化のカスタマイズ箇所

デスクトップクラスをプラグイン化するために、AdempiereWebUIクラスを、JPiereモディスケーションズ(JPMS)として、下記のように修正しています。

ADempiereWebUI
ADempiereWebUI

デスクトップクラスのプラグイン作成方法

◆システムコンフィグ設定:ZK_DESKTOP_CLASS

デスクトップクラスは、システムコンフィグ設定に設定します。

システムコンフィグ設定
システムコンフィグ設定

【補足説明】フォームウィンドウへのズーム

フォームウィンドウへズームしたい場合は、システムコンフィグ設定で、ZK_DESKTOP_CLASSの名称の検索キーに、jpiere.plugin.webui.desktop.JPiereFormWindowZoomDesktopを設定して下さい。

◆IDesktopクラスの実装

デスクトップクラスは、IDesktopクラスを実装してください。

◆コンポーネント定義

”ZK”_DESKTOP_CLASS"プロパティーに、デスクトップクラスをパッケージ名から記述してください。

<?xml version="1.0" encoding="UTF-8"?>

<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" name="JPiereDefaultDesktop">

   <implementation class="org.adempiere.webui.desktop.DefaultDesktop"/>

  <property name="ZK_DESKTOP_CLASS

                                           type="String">org.adempiere.webui.desktop.DefaultDesktop</property>

   <service>

      <provide interface="org.adempiere.webui.desktop.IDesktop"/>

   </service>

</scr:component>

カスタマイズ情報

デスクトップクラスをプラグイン化した事に伴い、フォームウィンドウへのズーム処理を、フォームウィンドウのプラグインプロジェクト内で完結させるようにしました。

jpiere.modeification.org.adempiere.ui.zkフラグメントプロジェクト

◆org.adempiere.webui.AdempiereWebUIクラスの追加

◆org.adempiere.webui.factory.IFromWindowZoomFactoryクラスの削除

 org.adempiere.webui.factory.IFromWindowZoomFactoryクラスを削除して、jpiere.plugin.webui.formwindowプロジェクトのjpiere.plubin.webui.window.factoryパッケージに移動しました。

◆DefaultDesktopクラスから、フォームウィンドウへのズーム処理の削除

◆コンポーネントJPiereDefaultDesktop.xmlの追加

フォームウィンドのプラグインプロジェクト

◆jpiere.plugin.webui.window.factory.IFromWindowZoomFactoryクラスの追加

◆jpiere.plugin.webui.desktop.JPiereFormWindowZoomDesktopクラスの追加

フォームウィンドウにズームさせたい場合に、使用するデスクトップクラス。

◆コンポーネントJPiereFormWindowZoomDesktop.xmlの追加

関連するカスタマイズ