ADE Flashcards
CONNECT element
Associate parent element to some data
Can have one or more of: source, target, initial
Can pass page parameter to a server interface
Can make Field editable if Connect includes Target
SOURCE, TARGET elements
Source name: Text (from property file), Constant (from Constants.priperties), Page (page parameter), Server Interface
Target name: Page (sets other pages Page Parameter), Server Interface
PROPERTY attribute is the qualified name of the attribute parameter
CLUSTER element
Defines the layout of logically related fields
Attributes: title, description, width, label width, show labels, num cols, style behaviour, layout order, summary, scroll height
ELEMENTS: field, container, action set, cluster, list, condition, description, widget
FIELD element
Data entry or display field and its associated label
Control attribute specifies type of field
Usually has one connect element
USE_BLANK for code table drop downs or server interface lists.
HEIGHT more then 1 displays multiple code table entries.
USE_DEFAULT can be set to force user to select a value.
PAGE PARAMETER element
Used to store key information on a page
Declares parameter of the current page
Build commands client
Beandoc - creates HTML version of ServerAccessBeans.xml
Inserttabconfiguration (
Sub target of DB) populates APPRESOURCE table with tab and menu information
SERVER INTERFACE Element
Name - logical name to be referred by
Class - the Facade interface
Operation - name of the function (method name)
Phase - display (on load) or action (submit)
ACTION SET element
Groups ACTION CONTROLs
Style depends on location within the page
Upon failed condition with Hide conditional links attribute in curam configure xml - link is displayed disabled
ACTION CONTROL Element
Represents a control (button, hyperlink)
Types:
Action: a link to another page
Submit: used to create a button to call Action phase server interface
Dismiss: used to create a button that closes a pop up page
Submit and Dismiss
File Download
LINK element
Mainly used to connect to another page
Normally child of ACTION CONTROL ( can be inside Field - dis lays a hyperlink )
Link invoked after SERVER Interface - which can be used to populate page parameter in turn
PAGE ID THIS points to itself
OPEN MODAL
Read multi Max
RSA Readmulti_max=60
Bootstrap.properties curam.db.readmultimax=100
Handling based on Readmulti_informational
(Readmulti, nsreadmulti, nkreadmulti, nsmulti)
Setting zero is treated as infinity.
If not set, default value from Curam Generator application.properties is used and exception is thrown.
In RSA, If Readmulti_informational is not enabled - Readmulti_max message gets logged and all records are returned.
If enabled, can be added to the Informational Manager for handling in Facade layer. Max number of records is returned.
Pagination
Global set in curam-confit.xml
Pagination true/false
DEFAULT_PAGE_SIZE number of rows displayed by default
PAGINATION_THRESHOLD minimum list size before pagination is enabled
Can be defined by LIST attribute in UIM/VIM. Page level definition overrides global definition.
Optimistic Locking
RSA set ALLOW_OPTIMISTIC_LOCKING on the entity
Set OPTIMISTIC_LOCKING on the modify operation
Multiple access, only one commit at a time.
Modify, nkmodify, nsmodify
Insert automatically populates and initialises the version number of the record.
Nsinsert has to revise version number in the details.
Version number is based on the domain definition VERSION NO
All OOTB tables have OL turned on by default.
Code table
Facilitates restriction of data.
Each entry contains code, description and language setting.
Codes appear in Cúram drop-down fields on the client.
Can be accessed programmatically.
Codes are to be unique within a table.
New custom entries - use different letter prefix for the entries.
Stored in DB as code table header, item and hierarchy.
Generating code tables
ctgen
Merges code table definitions according to component order
Translates resultant merged file in a java source code and sql
SQL artefacts are generated into server/build/svr/code table/SQL
Generated Java code compiled and packed into server/build/jar/codetable.jar
Must be followed by a database build
Also a build client for client to pick up changes
Code table hierarchy
Multiple code tables linked into several levels
Y selecting code at one level, you reduce number of codes at the next level
Lowest level code is returned and store, parents can be found via the code table API.
The FIELD attribute has a CONTROL attribute CT_HIERARCHY_HORIZONTAL to display horizontal hierarchy (default behaviour) and CT_HIERARCHY_VERTICAL for the vertical hierarchy.
Data manager
Tool to create database and load initial and test data.
Included SDEJ infrastructure tables (tables, indexes and constraints)
Application tables from .xml extracted from the model by generators.
Initial data.
Test data.
Contains:
Configuration file
ANT target
Large Object Manager (binary BLOB e.g. images and character CLOB e.g. Rules XML)
datamanager_config.xml is used to identify targets to includes and errors to ignore.
Application Navigation
Defined in configuration files (tab folder)
.app .sec .ssp .tab .nam .mnu
During build loaded to DB
Configuring application navigation
ID attribute must match file name
Localised via properties
Schema used to validate namespace
.app application-view.xsd
Defines application banner, referenced sections and application search.
.sec section.xsd
Defines referenced tabs and section shortcut panel in a section.
.ssp section-shortcut-panel.xsd
Defines the contents of a section shortcut panel.
.tab tab.xsd
Defines a tab, including context panel and referenced navigation and actions menu.
.nav navigation.xsd
Defines the content of a navigation tab.
.mnu menubar.xsd
Defines the content of a tab actions menu.
Section
.sec file Collection of tabs and optional section shortcut panel. Max five sections are allowed: Home (mandatory) Workspace (mandatory) Inbox (optional and pre-defined) Calendar (optional and pre-defined) Reports (optional)
Client side tracing
Trace all facade invocations from the web tier.
TraceOn=true in CDEJResources.properties, build client and refresh eclipse.
Inputs to and out of all server function calls will be printed out in the standard out.
Server tracing
Tracing settings are made in Application.prx
Curam.trace
trace_on, trace_verbose, trace_ultra_verbose
Lower level settings: Curam.trace.servercalls Curam.trace.methods Curam.trace.method_args Curam.trace.sql
Build insertproperties or build database followed by start server to activate any changes
Aggregation
Structs can aggregate structs
Structs can aggregate entities
Can have one-to-one and one-to-many multiplicity
Aggregation allows one type of class to be nested within another
System generated Unique IDs
Auto iD field on insert
Programmatically
Unique IDs drawn from pseudo random prepopulated key sets
Defined in keyserver.dmx
Multiple submit buttons
ACTION_ID_PROPERTY optional attribute
Code server side with if/else
ACTION_CONTROL: associate ACTION_ID for all action controls of type SUBMIT
SERVER_INTERFACE: define an ACTION_ID_PROPERTY specifying an attribute to be populated with the action ID
INITIAL element
Child of CONNECT in a FIELD
Similar to source, but:
Allows you to list s property which is a list
Has an optional extra property HIDDEN_PROPERTY
Used where you want both visible and underlying value
PROPERTY - specify visible value
Useful to hide system specific info like IDs and only displaying readable values
Also used to pre-select values in a list
Multi-select lists
Same UIM as for single select lists, target property must unwind to a string
Create an entry in curam-confit.xml o specify which domains use multi-select lists
Radio button group
Values determined by a code table defined in the normal way.
Field’s domain must resolve to: SHORT_CODETABLE_CODE (based on SVR_STRING length 10)
Code table root options should be set to yes
The VIEW and INCLUDE elements
.vim VIEW file, may have associated properties file
Root element is VIEW, not PAGE. Same child elements as PAGE
A VIEW can include other views
UIM generator
Used to generate an UIM file based on the server interface. Uses Server Access Bean XML to obtain information about available server interfaces.
Build generated: create/update ServerAccessBeans.xml
Build uimgen: launch UIM generator, from client directory, will ask to locate ServerAccessBeans.xml in /build/SVR/gen/client
MENU element
Menu types:
Dynamic: driven by XML data and constructed via a server-side function.
Integrated_case: type of dynamic menu for integrated cases.
Navigation: added to the navigation menu
In_Page_Navigation: menu that displayed at the top of the context area
Wizard_Progress_Bar: display at the top of the modal dialog to guide a user through sequence of pages.
Explicit use of JavaScript
Can be used within PAGE, FIELD and ACTION CONTROL
Use SCRIPT element to invoke. Two required attributes:
ACTION - the function call you want to make
EVENT: cause of the function call
JavaScript validations
curam-config.xml
set to true
Defined for Domain Definition
Pre-form, post-form validations can be added
CWDF curam widget development framework (renderer framework)
Allows application developers to generate HTML for parts of Cùram pages.
Allows for development of custom domain-based widgets.
Renderers
Allows custom code to be applied to a domain definition.
Curam releases
VRMF
Version - new, separately licensed product. Major changes
Release - minor feature change release
Modification - manufacturing refresh. Maintenance roll up fix packs
Fix - can contain customer raised and proactive defect fixes plus limited minor enhancements. Maintenance roll up of fixes.
Global properties
ApplicationConfiguration.properties - defines most important application configuration settings
Webclient/javasource/curam/omega3/il8n
CDEJResourcre.properties - address text labels, application menu items and tracing. Found in webclient/components/. Create version in a custom folder.
RuntimeMessages.properties - CDEJ runtime messages. CuramCDEJ/doc/defaultproperties/curam/omega3/il8n
CuramLinks.properties - look up table for links to other client pages. Found in components folder. New version in custom, files will be merged.
HTTP404Error.properties
PAGE element
PAGE_ID attribute is required
Must match name of UIM file
Root element
(Title, connect, source, cluster, field, page parameter, server interface)
Tell us about Curam Approach
One IT system - multiple benefits & programs
One interface for staff & customers
New benefits by rules, evidence and products. Quicker & cheaper
Define Curam SPM hierarchy
Platform
Enterprise Modules
Solutions
Define Curam platform
Foundational functionality and infrastructure. Core services IEG Common Evidence Decision Assist Funded Program Management Service Planning Supervisor Workspace Financial Management Contribution Management
Define Curam ent mods
Verification Engine Life Event Management Provider Management Appeals Social Enterprise Collaboration Outcome Management Evidence Broker Business Intelligence & Analysis Universal Access
Define Curam Solutions
Contain pre-build flows, processes and functionality like: intake, triage, investigation, evaluation, benefit delivery & reporting.
Income Support
Income Support for Medical Assistance
Child Welfare
Packaged products solutions:
HCR
Worker’s compensation
Social Program Modernization
Define Curam core services
Reference Model
Administration Suite
Application Development Environment
Case Management: Common Intake, Evidence Management, Participant Management, Financial Management, Eligibility & Entitlement
Business Services: Task management, Calendar scheduling, Search, Case Audit, Correspondence
Technical Services: Web Services, Enterprise Application Integration (EAI), Workflow, Security, Multi-channel Access
Goals of Curam architecture
Industry-standard technologies Runtime performance Scalability Maintainability Extensibility Cross-platform deployment User interface elegance
Three tier:
Presentation: User Interface (HTML, XML, SOAP) with Web Server Software (JSP/JavaBeans)
Application: Business Logic with Remote Interface Layer, Business Object Layer, Data Access Layer) and Connectors (SQL, JMS, WebService, etc)
Persistence: Database - Oracle/DB2 and Legacy system
Define presentation tier
Web Server / Container: JSP, Servlets, Tag Libraries.
Patterns: MVC, Front controller, Apache Struts
Web Browser: Thin client, easy to scale and maintain. Renders client screens.
Define application tier
Remote Interface Layer:
Infrastructure services for the BO layer.
Business Object Layer:
Facade layer: client-visible, corresponds to UI specific processing, may invoke one or more service or entity layer methods
Service layer:
Back end business services
Not client visible
Entity objects - developer’s view of the Database
Data Access Layer:
JDBC API to connect to the relational databases
Stateless EJB Java to implement Process objects JDBC Infrastructure services: Workflow, Security, Transactional Management Runs inside J2EE application server
Deployed in WebSphere or WebLogic
Curam Developers most important documentation
IBM Cúram Server Developers Guide IBM Cúram Server Modeling Guide IBM Cúram Modeling Reference Guide IBM Cúram Web Client Reference Guide IBM Cúram Development Compliancy Guide