The Veracross Data Importer allows schools to import class schedule records to the system. This article covers the fields needed in the CSV import. This import type only inserts new class schedules; it does not update existing ones. Classes and all relevant scheduling options (e.g., Blocks, Periods or Rooms) must already exist in the system in order for the class schedules to import properly.
Preparing the Data for Import
Prepare a comma-separated value (CSV) file containing the data for the fields listed below. This CSV file must contain a column for each field listed below and they must be in that same order. Even if no content is populated in the non-required columns, a column must nonetheless exist as a placeholder in order for the Data Importer to properly read the file. Upload the CSV using the Data Importer.
Fields on the Template
For a Class Schedule import, either the internal_class_id field (approach 1) is required; or the class_id AND the class_school_year fields are both required instead (approach 2). Those are noted below using the superscript ¹ and ² respectively.
Besides that, other fields are required depending on the circumstance.
- Always required: Asterisk * is used to denote below.
- Required Conditionally: Degree symbol º is used. (If Block is being used, then Day must be filled. This is a matrix; this typically means that block scheduled classes will have N-number of rows per class in your import, where N = the number of times that block meets in the rotation.)
Use the following queries to locate the IDs in question.
|internal_class_id¹||ID value. Pull the “Internal Class ID” field into a Find Classes query to display this number. If this field is populated, the class_id and class_school_year fields are not required. Click here to review internal class ID values.|
|class_id²||Text field. Run a Find Classes query to locate this. If the internal_class_id is not present in the import, this field, as well as the class_school_year field, are required.|
|class_school_year²||If the internal_class_id is not present in this import, this field (as well as the class_id field) are required. Preferred format: YYYY (e.g., 2018).|
|grading_period*||If the class is scheduled for the whole year, use “50”. That is the value that represents “ALL” or whole-year schedules. But, if the class meets for 1 or 2 terms, and not the whole year, choose one or more different values. Should only be a Major or Minor grading period; midperiods must not be chosen. Must be the Grading Period ID (integer value) or the Grading Period abbreviation. Click here to review Grading Period ID values.|
|day º||The ID of the rotation Day. Integer value. Click here to review Rotation Day ID values. If the class is not fully scheduled to follow a rotation, this field (and all that follow) can be left blank; class schedules are used to help define not only the Day and Block/Time, but also to define when the class is Graded: and not every class is scheduled; it might only be graded for particular terms.|
|block_id||The ID of the Block (period). Integer value. Click here to review Block ID values. Note that scheduling using blocks requires one row per Day that block meets in the rotation. Typically most blocks meet multiple times in a rotation; so this means that typically, most Classes will have multiple Rows in a schedules import.
Note about Day and Block: Block and Day work together but are in fact optional:
|start_time||The time when the class starts. Format: 24:00. Example; enter “13:35” if the class start time is 1:35 pm. This is an “override” time, and it’s optional: This is only required if there is no block being used and/or if you wish to adjust the normal time of the block|
|end_time||The time when the class ends. Format: 24:00. Example; enter “14:10” if the class end time is 2:10 pm. This is an “override” time, and it’s optional: This is only required if there is no block being used and/or if you wish to adjust the normal time of the block|
|room||The room where the class meets for this unique meeting time. This is optional, and it is an “override” room value: it’s only required if the class happens to be meeting in a different room than the “usual” room set on the Class. Use the internal resource ID. Click here to review Room ID values.|