ポータル画面でのライフサイクルイベントケースの表示について

777_
Tera Contributor

ポータル画面でのライフサイクルイベントケースの表示について2点質問です。

 

1,Task/To doタブでタイムライン(画像赤枠内)が対象者と申請者の画面では表示されると思うのですが、

そのほかの関係する人で確認した際に表示されないことがあり、関係者全員表示されるようにしたいと考えています。

ここはどこで制御されているのか教えていただきたいです。

 

2,申請内容がAdditional Detailタブ(画像青枠内)で表示されると思うのですが、

1と同様そのほかの関係する人で確認した際に表示されないことがあり、こちらも関係者全員表示されるようにしたいと考えています。

ここもどこで制御されているのか教えていただきたいです。

1 件の受理された解決策

iwai
Giga Sage

@777_ 

どのような構造になっているのか調べることはできます。そこからスクリプトを調べることで状況がつかめてきます。一度以下の順番で構造を調べてみてはいかがでしょうか。


管理者権限のあるユーザーでESCポータルの自分の要求(My Requests)ページのライフサイクルイベントのチケットを表示して、タイムラインのあたりでCTRLキーを押しながらマウスの右クリックして、ウイジェットのカスタマイズを表示をクリック。
タイムラインの右上のウイジェットの「i」マークをクリックして「HRM Task Parent」のウイジェット診断画面のウイジェットを開くボタンをクリック。
そこで表示されているウイジェットが今回調べるべきウイジェットになります。

ウイジェットのHTMLとサーバースクリプトを見ると、タイムラインの表示条件が判明します。

 

以下のスクリプトはサーバースクリプトの一部です。タイムラインを表示する判定の部分を見ると、
条件は、チケットページであること、
チケットを起票したユーザー、または、「対象者に設定されたアクティビティーを許可する」
ライフサイクルイベントであること。
ユーザーによって異なる部分があるとしたら、起票したユーザーか「対象者に設定されたアクティビティーを許可する」
この部分か、チケットページで見ていない。
このあたりでしょうか。
ここの判定処理はインスタンスによって違うかもしれません。実際の値を確認してみるのも良いと思います。

 

    var util = new hr_PortalUtil(grCase);
    var isOpenedForView = util.isOpenedForView();
    data.taskFilterPanel = $sp.getWidget("hrm-task-filter-panel", {
        sys_id: grCase.getUniqueValue(),
        onTicketPage: data.onTicketPage
    });
    data.taskListwidget = $sp.getWidget("hrm-task-list", {
        sys_id: grCase.getUniqueValue(),
        onTicketPage: data.onTicketPage
    });
    data.isLECase = false;
	
//ここがタイムラインを表示する判定
    if (data.onTicketPage && (isOpenedForView || util.allowDisplayActivitySetToSubjectPerson()) && util.hasLifecycleEvents()) {
//ここがタイムラインを表示する条件に一致した場合の処理
        data.isLECase = true;
        data.lifecycleWidget = $sp.getWidget("hrm-activity-set-progress", {
            sys_id: grCase.getUniqueValue(),
            isOpenedForView: isOpenedForView,
            onTicketPage: data.onTicketPage
        });
    }

 

 

iwai_1-1711273430922.png

追加:HRM Task Parent 最終的にこちらのウイジェットに条件が書いてあります。

iwai_2-1711273874098.png

 

元の投稿で解決策を見る

2件の返信2

iwai
Giga Sage

@777_ 

どのような構造になっているのか調べることはできます。そこからスクリプトを調べることで状況がつかめてきます。一度以下の順番で構造を調べてみてはいかがでしょうか。


管理者権限のあるユーザーでESCポータルの自分の要求(My Requests)ページのライフサイクルイベントのチケットを表示して、タイムラインのあたりでCTRLキーを押しながらマウスの右クリックして、ウイジェットのカスタマイズを表示をクリック。
タイムラインの右上のウイジェットの「i」マークをクリックして「HRM Task Parent」のウイジェット診断画面のウイジェットを開くボタンをクリック。
そこで表示されているウイジェットが今回調べるべきウイジェットになります。

ウイジェットのHTMLとサーバースクリプトを見ると、タイムラインの表示条件が判明します。

 

以下のスクリプトはサーバースクリプトの一部です。タイムラインを表示する判定の部分を見ると、
条件は、チケットページであること、
チケットを起票したユーザー、または、「対象者に設定されたアクティビティーを許可する」
ライフサイクルイベントであること。
ユーザーによって異なる部分があるとしたら、起票したユーザーか「対象者に設定されたアクティビティーを許可する」
この部分か、チケットページで見ていない。
このあたりでしょうか。
ここの判定処理はインスタンスによって違うかもしれません。実際の値を確認してみるのも良いと思います。

 

    var util = new hr_PortalUtil(grCase);
    var isOpenedForView = util.isOpenedForView();
    data.taskFilterPanel = $sp.getWidget("hrm-task-filter-panel", {
        sys_id: grCase.getUniqueValue(),
        onTicketPage: data.onTicketPage
    });
    data.taskListwidget = $sp.getWidget("hrm-task-list", {
        sys_id: grCase.getUniqueValue(),
        onTicketPage: data.onTicketPage
    });
    data.isLECase = false;
	
//ここがタイムラインを表示する判定
    if (data.onTicketPage && (isOpenedForView || util.allowDisplayActivitySetToSubjectPerson()) && util.hasLifecycleEvents()) {
//ここがタイムラインを表示する条件に一致した場合の処理
        data.isLECase = true;
        data.lifecycleWidget = $sp.getWidget("hrm-activity-set-progress", {
            sys_id: grCase.getUniqueValue(),
            isOpenedForView: isOpenedForView,
            onTicketPage: data.onTicketPage
        });
    }

 

 

iwai_1-1711273430922.png

追加:HRM Task Parent 最終的にこちらのウイジェットに条件が書いてあります。

iwai_2-1711273874098.png

 

777_
Tera Contributor

わかりやすく回答していただき、ありがとうございます。

こちらえも同様の画面が確認できカスタマイズに生かせそうです。