Discussions

Stay up-to-date with the latest news from NetSuite. You’ll be in the know about how to connect with peers and take your business to new heights at our virtual, in-person, on demand events, and much more.
Now is the time to ask your NetSuite-savvy friends and colleagues to join the NetSuite Support Community! Refer now! Click here to watch and learn more!
Update your Profile with your Support type to get your Support Type badge.
Expand your NetSuite knowledge by joining our Ask A Guru Live sessions. RSVP on this event now.
Uncover the power of data with the Analytics Hub —your ultimate guide to mastering NetSuite Saved Searches and Reports. Simplify the complex and unlock your organization's true potential. Dive into the Analytics Hub now and soar to new heights!
To help you get the most out of your 2025.2 Release Preview account, review the topics outlined in the 2025.2 Release Preview Guide.
Nominate Your Peers for NetSuite Support Community's Choice of the Quarter! Submit your nomination today.
Intelligent Payment Automation version 1.0.3 is now available in the SuiteApp Marketplace. The SuiteApp, powered by BILL, lets you automate payments, manage vendor details, and bank account information within NetSuite. Learn more

Script to update purchase price

edited Dec 2, 2019 5:57PM in SuiteCloud / Customization 6 comments

Howdy

Having trouble changing the value of the purchase price per vendor on an item record via a script running on line validation on a purchase order. Any pointers? It's the bit in red that won't do it's bit. The exact same piece of code that doesn't work here, works in a script on the item record, but I guess that is because it is in edit mode, as opposed to the record being called from with a purchase order. We have multiple vendors enabled.

 function line_val()    {     var pqty = nlapiGetCurrentLineItemValue('item','quantity')   var gamt = nlapiGetCurrentLineItemValue('item','grossamt')   var pprice = Math.round(gamt / pqty / 1.1 * 10000)/10000   var lastpurch = Math.round(nlapiGetCurrentLineItemValue('item','lastpurchaseprice') * 10000) / 10000   var diff = pprice - lastpurch      if (diff != 0)       {     var changeprice=confirm('The purchase price is different from the item record. Would you like to update this purchase price on the item record?');     if (changeprice==true)      {       var id = nlapiGetCurrentLineItemValue('item','item')       var item = nlapiLoadRecord('inventoryitem', id);       item.setFieldValue('cost', pprice); // this works - changes the cost field on the item but not the vendor pricing       <span style="color:'"Red"'">nlapiSelectLineItem('itemvendor', '1');       nlapiSetCurrentLineItemValue('itemvendor', 'purchaseprice', pprice);       nlapiCommitLineItem('itemvendor');       

Howdy, Stranger!

Log In

To view full details, sign in.

Register

Don't have an account? Click here to get started!

Leaderboard

Community Whiz

Quarter 4 (Oct-Dec 2025)

This Week's Leaders

This Month's Leaders

All Time Leaders