Java内置Javascript-将数组/列值传递给Hashmap
大家好,Javascript专家 我需要使用JavaScript将一些值传递给SAP功能模块。 请参阅附加的SAP输入参数快照,我需要使用javaScript传递值 我需要传递值(在快照中以黄色突出显示) 我能够传递Java内置Javascript-将数组/列值传递给Hashmap,javascript,java,sap,Javascript,Java,Sap,大家好,Javascript专家 我需要使用JavaScript将一些值传递给SAP功能模块。 请参阅附加的SAP输入参数快照,我需要使用javaScript传递值 我需要传递值(在快照中以黄色突出显示) 我能够传递ID\u对话框,ID\u个人钥匙,ID\u个人钥匙类型,ID\u来源的行值,没有任何问题(请参见下面的代码) --JavaScript-- 但是输入字段IT_值是SAP中的一个内部表,有4列 Row IT_VALUES Column APPLID | FILEDNAM
ID\u对话框
,ID\u个人钥匙
,ID\u个人钥匙类型
,ID\u来源
的行值,没有任何问题(请参见下面的代码)
--JavaScript--
但是输入字段IT_值是SAP中的一个内部表,有4列
Row
IT_VALUES
Column APPLID | FILEDNAME | F | LOW
我必须在IT\u值中传递下面的列值
Row
IT_VALUES
Column APPLID | FILEDNAME | F | LOW
| | |
Values LO_SRS | PLANT | V | 4060
我想我可以使用数组
var arr = {
IT_VALUES :
[
{
APPLID : "LO_SRS",
FEILDNAME : "PLANT",
F : "V",
LOW : "4060"
}
]
}
或对象
var arr = function()
{
return {APPLID: 'LO_SRS', FIELDNAME: 'PLANT', F: 'V', LOW : '4060'}
}
var it_values = arr();
但我不知道如何将列值传递给hashmap
var inputParams = new HashMap();
inputParams.put("IT_VALUES",????????????????????????????????????)
inputParams.put("ID_DIALOG", 'DIA_LO_SRS');
inputParams.put("ID_PERSKEYTYP", 'U');
inputParams.put("ID_PERSKEY", 'USERID');
inputParams.put("ID_ORIGIN", 'A' );
return inputParams;
}
var bapiRet = mConnection.runFunction("FPB_PERS_POST_FOR_DIALOG", inputParams);
请帮忙……) 听起来您想知道如何将一个对象指定给另一个对象中的键。为了澄清,您的arr
函数返回的是一个对象,而不是数组
var arr = function() {
// - this is called an object
return {
APPLID: 'LO_SRS',
FIELDNAME: 'PLANT',
F: 'V',
LOW : '4060',
};
};
您可以将其传递给任何其他对象,如inputParams
,javascript中没有HashMap
,只需使用另一个对象:
var inputParams = {};
inputParams["IT_VALUES"] = it_values;
inputParams["ID_DIALOG"] = 'DIA_LO_SRS';
// etc...
return inputParams;
或者您可以这样做:
var inputParams = {
IT_VALUES: it_values,
ID_DIALOG: 'DIA_LO_SRS',
// etc...
};
return inputParams;
希望这会有所帮助1)您的JavaScript结构有点不合常规。。当然不是干的2)java.util.HashMap是从哪里来的?谢谢你,Dux。我尝试了您的建议,但当我将inputParams传递给SAP function.runFunction时,我遇到了错误:无法将[object object]转换为java.util.Map:(
var arr = function() {
// - this is called an object
return {
APPLID: 'LO_SRS',
FIELDNAME: 'PLANT',
F: 'V',
LOW : '4060',
};
};
var inputParams = {};
inputParams["IT_VALUES"] = it_values;
inputParams["ID_DIALOG"] = 'DIA_LO_SRS';
// etc...
return inputParams;
var inputParams = {
IT_VALUES: it_values,
ID_DIALOG: 'DIA_LO_SRS',
// etc...
};
return inputParams;