如何使用Restlet获取Dependent字段选项?

时间:2017-02-24 09:39:57

标签: javascript php netsuite

我在CRM中创建了以下依赖字段,

parentitem& childitem

parentitem是控制字段

childitem是依赖字段

在parentitem字段中选择食物选项

query

在显示的子项目字段中,食物项目取决于父母项目选择

parentitem field option selection

以下是我的检索字段的示例Restlet代码&来自netsuite crm的选项。

function getFields(datain) {
    var record = nlapiCreateRecord(datain.recordtype);
    var fields = record.getAllFields();
    var requiredFields = {};
    fields.forEach(function(fieldName) {
            var field = record.getField(fieldName);
            if (field.mandatory === true && field.disabled === false) {
                    var id = field.getName();
                    var field_details = {}
                    field_details['DefaultValue'] = record.getFieldValue(fieldName);
                    field_details['DefaultText'] = record.getFieldText(fieldName);
                    field_details['Type'] = field.getType();
                    field_details['Label'] = field.getLabel();
                    if (field.getType() == 'select' || field.getType() == 'multiselect') {
                            var Options = field.getSelectOptions();
                            var selectOptions = {}
                            for (var i in Options) {
                                    var opt_id = Options[i].getId();
                                    selectOptions[opt_id] = Options[i].getText()
                            }
                            field_details['Options'] = selectOptions;
                    }
                    requiredFields[id] = field_details;
            }
    });
    return requiredFields;
}

使用上面的代码我可以获得parentitem字段&选项。

[custevent37] => Array
    (
        [0] => Array
            (
                [DefaultValue] => 
                [DefaultText] => 
                [Type] => select
                [Label] => parentitem
                [Options] => Array
                    (
                        [1] => Food
                        [2] => Electronics
                    )

            )

    )

但我无法获得childitem(取决于parentitem)字段选项,它只显示空选项数组。实际上,childitem字段在CRM中有选项。但它仅在用户选择后显示

 [custevent38] => Array
    (
        [0] => Array
            (
                [DefaultValue] => 
                [DefaultText] => 
                [Type] => select
                [Label] => childitem
                [Options] => Array
                    (
                    )

            )

    )

知道如何使用Restlet获取Dependent字段选项吗?

提前致谢

2 个答案:

答案 0 :(得分:0)

您可以在动态模式中选择每个选项,以便检索子字段上的值。您需要找到一种识别父字段的方法。

或者,您可以运行搜索以获取子字段值的内部ID和文本。

答案 1 :(得分:0)

以下是使用Restlet获取相关字段选项的示例代码,

'的 parentfieldid ' - >父字段id。

'的 2 ' - >父字段值的内部标识。

'的 childfieldid '是' parentfieldid '

的依赖字段
myRec.setFieldValue('parentfieldid','2'); //set values for parentfield
var myFld = myRec.getField('childfieldid'); // get dependent field
var options = myFld.getSelectOptions(); // Here we can get options for childfield based on the parentfield option