When trying to get the value of the Parent Company field using {customer.parent} via Workflow for a child customer of 2-levels or greater, the top-level customer will be returned, not the immediate parent customer.
A workaround for this is to use the Client-side (i.e. After Field Edit, Before User Submit, etc.) formula below:
nlapiLookupField('customer', nvl(nullIfEmpty(nlapiGetFieldValue('entity')), -1), 'parentcustomer.internalid')
The above formula utilizes the 'parentcustomer' Search Join specified in the SuiteScript Record Browser instead of the 'parent' Field Reference.
Unfortunately, the above formula does not work for Server Triggers. So, if Server Triggers must be used, the only workaround is to copy the value of the Parent Company field into a Custom Field and then reference that custom field in the Workflow instead.
Let us know what you think about this topic by leaving a comment or using the reaction buttons below.
-Jack