ディスカッション

NetSuiteの保存検索やレポートをマスターするための究極のガイドである分析センターを使用して、データの力を最大限に活用しましょう。複雑さを単純化し、組織の真の可能性を解き放ちます。今すぐ分析センターに参加して、新たな高みを目指しましょう!
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Update: Narrative Insights has been restored and is now available.

Narrative Insights is Temporarily Unavailable due to an Infrastructure Issue. Learn how This Impacts Your Account and What to Expect While the Feature is Disabled.

SuiteScriptを使用して、開始日と終了日に基づいて顧客に関連付けられたすべての請求書を一覧表示し、サブリストに追加する

編集済:Jun 2, 2025 2:48PM SuiteCloud / カスタマイズ

適用

製品: NetSuite 2021.1

シナリオ

SuiteScriptを使用して、開始日と終了日をフィルターとして使用して、顧客のすべての請求書を取得したい。

解決策

この特定の記事では、カスタムレコードとスクリプトの両方を利用しています。まず、以下の手順に従ってカスタムレコードを作成する必要があります。

  1. カスタマイズゼーション> リスト、レコード、およびフィールド> レコードの種類プ> 新規作成に移動します。カスタムレコードのタイトルを入力して保存します。
  2. カスタムレコードを再度編集し、カスタムレコードの種類ページで新しいフィールドをクリックします
  3. 開始日(種類:日付)と終了日(種類:日付)のフィールドを追加します
  4. 保存します

次に、スクリプトを使用する必要があります。ここでは、ユーザーイベントスクリプトとクライアントスクリプトの両方を使用します。この実装では、1つのファイルがユーザーイベントスクリプトとクライアントスクリプトの両方に使用されます。次のコードスニペットを確認してください。

ユーザーイベントスクリプト:

function beforeLoad(type, form, response)
{
    if(type == "create")
    {
        form.setScript('customscript166');
        var orders = form.addSubList('custpage_orders', 'inlineeditor', 'Orders');
        orders.addField('custpage_check','checkbox', 'Select');
         orders.addField('custpage_ordernum','select', 'Order#','transaction').setDisplayType('disabled');
         orders.addField('custpage_invoiced','date', 'Invoiced').setDisplayType('disabled');
         orders.addButton('custpage_customerinvoices', 'Search Invoices ', 'search_invoices()');
    }
}



クライアントスクリプト:

function search_invoices()
{
    	var customer = nlapiGetFieldValue('custrecord26');
	var startdate = nlapiGetFieldValue('custrecord23');
  	var enddate = nlapiGetFieldValue('custrecord24');

    	if(customer != null && customer != '')
    	{
        	var filter = new Array();
	        var columns = new Array();

        	filter[0] = new nlobjSearchFilter('entity', null, 'anyof', customer);
	        filter[1] = new nlobjSearchFilter('mainline', null, 'is', 'T');
        	filter[2] = new nlobjSearchFilter('trandate', null, 'within', [startdate, enddate]);

	  

ようこそ!

サインイン

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

登録

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

リーダーボード

コミュニティの達人

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

今週のリーダー

今月のリーダー

歴代リーダー