在 SuiteScript2.0 中获取字段值的问题

Trouble with getting value of field in SuiteScript2.0

我已将字符串数据编码为 base64 格式,并将输出设置为自定义字段,其类型为长文本。在记录的用户界面中,我可以看到编码值的整个输出。但是,当尝试使用 rec.getText({fieldId:'customfieldname'}) 获取输出值时,它会以某种方式破坏值并且不会 return 整个值。自定义字段值有大小限制吗?

获取自定义字段值的UserEvent脚本:

function beforeSubmit(scriptContext) {

  try {
      var invrecord = scriptContext.newRecord;
      var encodedata = invrecord.getText({fieldId: 'customfield'});

      log.debug({title:'Custom field value',
                details: encodedata});
      return true;
      }
  catch (e) {  
      log.error({
             title: e.name,
             details: e.message
               });
       return false;
     }}
   return {
   beforeSubmit: beforeSubmit, };});

为了对字段值进行编码,我使用了以下代码:

        function encodeBase64Binary(strdata) {
        try{
            var base64EncodedString = encode.convert({
                string: strdata,
                inputEncoding: encode.Encoding.UTF_8,
                outputEncoding: encode.Encoding.BASE_64
            });
            return base64EncodedString;
        }
        catch (e) {
               log.error({
                   title: e.name,
                   details: e.message)} 
                  }

该字段的值包含您要查找的值,但是,log.debug 将该值截断为 3,999 个字符。这就是您看不到完整值的原因。