This script generates an updated version of the DPM with additional an additional column provided by the user.
Column Name: This is the name of the column you want to add to your spreadsheet, in addition to the
"Last Name", "First Name", "Group", "Person Type", and "Email(Caltech)" columns in your final spreadsheet.
DPM File: This should be the original DPM file without modifications. Must be a CSV file.
Groups File: This file must be a XLSX spreadsheet with two columns: "Group" and the new column defined in
the "Column Name" field. This column name must match EXACTLY the name in the "Column Name" field. In the generated
spreadsheet, the default value of each individual in the DPM for the new column will be the one defined for that
individual's group in the file. For example, if "John Doe" is an individual in DPM, his group is "Smith Lab" and
we want to add a column named "Building", the default value for the "Building" column in the row of "John Doe" in
the generated spreadsheet will be that of the "Smith Lab" in the Groups spreadsheet.
Individual Exceptions File: This file is optional. If uploaded, it must be a XLSX spreadsheet with
three columns: "Last Name", "First Name", and the new column defined in the "Column Name" field. This column name
must match EXACTLY the name in the "Column Name" field. In this file, we will define the value of the new column in
the spreadsheet for individuals that differ from the default of their group. For example, if "John Doe" is an
individual in DPM, his group is "Smith Lab", we want to add a column named "Building", and the Building of "Smith
Lab" in the Groups file is "Chen" but John works at "BBB", then we must upload an Individual Exceptions File that
lists "BBB" as the building of John Doe.
Individuals not in DPM File: This file is optional. If uploaded, it must be a XLSX spreadsheet with
six columns: "Last Name", "First Name", "Group", "Person Type", "Email(Caltech)", and the new column defined
in the "Column Name" field. This column name must match EXACTLY the name in the "Column Name" field. If all the
individuals you want in the generated spreadsheet are in the DPM, you do not need to upload this file. If there
is any individual not in the DPM that you want in the final spreadsheet, then you must upload this file and include
the information of this individual as a row in it. The information for this individual in the generated spreadsheet
will show up exactly as it is in this file.
Separate Aggregated Entries: If checked, the entries in the selected column (named in the "Column Name"
field) that aggregate multiple values using '/' will be separated in multiple entries in the generated spreadsheet.
For example, if "Column Name" is Building and the building of a group is "BBB/Broad", all individuals in that group
will have two entries in the generated spreadsheet: one in which the group as "BBB", the other in which the group is
"Broad". If you upload Individual Exceptions and Individuals not in DPM files, this will also apply to them.