Design Approach for Agentry based SAP Mobile
Applications
Provided by SAP Mobile - Rapid Innovation Group
Applicable Releases:
Agentry 6.X - Including all SAP based mobile products running on
Agentry
TABLE OF CONTENTS
SECTION 1: DESIGN PROCESS OVERVIEW ... 3
SECTION 2: OVERVIEW FLOW CHART ... 4
SECTION 3: END-TO-END INTEGRATION OVERVIEW ... 5
SECTION 4: SAP CLASS ARCHITECTURE ... 6
SECTION 5: AGENTRY JAVA LAYER ARCHITECTURE - DATA OBJECT/TRANSACTION ... 7
Design Approach for Agentry based SAP Mobile Applications
SECTION 1: DESIGN PROCESS OVERVIEW
This section provides an overview of the design approach when designing Agentry Objects, Complex tables and Data tables in SAP.
The following are the steps involved in designing the Agentry mobile application: 1) Identify SAP Objects:
a. Identify the SAP Transactions per requirement
b. Identify the SAP Objects based on the transactions. This involves:
Identifying the object against which transaction is performed
Identifying reference data (objects) required to perform the transaction 2) Determine Agentry Entities:
a. Based on the Data Classification of the SAP objects and possible usage of the data in Agentry, determine if the SAP object should be created as a Data Table, Complex Table, or an Agentry object.
In general, the SAP Configuration and Master Data are stored in either data tables or complex tables
In general, the SAP Transactional Data is stored in Agentry objects 3) Determine the Data Fetches required:
a. Data Table fetches b. Complex Tables fetches c. For Agentry Objects:
Identify if data needs to be fetched (Main or On-Demand fetch)
Identify if object read steps are required
Identify if data is pushed from SAP
d. Determine if any complex table fetches or object fetches require Exchange 4) Determine Agentry Transactions:
a. Based on the transaction to be performed in SAP and the Agentry object, determine the Agentry transactions
b. Determine if there is a need to set up Background Sending. If Background Sending is a requirement, then determine if a transaction’s posting should be deferred until Transmit. This may require creation of an additional transaction with a backend step that is triggered upon Transmit.
5) Determine the Screens required:
a. Determine the Screens required based on the Data Searches to be performed, objects to be displayed, or transactions
SECTION 2: OVERVIEW FLOW CHART
1a. Identify SAP
Transactions 1b. Identify SAP Objects Functional Requirement (FSR)
2a. Agentry CTs & DTs Master/ Config 3a. Agentry Objects Transactional 2d. Fetch CT / DT
Data
Fetches
Updates
Data
1d. SAP BAPI 9b. Exchange (Change Detection Routines & Exchange
Configuration set) Exchange Tables
1c. SAP Data Classification, Usage of Data and
other factors
Agentry Entities
Steps 4a Pushes Steps Rules
4a. Fetches & Object Read Steps
5a. Transactions (Background Sending)
Steps Rules
6a. Agentry Screen Sets Platforms 6b. Screens
6f. Rules Steps Rules
6d. Actions
BAPIs MDO Class Handlers MDO Configuration set 9a. SAP 8a. Java Steplet Class StepHandler Class BAPI Class
Design Approach for Agentry based SAP Mobile Applications
SECTION 3: END-TO-END INTEGRATION OVERVIEW
SAP Java Connector (JCo 2.1.8) is used to broker the communication between Agentry Server and SAP. To ensure data integrity the Transaction orchestration in SAP will be in the same order as the mobile client.
The following diagram depicts a data flow across the systems.
Syclo BAPI Wrapper
SAP
SAP DB Steplet/ Data Table/Complex Tabel Agentry Step HandlerClass BAPI Class
Java
Agentry
SAP JCo
Syclo Class Hadler (SAP/Customer)BAPI/ Function
Fetches
Pojo
Note:
Design Approach for Agentry based SAP Mobile Applications
SECTION 5: AGENTRY JAVA LAYER ARCHITECTURE - DATA OBJECT/TRANSACTION
Java Backend Architecture - Data Object
User
create store Agentry login() getUser() testGetWorkorders(), etc.
Steplet
constructor() doSteplet()Stephandler
getWorkorders() static methods editWorkorder() addWorkorder() etcWorkorderEditBAPI
(transaction example)
setParameters()SECTION 6: AGENTRY JAVA LAYER ARCHITECTURE - COMPLEX TABLE
User
create store Agentry login() getUser() testBuildComplexTable(), etc.ComplexTable
constructor() initialize() reload() build() getDeleted()Stephandler
static methodswww.sap.com
© 2013 SAP AG. All rights reserved.
SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer, StreamWork, SAP HANA, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries.
Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects Software Ltd. Business Objects is an SAP company.
Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Sybase Inc. Sybase is an SAP company. Crossgate, m@gic EDDY, B2B 360°, and B2B 360° Services are registered trademarks of Crossgate AG in Germany and other countries. Crossgate is an SAP company.
All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if