Kapitel 4 Flashcards
Welche Operationstypen gibt es bei MBOs?
The operation types are CREATE UPDATE DELETE OTHER
OTHER does not allow data manipulation
Was enthält ein MBO?
An MBO is like any object in the programming world, it is a container of attributes and operations
- Attributes define the data-makeup of the object
- Operations define what the object is capable of doing
Native and Workflow applications will contain screens which display and allow editing of data
- The fields displayed/edited are derived from an MBO’s attributes
- The types of changes allowed depend on the MBO’s operations
Wie können Parameter zu Operationen bei MBOs definiert sein?
Parameters can be defined as nullable, updatable or required
Parameters are assigned their value from attributes, Personalization Keys or Default Values
Was ist ein Personalization Key?
- Mechanism to allow mobile application users to provide input to the parameters of an MBO
- May be created in the Unwired WorkSpace or the SCC
- Protected property Obfuscates the values stored in the key so that they are more secure
Welche Arten der Speicherung von Personalization Keys gibt es?
Server –values are stored in the CDB
Client –values are stored in the device local database
Transient –values are stored in memory
(Transient is required when the Personalization Key is used in the context of a Workflow application)
Welche systemeigenen Personalization Keys gibt es und wie werden diese verwendet?
- Username and password are system-defined personalization keys
- Represent the credentials supplied when the user logs into the mobile application
- These credentials can be passed to the EIS source from the mobile application
Gibt es auch bei BAPI-MBOs Operationstypen?
If the MBO were sourced from a BAPI, no SQL would be written but you would still have CREATE, UPDATE and DELETE type operations
- The BAPI-based MBO will call some other BAPI operation in order to perform the data manipulation
Gibt es auch bei BAPI-MBOs Relationships?
In a relational database tables are database tables are related using Primary/Foreign keys Primary/Foreign keys
- MBOs can be related in a similar fashion
- Relationships must be manually created by the developer in Unwired WorkSpace
Was sind MBO Roles und wie interagieren diese mit anderen Systemen?
- Logical entities that control which users or groups can access an MBO
- Provide user authorization before the request goes to the backend system (database SAP etc)
- Sybase Unwired Platform roles work in conjunction with physical roles, which reside in the underlying security provider (i.e. LDAP server)
Welche Granularität haben MBO Roles?
- A role can be assigned to individual or multiple MBOs
- A role can grant access to an operation within an MBO for security granularity
Wie kann auf SAP MBOs zugegriffen werden?
BAPI/RFCs can be accessed from SUP using either:
- The SAP/JCo (Java Connector)
- SOAP Web Service (If your SAP Administrator has exposed the BAPI as a (SOAP) Web Service)
Welche beiden Ansätze zum Erstellen von MBOs gibt es?
Wie geht man danach vor?
Bottom-up approach:
- EIS Data Source already exists –mapping is automatic
Top-down approach
- EIS Data Source does not yet exist
- Mapping will be manual once the data source is created
- After the BAPI Operation/RFC has been chosen, the next step is to define Inputs and Outputs
- Providing Defaults for Read Parameters
- Operation Return(s) to Attribute Mapping
- Operations have to be added to pthe MBO to allow for updates to the SAP system
Wie kann mit Strukturen als eingabeparameter in BAPI umgegangen werden?
Some operation input parameters, such as the GetList BAPI operation use structure (complex) types use structure (complex) types You must know which of the structure attributes are required to successfully execute the operation
Wie geschieht der Quick-Test für MBOs?
Right-click over any MBO and choose Preview… to test the data that will be returned to the device
Was sind Result checker?
Result Checkers are Java classes, created by Developers, that implement custom error handling for MBOs:
- Check each field for errors
- Implement logic that determines what constitutes an error
If you choose to Create a new Result Checker, you will be prompted to add the Java nature to your project
After you create the Result Checker class the project will Checker class, the project will contain a Filters folder with the Java source file representing the Result Checker The source is then opened and coded
Welche Methoden gibt es beim WSResultChecker-Interface und welche Parameter existieren?
Defines a method named checkReturn(SOAPEnvelope)
- The parameter is the SOAP Envelope returned when the operation is executed
- Use the SOAP API to retrieve returned values to see if successful
- Returns –a single Map.Entry
- Boolean key set to true if operation was successful (If the String value is not empty/null, it contains a warning message which will be logged on the server)
- Boolean key set to false if operation was unsuccessful (String value thrown in body of an exception)
- Error logged on server
- Client will receive transaction log indicating failure
- Returns –a single Map.Entry
- Use the SOAP API to retrieve returned values to see if successful
Welche Methoden gibt es beim RestResultChecker-Interface und welche Parameter existieren?
Defines a method named checkReturn
- Contains three parameters:
- HTTP responseBody as a String
- responseBody as a List (In the form {header1, value1}, {header2, value2}, …)
- httpStatsCode as an Int
Welche Methoden gibt es beim SAPResultChecker-Interface und welche Parameter existieren?
Defines a method named checkReturn (com.sap.jco.JCO.Function)
- The parameter is the JCo function that is executed
- Use the JCo API to retrieve returned values to see if the operation was successful
- Returns –a single Map.Entry
- Boolean key set to true if operation was successful (If the String value is not empty/null, it contains a warning message which will be logged on the server)
- Boolean key set to false if operation was unsuccessful (String value thrown in body of an exception)
- Error logged on server
- Client will receive transaction log indicating failure
- Returns –a single Map.Entry
Was sind Result Filter und wozu dienen diese?
- Java classes created by developers and used to customize the data returned when calling an EIS operation
- Lets developers manipulate the data returned from a read operation before storing it into the Unwired Server’s CDB
- Multiple Result Set Filters may be created and chained togetther applying incremental change to the data
- MBOs can without Result Set Filters only get their data from a single EIS source
- A Result Set Filter goes beyond simple filtering. You can:
- Add, delete, change columns
- Add and delete rows
- Augment the output by reading from other EIS sources
After you create the Result Set Filter class the project Set Filter class, the project will contain a Filters folder with the Java source file representing the Result Checker
Was ist das Problem von SAP-MBOs, die per Palette erstellt wurden und wie kann dies gelöst werden?
- MBOs built using the Palette contain no operations, only attributes
- To perform CRUD operations on an SAP system, you must add operations to the MBO
- This is done by clicking Add in the Properties view and specification of:
- Operation Name
- Operation Type
- Data Source Type
- Connection Profile
- Use the Browse feature to find the appropriate BAPI / Operation
Wie sollten SAP-MBO-Operations getestet werden?
Use the “Test Execute” button to ensure that you have chosen all of the required inputs (after creation of the MBO operation)
- Need knowledge of the BAPI operation you are calling (what is and is not required) before you create the MBO operation
- If you do not have this information, Test Execute will let you, by trial-and-error, determine operation input requirements
- The only way to fully test a CREATE operation is to build the UI and test as the user would on the device / simulator
Wie ist das Commit-Verhalten von SAP-MBO-Operations?
Commit SAP Operation (Auto Commit) is enabled by default and can only be changed by editing the operation