ServiceNow addEncodedQuery()で複雑クエリ条件を検索するサンプル

概要
addEncodedQuery()メソッドを用いることで、ANDやORを含む複雑なクエリ条件をencoded queryと呼ばれる形式で
表した文字列で指定することができます。
GlideRecord.addEncodedQuery(“") の後に GlideRecord.query() を呼び出すと、
すべての行が返されます。クエリメソッドは、SQL SELECT ステートメントに似ています。
SQL では、"SELECT * FROM foo WHERE X" を使用する場合、値 X はクエリを表します。
クエリ値が指定されていない場合は、すべてのレコードが返されます
(例: SELECT * FROM foo)。


ユーザーテーブルにアクティブかつユーザーIDに"admin"または" arkuser"を含むユーザを検索する

サンプルコード

var gr = new GlideRecord('sys_user');
gr.addEncodedQuery("active=true^user_nameLIKEarkuser^ORuser_nameLIKEadmin");
gr.query();
while (gr.next()) {
  // 処理コード

 

ServiceNow

Posted by arkgame