簡體   English   中英

在Netsuite suitescript中將商品添加到銷售訂單

[英]add an item to a sales order in Netsuite suitescript

我正在試圖找出一個新的銷售訂單背后的代碼,該銷售訂單有一個名為“ 修復 ”的項目,並在用戶提交之前添加第二個名為“ 修復成本 ”的項目。 我有點失落,歡迎任何幫助。 我希望這個腳本在Javascript中,我會將它附加到Netsuite中的Sales Order表單中運行。

這是一個示例解決方案:

我們仍然假設項目內部ID是Repair = 100和Repair Cost = 200

function recalc(type)
{
    if(type == 'item')
    {
        var itemId = nlapiGetCurrentLineItemValue('item', 'item'); //Get the Item ID
        if(itemId == 100) //Repair Cost
        {
                //Insert item
                nlapiSelectNewLineItem('item');
                nlapiSetCurrentLineItemValue('item', 'item', 200); //Repair Cost
                nlapiSetCurrentLineItemValue('item', 'quantity', 1);
                nlapiSetCurrentLineItemValue('item', 'amount', '0.00');
                nlapiCommitLineItem('item');
        }
    }
    return true;
}

將其部署為客戶端代碼並確保該函數為Recalc。

要了解有關客戶端腳本的更多信息,請訪問: https//system.na1.netsuite.com/help/helpcenter/en_US/Output/Help/SuiteFlex/SuiteScript/SSScriptTypes_ClientScripts.html#1016773

您需要做的第一件事是獲取項目“修復”和“修復成本”的內部ID。

在這個例子中,我們假設Repair = 100和Repair Cost = 200的內部id

這是代碼:

function afterSubmit(type)
{
    if(type == 'create' || type == 'edit')
    {
        var record = nlapiLoadRecord(nlapiGetRecordType(), nlapiGetRecordId()); //Load the record

        //Loop to all sublist item
        var count = record.getLineItemCount('item');
        for(var i = 1; i <= count; i++)
        {
            var item = record.getLineItemValue('item', 'item', i); //This will return the internal id of the item
            if(item == 100) //Item is equal to 100; insert one item
            {
                record.insertLineItem('item', i);
                record.setLineItemValue('item', 'item', i, 200); //Repair Cost internal id
                record.setLineItemValue('item', 'quantity', i, 1); //You should put some quantity; depending on your account setup all required fields should be set here.
            }
        }

        //Submit the changes
        nlapiSubmitRecord(record, true);
    }
}

要了解套接字API以及銷售訂單中公開的字段,請查看此Netsuite幫助指南:

https://system.netsuite.com/help/helpcenter/en_US/RecordsBrowser/2012_2/Records/salesorder.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM