megaphone
SuiteWorld 2026の登録が開始されました。今なら300ドル節約できます。 今すぐ登録しましょう

ディスカッション

NetSuiteの保存検索やレポートをマスターするための究極のガイドである分析センターを使用して、データの力を最大限に活用しましょう。複雑さを単純化し、組織の真の可能性を解き放ちます。今すぐ分析センターに参加して、新たな高みを目指しましょう!
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Keep an eye out for upcoming NetSuite events, including meetups, workshops, and webinars. These sessions are a great way to connect with peers, learn from experts, and stay current on the latest NetSuite updates and best practices. Registration links are provided in each event.

NetSuite管理者向けヒント | SuiteScriptを使って顧客レコードからコンタクトを削除する方法

Customer(顧客)Contact(コンタクト)の関係管理は、UI 上では単純に見えるかもしれません。しかし、SuiteScriptを使用する場合、理解しておくべき重要な制限があります。

Customer(顧客)レコード上のContact(コンタクト)サブリスト(contactroles)は静的サブリストとして扱われており、そのため特定の操作はスクリプト化できません。

SuiteScript でできないこと:

Contacts サブリストは静的サブリストであるため、以下の制限があります。:

  • SuiteScript を使用して、Customer(顧客)の Contacts(コンタクト)サブリストからプログラムで Contact を削除することはできません。
  • removeLine() のようなメソッドは、このサブリストでは失敗します。
  • 以下のようなエラーが発生することがあります。:

“You have attempted an invalid sublist or line item operation...”

これは、NetSuite における静的サブリストの管理方法による仕様通りの動作です。

SuiteScript でできること:

Customer(顧客)から直接 Contact(コンタクト)を切り離すことはできませんが、以下のようなサポートされている代替手段があります。:

1. UI 上でマニュアル管理する

管理者は、NetSuite の UI 上で Customer(顧客)レコードを開き、Contact (コンタクト)の追加や削除をマニュアルで行うことができます。

2. Contact(コンタクト)レコードを「無効」にする

目的が「Customer(顧客)レコードに表示させない」「使用不可にする」ことであれば、この方法は安全に自動化可能です。

サンプル:SuiteScript 2.xを使いContact(コンタクト)を「無効」にする
/**
 * @NApiVersion 2 .x
 * @NScriptType ScheduledScript 
 */
define(['N/record', 'N/log'], function(record, log) {
    function execute(context) {
        var contactId = 123;  // 対象となる Contact ID に置き換えてください
        try {
            // Contact を無効に設定
            record.submitFields({
                type: record.Type.CONTACT,
                id: contactId,
                values: {
                    isinactive: true
                }
            });
            log.debug({
                title: 'Contact無効化完了',
                details: 'Contact ' + contactId + 'を無効化しました。'
            });
        } catch (e) {
            log.error({
                title: '操作失敗',
                details: e.message
            });
        }
    }
    return { execute: execute };
});

ここに記載されているサンプルコードは、法律で許可される最大限の範囲で、いかなる種類の保証もなく「現状のまま」提供されます。Oracle + NetSuite Inc. は、サンプルコードの開発プラットフォームへの実装や、独自のWebサーバー構成の使用において、開発者の個々の成功を保証または保証しません。

Oracle + NetSuite Inc. は、サンプルコードに関連するデータまたは情報の使用、使用結果、正確性、適時性、完全性に関して、いかなる保証も行わず、すべての保証(明示的または黙示的)を否認します。特に、商品性、特定の目的への適合性、コードに関連するサービスまたはソフトウェアに関する保証を否認します。

Richard James Uri - SuiteCloud | WMS Tech | SuiteCommerce Advanced

----

Admin Tips.gif

ようこそ!

サインイン

完全な詳細を表示するには、サインインしてください。

登録

アカウントがありませんか?ここをクリックして始めましょう!

リーダーボード

コミュニティの達人

第2四半期 (4月~6月 2026)

今週のリーダー

今月のリーダー

歴代リーダー