我想将变量“ beauftragungsdatum”类型“日期”保存到引擎:
inject(['$http', 'Uri', function($http, Uri) {
camForm.on('store', function(evt) {
evt.retrieveVariables()
var varManager = evt.variableManager;
var vars = varManager.variables;
var dataVar = $scope.beauftragungsdatum;
varManager.variableValue('beauftragungsdatum', dataVar);
var variableData = {};
for(var v in vars) {
if(varManager.isDirty(v)) {
var val = vars[v].value;
if(varManager.isJsonVariable(v)) {
val = JSON.stringify(val);
}
variableData[v] = {
value: val,
type: vars[v].type,
valueInfo: vars[v].valueInfo
};
}
}
var data = { modifications: variableData };
var config = {
headers : {
'Content-Type': 'application/json'
}
};
$http.post(Uri.appUri('engine://engine/:engine/task/' + camForm.taskId + '/variables'), data, config);
evt.storePrevented = true;
});
}]);
在保存时,我有一个问题:变量'beauftragungsdatum'不是日期类型。我发现var的格式错误。我将其修复并粘贴一些决定:
inject(['$http', 'Uri', function($http, Uri) {
camForm.on('store', function(evt) {
evt.retrieveVariables()
var varManager = evt.variableManager;
var vars = varManager.variables;
var now=moment(dataVar).format("YYYY-MM-DDTHH:mm:ss.sssZZ");
console.log(now);
console.log(typeof now);
var d=varManager.variableValue('beauftragungsdatum');
console.log(d);
console.log(typeof d);
varManager.variableValue('beauftragungsdatum')=now;
var variableData = {};
for(var v in vars) {
if(varManager.isDirty(v)) {
var val = vars[v].value;
if(varManager.isJsonVariable(v)) {
val = JSON.stringify(val);
}
variableData[v] = {
value: val,
type: vars[v].type,
valueInfo: vars[v].valueInfo
};
}
}
var data = { modifications: variableData };
var config = {
headers : {
'Content-Type': 'application/json'
}
};
$http.post(Uri.appUri('engine://engine/:engine/task/' + camForm.taskId + '/variables'), data, config);
evt.storePrevented = true;
});
}]);
结果是我的附件文件有问题。 enter image description here 我在这个问题上需要帮助,可能知道如何在Camunda 7.9中保存var'Date'。
答案 0 :(得分:0)
在下面的行中,您放置在now
中的值是一个字符串:
var now=moment(dataVar).format("YYYY-MM-DDTHH:mm:ss.sssZZ");
format
方法以您指定的格式返回字符串。
如果要获取Date对象,请使用moment(dataVar).toDate()
。