def convert_col(row,keep_bad, idcol='SIS User ID'):
    """
    make a string id from a floating point value, keeping
    track of bad ids by appending them to the keep_bad list
    """
    the_id = row[idcol]
    try:
        #
        # '63514095.0'
        #
        the_int = int(float(the_id))
        str_id = f"{the_int:d}"
    except Exception as e:
        print(f"id conversion problem in make_id: {e}")
        print(f"{the_id=}")
        bad_val = keep_bad[-1]
        bad_val+= -1
        keep_bad.append(bad_val)
        str_id = f"{bad_val:d}"
    row["the_ids"] = str_id
    # print(f"{type(row['the_ids'])}")
    return row