以下这些示例演示了课程数据馈送的构成,可满足多种使用案例所需。以下示例使用了为满足使用案例所需的最简单数据馈送。还有更多课程馈送标题可用于创建课程记录 - 分析您机构的信息系统以及注册要求和规划,可帮助确定正确填充 Learn 以满足数据和课程生命周期目的所需的数据深度。

这些示例基于集成配置 UI 中可见的默认 Learn 设置。更改这些配置元素将导致示例结果发生更改。有关这些设置的说明,请访问 SIS 框架概述。此外,除非另有说明,否则假定集成已配置为对所有传入数据使用相同的数据源。


课程

课程数据是介绍 Learn 中课程的主要信息集。在 SIS 数据课程对象的上下文中,通常称为“分区”,这会反映在现有标准中。在早于这些标准的时间里,快照平面文件使用“课程”来提及基于上下文的课程相关记录。

操作

可以向 Learn 提供数据,之后可以进行更新、删除或修改,因此,您可以从最简单的数据集开始,在您机构的数据需求发生变化时进行补充。

一个不可改变的课程字段为 COURSE_ID,一经创建记录后,此字段就不能更改,并且当 COURSE_ID 需要更改时,必须禁用和清除该记录。这会产生影响活动记录的后果,因此,强烈建议您使用在课程生命周期内不可能发生变化的数据元素。

快照平面文件数据管理

SIS 框架支持通过 UI 馈送上传以及由 Learn 系统提供的一组 URL 来进行快照平面文件数据馈送上传。

通过系统管理员数据集成学生信息系统集成 UI 中的集成菜单,访问 HTTP 信息并上传馈送文件。

在这两种情况下,数据操作的行为是由集成配置和选定操作类型驱动的。选择的数据操作类型将控制如何“解释”馈送中的数据,每个 URL 将提供不同的结果来满足您的集成的预期目标。

操作说明
存储使用此操作类型时,馈送文件中包含的数据会在该集成所拥有的所有数据源中存储或更新(按配置设置)。(请参阅 SIS 框架概述,了解数据“所有权”和数据源)
完全刷新此操作会存储或更新在数据馈送中包含的数据,同时禁用未包含在数据馈送(与跨所有数据源的集成相关联)中的数据。
删除此操作将根据每个集成设置禁用包含在数据馈送中的记录,这些数据馈送与跨所有数据源的集成相关联。
按数据源进行完全刷新SP12 中引入的此操作,会执行仅与集成配置数据源相关联的数据的完全刷新。此操作会更紧密地模拟命令行快照过程,以进行数据刷新。

与课程操作关联的对象包括:

对象操作
课程存储、完全刷新、删除、按数据源进行完全刷新
课程关联存储、完全刷新、删除、按数据源进行完全刷新
课程标准关联存储、完全刷新、删除、按数据源进行完全刷新

可在层次结构示例区域中找到课程关联示例。

提供的示例是使用快照框架 UI 上传馈送文件功能进行演示的。要详细了解如何自动化或使用其他命令行/编程操作,请参阅快照平面文件自动化

关于数据源密钥的提醒

所有数据对象都支持更改数据源密钥的功能(以便对该数据集进行分组),并可用于更改关联的数据源 - 注:这不是基于框架的数据馈送中的必填字段,除非特别指出,以下示例假设,集成已配置为使用单个数据源。

在 SP 12 中引入的功能使您可以独立于指定新数据源,来单独指定数据馈送中的数据源。

请参阅数据源密钥管理以及关于更改课程记录的数据源一节。

有关字段映射的说明

字段映射使您可以在传入数据存储到 Learn 之前对其进行更改。这样,您就可以完全控制所存储的数据,并且在提供的 SIS 数据不足的情况下,允许您符合 Learn 特定规则(例如:创建一个合适的课程名称条目。应用于课程对象字段时,关联的脚本将按课程记录来运行,并且在数据存储到 Learn 之前对其进行更改或提供。要详细了解字段映射,请参阅快照平面文件自定义字段映射


课程操作示例

在较高层级上,您可以确定三种 SIS 集成数据馈送模式,这些模式可以应用于所有课程数据操作,而选择的模式取决于您可以提供的数据。

  1. 使用单个馈送文件,您可以利用单独的过程来存储和更新记录(存储),以禁用(删除)记录
  2. 使用单个馈送文件,您可以存储、更新和禁用(完全刷新)记录
  3. 利用文件组合,您可以用一种文件进行存储,用另一种文件进行禁用。

最后,这不是 SIS 馈送模式,但值得一提的是,您也可以利用 UI 中提供的数据源管理工具,单独基于 DSK 进行禁用和清除。当以此方式管理 SIS 提供的数据时,应格外谨慎。当清除那些过去从未或将来不再通过 SIS 或测试操作的结果提供的数据时,此功能非常有用。

基础要点:课程

所有课程帐户都需要一组基本信息来建立帐户。要了解详情,请参阅快照平面文件数据格式快照平面文件标题描述

如果您当前使用的是 UI 批处理工具,现在切换到使用 SIS 框架并使用最小课程数据,则 SIS 框架的 UI 上传功能可让您更好地记录和报告数据上传,而无需更改您的数据收集过程。

简要数据

在 Learn 中创建课程帐户所需的最小数据集或标题包括:

EXTERNAL_COURSE_KEY - 此课程记录的唯一标识符。

DATA_SOURCE_KEY - 此记录的数据集的唯一标识符。注意:这可以在馈送中提供,也可以通过集成配置提供)

COURSE_ID - 课程的 ID - 用作课程的唯一显示标识符。COURSE_NAME 课程标题。

每个集成配置的 SIS 框架提供非必填字段的默认值或忽略非必填字段。课程馈送非必填的两个有用字段为 AVAILABLE_IND 和 ROW_STATUS。以下使用案例中将对此进行介绍。 

快照平面文件标题描述对上述每个标题进行了详细介绍。

添加课程信息

添加课程信息有两种情况。第一种情况是额外存储课程信息,从而导致添加或更新记录,这会在数据馈送中相应显示。第二种情况是刷新 Learn 中已存在的课程信息,从而导致新增或更新现有记录,这会在数据文件中相应显示,同时会禁用在课程数据文件中不存在的现有 Learn 记录。

存储操作示例

示例 1:创建课程

您希望在不影响现有帐户的情况下向 LEARN 添加课程。您已将集成配置为对所有传入数据使用相同的数据源。

先决条件

无。

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

解决方案

创建 COURSES.txt 数据文件,其中包含您希望添加到系统中的每门课程的必填标题和关联数据。例如:

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME
testCourse1|Course.1.1.SP2013|Test Course 1
testCourse2|Course.2.1.SP2013|Test Course 2
testCourse3|Course.3.1.FA2013|Test Course 3

使用该 UI,利用存储操作,通过课程数据类型上传此文件。将创建课程帐户,您可以通过系统管理员课程工具对其进行查找。

后置条件

Course.1.1.SP2013Course.2.1.SP2013Course.3.1.FA2014 的课程记录已创建。

示例 2:更新课程

您创建了课程帐户,现在需要对其进行更改。例如:上面的示例不包含课程名称中的学期。

先决条件

无 - 现有课程将会更新,馈送中的所有新课程数据都将创建新课程。

解决方案

创建 COURSES.txt 数据文件,其中包含您希望更新到系统中的每门课程的必填标题和关联数据。例如:

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME
testCourse1|Course.1.1.SP2013|Test Course 1 (SP2013)
testCourse2|Course.2.1.SP2013|Test Course 2 (SP2013)

由于存储仅对文件中包含的数据进行操作,因此先前提交的 Course.3.1.FA2013记录不受影响。

使用该 UI,利用存储操作,通过课程数据类型上传此文件。文件中的课程记录将会更新。

后置条件

Course.1.1.SP2013Course.2.1.SP2013 的课程记录会更新,以将学期包含在 COURSE_NAME

Course.3.1.FA2014的课程记录不受影响。

课程:完全刷新课程操作

完全刷新的操作方式不同于存储。完全刷新执行两项操作,相当于对馈送文件中的数据以及集成拥有 LEARN 中的记录进行比较 - 存储新记录、更新现有记录或禁用 LEARN 中不在数据文件中的记录。

示例:完全刷新

SIS 提供的数据包含 Learn 中应该存在的课程的完整快照。此数据包含要添加的课程记录、要更新的课程记录以及自上次完全刷新操作后已删除的记录,这些记录应按配置进行相应的处理(禁用或清除)。

先决条件

无。

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

解决方案

从第一个课程存储操作的数据开始,然后向数据馈送添加 Course.1.2.SP2013,并删除Course.3.1.FA2013

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME
testCourse1|Course.1.1.SP2013|Test Course 1.1 (SP2013)
testCourse1.2|Course.1.2.SP2013|Test Course 1.2 (SP2013)
testCourse2|Course.2.1.SP2013|Test Course 2 (SP2013)

请注意,如果此集成还管理了其他课程记录,则这些记录将被禁用或清除,因为在上面的数据馈送中没有这些记录。

后置条件

Course.1.1.SP2013的课程记录将会保留,并进行更新,以包括 COURSE_NAME 中的部分

Course.1.2.SP2013的课程记录将会添加到 Learn

Course.2.1.SP2013的课程记录会保留,并且不受影响。

Course.3.1.FA2013的课程记录,由于数据馈送中缺少此课程记录,因此已标记为已禁用或已准备好按每个集成配置进行清除。

课程:按数据源进行完全刷新

按数据源进行完全刷新会执行完全刷新操作,但会将受影响的数据限定为仅与集成的数据源相关联的数据。 

示例:按数据源进行完全刷新

SIS 提供的数据包含 Learn 中应该存在的课程的完整快照。此数据包含要添加的课程记录、要更新的课程记录以及自上次完全刷新操作后已删除的记录,这些记录应按配置进行相应的处理(禁用或清除)。此外,使用集成中定义的同一数据源,作为刷新中的所有数据的目标,并且仅影响与此数据源密钥相关的数据。

先决条件

无。

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

解决方案

使用上次存储操作中的数据并从数据馈送删除 Course.2.1.SP2013

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME
testCourse1|Course.1.1.SP2013|Test Course 1.1 (SP2013)
testCourse1.2|Course.1.2.SP2013|Test Course 1.2 (SP2013)

后置条件

Course.1.1.SP2013Course.1.2.SP2013 的课程记录会保留,并且不受影响。

Course.2.1.SP2013的课程记录已标记为已禁用或已准备好按每个集成配置进行清除。

如果还有其他课程记录由此集成管理,则这些记录不会被禁用或清除,因为这些记录在上述数据馈送中不存在,除非其具有与集成指定的相同数据源。

课程可用性

课程可用性设置允许将 LEARN 中的帐户设置为对学生可见(可用)或不可见(不可用)。请注意,这与禁用课程不同,后者不仅会使课程对学生和教师不可用,同时还意味着它对其他操作(如成员管理)也不可用。 添加此数据馈送标题不会影响上面演示的存储、完全刷新、按数据源进行完全刷新(用于创建课程记录)的用法。

注意,未提供可用性设置时,默认集成设置会应用于在创建/更新操作中可用的对象。

示例:课程帐户可用性

您的 SIS 控制 LEARN 访问可用性,数据馈送指示用户的可用性设置,以控制用户何时有权访问 Learn 以及您希望控制有关人员创建/更新的访问设置。

先决条件

无。

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

AVAILABILITY_IND

解决方案

向您的数据馈送添加 AVAILABLE_IND标题,如果可用,则提供单个字符 Y,如果不可用,则提供单个字符 N

后置条件
存储

Course.1.1.SP2013Course.1.2.SP2013 的课程记录已更新(这些记录是以前创建的),并且创建了 Course.5.1.FA2013 的课程记录。

完全刷新

Course.1.1.SP2013Course.1.2.SP2013 的课程记录已更新(这些记录是以前创建的),并且创建了 Course.5.1.FA2013 的课程记录。将禁用所有其他记录或将其标记为清除,因为其在上述数据馈送中不存在。

按数据源进行完全刷新

Course.1.1.SP2013Course.1.2.SP2013 课程记录已更新(这些记录是以前创建的),并且创建了 Course.5.1.FA2013 的课程记录,可用性已明确设置为 Y,使课程可用。

如果还有其他课程记录由此集成管理,则这些记录不会被禁用或清除,因为这些记录在上述数据馈送中不存在,除非其具有与集成指定的相同数据源。按数据源进行完全刷新仅对集成数据源的记录进行操作。

禁用课程记录

在 Learn 中禁用课程记录将使所有用户都无法访问该记录(已禁用状态会覆盖可用性设置),并且还使该记录对 UI 操作不可访问 - 例如:您不能通过 UI 管理禁用的课程。此外,要从 Learn 中清除记录,必须先禁用该记录。

禁用记录和后续清除将从 Learn 中删除对该记录的所有引用 - 建议仅在一段时间之后清除已禁用的记录,具体的时间段由您的企业自行决定,因为法律惯例可能会要求提供活动记录。

禁用记录有两种方式:通过刷新操作的馈送数据排除来禁用,通过使用馈送标题 ROW_STATUS来禁用。

使用刷新操作的上述课程操作会演示通过排除来禁用,以下情况和示例会演示通过使用 ROW_STATUS 来禁用。

示例:禁用课程记录

策略规定,在 5 年期后,您会从 Learn 中完全删除课程(与使记录不可用不同,不可用仅会限制课程记录的可见性)。如果您使用的是存储操作,要清除课程,您必须使用 ROW_STATUS 标题明确禁用该课程。这也适用于 SIS 馈送范围以外的手动操作。

先决条件

课程存在或课程将被创建,row_status 按数据馈送中的说明进行了设置。 

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

ROW_STATUS

解决方案

向您的数据馈送添加 ROW_STATUS标题,如果已启用,则提供 ENABLED,如果已禁用,则提供 DISABLED

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME|ROW_STATUS
testCourse1|Course.1.1.SP2013|Test Course 1.1 (SP2013)|enabled
testCourse1.2|Course.1.2.SP2013|Test Course 1.2 (SP2013)|enabled
testCourse5.1|Course.5.1.FA2013|Test Course 5.2 (FA2013)|disabled

后置条件
存储

仅为 Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 创建或更新了课程记录,且 ROW_STATUS 已明确更新。

完全刷新

Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 创建或更新了课程记录,且 ROW_STATUS 已明确更新。将禁用所有其他记录或将其标记为清除,因为其在上述数据馈送中不存在。

按数据源进行完全刷新

Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 创建或更新了课程记录,且 ROW_STATUS 已明确更新。

如果还有其他课程记录由此集成管理,则这些记录不会被禁用或清除,因为这些记录在上述数据馈送中不存在,除非其具有与集成指定的相同数据源。按数据源进行完全刷新仅对集成数据源的记录进行操作。

课程合并

通过课程合并,您可以将某个课程的多个部分在 Learn 中呈现为单个课程。这是通过以父子关系合并课程来实现的。父项会显示给参与该课程的用户,子区域/课程会采用成员身份等。然后,教师只需为单个课程提供内容,Learn 系统与 SIS 就可以保持课程标识符配对,便于在 Learn 与 SIS 之间进行课程相关信息交流。 

示例:课程合并

英语系有四个入门级课程,每个课程都需要多个分区,以容纳所需的学生教师比率。他们希望为教师提供单个课程来管理其课程。

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

MASTER_COURSE_KEY

解决方案

向您的数据馈送添加 ROW_STATUS标题,如果已启用,则提供 ENABLED,如果已禁用,则提供 DISABLED

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME|MASTER_COURSE_KEY
testCourse1|Course.1.1.SP2013|Test Course 1.1 (SP2013)|
testCourse1.2|Course.1.2.SP2013|Test Course 1.2 (SP2013)|testCourse1
testCourse5.1|Course.5.1.FA2013|Test Course 5.2 (FA2013)|

将 MASTER_COURSE_KEY 留空意味着该课程没有“父”课程,或者换个说法,该课程未与父课程合并。

后置条件
存储

仅创建或更新 Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 的课程记录,从而在 Course.1.1.SP2013(父)和 Course.1.2.SP2013 之间建立父-子关系。

完全刷新

创建或更新 Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 的课程记录,从而在 Course.1.1.SP2013(父)和 Course.1.2.SP2013 之间建立父-子关系。将禁用所有其他记录或将其标记为清除,因为其在上述数据馈送中不存在。

按数据源进行完全刷新

创建或更新 Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 的课程记录,从而在 Course.1.1.SP2013(父)和 Course.1.2.SP2013 之间建立父-子关系。

如果还有其他课程记录由此集成管理,则这些记录不会被禁用或清除,因为这些记录在上述数据馈送中不存在,除非其具有与集成指定的相同数据源。按数据源进行完全刷新仅对集成数据源的记录进行操作。

课程模板

创建课程时可以使用课程模板,以便在外观、成绩簿、内容结构等方面提供一致性。使用模板创建的课程是该模板的一个镜像,课程数据馈送中显示的特定课程设置除外。您可以使用任何课程来用于此目的。

模板仅在创建课程时使用,因此您无法创建课程,然后通过更新馈送提供模板。

示例:课程模板

数学系要求所有数学课程具有相似的外观、相似的内容布局,并填充了一些核心内容。 

先决条件

已创建课程框架,其中包含所需的内容、布局和设置。

最低数据馈送要求

EXTERNAL_COURSE_KEY

COURSE_ID

COURSE_NAME

TEMPLATE_COURSE_KEY

解决方案

向您的数据馈送添加 TEMPLATE_COURSE_KEY标题,并提供课程的 external_course_key 表示模板。

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME|TEMPLATE_COURSE_KEY
testCourse1|Course.6.1.SP2013|Test Course 1.1 (SP2013)|testCourseTemplate.SP2013
testCourse5.1|Course.5.1.FA2013|Test Course 5.2 (FA2013)|

TEMPLATE_COURSE_KEY留空表示课程不需要模板。

后置条件
存储

仅创建或更新 Course.6.1.SP2013Course.5.1.FA2013 的课程记录,其中 Course.6.1.SP2013 是使用 testCourseTemplate.SP2013 模板创建的。

完全刷新

仅创建或更新 Course.6.1.SP2013Course.5.1.FA2013 的课程记录,其中 Course.6.1.SP2013 是使用 testCourseTemplate.SP2013 模板创建的。将禁用所有其他记录或将其标记为清除,因为其在上述数据馈送中不存在。

按数据源进行完全刷新

仅创建或更新 Course.6.1.SP2013Course.5.1.FA2013 的课程记录,其中 Course.6.1.SP2013 是使用 testCourseTemplate.SP2013 模板创建的。

如果还有其他课程记录由此集成管理,则这些记录不会被禁用或清除,因为这些记录在上述数据馈送中不存在,除非其具有与集成指定的相同数据源。按数据源进行完全刷新仅对集成数据源的记录进行操作。

完整示例

将上述标题组合成单个文件,我们可以一次解决大多数使用案例。

先决条件

为了使模板复制操作成功完成,要求先前一定没有创建过 testCourse8。

为了保持服务器速度并防止不必要的数据库作业队列,在群集中只能并发运行两个课程复制作业。

EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME|AVAILABLE_IND|ROW_STATUS|MASTER_COURSE_KEY|TEMPLATE_COURSE_KEY
testCourse8|Course.8.SP2013|Test Course 8 (SP2013)|Y|ENABLED||testCourseTemplate.SP2013
testCourse8.1|Course.8.1.SP2013|Test Course 8.1 (SP2013)|Y|ENABLED|testCourse8|
testCourse8.2|Course.8.2.SP2013|Test Course 8.2 (SP2013)|Y|ENABLED|testCourse8|
testCourse9.1|Course.9.1.FA2013|Test Course 5.2 (FA2013)|Y|DISABLED||

后置条件

存储

仅为 Course.1.1.SP2013Course.1.2.SP2013Course.5.1.FA2013 创建课程记录,或使用以下结果更新课程记录:

所有课程的可用性都设置为 Y,指示课程可用。

Course.1.1.SP2013Course.1.2.SP2013 将设置为 ENABLED,而 Course.5.1.FA2013 设置为DISABLED

Course.1.1.SP2013(父)和 Course.8.1.SP2013Course.8.2.SP2013 之间建立父子关系。

在创建 Course.8.SP2013时,模板 testCourseTemplate.SP2013 中的内容和设置将复制到 Course.8.SP2013

完全刷新

与存储操作的结果相同,另外,其他所有记录将被禁用或标记为清除,因为其在上述数据馈送中不存在。

按数据源进行完全刷新

与存储操作的结果相同,另外,如果还有其他课程记录由此集成管理,则这些记录不会被禁用或因这些记录在上述数据馈送中不存在而被清除,除非其具有与集成指定的相同数据源。按数据源进行完全刷新仅对集成数据源的记录进行操作。


了解详细信息

SIS 框架概述

快照平面文件标题描述

快照平面文件数据格式

快照平面文件自动化