Schriftenreihen GT-Felder 4170

This commit is contained in:
Felix Lohmeier 2021-03-08 12:57:33 +01:00
parent 2a3c230f28
commit 1692106214
4 changed files with 214 additions and 5 deletions

View File

@ -204,8 +204,8 @@ tasks:
"$CLIENT" -P {{.PORT}} {{.PROJECT}} --apply config/main/mtm-leerexemplare.json > {{.LOG}}
- > # spec_B_T_34: MTM: Anreicherungen der Unterordnungen mit 4150 und 4160; abhängig von Feld "ueber" aus spec_B_T_32
"$CLIENT" -P {{.PORT}} {{.PROJECT}} --apply config/main/4150-4160.json > {{.LOG}}
- > # spec_B_T_35: Schriftrenreihen: GT-Felder für Reihenstücktitel in 4170
#TODO "$CLIENT" -P {{.PORT}} {{.PROJECT}} --apply config/main/4170.json > {{.LOG}}
- > # spec_B_T_35: Schriftrenreihen: GT-Felder für Reihenstücktitel in 4170_1 und 4170_2
"$CLIENT" -P {{.PORT}} {{.PROJECT}} --apply config/main/4170.json > {{.LOG}}
# Die folgende Transformationsregel muss direkt vor dem Export stehen
- > # Abschließend Titel ohne Exemplare löschen
"$CLIENT" -P {{.PORT}} {{.PROJECT}} --apply config/main/abschluss.json > {{.LOG}}

View File

@ -1,3 +1,210 @@
[
{}
{
"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, '\u001fI' + v.trim(), '') + forNonBlank(x[1].split(' : ')[1], v, '\u001fp' + v.trim(), '') )",
"onError": "set-to-blank",
"newColumnName": "4170_1",
"columnInsertIndex": 80,
"description": "Create column 4170_1 at index 80 based on column M|GT1 using 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, '\u001fI' + v.trim(), '') + forNonBlank(x[1].split(' : ')[1], v, '\u001fp' + v.trim(), '') )"
},
{
"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(), '') + forNonBlank(cells['M|GT1B'].value.split(': ')[1], v, '\u001fh' + v.trim(), '') +\nforNonBlank(cells['M|GT1Z'].value.split(' : ')[0], v, '\u001fI' + v.trim(), '') + forNonBlank(cells['M|GT1Z'].value.split(' : ')[1], v, '\u001fp' + v.trim(), '')",
"onError": "keep-original",
"repeat": false,
"repeatCount": 10,
"description": "Text transform on cells in column 4170_1 using expression grel:forNonBlank(cells['M|GT1B'].value.split(': ')[0], v, '\u001fa' + v.trim(), '') + forNonBlank(cells['M|GT1B'].value.split(': ')[1], v, '\u001fh' + v.trim(), '') +\nforNonBlank(cells['M|GT1Z'].value.split(' : ')[0], v, '\u001fI' + v.trim(), '') + forNonBlank(cells['M|GT1Z'].value.split(' : ')[1], v, '\u001fp' + v.trim(), '')"
},
{
"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, '\u001fI' + v.trim(), '') + forNonBlank(x[1].split(' : ')[1], v, '\u001fp' + v.trim(), '') )",
"onError": "set-to-blank",
"newColumnName": "4170_2",
"columnInsertIndex": 80,
"description": "Create column 4170_2 at index 80 based on column M|GT2 using 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, '\u001fI' + v.trim(), '') + forNonBlank(x[1].split(' : ')[1], v, '\u001fp' + v.trim(), '') )"
},
{
"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(), '') + forNonBlank(cells['M|GT2B'].value.split(': ')[1], v, '\u001fh' + v.trim(), '') +\nforNonBlank(cells['M|GT2Z'].value.split(' : ')[0], v, '\u001fI' + v.trim(), '') + forNonBlank(cells['M|GT2Z'].value.split(' : ')[1], v, '\u001fp' + v.trim(), '')",
"onError": "keep-original",
"repeat": false,
"repeatCount": 10,
"description": "Text transform on cells in column 4170_2 using expression grel:forNonBlank(cells['M|GT2B'].value.split(': ')[0], v, '\u001fa' + v.trim(), '') + forNonBlank(cells['M|GT2B'].value.split(': ')[1], v, '\u001fh' + v.trim(), '') +\nforNonBlank(cells['M|GT2Z'].value.split(' : ')[0], v, '\u001fI' + v.trim(), '') + forNonBlank(cells['M|GT2Z'].value.split(' : ')[1], v, '\u001fp' + v.trim(), '')"
}
]

View File

@ -40,7 +40,8 @@ with(
'4062',
'4150',
'4160',
'4170',
'4170_1',
'4170_2',
'4204',
'67XX',
'7100j',

View File

@ -31,7 +31,8 @@ if(row.index - row.record.fromRowIndex == 0,
+ forNonBlank(cells['4061'].value, v, '034M ' + 'a' + v + '\n', '')
+ forNonBlank(cells['4150'].value, v, '036C/00 ' + v + '\n', '')
+ forNonBlank(cells['4160'].value, v, '036D/00 ' + v + '\n', '')
+ forNonBlank(cells['4170'].value, v, '036E/00 ' + v + '\n', '')
+ forNonBlank(cells['4170_1'].value, v, '036E/00 ' + v + '\n', '')
+ forNonBlank(cells['4170_2'].value, v, '036E/01 ' + v + '\n', '')
+ forNonBlank(cells['4204'].value, v, '037C ' + 'a' + v + '\n', '')
+ forNonBlank(cells['0999'].value, v, '046W ' + 'a' + v + '\n', '')
,'')