for en_code1, en_code2 in couples: logger.info('Swapping couple %s - %s' % (en_code1, en_code2)) try: en1 = en_lookup[en_code1] en2 = en_lookup[en_code2] except KeyError, ke: logger.error('Code %s not found in study %s' % (ke, args.study)) sys.exit(2) logger.info('Starting swap procedure for couple %s -- %s' % (en_code1, en_code2)) logger.debug('Enrollment %s --- Individual ID %s' % (en1.studyCode, en1.individual.id)) logger.debug('Enrollment %s --- Individual ID %s' % (en2.studyCode, en2.individual.id)) en1.individual, en2.individual = en2.individual, en1.individual kb.save_array([en1, en2]) logger.info('Swap completed') kb.reload_object(en1) logger.debug('Enrollment %s --- Individual ID %s' % (en1.studyCode, en1.individual.id)) kb.reload_object(en2) logger.debug('Enrollment %s --- Individual ID %s' % (en2.studyCode, en2.individual.id)) if __name__ == '__main__': main(sys.argv[1:])