_quot;Extending OpenEdge and .NET to the Factory Floor”
Shared by: yurtgc548
-
Stats
- views:
- 4
- posted:
- 2/18/2012
- language:
- English
- pages:
- 39
Document Sample


INNOV-11:
Extending OpenEdge and
.NET™ to the Factory Floor
Bob Brennan
Integrated Manufacturing
Systems, Inc.
June 5 – 8 2005
Orlando
Agenda
Quick Definitions, Set Levels
Things We Care About
Progress Parts
Some Code
Discussion
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 2
Our Foundation
Factory and Warehouse Environment
Mobile Users / PLCs / Headless Users
Non Traditional Computer Users
Getting closer to the source of data
Timely and Accurate Collection
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 3
Wireless Networking
Extend the copper network out to the
factory, yard, warehouse (pool, lobby,
car, airplane…)
Provides infrastructure for more real time
processing
Standards Compliance 802.11
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 4
Define .NET
Microsoft’s Platform for Web Services
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 5
Define Compact Framework
“Lite” Version for Portable Devices
• Subset of full .NET classes
Common Language Runtime (CLR)
• Built from scratch for mobile devices
• Constrained Memory
• Constrained CPU
• Battery Conservation
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 6
Compact Framework
Allows ‘Rich’ UI on a portable device
Think Progress Web Client Mode
Casually Connected Data Model
• XML Based
First Class Web Services Consumer
• XML Based
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 7
Differences
ASP.NET is not there. Needs IIS
No COM Interop
No Native Printing Services
No Large Footprint or Compute Intense
• Remoting
• XML Path Language (XPath)
• XSLT
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 8
Agenda
Quick Definitions, Set Levels
Things We Care About
Progress Parts
Some Code
Discussion
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 9
Things We Care About
XML Web Services (Consume and Host)
ADO.Net Data Sets
Casually Connected Model
Persistence of Data
Visual Studio Development Tools
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 10
Web Services
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 11
ADO.NET
DataSet
• Database in Memory
• No permanent connection to real DB
• Object is XML Based
DataAdapter
• The link back to the real DB
• Connect as needed/when available
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 12
Casual Connections/Persistence
The developer decides when the
DataAdapter is connected to the
DataSet.
Temporary Connection
Localized copy of Data (XML, Pocket
Access, SQL Server CE, Memory)
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 13
Development & Deployment
Visual Studio 2003 as Development tool
• Smart Devices
• VS/2003 with Complete install
Active Synch
• No Internet Deployment
• Can’t point user to a URL and let system determine
if the latest code is executing.
• WebClient™ Versioning
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 14
Sample Devices – Lots of Choice
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 15
Smart Devices
All are based on either Pocket/PC or
CE/.NET
• Pocket PC 2000 *
• Pocket PC 2002*
• Pocket PC 2002 Phone Edition
• Pocket PC .NET
• Windows CE .NET 4.1 and above
* Only CE 3.0 Derivatives to be ported
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 16
Business Component / CIO POV
• Application Building Blocks
• Software component
• Each component addresses a well-defined set of
business requirements
• Reusable
• Self contained (i.e. loosely coupled)
• Encapsulates “best practices”
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 17
Service Oriented Architecture
• Components assembled to form a complete
application
• Combine with other developer components
• Combine with third party components
• Pick and choose components
that fit the requirements
at hand
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 18
Web Services / Architects POV
Service Oriented Architecture
Loosely coupled chunks of logic that do
something
• Do one well-defined thing
• Common/Standard Interfaces both In and Out
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 19
Remote Procedure Call / My POV
Run some logic “Over There”
Get result back in a standard way
I don’t care how that thing is deployed
I just want it to work
Return my stuff in a way that is
consistent and useable.
Soap Wrapped XML is a way i.e. Web
Services.
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 20
Recent Past
Client Server via Telnet
• Needs Constant Connection
Browser Based
• Limited UI
Java™
• Runtime Availability/ Processor Speed
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 21
Agenda
Quick Definitions, Set Levels
Things We Care About
Progress Parts
Some Code
Discussion
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 22
ProDataSet
Think of a ProDataSet as in-memory
data that holds a set of related records
and is aware of the interrelationships.
XML-ish, Content and Structure
Disconnected temp table db
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 23
ProDataSet
You can pass a ProDataSet as a single object
from one session to another.
The DataSource Object is separate from the
data structure definition
Diff Gram Updates back at Server
Maps to the Microsoft ADO.Net DataSet
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 24
OpenEdge™ Development:
ProDataSets by John Sadd
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 25
More ProDataSet Info
Adds a logical layer between the
physical DB and the Developer
Try to have ‘Normalized’ ProDataSets
• Even if the underlying physical DB is not normal
• Helpful even for just 4GL coding of legacy systems
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 26
Step 1 – Define Temp Tables
/* dsOrderTables.i -- include file for TT def’s */
DEFINE TEMP-TABLE ttOrder LIKE Order
INDEX OrderNum IS
UNIQUE PRIMARY OrderNum.
DEFINE TEMP-TABLE ttOLine LIKE OrderLine
BEFORE-TABLE ttOlineBefore
INDEX orderline IS
UNIQUE PRIMARY Ordernum Linenum.
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 27
Step 2 - Define the DataSet
/* dsOrderDef.i – DATASET dsOrder. */
DEFINE DATASET dsOrder FOR ttOrder, ttOLine
DATA-RELATION OrderLine FOR ttOrder, ttOLine
RELATION-FIELDS (OrderNum, OrderNum).
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 28
Step 3 – Define Query & DataSource
DEFINE QUERY qOrder FOR Order.
DEFINE DATA-SOURCE srcOrder FOR
QUERY qOrder Order
KEYS (OrderNum).
DEFINE DATA-SOURCE srcOline FOR
OrderLine.
/* Parent on query, child on the temp table *./
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 29
Step 4 – Prepare and Attach
/* Prepare the query */
QUERY qOrder:QUERY-PREPARE("FOR EACH
Order NO-LOCK WHERE …”).“
/* Attach datasource before fill */
BUFFER ttOrder:ATTACH-DATA-SOURCE
(DATA-SOURCE srcOrder:HANDLE).
BUFFER ttOLine:ATTACH-DATA-SOURCE
(DATA-SOURCE srcOline:HANDLE).
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 30
Step 5 – Fill and Detach
/* Loads data from source into the PDS */
hDSOrder:FILL().
/*Detach datasources after fill */
DO iBuff = 1 TO DATASET dsOrder:NUM-BUFFERS:
DATASET dsOrder:GET-BUFFER-
HANDLE(iBuff):DETACH-DATA-SOURCE().
END.
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 31
Web Services
WSDL – Web Services Descriptive Lang.
SOAP – Simple Object Access Protocol
XML – eXtensible Markup Language
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 32
Progress Bits
4GL Code
AppServer
OpenEdge Web service tools
• Open Client Toolkit - Development
• Web Services Adapter (WSA) - Deploy
• Progress Explorer framework
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 33
OpenEdge Development:
Web Services
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 34
Agenda
Quick Definitions, Set Levels
Things We Care About
Progress Parts
Some Code
Discussion
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 35
Demo
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 36
Agenda
Quick Definitions, Set Levels
Things We Care About
Progress Parts
Some Code
Discussion
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 37
Things to consider
Screen Size
Use-ability and End User Skills
Processor/Memory Limitations
Not Desktop Replacements
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 38
Questions/Comments/Discussion
Thank You for Attending
Bob Brennan
Integrated Manufacturing Systems, Inc.
(603) 424-0109
June 5 – 8 2005
Orlando INNOV-11 – Extending to the Factory Floor 39
Get documents about "