Building Applications with the KNS
description
Transcript of Building Applications with the KNS
![Page 1: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/1.jpg)
Building Applications with the KNS
![Page 2: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/2.jpg)
The History of the KNS
• KFS spent a large amount of development time up front, using the best talent from each of the partner institutions
• Came up with a foundation on which to build KFS - the Kuali Nervous System
• It focused on a unified approach to development of functionality– A standard way to use workflow, perform CRUD operations,
handle business transactions• KNS extracted into Rice as a module
![Page 3: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/3.jpg)
KNS Overview
• The Kuali Nervous System provides a rich set of open source functionality which can be used to build an electronic document– started as part of the Kuali Financial Systems
project– now part of Rice and Kuali Research
Administration uses it too
![Page 4: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/4.jpg)
KNS Overview (2)
• Provides reusable code, shared services, integration layer, and a development strategy
• Provides a common look and feel through screen drawing framework
• A document (business process) centric model with workflow as a core concept
![Page 5: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/5.jpg)
KNS Diagram
![Page 6: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/6.jpg)
KNS Development
CHART_TChart
(POJO)ORMMap
Data Dictionary
Lookups and
Inquiries
MaintenanceDocuments
TransactionalDocuments
Workflow(KEW)
![Page 7: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/7.jpg)
KNS – The Toolkit
• KNS frameworks provide infrastructure for common business object operations.– Lookups allow users to find and return specific
values.– Inquiries allow users to see related data for a
specific value’s record.– Maintenance documents create or update new
business object entities.
![Page 8: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/8.jpg)
Other KNS Features
• Data Dictionary• Question component• Notes and attachments• Pluggable business rules• KIM Integration for Authorization• System parameters
![Page 9: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/9.jpg)
Lookup Page
![Page 10: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/10.jpg)
Inquiry Page
![Page 11: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/11.jpg)
Maintenance Document
![Page 12: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/12.jpg)
Data Dictionary
• Business Objectso Attributeso Lookupso Inquirieso Relationships
• Document Definitionso Sectionso Fieldso Collections
![Page 13: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/13.jpg)
The Data Dictionary
Business Object XML• Provides metadata for business object properties
– i.e. maxLength, labels, control types• Metadata is accessible in JSPs for business object
field rendering• Contains lookup and inquiry sections used for
constructing those screens by the frameworks
![Page 14: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/14.jpg)
The Data Dictionary (cont)
Transactional Document XML• Associates a Rule class and Authorizer class with the
document type• Maps a document class to a workflow document name and
document type
Maintenance Document XML• Has many of the same features, but also defines the layout of
the maintenance document itself.
![Page 15: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/15.jpg)
Business Objects
• Attributeso Labelso UI Widgetso Validation
• Lookups• Inquiries• Relationships
![Page 16: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/16.jpg)
Types of Documents
• Two types of documents
– Maintenance Documents
– Transactional Documents
![Page 17: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/17.jpg)
Maintenance Documents
• Creates, Edits, Copies, and Inactivates Business Objects
![Page 18: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/18.jpg)
Maintenance Documents (2)
• No GUI programming required, user interface is rendered by framework
• These are used for maintaining data• An easy way to maintain support tables in a database• Supports creation of new records and editing of existing
records• Examples include:
– Budget rates– Project codes
![Page 19: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/19.jpg)
Transactional Documents
• Any service you can think of
![Page 20: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/20.jpg)
Transactional Documents (2)
• These are data-entry centric documents or “transactions” that model the business processes
• Examples include: Proposal Development, Journal Entry, Payment Reimbursement
• Built on a case by case basis using the Kuali Rice tag libraries (encompass snippets of UI behavior):– Notes and attachments– Workflow route log (audit log)
• Integrated with workflow
![Page 21: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/21.jpg)
The Document Hierarchy
![Page 22: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/22.jpg)
Parallel Hierarchies
![Page 23: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/23.jpg)
KIM - Permissions
• KIM has the concepts of Permission Templates and Permissions
• Permission Template represents some course-grained permission– Use Screen, Initiate Document, Maintain Records, etc.
• A Permission is created from a template and has more specific information identified on it’s permission details– for example “Initiate Document” of type “Transfer of Funds”
![Page 24: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/24.jpg)
KIM - Permissions
• Evaluation of permissions is handled by the permission service. KIM provides plug points for implementing custom logic for permission checking– Example: permission checks based on hierarchical data
• Example Service Operations:– Is principal authorized by permission name w/details– Is principal authorized by permission template name w/details– Get assignees for permission– Get authorized permissions for principal– Get ids of roles that have given permission
![Page 25: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/25.jpg)
Permission Data Model
![Page 26: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/26.jpg)
KNS usage of KIM Permissions• Many permissions exist that are used by KNS, examples:
– Edit Document– Look Up Records– Use Screen– Create / Maintain Records
![Page 27: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/27.jpg)
![Page 28: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/28.jpg)
![Page 29: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/29.jpg)
![Page 30: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/30.jpg)
![Page 31: Building Applications with the KNS](https://reader035.fdocuments.in/reader035/viewer/2022081502/568165ed550346895dd911b5/html5/thumbnails/31.jpg)