Penn Computing

University of Pennsylvania
Penn Computing << go backback
PKG Table - Data Element Index    Tables and Data Elements   Learning Management Home   Data Warehouse Home

PKG Table

DWLMS Schema

Explanation
Tracks current information on packages created on or after October 8, 2004. A package is a set of courses that may be taken in any order, and that can be assigned to a business unit using one assignment specification. (A business unit--also known as a BU, role, Knowledge Node, or K Node--is a set of one or more Knowledge Link users.) For example, say that trainees are usually required to take both course A and course B. Package P consists of courses A and B. If business unit X is required to take both of these courses, specifying that P is assigned to X is more convenient than specifying each course separately.

The PKG table has one record per package, and includes descriptive information (such as the unique identifiers for the package, its name, and its description), status-related information, and information related to the process that assigns the package to a business unit. .

Common Uses

  • Including descriptive information about a package in a report.
  • Selecting packages to be included in a report based on their status.
Primary Key Indexed Data Elements Related Tables
PKG_ID
IDENTIFIER
PKG_ID
KNODE
KNODE_CRS_JOIN
LMS_DEFINITION
LMS_TRAINEE_BU_COURSE_ASSIGN
PKG_CRS_JOIN
PROFILER_ASSIGNMENTS
UPHS_USER_ENTITY
USER_COURSES


Cautions

  • The PKG table stores only the current information for a package. Historical information for a business unit is not available. For example, if a package originally had a NAME of X, but had its NAME changed to Y this year, there is no way to tell from the PKG table that the package ever had a NAME of X.
  • A package usually (but not always) includes at least one course. (There are some records in PKG for packages with no courses.) Also, a given course may belong to more than one package. For information on the courses that belong to a given package, see the PKG_CRS_JOIN table.
  • There are several data elements that provide information about the package's identity:
    • The IDENTIFIER is a string that uniquely identifies the package to Knowledge Link users. Examples are 'MS100', 'EHRS / Radiation Safety', and '10366.' (The value is stored without the quotes.)
    • The NAME is the name of the package. For example, package MS100's NAME is 'Medical Surgical Core Competencies - PPMC.' (The value is stored without the quotes.) Note: it is possible for more than one package to have the same value for NAME.
    • The DESCRIPTION is text that explains what the package includes. For instance, the DESCRIPTION for package MS100 is 'Unit Specific Competencies for Med Surg. 4 South Only.' (The value is stored without the quotes.)
    • The PKG_ID is a numeric value (such as 10848) used to uniquely identify the PKG record within the Knowledge Link system. The PKG table has one record per package.
  • A package may be used to assign a set of courses to a business unit only if the package is active. If you wish to include only active packages in your report, specify the condition that STATUS=1. Inactive packages have a STATUS of 0 (zero).
  • If the package is inactive, EXPIRATION_DATE is the date when it became inactive. In most cases, if the package is active, EXPIRATION_DATE is null. However, it is possible for a package to have its status change from active, to inactive, and back to active. In such a case, EXPIRATION_DATE might still store the date when the package became inactive, even though the package is active again.
  • The PKG table includes some data elements that currently are not used. Those data elements are:
    • DISCOUNT
    • ECOMMERCE
    • FINAL_PRICE
    • OBJECTIVES
  • It might appear that the list of related tables shown above incorrectly excludes the KNODE_USER_JOIN table. Although PKG and KNODE_USER_JOIN can be joined based on KNODE_ID, you probably do not want to join the tables to each other directly--KNODE_ID does not have the same meaning in both tables.
    • In a PKG record, the KNODE_ID identifies the business unit that owns the package. However, in a KNODE_USER_JOIN record, the KNODE_ID denotes a business unit to which the Knowledge Link user has been assigned--a Knowledge Position, or KP.
    • An example of a scenario in which you might need to use both the KNODE_USER_JOIN table and the PKG table is a situation where you want to determine whether a given Knowledge Link user can assign a particular package of courses to a business unit. If you do use both tables, you'll need to use more than one query.
      • First, check the user (USER_REC_ID). Select the active KNODE_USER_JOIN records for the user, checking the user's KPs to see whether any of them grants the user the necessary privileges. If the user has administrator privileges, the user can create course assignments using any package, and you can stop at this point. You can also stop at this point if the user does not have privileges that include the ability to create course assignments.
      • Next, check the package (PKG_ID). If it is inactive (STATUS=0), the user cannot assign the package, and you can stop at this point.
      • If the user does not have administrator privileges, but does have privileges that include the ability to create course assignments, and the package is active, the next step is to run one or more queries to check the combination of the user and the package. You might need to check up to four possibilities. For each possibility, given the active KNODE_USER_JOIN record(s) for the user and the privileged KP(s), and the PKG record for the active package,
        1. select records where KNODE_USER_JOIN.KNODE_ID = KNODE.KNODE_ID(+) and KNODE.PARENT_ID = LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_NUMBER(+) and LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_MEMBER_NUMBER = PKG.KNODE_ID (+). The user can assign the package if:
          • LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_TYPE_ABBR = 'KMC' (the parent of the user's privileged KP is a Knowledge Microcommunity), and
          • KNODE.PARENT_ID = PKG.KNODE_ID (the parent of the user's privileged KP is the same as the package's owner).
        2. for the user, select records where KNODE_USER_JOIN.KNODE_ID = KNODE.KNODE_ID(+) and KNODE.PARENT_ID = LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_NUMBER(+). In a separate query, check the PKG.XACCESS for the package you are investigating. The user can assign the package if:
          • LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_TYPE_ABBR = 'KC' (the parent of the user's privileged KP is a Knowledge Community), and
          • PKG.XACCESS = 165 (the package's access level is Global).
        3. select records where KNODE_USER_JOIN.KNODE_ID = KNODE.KNODE_ID(+) and KNODE.PARENT_ID = LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_NUMBER(+) and LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_MEMBER_NUMBER = PKG.KNODE_ID (+) (the parent of the user's privileged KP is the same as the package's owner or falls above it in the business unit hierarchy). The user can assign the package if:
          • LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_TYPE_ABBR = 'KC' (the parent of the user's privileged KP is a Knowledge Community), and
          • PKG.XACCESS =166 (the package's access level is Inheritable).
        4. select records where KNODE_USER_JOIN.KNODE_ID = KNODE.KNODE_ID(+) and KNODE.PARENT_ID = LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_NUMBER(+) and LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_MEMBER_NUMBER = PKG.KNODE_ID (+). The user can assign the package if:
          • LMS_BUSINESS_UNIT_GROUP.BUSINESS_UNIT_GROUP_TYPE_ABBR = 'KC' (the parent of the user's privileged KP is a Knowledge Community), and
          • KNODE.PARENT_ID = PKG.KNODE_ID (the parent of the user's privileged KP is the same as the package's owner), and
          • PKG.XACCESS =167 (the package's access level is Local).

Source

Knowledge Link, the learning management system used by the University and by the University of Pennsylvania Health System (UPHS) since March, 2005.

Knowledge Link enables authorized administrators to schedule training courses, assign resources to courses, assign groups of trainees to courses, and to create online courses. It enables trainees to find out what courses have been assigned to them, to register for those courses (whether those courses are on-line or instructor-led), to take on-line courses, and to provide feedback via course evaluations. Knowledge Link was first used to track information on training required by regulation, but it now tracks information on a variety of training courses.

PKG Table - Data Element Index    Tables and Data Elements   Learning Management Home   Data Warehouse Home

Questions about this page? Email us at da-staff@isc.upenn.edu

Information Systems and Computing
University of Pennsylvania
Information Systems and Computing, University of Pennsylvania