• NetSuite SuiteScript 2.0 use DeferredDynamicRecord


    Background 

    There is a case when we add dynamic sublists to NetSuite Transaction, for user to put in data.

    In server-side, how to read it in SuiteScript 2.0, NetSuite version 2017.1.0.70

    I found we can't use scriptContext.newRecord.getSublistValue to read data in custom sublist.

    and we can't use scriptContext.newRecord.sublists.custpage_receipts to read detail objects. 

    How to resolve this?

    Solution

    In beforeSubmit we have native NetSuite parameter scriptContext,

    when we saw scriptContext.newRecord it's a type of DeferredDynamicRecord.

    I thought we can read the object details inside, I.e. scriptContext.newRecord.sublists.custpage_receipts

    But actually since scriptContext.newRecord is a type of DeferredDynamicRecord, we can't read the data inside.

    Try this:

    var currentRecord = scriptContext.newRecord;
    var objCurRec = JSON.parse(JSON.stringify(currentRecord));
    var objSublists = objCurRec.sublists ? objCurRec.sublists : '';
    var objCustReceipts = objSublists.custpage_receipts ? objSublists.custpage_receipts : '';

    Steps:

    1. JSON.stringify scriptContext.newRecord. (It became string)
    2. JSON.parse the strigified string. (Now it becomes native object)
    3. Now we can read data inside I.e. objCurRec.sublists.custpage_receipts
  • 相关阅读:
    java 验证码
    时间日期转换+两个日期相减
    java创建文件和目录
    java获取文件名的三种方法
    获取当前日期前100天的日期
    字符串去重
    Java,数据库中的数据导入到Excel
    两个list<object> 比较 得到相同数据 差异数据
    Springmvc中@RequestParam传值中文乱码解决方案
    将src非空的属性注入到des中
  • 原文地址:https://www.cnblogs.com/backuper/p/NetSuite_SuiteScript_2_DeferredDynamicRecord.html
Copyright © 2020-2023  润新知