我在使用地图缩减脚本时遇到问题

问题描述 投票:0回答:1

我正在创建我的第一个地图缩减脚本。我正在获取输入阶段运行项目搜索,输出:

{ "recordType": "程序集项", “id”:“XXXXX”, “价值观”:{ “internalid.memberItem”:{ “值”:“XXX”, “文本”:“XXX” }, "itemid.memberitem": "此处显示会员商品", “类型.memberitem”:{ "value": "InvtPart", "text": "库存物品" }, "memberquantity.memberitem": "", "itemid": "组装", “类型”: { "value": "组装", “text”:“装配/物料清单” }, "现有数量": "", “承诺数量”:“”, “订单数量”:“25”, “数量延期”:“34”, “重新订购点”:“4”, “优先股级别”:“6”, “成员”: ””, "会员数量": "60", "memberbaseunit": "", "数量.memberItem": "9509", "数量提交.memberItem": "3656", "数量onorder.memberItem": "", “数量backordered.memberItem”:“” } }

到地图阶段。我将 JSON 解析为“var searchResult”,然后创建一个变量:

var memberItem = searchResult.values.itemid.memberitem;

问题是我无法弄清楚为什么它会在每个结果上抛出错误“TypeError:无法从未定义中读取属性“memberItem””,即使“itemid.memberitem”键和值位于每个结果集中。

有什么想法吗?谢谢

我花了几个小时试图解决这个问题,但没有成功。反复试验非常耗时,因为每次尝试其他操作时我都必须执行脚本。此时我已经没有想法了。

mapreduce typeerror netsuite
1个回答
0
投票

简短回答,使用:

var memberItem = searchResult.values['itemid.memberitem'];

如果您格式化 JSON:

{
    "recordType": "assemblyitem",
    "id": "XXXXX",
    "values": {
        "internalid.memberItem": {
            "value": "XXX",
            "text": "XXX"
        },
        "itemid.memberitem": "Member Item is displayed here",
        "type.memberitem": {
            "value": "InvtPart",
            "text": "Inventory Item"
        },
        "memberquantity.memberitem": "",
        "itemid": "Assembly",
        "type": {
            "value": "Assembly",
            "text": "Assembly/Bill of Materials"
        },
        "quantityonhand": "",
        "quantitycommitted": "",
        "quantityonorder": "25",
        "quantitybackordered": "34",
        "reorderpoint": "4",
        "preferredstocklevel": "6",
        "memberof": "",
        "memberquantity": "60",
        "memberbaseunit": "",
        "quantityonhand.memberItem": "9509",
        "quantitycommitted.memberItem": "3656",
        "quantityonorder.memberItem": "",
        "quantitybackordered.memberItem": ""
    }
}

您会发现,您在

itemid
对象中没有
values
属性

相反,您有一个名为

itemid.memberitem
的属性,它看起来像搜索连接。

© www.soinside.com 2019 - 2024. All rights reserved.