はじめに
NetSuiteの標準フィールドでは、表示形式を自由に変更できない場合があります。
例えば「値そのものは残し、表示の形式だけを変えたい」という場合は、スクリプトを使わずにカスタムフィールドと数式(計算式)を組み合わせることで対応できます。
今回は、既存のフィールドの値をもとに表示用のカスタムフィールドに数式を設定し、値を形式変更して自動表示する方法を説明します。
考え方
以下、対応の基本方針です。
- 既存の標準フィールドの値は変更しない
- 表示用のカスタムフィールドを新たに作成する
- そのカスタムフィールドに数式を設定し、既存フィールドの値を形式のみ変更して表示する
この方法であれば、標準フィールド自体の設定には手を加えずに、見た目だけを整えた値を別途表示できます。
設定手順
ステップ1:カスタムフィールドの作成
新しいカスタムフィールド(エンティティフィールドやトランザクションフィールドなど)を作成します。
- 種類:自由形式テキスト(加工後の値が文字列にの場合)
- 適用先:対象のトランザクション
種類は、表示したい結果の内容に応じて選びます。
数値を返すなら「数式(数値)」、日付を返すなら「数式(日付)」、通貨を返すなら「数式(通貨)」など、結果に合わせて選択が必要です。
ステップ2:数式の設定
作成したフィールドの「認証とデフォルト」タブで、以下の2点を設定します。
- 「計算式」にチェックを入れる
- 数式を入力する
ステップ3:「値を保存」のチェックを外す
特に重要なポイントです。「値を保存」のチェックを外すことで、レコードを開くたびに数式が再計算され、常に最新の値が表示されるようになります。
チェックを入れたままにすると、最初に計算された値がそのまま固定されてしまい、参照元のフィールドの値が更新された際にカスタムフィールドに反映されなくなります。
注意点
「値を保存」を外したフィールドは他の数式から参照できない
「値を保存」のチェックを外したフィールド(数式で都度計算するフィールド)は、他のカスタムフィールドの数式内から参照することができません。参照しようとするとフィールドが見つからずエラーになります。
新規入力された値は保存できない
表示用フィールドは値を保存しない設計のため、新規レコード作成時の入力欄としては機能しません。データの入力自体は、引き続き元の標準フィールドで行う必要があります。そのため、標準フィールド側の「クイック追加」などの入力用設定は、そのまま残しておくのが適切です。
一覧画面には反映されない
「値を保存」を無効にしているフィールドは、一覧(リストビュー)には表示されません。個別のレコード画面を開いたときにのみ、計算結果が表示される仕様です。一覧でも確認したい場合は、保存検索を別途作成して対応します。
まとめ
既存フィールドの値を変更せずに、表示形式だけを整えたい場合、カスタムフィールドと数式(計算式)の組み合わせが有効です。
スクリプトを使わずに設定でき、レコードを開くたびに自動的に再計算されるため、常に最新の値を表示できます。
