050_Part_II - UNTCMS/MarcEdit-Tasks GitHub Wiki
050_Part_II Edits
Link to task file:
Scope
If the first Cutter number is in $b, adds a period if missing. Makes it so that only complete call numbers remain in field 050. Eliminates ranged call numbers.
Pre-run step
Generate Call Numbers in 050 \4 $a
Steps
If first Cutter number is in $b, add a period.
Replace all
(=050.*\$a[A-Z]*[\d\.]*\$b)([A-Z])
$1.$2
Search options: Use Regular Expressions
Swap 050 subfield a if $b present to 090 subfield z, copy source and add to existing field
Swap field utility
Original data:
Field: 050$a if has $b
Modified data:
Field: 090$z
Copy source and add to existing field
Delete 090 with $z
Delete
Field: 090
Field data: $z
Swap 090 subfields ab if $b is present to 050 subfields ab
Swap field utility
Original data:
Field: 090$ab if has $b
Modified data:
Field: 050$ab
Swap 050 subfield a if $b present to 090 subfield z, copy source and add to existing field
Swap field utility
Original data:
Field: 050$a if has $b
Modified data:
Field: 090$z
Copy source and add to existing field
Delete 090 with $z
Delete
Field: 090
Field data: $z
Delete 090 if has -
Delete
Field: 090
Field data: -