2017-11-11 20 views
0

私は以下の問題があります。Pysnow - テキスト値以外のものに基づいて更新レコードを実行するにはどうすればよいですか?

私はServiceNowにレコードを入力するWebページ上でPythonを実行するプログラムを作成しました。私はヘルプデスクで働いています。例えば、パスワードのリセットを自動化することは大きな助けになります。私はPython用のPysnowモジュールを使ってこれらのレコードを作成することができますが、それ以外のものは正常に動作しますが、設定項目などの値はテキスト名のみで入力できます。これは問題があります。なぜなら、多くの値が異なる会社、請求書などを持ち、それらの名前が同じであるため、クエリがランダムな会社になるからです。ユーザーは、会社A、会社Xのタイムカード、会社Eの項目などである可能性があります。私は、特定のフィールドを持つレコードフェッチすると

Command: r.get_one(fields=['u_configuration_item']) 

を私は応答としてこれを取得:

{'link': 'https://xxxxx.service 
now.com/api/now/table/core_company/f7a9a64430b070c8e017981c4ba7a0e7', 
'value': 'f7a9a64430b070c8e017981c4ba7a0e7'} 

私は応答のうち、辞書を作る例えば試してみてください。

dict = {'value': 'xxx', 'link': 'xxx'} 
'u_configuration_item': dict 

エラーは表示されませんが、空白のフィールドを使用してレコードを作成するだけです。


次のコードの種類が正常に動作しますが、それはただこの「ランダムな値は、」顧客のために右ではありません会社/請求書が付属しています。

s = pysnow.Client(instance='xxxx', user='xxxx',password='xxxx') 
result = r.update({'u_configuration_item': 'Random Value'}) 
print(result['number']) 

私はグーグルで情報を入力しようとしましたが、今後は進めません。

答えて

0

私はこれを前に試していましたが、「ランダム値」をsys_idに置き換えるだけで、それが動作するすべてのレコードにユニークな答えが見つかりました。私は永続的だったし、試し続けて、ほとんど諦めようとしていたことがうれしいです。

関連する問題