首页 文章

如何使用RESTlet获取Netsuite中特定记录类型的所有自定义字段?

提问于
浏览
0

我可以使用RESTlet创建客户,主管,联系人 . 但我的代码由创建具有必需选项的自定义字段的人使用 . 当我尝试创建客户时,我收到自定义必填字段的错误 .

我也想传递自定义必填字段的数据 . 如何知道使用RESTlet分类的所有自定义字段和不需要的字段?

2 回答

  • 3

    您可以使用

    var record = nlapiCreateRecord(RECORD_TYPE);
    var fields = record.getAllFields();
    var requiredFields = [];
    fields.forEach(function(fieldName){
     var field = record.getField(fieldName);
     //I am not very sure, its true or T but, below code will work
     if(field.mandatory === true || field.mandatory === 'T'){
       requiredFields.push(field.getName()) //getLabel() for UI label, as getName returns id;
     }
    });
    

    // requiredFields数组是你的需要 .

  • 3

    实际上在这种情况下,我采取两种方法之一(或组合它们):

    首先是忽略必填字段 . 您查看代码的工作是获取Netsuite的信息,用户必须负责将来的更新 . 您可以通过告诉Netsuite在代码保存时忽略必填字段来执行此操作:

    nlapiSubmitRecord(nlobjRecord, doSourcing, ignoreMandatoryFields); //doSourcing and ignoreMandatoryFields are booleans
    

    或者我在restlet中添加一个文本区域参数,其中配置restlet的人必须输入你想要做的事情的额外字段列表(例如在对话框中显示并且需要)

相关问题