簡體   English   中英

有沒有辦法從事件/任務的 sys_updated_by 字段中檢索用戶數據?

[英]Is there a way to retrieve User data from sys_updated_by field on Incident/Task?

是否有現成的/最佳實踐解決方案來從事件/任務表的更新者 (sys_updated_by) 字段中檢索用戶對象?

我知道一種解決方法是在 Task 上創建一個指向 User 表的自定義字段,鍵入 Reference。 然后創建自定義業務規則以在“插入/更新”上設置字段。 這是唯一的方法嗎?

current.sys_updated_by 不會進一步引用更新記錄的用戶數據。 current.sys_updated_by 是一個字符串值,其中包含源自 sys_user 表上的 user_name.sys_user 的字符串值。

但是,可以在通知或業務規則中使用“current.sys_updated_by”來獲取更新記錄的用戶的更多信息

這可以通過在郵件腳本/業務規則/通知等中執行另一個滑行查詢來完成。

例如:

var userdata = new GlideRecord("sys_user");

     userdata.addQuery('user_name', current.sys_updated_by);   
     userdata.query();

      while (userdata.next()) { 
      var email = userdata.email; // Will give you the email of the user
      }

其中“userdata”是整個用戶記錄的數組值。

你需要把你的問題放在上下文中。 你想達到什么目的?

如果您使用服務器腳本(例如業務規則),那么這很容易。 如果current是您的TaskIncident的 GlideRecord ,並且您需要 sys_user 的GlideRecord ,那么代碼是。

var grUser = new GlideRecord('sys_user');
if (grUser.get('user_name', current.sys_updated_by)) {
    // do something with grUser
}

如果您有報告需求,需要您鑽取以獲取最后更新任務的人員的用戶屬性,那么您可以將自定義字段添加到任務表並使用業務規則對其進行維護。

作為旁注, sys_updated_on不是sys_id是有原因的。 最后一個更新對象的人可能不是您的實例中的用戶。 他們可能是另一個實例中的用戶,並且通過 XML 或更新集在您的實例中更新了對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM