def update_reportnumbers(self):
rep_088_fields = record_get_field_instances(self.record, '<STR_LIT>')<EOL>for field in rep_088_fields:<EOL><INDENT>subs = field_get_subfields(field)<EOL>if '<STR_LIT>' in subs:<EOL><INDENT>for val in subs['<STR_LIT>']:<EOL><INDENT>if val.startswith('<STR_LIT>') or val.startswith('<STR_LIT>'):<EOL><INDENT>sf = [('<STR_LIT>', '<STR_LIT>'), ('<STR_LIT:b>', val)]<EOL>record_add_field(self.record, '<STR_LIT>', subfields=sf)<EOL><DEDENT><DEDENT><DEDENT>for key, val in field[<NUM_LIT:0>]:<EOL><INDENT>if key in ['<STR_LIT:a>', '<STR_LIT>'] and not val.startswith('<STR_LIT>'):<EOL><INDENT>record_add_field(<EOL>self.record, '<STR_LIT>', subfields=[('<STR_LIT:a>', val)])<EOL><DEDENT><DEDENT><DEDENT>record_delete_fields(self.record, "<STR_LIT>")<EOL>rep_037_fields = record_get_field_instances(self.record, '<STR_LIT>')<EOL>for field in rep_037_fields:<EOL><INDENT>subs = field_get_subfields(field)<EOL>if '<STR_LIT:a>' in subs:<EOL><INDENT>for value in subs['<STR_LIT:a>']:<EOL><INDENT>if '<STR_LIT>' in value:<EOL><INDENT>new_subs = [('<STR_LIT:a>', value), ('<STR_LIT>', '<STR_LIT>')]<EOL>for fld in record_get_field_instances(self.record,  '<STR_LIT>'):<EOL><INDENT>for key, val in field_get_subfield_instances(fld):<EOL><INDENT>if key == '<STR_LIT:a>':<EOL><INDENT>new_subs.append(('<STR_LIT:c>', val))<EOL>break<EOL><DEDENT><DEDENT><DEDENT>nf = create_field(subfields=new_subs)<EOL>record_replace_field(self.record, '<STR_LIT>', nf, field[<NUM_LIT:4>])<EOL><DEDENT><DEDENT><DEDENT>for key, val in field[<NUM_LIT:0>]:<EOL><INDENT>if key in ['<STR_LIT:a>', '<STR_LIT>'] and val.startswith('<STR_LIT>'):<EOL><INDENT>record_delete_field(<EOL>self.record, '<STR_LIT>', field_position_global=field[<NUM_LIT:4>])<EOL><DEDENT><DEDENT><DEDENT>
Handle reportnumbers.