def METHOD_NAME(self, *args, **options):
    source_location = options["source_location"]
    logger.info(f"SOURCE CSV LOCATION: {source_location}")
    with psycopg2.connect(get_database_dsn_string()) as connection:
        with connection.cursor() as cursor:
            self.connection = connection
            self.cursor = cursor
            for file_name, table_name in FILE_TO_TABLE_MAPPING.items():
                with Timer(f"Copy {file_name}"):
                    uri = os.path.join(source_location, file_name)
                    file_path = RetrieveFileFromUri(uri).copy_to_temporary_file()
                with Timer(f"Get CSV headers from {file_name}"):
                    headers = self._get_headers(file_path)
                with Timer(f"Create temporary table {table_name}"):
                    self._create_temporary_table(table_name, headers)
                with Timer(f"Import {file_name}"):
                    self._import_file(file_path, table_name)
                os.remove(file_path)
            destination_table_name = HistoricalAppropriationAccountBalances._meta.db_table
            with Timer(f"Empty {destination_table_name}"):
                cursor.execute(f"delete from {destination_table_name}")
            with Timer(f"Import into {destination_table_name}"):
                self._import_data()