オープンソースのERP iDempiereでは、Systemコンフィグ設定で、デスクトップクラスを差し替えられるようになっています。しかしながら、そのクラスはorg.adempiere.ui.zkのプラグインプロジェクトに配置されている必要があります。
そのため、JPiereではorg.adempiere.ui.zkのプラグインプロジェクト以外にも、デスクトップクラスを配置して、DefaultDesktopクラスを差し替えられるようにしました。
デスクトップクラスのプラグイン化のカスタマイズ箇所
デスクトップクラスをプラグイン化するために、AdempiereWebUIクラスを、JPiereモディスケーションズ(JPMS)として、下記のように修正しています。
デスクトップクラスのプラグイン作成方法
◆システムコンフィグ設定: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クラスの追加
フォームウィンドウにズームさせたい場合に、使用するデスクトップクラス。