見出し画像

【SuiteScript】基本と開発の流れ

こんにちは!
コグラフ株式会社のNetSuite事業部です。
以前、NetSuiteの開発言語である「SuiteScript」について紹介しました。
今回は、SuiteScriptの言語としての基本と開発の流れを大まかに説明していきたいと思います。

「こんな人に読んでほしい!」

話が少し専門的・技術的になるので下記の人を想定して説明していきます。

・業務系アプリの開発・支援に興味がある人
・ERP導入を検討している社内システム担当の人
・プログラミング学習中の人


SuiteScript基本

JavaScriptベースのプログラミング言語

以前の記事でも紹介しましたが、SuiteScriptはJavaScriptがベースとなっているため、通常のJavaScriptのデータ型を使用することができます。
それに加え、NetSuite固有の「レコード」「レコード参照」「フィールド参照」「保存検索」などのデータ型をSuiteScriptのモジュールとして使用することができます。

APIとイベント

NetSuiteでは豊富なAPIライブラリが用意されています。前述のNetSuite固有のデータ型を使用するのもこの「API」を使います。
この「API」はSuiteScriptの中心的な機能の1つで、NetSuiteのデータへのアクセスやビジネスロジックやUIを操作することができます。

また、レコードの「作成」「更新」「削除」「検索」などのNetSuiteで発生する様々なイベントに応答するアクションを開発することができます。
例えば、発注書や請求書などのレコードの特定の項目が更新されたときに関係者に通知を飛ばす、ような機能を作成することができます。

SuiteScript 1.0 と SuiteScript 2.0

SuiteScriptを開発する際に、SuiteScript 1.0またはSuiteScript 2.0のバージョンを指定します。2.0は1.0の改良版です。
SuiteScript 2.0では、
・クラスや継承、アロー関数、let/constなどの使用
・モジュール機能を使用し、スクリプトファイルをモジュールに分割
・オブジェクト指向プログラミング
が可能になっています。


開発~テストの流れ

1.スクリプトの作成

SuiteScriptのコーディングをします。この時作成されるのは「.js」ファイルです。
要件定義に従って、ビジネスロジックやデータ統合、カスタマイズなどの実装を行います。

2.スクリプトレコードの作成

実際にNetSuite上で開発したSuiteScriptを動作させるには、「スクリプトレコード」を作成する必要があります。そのために、NetSuiteのWeb画面にログインし、「Customization」->「Scripting」->「Scripts」を選択し、スクリプトレコードを作成します。
その際に、スクリプトタイプやSuiteScriptのAPIバージョンやスクリプトIDなどのプロパティが保持されます。

3.スクリプトのデプロイレコードの作成

2.の手順で作成したスクリプトレコードを選択し、デプロイします。
デプロイする際に、
・デプロイ名
・スクリプトタイプ
・スクリプトの実行許可
・スクリプトの実行される場所
・スクリプトのトリガーの設定
・ステータス
を行います。

スクリプトタイプによって、トリガーの設定を適切に行う必要があります。
例えば、ユーザーイベントスクリプトの場合、レコードがロードされる際に動作するのか、レコードが保存される際に動作するのかを正しく選択する必要があります。

4.テストとデバッグ

デプロイ後に実際にスクリプトを動作させ、テストおよびデバッグを行います。
スクリプトコンソールやデバッグを使用し、ログやレコードを確認しながらスクリプトが要件に合致しているかをチェックします。

スクリプトを修正する際には、
1. スクリプトレコードに紐付けられている「.js」のファイルをNetSuiteのファイルキャビネット上で直接修正
2. アップロード元のファイルを更新し、アップロード仕直す
のいずれかの方法で行います。


以上、SuiteScriptの基本と開発からテストの流れを説明しました。
この記事が何かの役に立てれば幸いです。