Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. The customer would get a pre-filled Offering Rule Matrix (with courses /and OrgProfileField values) which has been extracted from the LMS via GetOfferingRuleMatrix command

    • Instead of a complete The Offering Rule Matrix , it is possible to only send an partial Offering Rule Matrix to the customer which only contains courses which need a rule update

  2. Generate the offering rules (either instructor or registrations) using the Offering Rule Generator

  3. Pause
    • can be split into sub-matrices so only a portion of the courses' offering rules are replaced.
      Important: if a course has multiple rules a sub-matrix must contain all rules for that course - rules for one course can’t be split across multiple sub-matrices.

  4. Generate the offering rules (either instructor or registrations) using the Offering Rule Generator

  5. Pause the rule background thread via command PauseAutomaticOfferingRuleProcessing. Check the status of the background thread with GetOfferingRuleStatus to make sure the thread is paused and not in the middle of processing.

  6. Remove previous offering rules for courses (the set of rules to be removed is created by the Offering Rule Generator) Create the new offering rules - commands created by executing the commands provided by the Offering Rule Generator

  7. NoteAdd new offering rules - commands created by the Offering Rule Generator
    Note: The commands to add new rules automatically checks if the OPF single choice values exist

  8. Re-evaluate the rules for courses for which the rules have been changed (student and/or instructor) via command ReEvaluateOfferingRulesByCoursePathMatch (task https://marinels.atlassian.net/browse/PSDEV-760 will add the proper commands to the output file of the Offering Rule Generator)
    Note: you can check the progress of the re-eval command by executing GetOfferingRuleStatus in a new pages/dev client window.

  9. Continue rule background thread via command ContinueAutomaticOfferingRuleProcessing once all re-eval commands finished.

  10. Check the that the background thread is not paused anymore with GetOfferingRuleStatus

Note: It is not required to keep the Offering Rule Matrix on file because if the customer asks for an Offering Rule Matrix the next time we will freshly export a new matrix via GetOfferingRuleMatrix

Offering Rule Matrix

...

The Offering Rule Matrix (aka Registration Rule Matrix) is a csv representation of registration or and instructor rules for courses. The instructor and registration rules matrix’s format is slightly different.

In general, one column determines one rule for a course. If multiple Multiple columns for the same course exist, is allowed - a user gets registered if at least one rule applies to the user. Rows specify Org Profile Fields org profile field names and their values - OPF name and values start from row 9+ for registration rule matrix and row 7+ for instructor rule matrix. An 'x' in a course column and OPF value row specifies that a user requires that OPF value in order to get registered. Rules are able to add users as student !x' specifies that a user gets registered if they DON’T have that specific value - see Invert-OPF-Selection for more details on '!'.

Rules are able to add users as student or instructor. You can also specify rules to remove students or instructors from a course, as soon as the rule requirements doesn’t apply to a user anymore (i.e. due to a vessel change).

...

  • some rule predicates are not supported and can't be extracted. If a rule does contain one of those not (yet) supported predicates it will list them in the command output

  • Manual rules are not included in the matrix - in order to include in the matrix the rule needs to be marked as AUTO

  • De-registration rules are interpreted as inverts of registration rules. Therefore, asymmetric registration/de-registration rules pair will loose the asymmetry, using the registration rule as truth. 

...

Offering Rule Generator

...

The Offering Rule Generator (aka Registration Rule Generator) creates LMS Core commands to replace and add new offering rules based on Offering Rule Matrices. The tool input can be found here. Unzip the latest version to a local folder and run DOS prompt (Ctrl+R, type 'cmd' and hit enter).The Offering Rule Generator takes old and new (transposed) formats of Offering Rule Matrices as input. The output of the tool are the old (deprecated) or new transposed (preferred) format of an Offering Rule Matrix. The tool generates LMS Core client commands to remove any old registration/instructor rules for which the Offering Rule Matrix has a course for and commands to add the new registration/instructor rules.
The Offering Rule Generator tool itself can be found attached/below. Unzip the latest version to a local folder and run DOS prompt (Ctrl+R, type 'cmd' and hit enter).

View file
name2021.03.09 - 4.2.0 - RegistrationRuleGenerator New Matrix Format v2.zip

mandatory: Student/Instructor

...