tschloesser Contributor.
Contributor.
278 views

ECMAScript capabilities in UA


Dear Forum,

we need to work on some values provieded in JSON format. For this
reason we put together the following helping functions I include after
this lines.

What we first discoverd is, that itis impossible to paste this code as
an inline script under Global Scripts in a PRD. This allways lead to an
error at the time the PRD is instatuated in the UA.
When pasing the code in a Field event script it is working as designed.

Now I was taying to use the same code in a data item mapping of a
mapping activity. This again led to the fact that the workflow is
terminated at the time this mapping is done.

Can anybody tell me why the above code is working in one place, but not
the other? Is there any way to make work in Mapping Activity or Entity
activity as well?

Any help or suggestions are welcome !!

Thorsten

And now the code:

var JSON;
if (!JSON) {
JSON = {};
}

(function () {
"use strict";
function f(n) {
return n < 10 ? '0' + n : n;
}
if (typeof Date.prototype.toJSON !== 'function') {
Date.prototype.toJSON = function (key) {
return isFinite(this.valueOf()) ?
this.getUTCFullYear() + '-' +
f(this.getUTCMonth() + 1) + '-' +
f(this.getUTCDate()) + 'T' +
f(this.getUTCHours()) + ':' +
f(this.getUTCMinutes()) + ':' +
f(this.getUTCSeconds()) + 'Z' : null;
};
String.prototype.toJSON =
Number.prototype.toJSON =
Boolean.prototype.toJSON = function (key) {
return this.valueOf();
};
}

var cx =
/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
escapable =
/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
gap,
indent,
meta = { // table of character substitutions
'\b': '\\b',
'\t': '\\t',
'\n': '\\n',
'\f': '\\f',
'\r': '\\r',
'"' : '\\"',
'\\': '\\\\'
},
rep;

function quote(string) {
escapable.lastIndex = 0;
return escapable.test(string) ? '"' + string.replace(escapable,
function (a) {
var c = meta;
return typeof c === 'string' ? c :
'\\u' + ('0000' +
a.charCodeAt(0).toString(16)).slice(-4);
}) + '"' : '"' + string + '"';
}

function str(key, holder) {
var i,
k,
v,
length,
mind = gap,
partial,
value = holder[key];
if (value && typeof value === 'object' &&
typeof value.toJSON === 'function') {
value = value.toJSON(key);
}
if (typeof rep === 'function') {
value = rep.call(holder, key, value);
}
switch (typeof valu...



























































































































































































http://forums.novell.com/member.php?userid=23213
View this thread: http://forums.novell.com/showthread.php?t=451414

Labels (1)
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.