[ { "op": "core/column-addition", "engineConfig": { "facets": [ { "type": "list", "name": "M|GT1", "expression": "grel:or(isNonBlank(cells['M|GT1'].value), isNonBlank(cells['M|GT1B'].value))", "columnName": "M|GT1", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": true, "l": "true" } } ], "selectBlank": false, "selectError": false }, { "type": "list", "name": "M|GT1B", "expression": "isBlank(value)", "columnName": "M|GT1B", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": true, "l": "true" } } ], "selectBlank": false, "selectError": false } ], "mode": "row-based" }, "baseColumnName": "M|GT1", "expression": "grel:with(value.split(' ; '), x, forNonBlank(x[0].split(': ')[0], v, '\u001fa' + v.trim(), '') + forNonBlank(x[0].split(': ')[1], v, '\u001fh' + v.trim(), '') + forNonBlank(x[1].split(' : ')[0], v, '\u001fl' + v.trim(), '') + forNonBlank(x[1].split(' : ')[1], v, '\u001fp' + v.trim(), '') )", "onError": "set-to-blank", "newColumnName": "4170_1", "columnInsertIndex": 3 }, { "op": "core/text-transform", "engineConfig": { "facets": [ { "type": "list", "name": "M|GT1", "expression": "grel:or(isNonBlank(cells['M|GT1'].value), isNonBlank(cells['M|GT1B'].value))", "columnName": "M|GT1", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": true, "l": "true" } } ], "selectBlank": false, "selectError": false }, { "type": "list", "name": "M|GT1B", "expression": "isBlank(value)", "columnName": "M|GT1B", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": false, "l": "false" } } ], "selectBlank": false, "selectError": false } ], "mode": "row-based" }, "columnName": "4170_1", "expression": "grel:forNonBlank(cells['M|GT1B'].value.split(': ')[0], v, '\u001fa' + v.trim().replace(/;.*/,''), '') + forNonBlank(cells['M|GT1B'].value.split(': ')[1], v, '\u001fh' + v.trim().replace(/;.*/,''), '') + forNonBlank(cells['M|GT1Z'].value.split(' : ')[0], v, '\u001fl' + v.trim(), forNonBlank(cells['M|GT1B'].value.split(';')[1], v, '\u001fl' + v.trim(), '')) + forNonBlank(cells['M|GT1Z'].value.split(' : ')[1], v, '\u001fp' + v.trim(), '')", "onError": "keep-original", "repeat": false, "repeatCount": 10 }, { "op": "core/column-addition", "engineConfig": { "facets": [ { "type": "list", "name": "M|GT2", "expression": "grel:or(isNonBlank(cells['M|GT2'].value), isNonBlank(cells['M|GT2B'].value))", "columnName": "M|GT2", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": true, "l": "true" } } ], "selectBlank": false, "selectError": false }, { "type": "list", "name": "M|GT2B", "expression": "isBlank(value)", "columnName": "M|GT2B", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": true, "l": "true" } } ], "selectBlank": false, "selectError": false } ], "mode": "row-based" }, "baseColumnName": "M|GT2", "expression": "grel:with(value.split(' ; '), x, forNonBlank(x[0].split(': ')[0], v, '\u001fa' + v.trim(), '') + forNonBlank(x[0].split(': ')[1], v, '\u001fh' + v.trim(), '') + forNonBlank(x[1].split(' : ')[0], v, '\u001fl' + v.trim(), '') + forNonBlank(x[1].split(' : ')[1], v, '\u001fp' + v.trim(), '') )", "onError": "set-to-blank", "newColumnName": "4170_2", "columnInsertIndex": 3 }, { "op": "core/text-transform", "engineConfig": { "facets": [ { "type": "list", "name": "M|GT2", "expression": "grel:or(isNonBlank(cells['M|GT2'].value), isNonBlank(cells['M|GT2B'].value))", "columnName": "M|GT2", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": true, "l": "true" } } ], "selectBlank": false, "selectError": false }, { "type": "list", "name": "M|GT2B", "expression": "isBlank(value)", "columnName": "M|GT2B", "invert": false, "omitBlank": false, "omitError": false, "selection": [ { "v": { "v": false, "l": "false" } } ], "selectBlank": false, "selectError": false } ], "mode": "row-based" }, "columnName": "4170_2", "expression": "grel:forNonBlank(cells['M|GT2B'].value.split(': ')[0], v, '\u001fa' + v.trim().replace(/;.*/,''), '') + forNonBlank(cells['M|GT2B'].value.split(': ')[1], v, '\u001fh' + v.trim().replace(/;.*/,''), '') + forNonBlank(cells['M|GT2Z'].value.split(' : ')[0], v, '\u001fl' + v.trim(), forNonBlank(cells['M|GT2B'].value.split(';')[1], v, '\u001fl' + v.trim(), '')) + forNonBlank(cells['M|GT2Z'].value.split(' : ')[1], v, '\u001fp' + v.trim(), '')", "onError": "keep-original", "repeat": false, "repeatCount": 10 } ]