An Introduction to the RM API

IBM Innovate 2014 Conference
Session 1029B
Integrating RDNG with SAP:
An Introduction to the RM API
Steve Valliere - Business Applications Analyst
Waters Corporation
©2014 Waters Corporation
1
Waters Corporation
WHAT’S ON FOOD AND
BEVERAGE LABELS SHOULD
REFLECT WHAT’S IN OUR
FOOD AND BEVERAGES.
BEHIND EVERY GREAT MEAL IS A
SOPHISTICATED LABORATORY.
 Founded by Jim Waters in 1958.
 Has developed innovative analytical science
solutions for over 50 years.
 Designs, manufactures, sells and services
analytical technologies: liquid chromatography,
mass spectrometry, and thermal analysis
MAKING SURE MEDICINE
IS NOT JUST POSSIBLE,
BUT AVAILABLE.
©2014 Waters Corporation
 Employs more than 5,000 employees
worldwide, operating in 27 countries.
2
Background
Design and
Modeling
 New Waters Product Development Process
 Many authoring tools for deliverables
 One company-wide validated approval system
Planning
Documents
Being in a regulated environment Waters is
constantly looking to improve the
processes used to create, review, approve,
and store documents. This has lead Waters
to establish one “System of Record” for all
documentation: SAP. Therefore all
documents, regardless of the tool they are
authored in, must ultimately end up in SAP.
In SAP they are moved through a review
and approval process which allows for
comments and electronic signatures. The
benefit of this that is being produced.
 SAP is the “System of Record”
 New Jazz platform implementation
CAD
SAP
WORD
Requirements
Being in a regulated environment Waters is
constantly looking to improve the
processes used to create, review, approve,
and store documents.
eing in a regulated environment Waters is
constantly looking to improve the
processes used to create, review, approve,
and store documents.
eing in a regulated environment Waters is
constantly looking to improve the
processes used to create, review, approve,
and store documents and store documents.
RDNG
Test Cases
1.
Do something here for a test.
2.
Do something here for a test.
3.
Do something here for a test.
4.
Do something here for a test.
5.
Do something here for a test.
6.
Do something here for a test.
7.
Do something here for a test.
Document
Document
Document
Information
Document
Information
Information
Record
Information
Record
Record
Record
Review/Approval
Cycle
RQM
©2014 Waters Corporation
3
Goals
 Keep authors in DNG
 Automate as much as possible
RDNG
 Context aware (user location in the tool)
 Consistent look and feel
 Utilize current authentication credentials
©2014 Waters Corporation
RM API
Widget
4
Focus
 Two parts to this integration
 RM API Widget for RDNG
 Custom SAP Integration Component
 Exposes specific document management functions
 Respects user’s SAP license and permissions
Focus of Today’s Session
RDNG
SAP
RM API
Widget
©2014 Waters Corporation
SAP
Integration
Component
(black box)
Document
Information
Record
5
Creating A Custom Widget
 XML file stored on the Jazz server
 Added to the dashboard as an OpenSocial Gadget
 Design can include HTML, JavaScript, and CSS
 Not compatible with IE 8!
 RM Extensions Documentation:
https://jazz.net/wiki/bin/view/Main/RMExtensionsMain
©2014 Waters Corporation
6
The Extensions Folder
 Create a new folder called extensions in one of the following locations
(depending on your server configuration):
– Apache: JAZZTEAMSERVER/server/tomcat/webapps/
– WebSphere: HTTPSERVER/htdocs/
 For distributed server installations, create the folder on the reverse proxy
system. The server who’s name is part of the web address (e.g.
https://myjtsserver/rm/web).
NOTE: The folder name can be anything you want, but it will be visible in the widget
address. For example https://myjtsserver/extensions/myextension.xml
©2014 Waters Corporation
7
The XML File
 Basic XML Header
 Set up the Gadget Preferences
 Include the RM API
 Describe the content type
 HTML and JavaScript in CDATA section
Start Module
Gadget Preferences
Include API
Define Content Area
End Module
©2014 Waters Corporation
8
Adding an OpenSocial Gadget
 Click Add Widget on Mini Dashboard
 Add OpenSocial Gadget on left
 Enter URL to new extension
 Add Widget to insert
 Based on ModulePrefs settings
©2014 Waters Corporation
9
Using CSS and JavaScript
 No HTML Head or Body tags
 Include CSS and JavaScript files
 Use CSS and JavaScript inline
 Standard HTML commenting is valid
HTML Comment
Include CSS File
Inline CSS
Include JavaScript
Inline JavaScript
©2014 Waters Corporation
10
Subscribing to API Events
 JavaScript triggered when event occurs
 Events (As of version 4.0.5 GA)
– ARTIFACT_SELECTED: The user selected an artifact in the window
– ARTIFACT_OPENED: The user opened an artifact for viewing/editing
– ARTIFACT_SAVED: The user performed a save on an artifact
 More Events (coming in version 5.0)
– ARTIFACT_CLOSED: The user navigates away from an artifact
Subscribe to Event
Update the display with
the Module Name
©2014 Waters Corporation
11
Custom Artifact Attributes
 Custom Module attributes for SAP information
 Key attributes pre-populated in template
 Unique attributes left blank
 Minimize user responsibility
 Maximize consistency
Common data pre-populated
©2014 Waters Corporation
12
Get Attribute Values
 SAP Attributes collected when opened
 If Doc Number empty, not set up
 Give user option to create DIR
©2014 Waters Corporation
13
Set Attribute Values
 Parse the Returned XML
 Save attribute values in array
 Set the attributes in Module
Parse XML
Save to Array
Save Attributes
©2014 Waters Corporation
14
Other SAP Functions
 Current Functions
– Upload a PDF to SAP
– Create a new Document Version
 Planned Functions
– Baseline a document
– Generate a PDF Report
©2014 Waters Corporation
15
©2014 Waters Corporation
16