How can I make this work, since getValue, and getT...
# suitescript
r
How can I make this work, since getValue, and getText are predefined in Netsuite. I want to write the code in such a way to get the field text or field value dynamically.
Copy code
var obj_fieldMap = {
    "custentity_projectManager" : {
        "ProjectManagerName": getText,
        "ProjectManagerInternalId": getValue,
    },
    "custentity_deliveryManager" : {
        "DeliveryManagerName":getText,
        "DeliveryManagerInternalId": getValue,
    },
}
var obj_myJson = {
}

Object.keys(obj_fieldMap).map(function(fieldId) {
    Object.keys(obj_fieldMap[fieldId]).map(function(fieldName) {
        obj_myJson[fieldName] = obj_currentRecord.obj_fieldMap[fieldId][fieldName](fieldId);
    })
})
e
Somethign like this;
Copy code
const getValue = (myRec, fieldId) => {
                return myRec.getValue(fieldId);
            }
            const getText = (myRec, fieldId) => {
                return myRec.getText(fieldId);
            }
            var obj_fieldMap = {
                "custentity_projectManager" : {
                    "ProjectManagerName": getText,
                    "ProjectManagerInternalId": getValue,
                },
                "custentity_deliveryManager" : {
                    "DeliveryManagerName": getText,
                    "DeliveryManagerInternalId": getValue,
                },
            }
            var obj_myJson = {
            }

            Object.keys(obj_fieldMap).map((fieldId) => {
                Object.keys(obj_fieldMap[fieldId]).map((fieldName) => {
                    obj_myJson[fieldName] = obj_fieldMap[fieldId][fieldName].call(this, obj_currentRecord, fieldId);
                })
            })
r
thank you, it worked like a charm, had to improve it slightly for handling joins, summary, etc. But this is quite good.