Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-11640

Analysis for maintenance global documents on KRAD

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Complete
    • Affects Version/s: None
    • Fix Version/s: 2.4
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-10667Implement maintenance global documents on KRAD
      KULRICE-10509Maintenance Gap Analysis: Global Maintenance Documents (rows 68-71)
      KULRICE-8056Provide ability for global maintenance documents
      KULRICE-10116Maintenance Gap Analysis: Permission
      KULRICE-8794Perform analysis of the KNS maintenance framework
      KULRICE-10113Maintenance Gap Analysis: Maintainables
      KULRICE-13358Create AFT for global maintenance documents.
      KULRICE-10117Maintenance Gap Analysis: basic stuff
      KULRICE-10236Maintenance Gap Analysis: basic stuff (rows 2-5)
      KULRICE-10237Maintenance Gap Analysis: basic stuff (rows 7-10)
    • Rice Module:
      KRAD
    • KRAD Feature Area:
      Maintenance
    • Application Requirement:
      Rice
    • Sprint:
      2.4.0-m4 KRAD Sprint 3
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required
    • Include in Release Notes?:
      Yes

      Description

      Complete analysis of Global Maintenance Document. This will involve reviewing the description below, reviewing the Google docs analysis and verifying with Jonathan. Once the requirements are understood and agreed upon, you will need to formulate a high level approach for implementing in KRAD. You should get consensus on the approach from Jerry, Peter, Claus.

      The final deliverable of the analysis will be the creation of multiple jiras that break out the Global Maintenance Document functionality into logical, jira sized deliverables.

      -------------------------------------------------------------------------------------------------------------------------------------------------------

      Global Maintenance Document Description:
      Supports a mass change form of maintenance document termed a "Global". These extend the base maintainable framework by using a business object which implements a special marker interface. This object is really a document-based class complete with document number and containing one or more lists of GlobalBusinessObjectDetail objects. This and the special maintainable (KualiGlobalMaintainableImpl) result in the special behavior.

      Global documents provide a hook (though it must be implemented from scratch by any implementors) to add locks to the maintenance lock table for each object being edited.
      Calls into the GlobalBusinessObject (the document) to build the list of maintained business objects to save or delete.

      NOTE: On the maintenance document collection used for the detail objects, you must specify the global detail class as the business object and the BO class being modified as the source class. Since any instance of the global detail object needs to have that class information, this is redundant and could be removed.

      See also https://wiki.kuali.org/display/KULDOC/Global+Maintenance+Documents+5

      Line item 62-64 on https://docs.google.com/a/kuali.org/spreadsheet/ccc?key=0AqaSaSLMsdRMdEJDYUNCMFplRTRvTEpSTWhyaFJEc2c#gid=2

      1. KULRICE-11640_Phase_1.patch
        35 kB
        Kristina Taylor
      2. KULRICE-11640_Phase_2.patch
        31 kB
        Kristina Taylor

        Issue Links

          Activity

          Show
          Kristina Taylor (Inactive) added a comment - I've started an analysis document: https://docs.google.com/a/kuali.org/document/d/1e8bY04wtC2gmDU0HgT5_XM6JMLOy7ZzCki1DP7M82eY/edit#
          Hide
          Kristina Taylor (Inactive) added a comment - - edited

          I've attached a sample of the phase 1 implementation. This is an implementation that uses a base class for defining the object being maintained. Jerry has noted that we could do better and provide that base class (and corresponding table) ourselves, so that will be for phase 2.

          Show
          Kristina Taylor (Inactive) added a comment - - edited I've attached a sample of the phase 1 implementation. This is an implementation that uses a base class for defining the object being maintained. Jerry has noted that we could do better and provide that base class (and corresponding table) ourselves, so that will be for phase 2.
          Hide
          Kristina Taylor (Inactive) added a comment -

          I've attached a sample of the phase 2 implementation. This eliminates the need for using any tables and provides a fairly basic implementation for bulk updates. The patch includes an example as well but does not include the moving of the deprecated classes.

          Show
          Kristina Taylor (Inactive) added a comment - I've attached a sample of the phase 2 implementation. This eliminates the need for using any tables and provides a fairly basic implementation for bulk updates. The patch includes an example as well but does not include the moving of the deprecated classes.

            People

            • Assignee:
              Kristina Taylor (Inactive)
              Reporter:
              Jeff Ruch
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 2 days, 4 hours Original Estimate - 2 days, 4 hours
                2d 4h
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 3 days, 6 hours
                3d 6h

                  Agile

                    Structure Helper Panel