HR ケースからナレッジ記事を作成できるようにする UI アクションの作成
ナレッジチェックボックスを HR ケースフォームに追加する UI アクションを作成します。
始める前に
アプリケーションスコープが [ヒューマンリソース (HR):Core]であることを確認してください。
手順
- 移動先 すべて > システム UI > UI アクション.
- [New] をクリックします。
-
次のフィールドに入力します。
表 : 1. [UI アクション]フォーム フィールド 説明 名前 ナレッジを作成 テーブル HR 事例 アクション名 create_knowledge - [クライアント] チェックボックスをオンにします。
- [リスト v3 互換] チェックボックスをオンにします。
- [フォームボタン] チェックボックスをオンにします。
- [Onclick] フィールドに、「createKnowledgeClient()」と入力します。
- [条件] フィールドに、「gs.getProperty("sn_hr_core.enable_kcs_hr") == 'true' && new global.CSMTableMapUtil (current).findMapByName("sn_hr_core.hr_case_kcs_article") && new global.KBKnowledge().canCreate()」と入力します。
-
[スクリプト] フィールドに次のコードを入力します。
function createKnowledgeClient() { if (g_form.modified) { alert(new GwtMessage().getMessage('You have unsaved changes. Please save them to continue.')); }else{ //Call the UI Action again but skip the 'onclick' function gsftSubmit(null, g_form.getFormElement(), 'create_knowledge'); //MUST call the 'Action name' set in this UI Action } } //Code that runs without 'onclick' //Ensure call to server-side function with no browser errors if (typeof window == 'undefined') CreateKnowledgeServer(); function CreateKnowledgeServer(){ current.update(); var map = new global.CSMTableMapUtil (current); map.findMapByName("sn_hr_core.hr_case_kcs_article"); var targetURL = map.getTargetURL(); var referenceLink = "&sysparm_collection=sn_hr_core_case&sysparm_collectionID="+current.sys_id+"&sysparm_collection_key=task&sysparm_link_collection=m2m_kb_task&sysparm_collection_related_field=kb_knowledge&sysparm_referring_url=sn_hr_core_case.do%3fsys_id%3d"+current.sys_id; if(targetURL) action.setRedirectURL(targetURL[0]+referenceLink); } - [送信] をクリックします。