メッセージ
メッセージについて記載します。
基本説明
メッセージとは、画面ラベル名やシステムメッセージのことを指します。
メッセージには以下の種類があり、ファイルを分けて管理します。
- MESSAGE:画面上に表示する処理結果の表示やエラー、ポップアップに表示する文字列
- CAPTION:項目名やボタンのラベルに利用する文字列
- LOG:システムログなどにシステムの動作結果を表示する文字列
実装概要
-
サーバサイド処理におけるMESSAGE出力やLOG出力、htmlでのCAPTIONの設定については、「スクリプト開発モデル」の「メッセージ」を利用し実装します。
詳細については、下記ガイドを参照してください。参考ガイドintra-mart Accel Platform スクリプト開発モデル プログラミングガイド - メッセージの定義
https://accel-archives.intra-mart.jp/2021-winter/document/iap/public/development/script_programming_guide/texts/application/international/language/index.html#メッセージの定義 -
クライアントサイド処理でサーバー通信を行わずメッセージを利用する場合、DPS for Sales 独自機能を利用します。
利用例-
クライアントサイドでサーバ通信前に確認メッセージの呼び出しを行う場合
ex.「登録します。よろしいですか?」 -
クライアントサイドバリデーションにエラー項目名を出す場合
ex.「追加項目Aは入力必須です」 ※「追加項目A」というcaptionが対象
-
-
クライアントサイド処理でメッセージを利用するには、以下の対象ファイルにメッセージを追加してください。
- /jssp/product/src/ssfa/common/csjs_message/caption.js
- /jssp/product/src/ssfa/common/csjs_message/message.js
実装手順
-
メッセージプロパティファイルを作成します。
参考ガイドintra-mart Accel Platform スクリプト開発モデル プログラミングガイド - メッセージの定義
https://accel-archives.intra-mart.jp/2021-winter/document/iap/public/development/script_programming_guide/texts/application/international/language/index.html#メッセージの定義 -
メッセージプロパティファイルで設定したメッセージIDを利用して、メッセージを呼び出します。
-
サーバサイドjavascript
「スクリプト開発モデル」の標準API(MessageManager.getMessage())を利用します。・ログ出力例「[E.RSFA.0004]コメントの削除処理に失敗しました。」
logger.error(MessageManager.getMessage("E.SSFA.0004", MessageManager.getMessage("CAP.Z.SSFA.COMMENT"), result.errorMessage)); -
HTML
IMARTタグを利用します。・実装例:ラベル名「活動日」を設定する
<label class="ssfa-item-label"><imart type="message" id="CAP.Z.SSFA.ACTIVITY_DAY"/></label> -
ク ライアントjavascript
DPS for Sales の共通関数を利用してメッセージを取得します。
・MESSAGEの取得⇒scmnGetMessage(key)関数:パラメータ:key、返却値:message
・APTIONの取得⇒scmnGetCaption(key)関数:パラメータ:key、返却値:message・ポップアップ画面に表示するメッセージを呼び出す例「登録します。よろしいですか?」
MESSAGE:scmnGetMessage("MSG.I.SSFA.INS.CONFIRM")・案件登録ダイアログのヘッダーに表示するメッセージを呼び出す例「案件登録」
CAPTION:scmnGetCaption("CAP.Z.SSFA.MATTER_INS")
-