If a Work Order was created from a Sales Order, the Work Order will show the Sales Order Number in the Created From field.
A Transaction Body Field with the purpose to get the Sales Rep of the Sales Order on the Work Order has been created with the following details:
Type = List/Record
Store Value = T
Applies To = Work Order
Under Sourcing & Filtering:
Source List = Created From
Source From = Sales Rep
Actual Result when creating a Work Order from Sales Order: The Sourcing&Filtering of Created From:Sales Rep doesn't populate on the Work Order.
Adding fields from the linked Sales Order in Transaction Body Fields using Sourcing&Filtering, Source List = Created From, Source From = Sales Rep(or any other field) is not possible for the moment. Defect 167043 has been logged for the same.
Desired result can be achieved through script:
- Remove the Sourcing&Filtering for the Transaction Body Field defined
- Create a User Event Script with Before Submit Function to retrieve Sales Rep value from Sales Order and set it on the Work Order:
function updateWO_beforeSubmit(type){ //retrieve the Sales Order ID from which the WO has been created var createdFrom = nlapiGetFieldValue('createdfrom'); if (createdFrom != null) { //load the Sales Order details var order = nlapiLoadRecord('salesorder', createdFrom); //get the SO Sales Rep var salesRep = order.getFieldValue('salesrep'); //set the value of the Sales Rep on the current WO nlapiSetFieldValue( 'custbody_sales_rep', salesRep); } }
The script needs to be deployed on Work Order record so that the Sales Rep to be set on the linked Work Order right before saving it upon creation of Sales Order.
Detailed steps on creating and deploying scripts in NetSuite can be found in SuiteAnswers Article Running Scripts in NetSuite Overview.
No comments:
Post a Comment