機械翻訳について

関連オブジェクトのフィールドへの値の割当て

関連オブジェクトのフィールドに値を割り当てるには、次のように代入演算子を使用します:

// Assume script runs in context of an Activity_c object (child of TroubleTicket_c)
// and that TroubleTicket is the name of the parent accessor
TroubleTicket.Status_c = 'Open'

子オブジェクトは一部の親行によって所有される必要があるため、TroubleTicketアクセサは、常にnullを返すのではなく、有効な親行を返すと想定できます。 これは、ActivityオブジェクトのTroubleTicket_Idフィールドの親外部キー値が必須であるという直接的な結果です。 この場合、Groovy安全なナビゲーション演算子を使用する必要は「厳密に」ではありませんが、実際には常に使用することをお薦めします:

TroubleTicket?.Status_c = 'Open'

このアドバイスに従うことで、オプションの関連オブジェクトに対するアクセサを操作した場合に、コードがNullPointerExceptionエラーで失敗することはないことが確実になります。 たとえば、SecondaryAssignee_cという名前のカスタム動的選択フィールドをActivityオブジェクトに追加し、その値がオプションであるとします。 つまり、関連する外部キー・フィールドSecondaryAssignee_Id_cがnullの場合、SecondaryAssignee_Obj_cという名前の関連アクセサ・フィールドを参照するとnullが返されます。 この場合、現在のアクティビティにセカンダリ割当て先がない場合、試行された割当てが無視されるように、safe-navigation演算子を使用する必要があります。

SecondaryAssignee_Obj_c?.OpenCases_c = caseTotal