Coursedog

Submit a ticket My Tickets
Welcome
Login  Sign up

PowerCampus Integration

Coursedog has built a tight, bi-directional integration to both GET and POST schedule planning data into PowerCampus. 


For a reference on this process, feel free to contact one of our PowerCampus customers at Laguna College: Laura Patrick, lpatrick@lcad.edu

Overview

We have built a PowerCampus integration to pull data into Coursedog for: 

  1. Rooms

  2. Buildings

  3. Faculty

  4. Terms

  5. Courses

We have built a bi-directional (POST) integration to PowerCampus for:

  1. Sections

Rooms & Buildings

For rooms & buildings, we GET the following information

  1. Room ID

  2. Name

  3. Display Name

  4. Capacity

  5. Features

  6. Building ID

  7. Building Name

Note: We do not get Room Status, but your institution may use that field so we set it as a "Coursedog owned" field in their environment.

Faculty

We are getting the following fields from faculty

  1. ID

  2. First Name

  3. Last Name

  4. Department(s)

Terms

We are getting the following fields

  1. Term Name

  2. Term Year

  3. Term Start Date

  4. Term End Date

  5. Term Code

  6. Parts of Term

N2N SQL Filters: None

Courses

We are getting courses separated by term (i.e. to get courses, you have to pass a term code). The courses returned are all active courses hat have at least one section assigned to them - this is done as a proxy to determine all courses that are available for a certain term.

We are getting the following fields

  1. ID

  2. Code

  3. Name

  4. Description

  5. College Code

  6. Status

Sections - GET

We are getting the following fields

  1. ID

  2. Section Number

  3. Call Number

  4. Course Id

  5. Section Type

  6. Grade Mode

  7. Campus

  8. Credit Hours

  9. Status

  10. Notse

  11. Max Enrollment

  12. Preferred Room Features (LCAD only)

  13. Preferred Room Type (LCAD only)

  14. Preferred Room Capacity (LCAD only)

  15. Preferred Building (LCAD only)

  16. Academic Session

  17. Subject Type

  18. Professors

  19. Professor Role

  20. Professor Percentage

  21. Times

  22. Rooms

Some institutions may have additional fields because they have a custom room constraint table in PC that we are pulling from.

On the Coursedog side, we filter returned data to only show active sections. 

Sections - POST

We are only updating existing sections - currently we do not have the ability to Create new sections or delete existing sections. However, for our next integration patch within the next few months, we will be able to create new sections and delete sections. 

In POSTing section updates, we are able to update the following fields

  1. Meeting Times

  2. Meeting Days

  3. Meeting Room

  4. Instructors

  5. Instructor Percentage

By default, we auto-calculate the instructor percentages so if there are 3 instructors, the percentages are 33,33, and 34.

Additionally, we require the following fields to exist to execute a POST transcation

  1. Course Id

  2. Section Numbeer

  3. Call Number

  4. Academic Session

  5. Subject Type


Avoiding Duplicates

In order to avoid duplicate records we have added the following filters in our integration:

RoomList API -  We are not returning Rooms which are having buildingId as 'ONLINE'. We are using a Room table to populate all the Rooms.
SectionList API - We are not having any specific filters. We are using SECTIONS to populate all the sections (We have some other tables involved here to get the Schedule and other Information but  SECTIONS is the driving table.)
TermList - We are not having any filters here. We are using ACADEMICCALENDAR to get the terms Information.
CourseList - We are not having any filters here. We are using EVENT table to pull all the Courses( We have some other tables involved here to get the other Information like departments and courses specific to a term but  EVENT  is the driving table.)
FacultyList -  We are using s specific condition for Each client to pull the Faculty members. For Laguna, we are using PEOPLE_TYPE='FAC' whereas in SEBTS we are using ACADEMIC_SESSION='CURCONTRAC'. These are specific to each client. We are using PEOPLE table to get all the Faculty.
DepartmentList - We are pulling only the departments whose status is 'A'(Active). We are using the CODE_DEPARTMENT table to pull all the departments.


For a link to a forwardable slide deck detailing the SIS integration architecture, go here


For additional info on the Gateway/Dataport, see the following article detailing setup and configuration of the IIG. For HECVAT on the Gateway, see here

C
Coursedog is the author of this solution article.

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.