Title: カスタマイズ版プロジェクト記事の定義や設定

ここでは、DocSDK379: プロジェクトのカスタマイズ方法 (標準の「プロジェクト」を改造して「カスタマイズ版プロジェクト」を作る方法) に引き続いて、カスタマイズ版のプロジェクト記事の定義方法を解説します。

DocSDK2: カスタマイズ版プロジェクトの投稿/編集フォームの作成方法 では…



を定義しました。それに対して、この記事では…



を定義します。



エントリー クラス



「記事の種類」は、「エントリー クラス」(記事クラス)として定義します。

定義ファイルの設置パス



既存のプロジェクトのエントリークラスは、server フォルダ下の config/entry/classes にある goal.properties ファイルで定義されています。

この config/entry/classes フォルダが、エントリークラスの定義ファイルの置き場になっています。

よって、カスタマイズ版プロジェクトである「製品保守案件」のエントリークラスの定義ファイルは、プラグインのフォルダ jp.example.maintprod の下の、同じ階層である config/entry/classes フォルダの中に作成します。

投稿/編集フォームの定義ファイルで、エントリークラスの名前は「maiantprod」だ、と指定しました

# このフォームを使って投稿される記事のエントリークラス
entry_class=maintprod


そこで、この config/entry/classes フォルダの中に maintprod.properties という名前のファイルを作成します。



定義ファイルの内容



テキストエディターで開き、次の内容をコピー&ペーストしてください。

# 「goal」のエントリークラスの定義ファイルから設定を引き継ぐ。
__inherits=goal

# このエントリークラスの表示名
display_name=Maintnance Product

# このエントリークラスに、エントリーのclassプロパティではなく
# カスタム エントリー タイプを当てはめたい場合はtrueを選択する。
# ここではカスタム エントリータイプの「goal」ではなく、
# 「maintprod」というclassを当てはめるので「false」を指定する。
prefer_custom_entry_type=false

# カスタム エントリー タイプは「goal」にする。
custom_entry_type=goal

# この記事を投稿する際に使用するフォームの名前
newentry_form=maintprod

# この記事を編集する際に使用するフォームの名前
editentry_form=maintprod

# この記事を編集する際に使用するフォームの名前
editentry_singleentry_form=maintprod

# サイドバーの「新しい…」ボタン(リンク)のラベル
newentry_link_text=New Maint Product

# サイドバーの「…の編集」ボタン(リンク)のテキスト
editentry_link_text=Edit Maint Product

# 投稿/編集するフォームで使用する、タグ関係の部品。
# これらの部品は、別途 config/data/labelnamebuckets でも定義する。
labelname_buckets=tags,goal,milestone,status,maintprod_catetory

# 投稿/編集するフォームで使用する、リレーションシップ関係の部品。
# これらの部品は、別途 config/data/referencebuckets でも定義する。
reference_buckets=

# 独自の日付入力欄を使用する場合、
# そのプロパティ名や「終日」の扱いについて記述する。
standard_date_maintprod_contract_date_entry_property_name=maintprod_contract_date
standard_date_maintprod_contract_date_allday_entry_property_name=maintprod_contract_date_allday
standard_date_maintprod_contract_date_allday_entry_property_default=true

# 履歴の差分を調べるための関数を指定する。
diffsdl=jp.example.maintprod.sdl.token.diff


詳しくはコメントを読んで頂くとして、エントリークラスの定義ファイルは、次のようなことを決めるものであることがわかります。





Attachments:
image01.png
関連記事
Article: DocSDK436 (permalink)
Date: 2020/05/04; 23時04分04秒 JST
Author Name: TeamPage サポート
Author ID: jpbo