TUF23: TRIM User Forum 2010 Changing the Economics of IM Rory Kleeman Software Architect, HP Information Management.

Slides:



Advertisements
Similar presentations
Chapter 22 Implementing lists: linked implementations.
Advertisements

Lists and the Collection Interface Chapter 4. Chapter Objectives To become familiar with the List interface To understand how to write an array-based.
Programming Paradigms and languages
TUF23: TRIM User Forum 2010 Changing the Economics of IM Ravinesh Lal HP TRIM Web Client Project Lead Software Engineer ( Thanks to Helen Barnes )
TUF23: TRIM User Forum 2010 Changing the Economics of IM Michael Andrews Backup & Recovery Sales, South Pacific.
InOrder Traversal Algorithm // InOrder traversal algorithm inOrder(TreeNode n) { if (n != null) { inOrder(n.getLeft()); visit(n) inOrder(n.getRight());
Object Oriented Design An object combines data and operations on that data (object is an instance of class) data: class variables operations: methods Three.
George Blank University Lecturer. CS 602 Java and the Web Object Oriented Software Development Using Java Chapter 4.
1 Programming for Engineers in Python Autumn Lecture 5: Object Oriented Programming.
Lists and the Collection Interface Chapter 4. Chapter 4: Lists and the Collection Interface2 Chapter Objectives To become familiar with the List interface.
Fall 2007CS 2251 Lists and the Collection Interface Chapter 4.
Fundamentals of Python: From First Programs Through Data Structures
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
Marc Smith and Jim Ten Eyck
Train The Trainer Employee Central Administration
Access Tutorial 3 Maintaining and Querying a Database
MS Access: Database Concepts Instructor: Vicki Weidler.
Introduction to Database Systems
2011 Embedded Systems Software Training Center BluRapport SDK.
JAVA: An Introduction to Problem Solving & Programming, 5 th Ed. By Walter Savitch and Frank Carrano. ISBN © 2008 Pearson Education, Inc., Upper.
COMPUTING FOR BUSINESS AND ECONOMICS-III. Lecture no.6 COURSE INSTRUCTOR- Ms. Tehseen SEMESTER- Summer 2010.
Unit J: Creating a Database Microsoft Office Illustrated Fundamentals.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 2: Modelling.
Organizing Information Digitally Norm Friesen. Overview General properties of digital information Relational: tabular & linked Object-Oriented: inheritance.
Introduction to Data Structures. Definition Data structure is representation of the logical relationship existing between individual elements of data.
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
6 Chapter Databases and Information Management. File Organization Terms and Concepts Bit: Smallest unit of data; binary digit (0,1) Byte: Group of bits.
© 2011 Pearson Addison-Wesley. All rights reserved 11 B-1 Chapter 11 (continued) Trees.
® Microsoft Office 2010 Access Tutorial 3 Maintaining and Querying a Database.
File Processing - Indexing MVNC1 Indexing Jim Skon.
DATA STRUCTURE & ALGORITHMS (BCS 1223) CHAPTER 8 : SEARCHING.
Lecture Set 11 Creating and Using Classes Part B – Class Features – Constructors, Methods, Fields, Properties, Shared Data.
(Business) Process Centric Exchanges
Chapter 9 Object-Oriented Software Development F Software Development Process F Analyze Relationships Among Objects F Class Development F Class Design.
TUF23: TRIM User Forum 2010 Changing the Economics of IM Rory Kleeman Software Architect, HP Information Management.
1 CS 350 Data Structures Chaminade University of Honolulu.
Chapter 17 Creating a Database.
Introduction to Computers Lesson 10B. home Database A collection of related data or facts.
Introduction to Computers Lesson 10B. home Database A collection of related data or facts.
Modern Software Development Using C#.NET Chapter 5: More Advanced Class Construction.
Genericity Ranga Rodrigo Based on Mark Priestley's Lectures.
CS212: Object Oriented Analysis and Design Lecture 13: Relationship between Classes.
® Microsoft Access 2010 Tutorial 3 Maintaining and Querying a Database.
COMPREHENSIVE Access Tutorial 3 Maintaining and Querying a Database.
Linked List. Iterators Operation to find a link, deleting, and inserting before or after a specified link, also involve searching through the list to.
Chapter 6 Introduction to Defining Classes. Objectives: Design and implement a simple class from user requirements. Organize a program in terms of a view.
Standard Template Library The Standard Template Library was recently added to standard C++. –The STL contains generic template classes. –The STL permits.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
Microsoft Access 2013 ®® Tutorial 12 Managing and Securing a Database.
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
Database Management System. DBMS A software package that allows users to create, retrieve and modify databases. A database is a collection of related.
Lesson 13 Databases Unit 2—Using the Computer. Computer Concepts BASICS - 22 Objectives Define the purpose and function of database software. Identify.
PROGRAMMING IN C#. Collection Classes (C# Programming Guide) The.NET Framework provides specialized classes for data storage and retrieval. These classes.
Copyright © 2009 – Curt Hill Standard Template Library An Introduction.
10.1Retrieving a Database File – In the last chapter, we have created a database file and several tables for that database. – In order to view and modify.
Chapter 20 Concepts for Object-Oriented Databases Copyright © 2004 Pearson Education, Inc.
Chapter  Array-like data structures  ArrayList  Queue  Stack  Hashtable  SortedList  Offer programming convenience for specific access.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
Copyright © 2013 Dorling Kindersley (India) Pvt. Ltd. Management Information Systems: Managing the Digital Firm, 12eAuthors: Kenneth C. Laudon and Jane.
N5 Databases Notes Information Systems Design & Development: Structures and links.
Trees Chapter 11 (continued)
Practical Office 2007 Chapter 10
Introduction to Database Systems
Trees Chapter 11 (continued)
Lecture 22 – April 9, 2002 Subprotocols – static and dynamic.
Databases and Information Management
CS313D: Advanced Programming Language
Databases and Information Management
Quiz Points 1 Rules Raise your hand if you know the question
Database management systems
Presentation transcript:

TUF23: TRIM User Forum 2010 Changing the Economics of IM Rory Kleeman Software Architect, HP Information Management

TRIM User Forum 2010 TRIM SDK.NET A new development toolkit

TRIM User Forum 2010 Why TRIM SDK.NET? –Support.NET developers with a more natural.NET interface –Improve memory model for.NET development environment ReleaseCOMObject difficult to use –More object-oriented hierarchy –Tidy up a long-standing COM interface

TRIM User Forum 2010 Main Object Hierarchy TrimObject TrimPropertySet TrimMainObject TrimChildObject TrimObject Record Location and more...

TRIM User Forum 2010 TrimPropertySet –A set of property values, each identified by a PropertyIds value –Properties ErrorMessage Error (derives from TrimException : ApplicationException) Caption Database Icon (new TrimIcon class) IsModified –Methods GetProperty (PropertyIds) returns Object GetPropertyIcon (PropertyIds) returns TrimIcon SetProperty(PropertyIds, Object) GetPropertyAsString(PropertyIds, DisplayType) IsMandatory(PropertyIds) VerifyProperty(PropertyIds) CanModifyProperty(PropertyIds)

TRIM User Forum 2010 TrimObject –Derives from TrimPropertySet, identified by a BaseObjectTypes value –Properties TrimType (each TrimObject is of type BaseObjectTypes) Uri (64-bit unique identifier) NameString (eg, Record.RecordNumber ) NameStringExtra (eh, Record.Title) IsReadOnly –Methods IsMandatory(FieldDefinition) IsValidFor(Purpose, …) –Interfaces, used for special capabilities (see Get…Interface methods) ITrimNotes ITrimUserFields ITrimAccessControl ITrimActiveDates ITrimDocument

TRIM User Forum 2010 TrimMainObject –Derives from TrimObject, designed to be “persisted” –Properties Verified LastUpdatedOn (used for update synchronisation) Uri (64-bit unique identifier) NameString (eg, Record.RecordNumber ) NameStringExtra (eh, Record.Title) IsReadOnly –Methods Verify(…) Save(), to persist any changes Delete(), is permanent MakeReference(RefFileName) GetChildObjectList(BaseObjectTypes childType) –Interfaces, used for special capabilities (see Get…Interface methods) ITrimSecurity ITrimAccessControlDefault ITrimLabels

TRIM User Forum 2010 TrimChildObject –Derives from TrimObject, contained within a TrimChildObjectList –Properties ParentList, the parent TrimChildObjectList –Methods Delete() −removes from parent, −not permanent until parent object is saved −care required when calling in a loop

TRIM User Forum 2010 TrimChildObjectList –Derives from IEnumerable belongs to a TrimMainObject implements a concept of an array of propertySets –Properties ErrorMessage, Error, Database ParentObject ParentList, the parent TrimChildObjectList TrimType Count Item[index] –Methods GetEnumerator() FindChildByUri(Uri) –Supports foreach ( TrimChildObject obj in myChildList )

TRIM User Forum 2010 Searching –Provided by TrimMainObjectSearch class –Search consists of a reverse-polish array of TrimSearchStackItem objects –A stack item is either a TrimSearchClause or a TrimSearchOperator –A TrimSearchClause is a method with parameters –A TrimSearchOperator is one of and, or, not –Search can also be specified using a “linear” string assignee:me and (createdOn:this month or updatedOn:this month) [0]: assignee:me [1]: createdOn:this month [2]: updatedOn:this month [3]: or [4]: and

TRIM User Forum 2010 TrimMainObjectSearch –Derives from IEnumerable, allowing foreach iteration –Properties ErrorMessage, Error, Database TrimType, BaseObjectTypes specified in constructor Icon Title FastCount SearchString SearchAsXML –Methods GetEnumerator(), for foreach support GetResultAsUriArray(…), useful for web apps SetSearchString(), returns TrimParserException ClearSearch() AddSearchClause() And() Or() Not() GetSearchAsStack() SetSearchFromStack()

TRIM User Forum 2010 TrimMainObjectSearch (cont.) –The main search stack can be “filtered” by specifying more criteria which are effectively combined with the main search using the and operator FilterString property SetFilterString() ClearFilters() AddFilterClause() GetFiltersAsArray() SetFiltersToDefault() SaveFiltersAsDefault() –The result set can also be sorted, using a subset of the search methods that are considered suitable for sorting SortString property SetSortString() ClearSort() AddSortItemAscending(…) AddSortItemDescending(…) GetSortAsArray() SetSortToDefault() SaveSortAsDefault()

TRIM User Forum 2010 TrimMainObjectSearch (cont.) –A number of “canned” selection methods are also available SelectByPrefix SelectFavorites(…) SelectByUserLabel(userLabelToSelectBy) SelectNone() SelectAll() SelectByUris(array of uris) SelectTopLevels(), for hierarchical objects SelectThoseWithin(parent), for hierarchical objects –The selection may also be assisted by specifying the purpose to which the list will be used, although not always SetPurpose(…) ClearPurpose() IsValidFromPurpose(TrimMainObject) –Can also do an “in-memory” compare, to see if an object would match the selection criteria contained in the search ItemMatches(TrimMainObjectToMatch)

TRIM User Forum 2010 TrimApplication –Represents the process which the TRIM SDK.NET is being called from –A “singleton”, with all properties and methods as static –Properties RuntimeEnvironment(Environments enum value) SDKVersion SoftwareVersion WebServerWorkPath ServiceType(windows, web, none) BinaryPath TemporaryPath HasUserInterface –Methods SetAsService() SetAsWebService(workPath) GetMessage(…) for accessing standard TRIM messages ProcessMessage(…), accessing TRIM substitution strings SetDefaultLanguage(…) GetDatabaseIds(servicedByWorkgroup)

TRIM User Forum 2010 Other Helper Classes –TrimIcon SDK.NET exposes the set of TRIM Icons, useful in certain situations Provides functionality based on the Icons enumeration Can also be constructed to represent the icon embedded within a Windows binary –TrimAccessControlList Class designed to simplify operations involving the updating and retrieval of access control information –TrimSecurityProfile Encapsulates a TrimSecurityLevel and an array of TrimSecurityCaveats Facilities simpler updates to the security profile of TRIM objects –TrimDateTime Encapsulates a date and time and is class used for all data and time fields in TRIM Extends System::DateTime by handling blank dates, blank times, and business calendar arithmetic Provides the usual date and time methods and properties

TRIM User Forum 2010 Object Model Helper Classes –Somewhat akin to “reflection”, there are a number of classes that expose the inherent behaviour of TRIM SDK elements –Provide captioning and capability discovery –ObjectDef Describes capabilities of a particular BaseObjectTypes value –PropertyDef Based on a value from the enumeration PropertyIds –Enum Based on a value from the enumeration AllEnumerations –EnumItem Allows you to access items with a particular enum. –CommandDef Based on a value from the enumeration CommandIds –SearchClauseDef Based on a value from the enumeration SearchClauseIds

TRIM User Forum 2010 Differences from COM –. NET supports constructors, so we use them db.GetRecord becomes new Record(db) –Since enumeration item values need to be qualified in.NET, we no longer have the two character prefix ctAuthor becomes ContactTypes.Author –Many of the “optional” features of objects have been implemented using an interface GetNotesInterface() allows for a more generic style of programming –Implements IDisposible, allowing for more efficient memory management COM Interop did not implement IDisposable... –No more “obsolete” properties and methods

© Copyright 2010 Hewlett-Packard Development Company, L.P.18 For more information... IM Digital Hub: TRIM Home Page: Facebook: Twitter: Twitter HashTag:#TUF23 Blogs: Blogs: HP Software Solutions Community: TUF23 Post-event Website:Available April 2010