Skip to content

Instantly share code, notes, and snippets.

@joystick
Created May 21, 2015 05:50
Show Gist options
  • Select an option

  • Save joystick/a66d3b3f15d337222c5a to your computer and use it in GitHub Desktop.

Select an option

Save joystick/a66d3b3f15d337222c5a to your computer and use it in GitHub Desktop.
JS Bin // source http://jsbin.com/migete
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<link href="https://code.jquery.com/qunit/qunit-git.css" rel="stylesheet" type="text/css" />
<script src="https://code.jquery.com/qunit/qunit-git.js"></script>
<script src="http://jashkenas.github.io/underscore/underscore-min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<div id="qunit"></div>
<script id="jsbin-javascript">
var k = ['a', 'b'];
var v = ['c', 'd'];
var data = "EUR | |20121205|20090123|20090123|0100000000|2009|SA";
var array = ["EUR", "", "20121205", "20090123", "20090123", "0100000000", "2009", "SA"];
/**
* Converts array of keys and array of values into object
*
* @param {array} k - Array of keys
* @param {array} v - Array of values
* @return {object} - Resulting object
*/
function toObject (k, v) {
return _.object(k, v);
}
/**
* Splits SAP RFC_READ_TABLE returns into array
*
* @param {string} data - Input data string
* @param {string} delimiter - Delimiter symbol
* @return {array}
*/
function splitAndTrim (data, delimiter) {
var array = [];
array = data.split(delimiter);
array = _.map(array, function (element) {
return element.trim();
});
return array;
}
function fieldListToFieldArray (arrayOfObjects) {
var array = [];
array = _.map(arrayOfObjects, function (element) {
return element.FIELDNAME;
});
return array;
}
var source = [
{'FIELDNAME': 'WAERS'},
{'FIELDNAME': 'XBLNR'}, // reference doc num
{'FIELDNAME': 'CPUDT'}, // creation date
{'FIELDNAME': 'BLDAT'}, // document date
{'FIELDNAME': 'BUDAT'}, // posting date
{'FIELDNAME': 'BELNR'}, // number
{'FIELDNAME': 'GJAHR'}, // fiscal year
{'FIELDNAME': 'BLART'} // doc type
];
var result = ['WAERS', 'XBLNR', 'CPUDT', 'BLDAT', 'BUDAT', 'BELNR', 'GJAHR', 'BLART'];
QUnit.test( "toObject", function( assert ) {
assert.deepEqual( toObject(k, v), { 'a': 'c', 'b': 'd'} );
});
QUnit.test( 'split array', function (assert) {
assert.deepEqual(splitAndTrim(data, '|'), array);
});
QUnit.test('field list', function (assert) {
assert.deepEqual(fieldListToFieldArray(source), result);
});
</script>
<script id="jsbin-source-html" type="text/html"><!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"><\/script>
<link href="https://code.jquery.com/qunit/qunit-git.css" rel="stylesheet" type="text/css" />
<script src="https://code.jquery.com/qunit/qunit-git.js"><\/script>
<script src="//jashkenas.github.io/underscore/underscore-min.js"><\/script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<div id="qunit"></div>
</body>
</html></script>
<script id="jsbin-source-javascript" type="text/javascript">var k = ['a', 'b'];
var v = ['c', 'd'];
var data = "EUR | |20121205|20090123|20090123|0100000000|2009|SA";
var array = ["EUR", "", "20121205", "20090123", "20090123", "0100000000", "2009", "SA"];
/**
* Converts array of keys and array of values into object
*
* @param {array} k - Array of keys
* @param {array} v - Array of values
* @return {object} - Resulting object
*/
function toObject (k, v) {
return _.object(k, v);
}
/**
* Splits SAP RFC_READ_TABLE returns into array
*
* @param {string} data - Input data string
* @param {string} delimiter - Delimiter symbol
* @return {array}
*/
function splitAndTrim (data, delimiter) {
var array = [];
array = data.split(delimiter);
array = _.map(array, function (element) {
return element.trim();
});
return array;
}
function fieldListToFieldArray (arrayOfObjects) {
var array = [];
array = _.map(arrayOfObjects, function (element) {
return element.FIELDNAME;
});
return array;
}
var source = [
{'FIELDNAME': 'WAERS'},
{'FIELDNAME': 'XBLNR'}, // reference doc num
{'FIELDNAME': 'CPUDT'}, // creation date
{'FIELDNAME': 'BLDAT'}, // document date
{'FIELDNAME': 'BUDAT'}, // posting date
{'FIELDNAME': 'BELNR'}, // number
{'FIELDNAME': 'GJAHR'}, // fiscal year
{'FIELDNAME': 'BLART'} // doc type
];
var result = ['WAERS', 'XBLNR', 'CPUDT', 'BLDAT', 'BUDAT', 'BELNR', 'GJAHR', 'BLART'];
QUnit.test( "toObject", function( assert ) {
assert.deepEqual( toObject(k, v), { 'a': 'c', 'b': 'd'} );
});
QUnit.test( 'split array', function (assert) {
assert.deepEqual(splitAndTrim(data, '|'), array);
});
QUnit.test('field list', function (assert) {
assert.deepEqual(fieldListToFieldArray(source), result);
});</script></body>
</html>
var k = ['a', 'b'];
var v = ['c', 'd'];
var data = "EUR | |20121205|20090123|20090123|0100000000|2009|SA";
var array = ["EUR", "", "20121205", "20090123", "20090123", "0100000000", "2009", "SA"];
/**
* Converts array of keys and array of values into object
*
* @param {array} k - Array of keys
* @param {array} v - Array of values
* @return {object} - Resulting object
*/
function toObject (k, v) {
return _.object(k, v);
}
/**
* Splits SAP RFC_READ_TABLE returns into array
*
* @param {string} data - Input data string
* @param {string} delimiter - Delimiter symbol
* @return {array}
*/
function splitAndTrim (data, delimiter) {
var array = [];
array = data.split(delimiter);
array = _.map(array, function (element) {
return element.trim();
});
return array;
}
function fieldListToFieldArray (arrayOfObjects) {
var array = [];
array = _.map(arrayOfObjects, function (element) {
return element.FIELDNAME;
});
return array;
}
var source = [
{'FIELDNAME': 'WAERS'},
{'FIELDNAME': 'XBLNR'}, // reference doc num
{'FIELDNAME': 'CPUDT'}, // creation date
{'FIELDNAME': 'BLDAT'}, // document date
{'FIELDNAME': 'BUDAT'}, // posting date
{'FIELDNAME': 'BELNR'}, // number
{'FIELDNAME': 'GJAHR'}, // fiscal year
{'FIELDNAME': 'BLART'} // doc type
];
var result = ['WAERS', 'XBLNR', 'CPUDT', 'BLDAT', 'BUDAT', 'BELNR', 'GJAHR', 'BLART'];
QUnit.test( "toObject", function( assert ) {
assert.deepEqual( toObject(k, v), { 'a': 'c', 'b': 'd'} );
});
QUnit.test( 'split array', function (assert) {
assert.deepEqual(splitAndTrim(data, '|'), array);
});
QUnit.test('field list', function (assert) {
assert.deepEqual(fieldListToFieldArray(source), result);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment