Version: eXtendAlphaBroder, eXtendESP-DE (eXtendASI), eXtendPS-DE, eXtendSAGE-DE, eXtendSanMar, all versions.
Audience: Administrator, Developer
Overview
eXtendTech Field Mapping records are used during item constitution in NetSuite from integration bundles such as eXtendAlphaBroder, eXtendESP-DE (eXtendASI), eXtendPS-DE, eXtendSAGE-DE, eXtendSanMar, where field values are needing to be defaulted, or where data mapping/transformation needs to occur prior to creating the item within NetSuite.
There are 5 types of item mappings which can be handed:
- Direct Mapping: This mapping requires
an input field and an output field. In the input field, you
will specify the item field that you are receiving in the integration response and the output field (NetSuite item field internal id) where the value
from integration response will be applied. For item fields from the integration response, you can refer your bundle's Item JSON viewer (eXtendTech → Bundle Name → Item JSON). In the JSON view, you can see all the item field’s keys which you can use while creating
your mappings.
- Hardcoded Mapping: This mapping does not require any input field. In this mapping, you define a hardcoded value and the output field (NetSuite item field internal id)
where you want to apply your hardcoded value during item constitution.
- Relational Mapping: This mapping is required when the NetSuite item field value needs
to be fetched from another record (whose identifier is given by the current input
field). Please see the Relational/Lookup mapping section below.
- Functional Mapping: This mapping allows a user-defined JavaScript function to
do the data transformation. The function would receive the source item, wrapped item, and
output JavaScript Object. All functional mapping functions are added to a single transformer file.
- JSON Mapping: This mapping is used to specify a static map which translates the
value to another value. i.e. if the input value is A > A` , B > B`, C >
C`. This map needs to be specified in the Static Mapping.
Creating Mapping Records
To create a new eXtendTech Field Mapping record:
- Navigate to eXtendTech → Your eXtendTech Bundle Name → Field Mappings.
- Click the New eXtendTech Field Mapping button.
- Configure the fields depending on your use case and mapping type, and then save the record.
Primary
Mapping Information Section
NAME – Your mapping name.
INTEGRATION NAME – Used to group fields based on the integration use case. Review the existing mappings in your account to find the associated Integration Name to use.
MAPPING LIST – Select the type of mapping you are
creating.
INPUT FIELD – Key or field from the input object
on which the transformation will be applied.
OUTPUT FIELD – Target or output field internal id from your NetSuite item record.
HARDCODED VALUE – Value that will be set during hardcoded mappings.
TRANSFORM FUNCTION – The function that
will be used in the case of functional mappings.
OUTPUT DATA TYPE – The data type of
the output value.
It can be any of the following data types: string,
number, integer, date, na (copies the data type properties of the input field)
STATIC MAPPING – A static map which
translates a value to another value.
- Must be specified in JSON format.eg: {"Ohio": "OH""Baltimore": "BM"}
Relational/Lookup
Mapping Section
RELATIONAL
RECORD TYPE – Used in case of "relational" mapping. Specifies the
record type in which the "search_ field" is referenced or referred i.e.
It is the record type for nlapiSearchRecord()
RELATIONAL
REFERENCE FIELD – Used in case of "relational" mapping i.e. when you
want to use the value that matches a search. Specifies the field referenced in the mapped record from/to source item. Default: internalid
In the case of NetSuite search, this will be used in filter
E.g.: [REFERENCE_FIELD, 'is', INPUT_FIELD_VALUE]
In the case of NetSuite search, this will be used in filter
E.g.: [REFERENCE_FIELD, 'is', INPUT_FIELD_VALUE]
RELATIONAL
REFERENCE FIELD SELECT COLUMN – Specify in case of "relational"
mapping. Field to select from referred item to get the output value. In case of
NetSuite search, this will be the select column.
RELATIONAL
LOOKUP IF VALUE EXISTS – Check this if you want to perform Lookup/Search/Query
only if value exists.
PARENT CONFIG ID – Select
parent config id for the specified integration.
Advanced
Configuration Section
MAPPING
ORDER – The order in which mapping must be performed. Numbers are considered in
ascending order.
USE TEXT VALUE – Check this if you want
text to be used over internal id for select fields. This option will be ignored
if the data type is not a select field.
Case 1: The search field is not select, but, the output field is select. In this case
source field, the transformed value will be written into select's text field
Case 2: Output field is not select, but, the search field is select. In this case
source field's text will be used as value
Case 3: Search and Output Both are select, this option will be ignored.
If your Mapping Type is JSON/Static Mapping, in that case text will be used to
resolve keys.
DO NOT NULLIFY – Check this box, if you
do not want to overwrite the value with an empty value.
DO NOT OVERWRITE – Check this box if you want to value the to be written only if target the system has an empty value.
WARNING: We have limited support for this feature. Please check with eXtendTech Support if you would like to use this feature in your integration.
WARNING: We have limited support for this feature. Please check with eXtendTech Support if you would like to use this feature in your integration.
MULTI SELECT DELIMITER – Specify
character or set of characters used to be used as a delimiter in case of
multi-select.
If you are converting a multi-select to a string, delimiter can be used to join
the values. e.g.: A multi-select field has values ['Public', 'Admin'], upon conversion to
string with delimiter ';' its value will be Public; Admin
If you are converting a string to multi-select, delimiter can be used to join
the values. e.g.: A text field has value Public; Admin upon conversion to string with
delimiter ';' its value will be Public and Admin
RAISE ERR NO MATCH – Check this check
box to raise an error if the input field is not present.
ATTACH KEY NO MATCH – Check this check
box to attach field if input field is not present in the source record.
DEFAULT VALUE IF NULL – Specify
a value if input field value is null/empty which is to be used.
At times, the input field in the source system is empty but, the target system needs a
value. In such cases, this mapping can be very ideal. This is supported for limited output field value data type: String, Boolean, number, float, and integer only
PREFIX – Specify prefix that
would be prepended to field. This is only applicable for text/string fields.
SUFFIX – Specify the suffix that
would be prepended to field. This is only applicable to text/string fields.
NOT A SEARCH COLUMN – Check this field
as not a search column if the source field is from NetSuite. Do not override
mapping won't work for these fields. Some fields are available in NetSuite on
record but, are not available for saved searches.
ALLOW JSON PATH FOR SOURCE – Check
this box if you want to map the JSON path for mapping. E.g.: source: {"fieldA": {"fieldB" : "data"}
Note: to turn a mapping off, mark the "Inactivate this mapping" checkbox to checked/true.