2017-02-23 54 views
0

上午大師,通過SuiteScript從採購訂單創建項目收益

我在創建一個模塊來處理多PO合併出貨量(FX進口)的過程中,編寫腳本接收多個POS每到岸成本線。

我使用SuiteScript API 1.0

然而,當我創建項目收據記錄(以及包括PO#在createdfrom領域創造從紅外到PO的鏈接,複製PO的過程中,線紅外線,我不斷得到SSS_INVALID_SUBLIST_OPERATION錯誤

有問題的代碼如下:。

  // ** set body fields 
     receiptRec.setFieldValue('location',purchRec.getFieldValue('location')); 
     receiptRec.setFieldValue('entity',purchRec.getFieldValue('entity')); 
     receiptRec.setFieldValue('createdfrom',purchRec.getFieldValue('internalid')); 
     receiptRec.setFieldValue('currency',purchRec.getFieldValue('currency')); 
     receiptRec.setFieldValue('exchangerate',purchRec.getFieldValue('exchangerate')); 
     receiptRec.setFieldValue('isbasecurrency',purchRec.getFieldValue('isbasecurrency')); 
     receiptRec.setFieldValue('exchangerate',purchRec.getFieldValue('exchangerate')); 
     receiptRec.setFieldValue('landedcostperline','T'); 

     log ('Receipt Record:'); log(receiptRec); 
     // ** copy item lines 
     var POlines = purchRec.getLineItemCount('item'); 
     for (line=1 ; line<=POlines; line++) { 
      var fulfill = purchRec.getLineItemValue('item','fulfillable',line); log('Fulfill?? '+fulfill) 
      if (fulfill == 'T') { 
       log('Fill From PO Line #'+line); 
       receiptRec.selectNewLineItem('item');                  log('Debug 1'); 
       receiptRec.setCurrentLineItemValue('item','item',purchRec.getLineItemValue('item','item',line));   log('Debug 2'); 
       receiptRec.setCurrentLineItemValue('item','itemreceive','T',line);           log('Debug 3'); 
       receiptRec.setCurrentLineItemValue('item','quantity',purchRec.getLineItemValue('item','quantity',line)); log('Debug 4'); 
       receiptRec.setCurrentLineItemValue('item','rate',purchRec.getLineItemValue('item','rate',line));   log('Debug 5'); 
       receiptRec.setCurrentLineItemValue('item','taxcode',purchRec.getLineItemValue('item','taxcode',line));  log('Debug 6'); 
       receiptRec.setCurrentLineItemValue('item','units',purchRec.getLineItemValue('item','units',line));   log('Debug 7'); 
       receiptRec.commitLineItem('item');                   log('Debug 8'); 
      } 
     } 

的錯誤是在selectNewLineItem('item')點觸發

receiptRec是新創建的itemreceipt記錄。 purchRec是現有的採購訂單記錄。

拔出我留下的小毛髮!

我在這裏錯過了什麼?

感謝幫助!

回答

4

您無法在Netsuite中「創建」新的收貨記錄。您需要使用nlapiTransformRecord('purchaseorder', purchaseorderid, 'itemreceipt')將採購訂單「轉換」爲項目收據。這將自動複製所有行項目,然後您可以遍歷它們以完全更改數量或刪除行,但不能添加新行。

請參閱this link以獲取更多信息。

相關問題