diff --git a/archive_discovery.py b/archive_discovery.py index afa6ec4..60140ca 100644 --- a/archive_discovery.py +++ b/archive_discovery.py @@ -14,7 +14,13 @@ import ast # === Constants and Logging Setup === LOG_FILE = "dicom_query.log" CONFIG_FILE = "config.txt" -LOG_LEVELS = {"DEBUG": logging.DEBUG, "INFO": logging.INFO, "WARNING": logging.WARNING, "ERROR": logging.ERROR, "CRITICAL": logging.CRITICAL} +LOG_LEVELS = { + "DEBUG": logging.DEBUG, + "INFO": logging.INFO, + "WARNING": logging.WARNING, + "ERROR": logging.ERROR, + "CRITICAL": logging.CRITICAL +} logging.basicConfig( filename=LOG_FILE, @@ -195,15 +201,19 @@ class ConfigDialog: except Exception: mod_string = str(mod_raw).strip() - writer.writerow([ - str(getattr(identifier, 'PatientID', '')).strip(), - str(getattr(identifier, 'PatientName', '')).strip(), - str(getattr(identifier, 'AccessionNumber', '')).strip(), - str(getattr(identifier, 'StudyDate', '')).strip(), - str(getattr(identifier, 'StudyInstanceUID', '')).strip(), - mod_string, - str(getattr(identifier, 'NumberOfStudyRelatedInstances', '')).strip() - ]) + try: + writer.writerow([ + str(getattr(identifier, 'PatientID', '')).strip(), + str(getattr(identifier, 'PatientName', '')).strip(), + str(getattr(identifier, 'AccessionNumber', '')).strip(), + str(getattr(identifier, 'StudyDate', '')).strip(), + str(getattr(identifier, 'StudyInstanceUID', '')).strip(), + mod_string, + str(getattr(identifier, 'NumberOfStudyRelatedInstances', '')).strip() + ]) + f.flush() + except Exception as e: + logging.exception("Error writing to output file.") elif status: logging.debug("C-FIND response: 0x%04X", status.Status) except Exception as e: