Preview only show first 10 pages with watermark. For full document please download

Understanding Federation Understanding Federation And Web

   EMBED


Share

Transcript

ACE 2011 International Understanding Federation  Understanding Federation and Web Services www.aras.com Copyright © 2011 Aras All Rights Reserved. aras.com Welcome Session Goals ‰ Previous session covered overall Integration  strategies and a focus on how to integrate desktop  applications (authoring tools) applications (authoring tools) ‰ This session:  PLM Server Ù other business servers ƒ Creating server peer‐to‐peer configurations ƒ Data and Process status exchange d h ƒ For the end‐users,  blurring the lines between systems and  presenting all their relevant data in a single context Copyright © 2011 Aras All Rights Reserved. Slide 2 aras.com Session Topic 1. Pull data from external apps into PLM to use in Client, Reports, workflows 2. External apps using PLM as a data source Homegrown Applications Database File Vault Legacy PDM ERP Copyright © 2011 Aras All Rights Reserved. Slide 3 aras.com Two Use Cases 1. Data in the ERP system or your legacy applications is  relevant to the PLM users.   We want this data and PLM  data together in the right context on the PLM user  interface ‐‐ like a Mash‐Up ƒ ƒ ƒ Corporate Document Management office files ERP for costing or inventory records CRM CRM customer information t i f ti 2. Other systems need access to data records or files  y stored in the PLM system ƒ ƒ Shop floor viewing of Drawings through MES Quality system view of Part‐BOM structure Copyright © 2011 Aras All Rights Reserved. Slide 4 aras.com Two Use Cases • NOTE: for many commercial systems, such as SAP and   rd p SharePoint,  you can find a commercial 3 , y party  y connector from an Aras partner.     – For this discussion,  it is more interesting to imagine  For this discussion, it is more interesting to imagine that we are building an integration from scratch. • NOTE:   it’s always possible to batch transfer data from  one system to another.  We (IT folks) have been doing  y ( ) g that forever.   – For this discussion it is more interesting to talk about  g how we build real‐time connectors Copyright © 2011 Aras All Rights Reserved. Slide 5 aras.com Two Use Cases 1. Data in the ERP system or your legacy applications is  relevant to the PLM users.   We want this data and PLM  data mixed together in the right context on the PLM  user interface ‐‐ like a Mash‐Up Federation 2. Other systems need access to data records or files  stored in the PLM system t d i th PLM t Web Services Copyright © 2011 Aras All Rights Reserved. Slide 6 aras.com Federation ‐ Definition f Core concept in Aras:   Federation creates a wrapper  around data objects in remote systems,  and then  around data objects in remote systems, and then extends their definition with PLM functionality f The wrapper defines  the data transfer, data mapping  Th d fi th d t t f d t i and the internal PLM representation f We can add security, web interface, workflow routing  to data in the legacy system,  using it as a data source  f for a new audience of users    di f f We can federate an entire ItemType or just federate a  yp j few properties on a PLM internal Item in Aras Copyright © 2011 Aras All Rights Reserved. Slide 7 aras.com Federation – Definition  ( (continued) ) f We aggregate data from many sources in this way in  order to: o Present the aggregated data in a single window for the user,  e.g.  a Mash‐Up o Execute business rules, BI dashboards, or Reports against the  consolidated data set lid d d o Add advanced PLM capabilities such as BPM workflow or a secure  web interface to legacy systems web interface to legacy systems Done well, the end‐user Done well,  the end user is not aware of the sources of data is not aware of the sources of data Copyright © 2011 Aras All Rights Reserved. Slide 8 aras.com Federation Scenarios f Corporate document management system ƒ Documents checked in to the PLM system are transferred  y directly to a corporate document archiving solution ƒ Searching and viewing documents is performed within the PLM  i interface,  directly accessing remotely stored data f di l i l dd f Cost and inventory Cost and inventory‐on‐hand on hand fields in ERP fields in ERP ƒ Material cost may be maintained in the ERP system,  but is  useful information to engineers using PLM ƒ The PLM material forms contains a mash‐up of data from both  PLM and a real‐time ERP query ƒ The PLM workflows may branch automatically based on the  levels of inventory of parts being changed Copyright © 2011 Aras All Rights Reserved. Slide 9 aras.com Why Server‐Based Federation? f Aras Innovator is an HTML Client; we can use the client as  an integration platform also.    g p f Server‐based Federation Advantages: ƒ PLM client is sent a single data set, and is not aware that core  business objects have been modified with remote properties,   or that the data objects are not native j ƒ Integration of remote data objects is encapsulated on the  server, eliminating client customizing g g ƒ Server‐side business rules such as Permissions, LifeCycle, and  Workflow logic can act on the 3rd party data objects Copyright © 2011 Aras All Rights Reserved. Slide 10 aras.com Simple Exercise f Create an ItemType named Test with 1 Property=name f Add a Server Event OnGet Add a Server Event OnGet with a Method that creates  with a Method that creates and returns a hardcoded XML string Hello t ‘T t’ id ‘1234’>< >H ll f Select this item on the TOC f Grid will populate with the ‘fake’ data. f NOTE: o Had to create a dummy ID for each row Copyright © 2011 Aras All Rights Reserved. Slide 11 aras.com Why is the Simple Exercise Simple? f Aras Client and all internal framework services expect  AML to be returned on every transaction ‐ this is key to  the simplicity of Federation f No customizations normally on the client No customizations normally on the client o As long as AML is returned,  the client is happy to work with any  data it receives o Exception is file check‐in handling  ( ** discussed later ) f Use standard Server Events to add the Federation logic Use standard Ser er E ents to add the Federation logic o OnAfterGet to merge federated properties o OnGet O G t t to return 100% federated items t 100% f d t d it Copyright © 2011 Aras All Rights Reserved. Slide 12 aras.com Pseudo Code for a View f Assume “MyFederation”   OnGet event  ‐ VB/C# Method f Assume entire ItemType has been Federated Assume entire ItemType has been Federated f Properties for the remote object, TOC Access, Form Views  are defined in standard Aras Innovator ItemType Editor f 2 Modes: 2 Modes: 1. Simple Searching and Viewing (unstructured) 2 Using the Federated Item in Relationships 2. U i th F d t d It i R l ti hi For example:   Part to Document Relationship where  th D the Documents are federated t f d t d Copyright © 2011 Aras All Rights Reserved. Slide 13 aras.com Pseudo Code for View #1 ƒ User query parameters from the Simple Search grid row  are Properties on the Me / This object are Properties on the Me / This object  ƒ Check if this is a Get for one record or a set.   How? ƒ Build the query for the remote system, passing the query  B ild h f h i h parameters the user entered in the client ƒ Run the query code  ( ** discussed next ) R h d ( ** di d ) ƒ Create an AML string from the query result ƒ Add a dummy ID for each row ƒ Return AML QUIZ:  Is there an ItemType table for this item? Copyright © 2011 Aras All Rights Reserved. Slide 14 aras.com Pseudo‐Code for View #2 Federated Items will be used as Item Properties,  or either the Source or Related in a Relationship ith th S R l t d i R l ti hi 9 ItemType is not flagged as Federated this time  because we do want an Aras Innovator table because we do want an Aras Innovator table QUIZ ‐ What properties must this table store? Copyright © 2011 Aras All Rights Reserved. Slide 15 aras.com Pseudo‐Code for View #2 Three properties are required to maintain configurations ‰ ID ‰ Federated‐ID ‰ Keyed‐Name Solution:   in the OnGet method we add a function to  register the data objects found via user queries,   register the data objects found via user queries, assigning a new Aras Innovator ID to each I use a small stored procedure to execute this efficiently p ff y Copyright © 2011 Aras All Rights Reserved. Slide 16 aras.com Remote Data Access Techniques f Web Services o Building an ASPX/PHP page as a wrapper around legacy systems ld / dl o Using Visual Studio to make a Proxy o XMLHTTP object XMLHTTP bj t f ODBC f Commercial API from the other system vendor QUIZ:   How do we register a DLL (either API or WS Proxy)  so that you can use the DLL directly in Methods ? th t th DLL di tl i M th d ? Copyright © 2011 Aras All Rights Reserved. Slide 17 aras.com Other Design Considerations f File check‐in to a Federated source ƒ After check‐in, move file from Aras vault to remote vault ƒ Aras client does direct file upload ƒ Actions for Add, Update and Delete are possible , p p ƒ Synchronizing permissions and access Copyright © 2011 Aras All Rights Reserved. Slide 18 aras.com Two Use Cases 1. Data in the ERP system or your legacy applications is  relevant to the PLM users.   We want this data and PLM  data together in the right context on the PLM user  interface ‐‐ like a Mash‐Up Federation 2. Other systems need access to data records or files  stored in the PLM system y Web Services Copyright © 2011 Aras All Rights Reserved. Slide 19 aras.com Web Services f Example:  On‐line website catalog needs data from  p g the PLM system (drawings, specs, part numbers).       • BTW this is how the Aras web site runs f Shop floor MES system displays drawings from the  p y p y g PLM vault Copyright © 2011 Aras All Rights Reserved. Slide 20 aras.com Aras Training Class ‐ Outline f Overview of Aras Web Services f Creating a Web Service Configuration f Generating the Web Service Code f Publishing a new Application to IIS f Testing the Web Service T i h W bS i f Consuming the Web Service example using Visual Studio Consuming the Web Service example using Visual Studio Copyright © 2011 Aras All Rights Reserved. Slide 21 aras.com Web Services f You can develop XML/SOAP messages that are sent  directly to the Aras Server,  the only requirement is that  each transaction is authenticated,  and you have the XML  message payload correct. f http://myServer/Innovator/Server/InnovatorServer.aspx ƒ What?  No WSDL.      Why is there no WSDL?    What? No WSDL Why is there no WSDL? ƒ WDL implies a static object model   ƒ Tradeoffs    • Performance • Static vs. Dynamic view of the world Copyright © 2011 Aras All Rights Reserved. Slide 22 aras.com Aras Web Services Choices f Interfacing to the Aras Server directly ƒ InnovatorServer.aspx provides the ApplyItem service ƒ All AML commands are available ƒ No WSDL necessary f Creating a Custom Web Service ƒ Advantages • Can generate WSDL • Can be used with tools that use WSDL to build interfaces C b d ih l h WSDL b ild i f ƒ Disadvantages • Static model St ti d l • If an ItemType is altered, the service must be regenerated Copyright © 2011 Aras All Rights Reserved. Slide 23 aras.com Service Publishing Overview f Steps: 1) Establish a physical directory location for the service 2)) Create a Web Configuration Item g 3) Save the Web Configuration File to web service  directory 4) Generate the Web Service program code and  configure service configure service 5) Add the Web Service to IIS 6) Test the Service Copyright © 2011 Aras All Rights Reserved. Slide 24 aras.com Creating Web Service  Configuration g 2 1 3 6 8 4 5 Copyright © 2011 Aras All Rights Reserved. 7 Slide 25 aras.com Specifying Actions Copyright © 2011 Aras All Rights Reserved. Slide 26 aras.com Creating Custom Actions 1 Create Server Method 2 Copyright © 2011 Aras All Rights Reserved. Slide 27 Create Corresponding Action aras.com Creating a Location Directory f Locate the web service generator files: …Innovator/Server/bin/WebServiceGenerator Innovator/Server/bin/WebServiceGenerator f Copy the folder to a new location Example: C:\WebServiceGenerator f Rename directoryy Example: Copyright © 2011 Aras C:\WorkOrder_Service All Rights Reserved. Slide 28 aras.com Saving the Web Configuration File 1 2 Copyright © 2011 Aras All Rights Reserved. Slide 29 aras.com Generating the Web Service Code f GenerateWS.exe ƒ Parameters: • Folder to generate Web Service code files • File name of Web Service Configuration File • Folder containing  the template configuration .zip file • Name of published web service f Example: G GenerateWS t S . WSC_1.xml SC 1 l . WorkOrderService kO d S i Copyright © 2011 Aras All Rights Reserved. Slide 30 aras.com Configuring the Web Service f Locate the innovator.config.xml file f Replace the following parameter values ƒ URL ƒ DB f Example: E l pp g Copyright © 2011 Aras All Rights Reserved. Slide 31 aras.com Creating the IIS Application Copyright © 2011 Aras All Rights Reserved. Slide 32 aras.com Testing the Service fUse Internet Explorer and enter the URL: Example: http://localhost/WorkOrderService/innovator.asmx Copyright © 2011 Aras All Rights Reserved. Slide 33 aras.com Consuming the Web Service in  Visual Studio Copyright © 2011 Aras All Rights Reserved. Slide 34 aras.com Two Use Cases 1. Data in the ERP system or your legacy applications is  relevant to the PLM users.   We want this data and PLM  data together in the right context on the PLM user  interface ‐‐ like a Mash‐Up Federation 2. Other systems need access to data records or files  stored in the PLM system t d i th PLM t Web Services Copyright © 2011 Aras All Rights Reserved. Slide 35 aras.com More Resources f Federation test package ƒ Innovator‐to‐Innovator federation used for testing of the Server Events    f Aras wiki articles ƒ http://www.aras.com/community/wikis/ f Aras training classes and materials ƒ http://www.aras.com/university/ Copyright © 2011 Aras All Rights Reserved. Slide 36 aras.com ACE 2011 International Understanding Federation  Understanding Federation and Web Services www.aras.com Copyright © 2011 Aras All Rights Reserved. aras.com