0
ACE 2011 International Understanding Federation  Understanding Federation and Web Services  www.aras.comCopyright © 2011 A...
WelcomeSession Goals        Previous session covered overall Integration         strategies and a focus on how to integrat...
Session Topic1. Pull data from external   apps into PLM to use in   Client, Reports, workflows2. External apps using PLM  ...
Two Use Cases1. Data in the ERP system or your legacy applications is       relevant to the PLM users.   We want this data...
Two Use Cases• NOTE: for many commercial systems, such as SAP and    SharePoint,  you can find a commercial 3rd party     ...
Two Use Cases1. Data in the ERP system or your legacy applications is          relevant to the PLM users.   We want this d...
Federation ‐ Definition    Core concept in Aras:   Federation creates a wrapper     around data objects in remote systems,...
Federation – Definition ((continued)          )     We aggregate data from many sources in this way in      order to:     ...
Federation Scenarios Corporate document management system         Documents checked in to the PLM system are transferred  ...
Why Server‐Based Federation?    Aras Innovator is an HTML Client; we can use the client as     an integration platform als...
Simple Exercise Create an ItemType named Test with 1 Property=name Add a Server Event OnGet with a Method that creates  Ad...
Why is the Simple Exercise Simple? Aras Client and all internal framework services expect  AML to be returned on every tra...
Pseudo Code for a View Assume “MyFederation”   OnGet event  ‐ VB/C# Method Assume entire ItemType has been Federated Assum...
Pseudo Code for View #1     User query parameters from the Simple Search grid row      are Properties on the Me / This obj...
Pseudo‐Code for View #2Federated Items will be used as Item Properties, or either the Source or Related in a Relationship ...
Pseudo‐Code for View #2Three properties are required to maintain configurations        ID        Federated‐ID        Keyed...
Remote Data Access Techniques  Web Services     o Building an ASPX/PHP page as a wrapper around legacy systems          ld...
Other Design Considerations File check‐in to a Federated source         After check‐in, move file from Aras vault to remot...
Two Use Cases1. Data in the ERP system or your legacy applications is          relevant to the PLM users.   We want this d...
Web Services    Example:  On‐line website catalog needs data from          p                          g    the PLM system ...
Aras Training Class ‐ Outline    Overview of Aras Web Services    Creating a Web Service Configuration    Generating the W...
Web Services    You can develop XML/SOAP messages that are sent     directly to the Aras Server,  the only requirement is ...
Aras Web Services Choices    Interfacing to the Aras Server directly         InnovatorServer.aspx provides the ApplyItem s...
Service Publishing Overview    Steps:     1) Establish a physical directory location for the service     2) Create a Web C...
Creating Web Service Configuration     g                                 1                                 2              ...
Specifying Actions Copyright © 2011 Aras   All Rights Reserved.   Slide 26   aras.com
Creating Custom Actions     1     Create Server Method                                                           2   Creat...
Creating a Location Directory    Locate the web service generator files:    …Innovator/Server/bin/WebServiceGenerator     ...
Saving the Web Configuration File                                                1                                        ...
Generating the Web Service Code    GenerateWS.exe         Parameters:             • Folder to generate Web Service code fi...
Configuring the Web Service    Locate the innovator.config.xml file    Replace the following parameter values         URL ...
Creating the IIS Application Copyright © 2011 Aras   All Rights Reserved.   Slide 32   aras.com
Testing the Service Use Internet Explorer and enter the URL: Example: http://localhost/WorkOrderService/innovator.asmx Cop...
Consuming the Web Service in Visual Studio Copyright © 2011 Aras   All Rights Reserved.   Slide 34   aras.com
Two Use Cases1. Data in the ERP system or your legacy applications is          relevant to the PLM users.   We want this d...
More Resources    Federation test package         Innovator‐to‐Innovator federation used for         testing of the Server...
ACE 2011 International Understanding Federation  Understanding Federation and Web Services  www.aras.comCopyright © 2011 A...
Upcoming SlideShare
Loading in...5
×

Advanced Federation and Web Services in Aras for Enterprise PLM

1,007

Published on

Understanding Federation and Web Services for Real-Time Enterprise Systems Connectivity using Aras

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,007
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Advanced Federation and Web Services in Aras for Enterprise PLM"

  1. 1. ACE 2011 International Understanding Federation  Understanding Federation and Web Services www.aras.comCopyright © 2011 Aras All Rights Reserved. aras.com
  2. 2. WelcomeSession 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
  3. 3. Session Topic1. Pull data from external apps into PLM to use in Client, Reports, workflows2. 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
  4. 4. Two Use Cases1. 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 customer information CRM t i f ti2. 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
  5. 5. Two Use Cases• NOTE: for many commercial systems, such as SAP and   SharePoint,  you can find a commercial 3rd party  , y p 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
  6. 6. Two Use Cases1. 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 Federation2. 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
  7. 7. Federation ‐ Definition 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 The wrapper defines  the data transfer, data mapping  Th d fi th d t t f d t i and the internal PLM representation We can add security, web interface, workflow routing  to data in the legacy system,  using it as a data source  for a new audience of users    f di 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
  8. 8. Federation – Definition ((continued) ) 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 systemsDone well,  the end user is not aware of the sources of dataDone well, the end‐user is not aware of the sources of data Copyright © 2011 Aras All Rights Reserved. Slide 8 aras.com
  9. 9. Federation Scenarios 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  interface,  directly accessing remotely stored data i f di l i l dd Cost and inventory on hand fields in ERP Cost and inventory‐on‐hand 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
  10. 10. Why Server‐Based Federation? Aras Innovator is an HTML Client; we can use the client as  an integration platform also.    g p 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
  11. 11. Simple Exercise Create an ItemType named Test with 1 Property=name Add a Server Event OnGet with a Method that creates  Add a Server Event OnGet with a Method that creates and returns a hardcoded XML string <Item type=‘Test’ id=‘1234’><name>Hello</name></Item> <It t ‘T t’ id ‘1234’>< >H ll </ ></It > Select this item on the TOC Grid will populate with the ‘fake’ data. NOTE: o Had to create a dummy ID for each row Copyright © 2011 Aras All Rights Reserved. Slide 11 aras.com
  12. 12. Why is the Simple Exercise Simple? Aras Client and all internal framework services expect  AML to be returned on every transaction ‐ this is key to  the simplicity of Federation 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 ) 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 oO G t OnGet to return 100% federated items t t 100% f d t d it Copyright © 2011 Aras All Rights Reserved. Slide 12 aras.com
  13. 13. Pseudo Code for a View Assume “MyFederation”   OnGet event  ‐ VB/C# Method Assume entire ItemType has been Federated Assume entire ItemType has been Federated Properties for the remote object, TOC Access, Form Views  are defined in standard Aras Innovator ItemType Editor 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  the Documents are federated th D t f d t d Copyright © 2011 Aras All Rights Reserved. Slide 13 aras.com
  14. 14. 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 AMLQUIZ:  Is there an ItemType table for this item? Copyright © 2011 Aras All Rights Reserved. Slide 14 aras.com
  15. 15. Pseudo‐Code for View #2Federated 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 ItemType is not flagged as Federated this time  because we do want an Aras Innovator table because we do want an Aras Innovator tableQUIZ ‐ What properties must this table store? Copyright © 2011 Aras All Rights Reserved. Slide 15 aras.com
  16. 16. Pseudo‐Code for View #2Three properties are required to maintain configurations ID Federated‐ID Keyed‐NameSolution:   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
  17. 17. Remote Data Access Techniques 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 bj t XMLHTTP object ODBC Commercial API from the other system vendorQUIZ:   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
  18. 18. Other Design Considerations 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
  19. 19. Two Use Cases1. 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 Federation2. 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
  20. 20. Web Services 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 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
  21. 21. Aras Training Class ‐ Outline Overview of Aras Web Services Creating a Web Service Configuration Generating the Web Service Code Publishing a new Application to IIS Testing the Web Service T i h W bS i 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
  22. 22. Web Services 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. 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
  23. 23. Aras Web Services Choices Interfacing to the Aras Server directly InnovatorServer.aspx provides the ApplyItem service All AML commands are available No WSDL necessary Creating a Custom Web Service Advantages • Can generate WSDL • C b Can be used with tools that use WSDL to build interfaces d ih l h WSDL b ild i f Disadvantages • St ti Static model d l • If an ItemType is altered, the service must be regenerated Copyright © 2011 Aras All Rights Reserved. Slide 23 aras.com
  24. 24. Service Publishing Overview 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
  25. 25. Creating Web Service Configuration g 1 2 3 6 8 4 5 7 Copyright © 2011 Aras All Rights Reserved. Slide 25 aras.com
  26. 26. Specifying Actions Copyright © 2011 Aras All Rights Reserved. Slide 26 aras.com
  27. 27. Creating Custom Actions 1 Create Server Method 2 Create Corresponding Action Copyright © 2011 Aras All Rights Reserved. Slide 27 aras.com
  28. 28. Creating a Location Directory Locate the web service generator files: …Innovator/Server/bin/WebServiceGenerator Innovator/Server/bin/WebServiceGenerator Copy the folder to a new location Example: C:WebServiceGenerator Rename directory y Example: C:WorkOrder_Service Copyright © 2011 Aras All Rights Reserved. Slide 28 aras.com
  29. 29. Saving the Web Configuration File 1 2 Copyright © 2011 Aras All Rights Reserved. Slide 29 aras.com
  30. 30. Generating the Web Service Code 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 Example: GenerateWS . WSC_1.xml . WorkOrderService G t S SC 1 l kO d S i Copyright © 2011 Aras All Rights Reserved. Slide 30 aras.com
  31. 31. Configuring the Web Service Locate the innovator.config.xml file Replace the following parameter values URL DB Example: E l <?xml version="1.0" encoding="utf-8" ?> <appSettings> pp g <add key="url" value="http://localhost/Innovator920" /> <add key="db" value="DevelopingSolutions920" /> </appSettings> Copyright © 2011 Aras All Rights Reserved. Slide 31 aras.com
  32. 32. Creating the IIS Application Copyright © 2011 Aras All Rights Reserved. Slide 32 aras.com
  33. 33. Testing the Service Use Internet Explorer and enter the URL: Example: http://localhost/WorkOrderService/innovator.asmx Copyright © 2011 Aras All Rights Reserved. Slide 33 aras.com
  34. 34. Consuming the Web Service in Visual Studio Copyright © 2011 Aras All Rights Reserved. Slide 34 aras.com
  35. 35. Two Use Cases1. 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 Federation2. 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
  36. 36. More Resources Federation test package Innovator‐to‐Innovator federation used for testing of the Server Events    Aras wiki articles http://www.aras.com/community/wikis/ Aras training classes and materials http://www.aras.com/university/ Copyright © 2011 Aras All Rights Reserved. Slide 36 aras.com
  37. 37. ACE 2011 International Understanding Federation  Understanding Federation and Web Services www.aras.comCopyright © 2011 Aras All Rights Reserved. aras.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×