050_Part_II - UNTCMS/MarcEdit-Tasks GitHub Wiki

050_Part_II Edits

Link to task file:

https://github.com/UNTCMS/MarcEdit-Tasks/blob/60a9bbd93def930b5af50126b2c0048c9e5b0eda/050_Part_II.task

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: -