intra-mart Accel Kaiden! プログラミングガイド 第21版 2024-04-01

4.1.1. 機能説明

本項では、経費明細ガジェットを参考に、ガジェット(経費旅費)機能の概要や構成を解説します。

4.1.1.1. 概要

申請書(IM-Workflow)で利用されることを目的に作られたガジェットを申請書ガジェットと呼んでいます。
各申請書ガジェットデータのデータ登録や更新、画面表示処理を行う機能です。
intra-mart Accel Kaiden!の申請書ガジェット機能をプログラミングする際には、次のモジュールが必要です。
  • intra-mart Accel Kaiden! 基盤モジュール
  • intra-mart Accel Kaiden! IM-Workflow連携モジュール

4.1.1.1.1. バリエーション違いの互換性

intra-mart Accel Kaiden!にて提供している申請書ガジェットは、
ガジェットクラスが同じであればガジェットバリエーションが異なる場合もデータの互換性を担保しています。
実際にはテーブルは同一のものを利用しており、
バリエーションが異なるものは画面レイアウト(や若干の入力項目)の差異があると位置づけています。

4.1.1.1.2. 申請書ガジェットインスタンスの採番方法

前述の通り、ガジェットクラス・ガジェットバリエーションはそのガジェットの種類などを表します。
ガジェットインスタンスは、同一ガジェットの同時利用を行えるようにするための連番です。
ただし、申請書機能では、ガジェットインスタンスはガジェットクラスごとの連番で割り振られます。
  • 採番ルール
ガジェットクラス ガジェットバリエーション ガジェットインスタンス
gadgetA v01 0
gadgetA v02 1
gadgetB v02 0
gadgetB v01 1
gadgetA v02 2

4.1.1.2. 構成

intra-mart Accel Kaiden!にて提供している申請書ガジェットは、申請書(IM-Workflow)で利用できます。
利用するガジェットはintra-mart Accel Kaiden!の申請書マスタにて設定します。

コラム

申請書マスタの操作については、intra-mart Accel Kaiden! 経費旅費 / 管理者操作ガイドを参照してください。

4.1.1.2.1. 画面構成

経費明細ガジェットでは、次のような画面構成です。
  • 申請画面表示時
    経費明細ガジェット画面です。
    経費明細ガジェットに値を入力する場合は行を挿入する必要があります。
../../../../_images/gadget_workflow_001.png

4.1.1.3. 申請書ガジェットマスタデータについて

申請書ガジェットの情報はデータベース上で保持します。
情報は以下のテーブルで保持し、以下すべてのテーブルデータを総称して「申請書ガジェットマスタデータ」と呼びます。
  • ガジェットマスタ(k10m_gadget)
  • ガジェット概要マスタ(k10m_gadget_description)
  • ガジェットタグマスタ(k10m_gadget_tags)
  • ガジェットサーフィスマスタ(k10m_gadget_surface)
  • ガジェットブロックマスタ(k10m_gadget_block)
  • ガジェットフィールドグループマスタ(k10m_gadget_fld_grp)
  • ガジェットフィールドマスタ(k10m_gadget_field)

コラム

GadgetBuilderで申請書ガジェットを作成しインポートすると、申請書ガジェットマスタデータにデータが投入されます。

4.1.1.3.1. ガジェットマスタ

申請書ガジェットの根幹となる情報を保持するマスタです。
ガジェットクラス
ガジェットの種別をあらわします。
intra-mart Accel Kaiden!標準では日当明細ガジェットは「allowanceDetail」、宿泊明細ガジェットは「lodgeDetail」です。
ガジェットバリエーション
同一ガジェット種別で画面レイアウト違いを識別します。
intra-mart Accel Kaiden!標準では日当明細ガジェット(国内向け)は「v01」、日当明細ガジェット(海外向け)は「v02」です。
JSPパス
JSPファイルのパスを設定します。
JAVAクラスパス
JAVAクラスパスを設定します。
サーフィスキー
ガジェットのタイトルとなるサーフィスキーを設定します。
後述するガジェットサーフィスマスタのサーフィスキーと紐づけます。
ソートキー
ソートキーを設定します。

4.1.1.3.2. ガジェット概要マスタ

申請書ガジェットの概要情報を保持するマスタです。
ガジェット名
ガジェット名を設定します。
使用するロケール分のレコードデータを定義する必要があります。
ガジェット概要
ガジェット概要を設定します。
ガジェットマスタメンテナンス画面のツールチップです。
使用するロケール分のレコードデータを定義する必要があります。

4.1.1.3.3. ガジェットタグマスタ

ガジェットの属性を保持するマスタです。
タグ
タグを設定します。

コラム

以下のタグが存在し、設定することでガジェットに属性が付与され、ガジェット属性ごとの振る舞いを定義できます。
intra-mart Accel Kaiden!標準のガジェットには以下以外のタグも設定されていますが、将来拡張用のタグです。
タグ分類 タグ名 説明
制約 constraintDuplicationSelf
申請書内で自身と重複を禁止します。
制約 constraintDuplicationClass
申請書内で同ガジェットクラスと重複を禁止します。
対象申請書タイプ appAdvance
対象申請書タイプ「事前申請」を設定します。
申請書マスタメンテナンスで申請書タイプ「事前申請書」を選択した場合、選択できるガジェットです。
対象申請書タイプ appSettle
対象申請書タイプ「精算申請」を設定します。
申請書マスタメンテナンスで申請書タイプ「精算申請書」を選択した場合、選択できるガジェットです。
対象申請書タイプ appNormal
対象申請書タイプ「一般」を設定します。
申請書マスタメンテナンスで申請書タイプ「一般」を選択した場合、選択できるガジェットです。
対象申請書タイプ appBill
対象申請書タイプ「請求書払申請」を設定します。
申請書マスタメンテナンスで申請書タイプ「請求書払申請書」を選択した場合、選択できるガジェットです。
SPサポート spSupport
SP(スマートフォン)画面をサポートする場合に設定します。
SPサポート対象外 spNoSupport
SP(スマートフォン)画面をサポートしない場合に設定します。
チェックルール checkRule
申請書マスタメンテナンスのチェックルール画面で入力チェックの設定を可能にする場合設定します。
申請書マスタメンテナンスの詳細は、『intra-mart Accel Kaiden! 経費旅費 / 管理者操作ガイド』を参照してください。
検索画面のSPサポート spSearch
SP(スマートフォン)画面をサポートする検索画面の場合に設定します。

4.1.1.3.4. ガジェットサーフィスマスタ

ガジェットのサーフィス情報を保持するマスタです。
サーフィスキーに対して、システムで使用するロケール分のレコードデータを定義する必要があります。

4.1.1.3.5. ガジェットブロックマスタ

ガジェットのブロック情報を保持するマスタです。
ブロックIDに対して、ブロックタイプ、ソートキー、サーフィスキーを設定します。
ブロックID
ブロックIDを設定します。
ブロックタイプ
「normal」「detail」のいずれかを設定します。
明細行を保持しない場合は「normal」を設定します。
明細行を保持する場合は「detail」を設定します。
ソートキー
ソートキーを設定します。将来拡張用の項目です。
サーフィスキー
ガジェットのタイトルとなるサーフィスのキーを設定します。

コラム

ブロックIDは、ガジェット入力データを保持するトランザクションテーブル1つに対応して定義します。
例えば intra-mart Accel Kaiden!標準の「交際明細ガジェット」の場合、ブロックIDを3つ定義しています。
ブロックID ブロックタイプ 対応するトランザクションテーブル
entInfTable normal 交際明細テーブル
entInfOthDtlTable detail 交際明細先方明細テーブル
entInfOurDtlTable detail 交際明細当社明細テーブル

4.1.1.3.6. ガジェットフィールドグループマスタ

ガジェットのフィールドグループ情報を保持するマスタです。
役割としては以下の通りです。
  • 「ガジェットフィールド」のグルーピング
  • 「ガジェットブロック」との紐づけ
  • 必須タイプの設定
ブロックID
ガジェットブロックマスタのブロックIDに紐づけて設定します。
フィールドグループID
フィールドグループIDを設定します。
サーフィスキー
ガジェットサーフィスマスタのサーフィスキーに紐づけて設定します。
ここで紐づけたサーフィスは申請書マスタメンテナンスのガジェット項目の任意/必須切り替え画面のラベルに設定されます。
必須タイプ
項目の任意/必須を設定します。
設定値は以下の通りです。
「0:変更可能(デフォルト任意)」
「1:変更可能(デフォルト必須)」
「a:常時任意」
「b:常時必須」
から選択します。
入力タイプ
項目の入力/ラベルを設定します。
設定値は以下の通りです。
「0:設定変更可」
「a:ラベル(変更不可)」
「b:テキスト(変更不可)」
「c:テキスト(処理時入力不可・変更不可)」
ソートキー
ソートキーを設定します。将来拡張用の項目です。

コラム

必須タイプが「変更可能」である場合は申請書マスタメンテナンスで項目の任意/必須を切り替えることができます。

コラム

入力タイプが「設定変更可」である場合は申請書マスタメンテナンスで項目のテキスト/ラベルを切り替えることができます。
画面種別が「申請」「一時保存」「申請書(起票案件)」の場合は変更できません。

注意

項目の任意/必須は申請書マスタメンテナンスで切り替えられるようにするため、
ガジェットの入力データを保持するトランザクションテーブルには基本的にNotNull制約を付与しないでください。

4.1.1.3.7. ガジェットフィールドマスタ

ガジェットのフィールド情報を保持するマスタです。
ブロックID
ガジェットブロックマスタのブロックIDに紐づけて設定します。
フィールドキー
フィールドキーを設定します。
フィールドグループID
ガジェットフィールドマスタのフィールドグループIDに紐づけて設定します。
サーフィスキー
ガジェットサーフィスマスタのサーフィスキーに紐づけて設定します。
ここで紐づけたサーフィスは申請書ガジェットのラベルに設定されます。
必須タイプ
項目の任意/必須を設定します。
設定値は以下の通りです。
「0:変更可能(デフォルト任意)」将来拡張用の項目です。
「1:変更可能(デフォルト必須)」将来拡張用の項目です。
「a:常時任意」「b:常時必須」
「z:申請書ガジェットフィールドグループマスタの設定を引き継ぐ」
入力タイプ
項目の入力/ラベルを設定します。
設定値は以下の通りです。
「0:設定変更可」将来拡張用の項目です。
「a:ラベル(変更不可)」
「b:テキスト(変更不可)」
「c:テキスト(処理時入力不可・変更不可)」
「z:申請書ガジェットフィールドグループマスタの設定を引き継ぐ」
ソートキー
ソートキーを設定します。将来拡張用の項目です。