Professional Documents
Culture Documents
1
Copyright (c) 2019, Oracle. All rights reserved. Oracle Confidential.
In this Document
Abstract
INTRODUCTION
History
Details
ARCHITECTURE
PERSONALIZATION FEATURES
PERSONALIZATION RESTRICTIONS
PROFILE OPTIONS USED BY MWA PERSONALIZATION FRAMEWORK
References
APPLIES TO:
ABSTRACT
INTRODUCTION
Oracle Warehouse Management System is a real-time execution system that enables a majority of the transactions to be
executed on the mobile devices and captures the related information. While the product is growing feature rich by the release,
the variety of its expanding customer base is increasing rapidly too. The number of customers that are interested in and
demanding to tailor the execution of these mobile transactions to their custom business processes and procedures is
increasing.
The following are some of the variety of reasons why the user wants to customize the mobile pages at their facility.
· The management is confident that their mobile operators are well qualified and can be relied upon, hence would like to
reduce the amount of information that needs to be verified and confirmed through the mobile devices. This will reduce the
number of scans and hence improve the speed and overall efficiency at which the mobile transactions can be executed.
· Default some of the fields based on the various business rules that are used at their facility and do not need the operators to
input.
· Capture additional information to meet the requirements of the business processes and procedures using the LPN Descriptive
flex field.
The project will eliminate the need to customize the WMS mobile UI pages and reduce the implementation time for the
growing WMS customer base. Patch 6662606 provides the capability of personalizing Oracle Warehouse Management pages
for release 11.5.10. WMS Personalization Framework is delivered with releases 12.1.X forward and is not available for release
12.0.X.
In release 12.1.1 and higher customers may also define their own validation logic for any editable field on any mobile
application page without actually customizing it. This is accomplished via the file customlistener.java. Please refer to Note
1621549.1 for additional information.
R12.1.x users will also want to apply Patch 19051626 - This is a consolidated patch for ERs on Personalization. (There is no
corresponding patch for 12.2.x, changes were incorporated directly into 12.2.x). This patch adds Cycle Count, Lot Attributes,
LPN Split, LPN Unpack, Mobile LPN Inspect, Detail Pick, LPN Inquiry, Item Inquiry, Account Alias Receipt, LPN Pack,Physical
Count, Account Alias Issue and ASN Receipt pages to personalization framework.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 1/16
08/02/2019 Document 469339.1
Also, please review the Support Policy announcements for E-Business Suite Releases 11.5.10, 12.0, 12.1 and 12.2 found in
Note 1494891.1.
Additionally there is a one-hour Webinar session offered. This is recommended for technical and functional users who are
looking to personalize the mobile experience for an end user using MSCA applications across the Oracle Ebusiness Suite.
Also included in this document find MSCA APP - Tips for Customized/Personalized Code (release 12.1.X and 12.2.X and
higher). The MSCA APP UI is built using the Oracle Mobile Application Framework (Oracle MAF) for supporting devices using
Android or iOS platforms.
HISTORY
DETAILS
ARCHITECTURE
Customers can use the MWA Personalization Framework menu option, which is available under the existing Warehouse
Manager responsibility’s Setup menu option, to personalize the WMS Mobile pages
Personalization can be done at three different levels. The levels in order of decreasing precedence are:
1. Responsibility
2. Organization
3. Function
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 2/16
08/02/2019 Document 469339.1
PERSONALIZATION FEATURES
Customers can now achieve the following without making any code changes:
a. If there is no default value provided using personalization framework then system tries to get the default value from a
custom java class as explained in appendix A.
· Enable/Disable the LPN Descriptive Flex Field. DFF can also be made as a read-only field
PERSONALIZATION RESTRICTIONS
Any given field on a page can be hidden provided any one of the following is true.
2. The field is required but a valid default value is set through this personalization framework.
An editable field can be made read-only when any one the following is true.
2. The field is required but a valid default value is set through the personalization framework.
You should set this profile option to “Yes” for personalization to take effect. This profile option can be set at site, application,
responsibility and user level.
This profile option should be set to “Yes” at site level on a production instance for faster performance. This profile option is
specifically created for Personalization Administrator to quickly review the personalization changes without having to bounce
the mobile server by setting it to “No” at user level.
Pick Load Page can be accessed using accept any tasks menu (Mobile WMS Tasks Interleave Accept Function) or by using
paper based picking menu (Mobile WMS Manual Picking Function). Personalization done at the function Mobile WMS Manual
Picking will be picked up irrespective of the current function if the current page is Pick Load Page.
Pick Drop Page can be accessed using the Drop Loaded LPNs menu (Mobile WMS Drop Loaded LPNs Function).
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 3/16
08/02/2019 Document 469339.1
Manual Load Page can be accessed using the menu Manual Load available under manual tasks (Mobile WMS Inbound Manual
Load Function).
User can navigate to item load page if ‘Select Contents’ button is clicked on manual load page.
If the form function parameter SUGGESTION is set to LINES for the function Mobile WMS Move Any LPN then user will be able
to navigate to Putaway Drop Page.
User can navigate to PO Receipt Information page if Done button is clicked on PO Receipt page.
User can navigate to mobile ship confirm page if ‘continue/ship’ button is clicked on LPN Ship page
Step 1: Navigate to the self-service Warehouse Manager responsibility and choose MWA Personalization framework option
under the Setup sub-menu. This option is also available in the MWA Server Manager responsibility. This menu option takes the
user to the Personalization Home page
Step 2: The List of values for the “Mobile page” field displays the function name and the mobile pages, which can be
personalized. Select a page and click the “Personalize” button.
Step 3: All the current fields and buttons for the page are displayed. Choose a field from the “Fields list” table and click the
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 4/16
08/02/2019 Document 469339.1
Step 4: A new page is displayed which lists all the properties of the field that can be personalized. Make the required
personalization and hit the “Apply” button to save your personalization for the selected field. Repeat this step for all the fields
you would like to personalize on this page.
Step 5: Navigate to the mobile page and review your personalization done for the page. Note: If the profile option “MWA:
Cache Personalized Metadata” is set to “Yes” then, the personalization made will come into effect only after bouncing the
mobile server.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 5/16
08/02/2019 Document 469339.1
The Personalized Update LPN Page displays the page name as “* Update LPN (W1)” The “ * ” indicates that the page involved
has been personalized.
The above picture shows the before and after view of the “Update LPN” page with the following personalization:
Activate/Deactivate Personalization
Personalization created for a page can be Activated/Deactivate from the activate/deactivate personalization page.
A new Descriptive Flexfield (DFF) has been seeded for the WMS License Plate Number Table. Oracle has seeded the DFF on all
the pages being enabled for personalization. The users have to enable the DFF for the pages they want to have the DFF
displayed.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 6/16
08/02/2019 Document 469339.1
Update Allowed: When un-checked and at least one of the attribute columns have data, all the DFF Attributes will be
rendered as read-only. If not, the user will be allowed to enter/update the DFF attribute fields
Headers: Optionally choose one or more fields, from the page, to be displayed as headers on the DFF window. Header fields
are ignored if they are not visible on the page at the time the DFF window is invoked (Control-F) by the user. This header field
definitions are ignored when the DFF attribute fields are displayed inline with the page.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 7/16
08/02/2019 Document 469339.1
LPN DFF enabled on Update LPN page with’ Display After’ set to LPN.
The LPN DFF is enabled on the Update LPN page with ‘Display Inline’ set to False. The DFF window is invoked using (Control-
F).
LPN DFF enabled on the Update LPN page with Display Inline set to True.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 8/16
08/02/2019 Document 469339.1
This section provides details about Mobile Supply Chain (MSCA) APP architecture and tips to ensure that any
customization/personalization work flawlessly with the MSCA APP ( applicable to 12.1 and 12.2 customers only) . Prior to the
MSCA APP, there were 2 UI options for the MSCA customers – Telnet or GUI UI. The MSCA APP leverages the same code as
used by the Telnet/GUI for the backend processing layer .This ensures that the customers up taking this APP have no
functional impact. Existing personalization done via the MWA Personalization UI should work as-is when using the MSCA APP.
We have listed some tips below for ensuring customizations/personalization work flawlessly when using the MSCA APP
MSCA APP UI is built using the Oracle Mobile Application Framework (Oracle MAF) for supporting devices using Android or iOS
platforms. The framework that enables developers to rapidly develop single-source applications and deploy to Apple's iOS and
Google's Android, Oracle MAF leverages Java, HTML5 and JavaScript to deliver a complete MVC framework with declarative
user interface definition, device features integration and built-in security
MSCA App uses the underlying Value Change event (provided by the OS/framework) to accept the value in the field and
process the same. Hence, there can be instances where in there is no change in the field value upon entering and exiting the
field (NULL or field value is defaulted) and hence the system would not process the same immediately and would require an
action to process the same. This could lead to false positives. In certain cases where the system navigates to other pages
upon processing the field value might show unexpected results
1. There may be a scenario where the Inputable field is not mandatory by definition; however, due to some system
restrictions/validations, system expects a value to be entered. If the user does not enter any value in that field and continues
to enter value to fields below the same, there might be unexpected results.
This situation can be handled by performing the validations involved at field entered and make the field mandatory/non-
mandatory by choice.
2. There may be a scenario where on submit of value for field (A) the value of field (B) which is after field(A) is set to a default
value and cursor is set on Field (B). System will wait for User Action and user action will not happen on pressing Go button on
device since there is no value change.
These type of scenarios can be handled by setting the session attribute MWALib.AUTO_ENTER to true
(Ex:ses.putObject(MWALib.AUTO_ENTER, Boolean.TRUE)) in the fieldExited method of field (A) so that the system should auto
enter and field exit of field B is fired.
3. Scenarios where field values are defaulted based on the entered values in the prior fields and further navigations are
dependent on the value entered needs to be handled. All generate actions (Lot, Serial, LPN) using Ctrl+G come under this
category.
This can be handled by not directly populated value the auto generated value to the field and to show it as a confirmation to
the user. The user can then hit a small icon (image below) next to that field to confirm the same. This change ensures definite
field exit event hence helps in field validations. This can be achieved via setting the defaulted flag introduced in
InputableFieldBean.java. E.g., page.getLotFld().setDefaulted(true);
4. In some scenarios, the fieldExited method of a field is not executed when action is "MWA_NEXTFIELD".
Both "MWA_SUBMIT" and "MWA_NEXTFIELD" are treated as the same in MSCA APP .In this type of scenarios we need to
execute the fieldExited method for mobileMode even for "MWA_NEXTFIELD" action.
5. Consider a scenario where a button(B1) is located a few fields above another field(B) and the user clicks on the button after
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 9/16
08/02/2019 Document 469339.1
positioning the cursor into the field(B). If, nextfield value has been set somewhere in the code for the context page, it will lead
to hanging of the application.
This situation can be avoided by not to setting the nextfield in the code in case of being executed using the MSCA APP. A new
method isMobileMode(Session ses) method has been added in UtilFns.java. This method returns TRUE when the MSCA
application is executed from the MSCA APP
Debugging Setup
Android
The log file is named MSCA.txt and is generated in the root folder of the device
iOS
Connect the device to MAC-MINI (or any other mac OS device) and unlock the device if it is locked.
Open itools and click "Apps" from the top menu.
All the apps present in the device are displayed. Scroll till "MSCA" is seen.
Hover the mouse on the right side of the row where "MSCA" is displayed.
Click on the folder icon displayed.
Click on Documents - Logs
Application.log file is displayed on the right side .This is the log file of the MSCA app.
Click on the Application.log file and then click on the export button displayed at the bottom and save it into your local
directory.
Existing MWA debug settings work for debugging any server side MSCA code. Customers should review
portnumber.system.log, portnumber.INV.log under $INST_TOP/logs directory to debug any processing side issues.
If there is no default value provided through the MWA Personalization framework as shown in the following screenshot then
the system will try to get the value from a custom class FieldDefaultValueHandlerImpl.class that contains user defined logic.
Please make sure that this class is compiled with Oracle apps.zip in the classpath.
After compilation, make sure that a file FieldDefaultValueHandlerImpl.class is created. Please move this file to
$CUSTOM_DIRECTORY/xxx/custom and add $CUSTOM_DIRECTORY to the classpath of your mobile server.
$CUSTOM_DIRECTORY, can be any directory on the file system.
// FieldDefaultValueHandlerImpl.java
package xxx.custom;
import oracle.apps.mwa.beans.FieldBean;
import oracle.apps.mwa.beans.PageBean;
import oracle.apps.mwa.container.Session;
import oracle.apps.mwa.presentation.telnet.personalization.*;
import oracle.apps.mwa.presentation.telnet.personalization.FieldDefaultValueHandler;
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 10/16
08/02/2019 Document 469339.1
public FieldDefaultValueHandlerImpl()
// User has access to the current session, current page and current field bean. Please refer to WMS/INV/MWA
// javadocs for getting more details on how to customize using the provided methods. User can place the needed custom
String val;
if (fieldBean.getName().equals("LPN") &&
pageBean.getName().equals("oracle.apps.wms.pup.server.UpdateLPNPage"))
return val;
return null;
The following table lists the scope of the Mobile Personalization feature available for application releases 11.5.10CU2 and
12.1.X; along with the recommended process guidelines to address customer reported issues. This feature leverages MWA
functionality to personalize the following Mobile UI screens.
Inbound
Manual Load
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 13/16
08/02/2019 Document 469339.1
INV 508
WIP 572
OPM 742
MWA support
Issue reported - Personalization changes are not possible on certain fields on supported pages
• These issues need to be bugged against the respective product team.
Copyright © 2008 Oracle. All rights reserved. Oracle is a registered trademark of Oracle. Various product and
service names referenced herein may be trademarks of Oracle. All other product and service names mentioned
may be trademarks of their respective owners.
Disclaimer: This document is provided for information purposes only and the contents hereof are subject to
change without notice. Oracle does not warrant that this document is error-free, nor does it provide any other
warranties or conditions, whether expressed orally or implied in law, including implied warranties and
conditions of merchantability or fitness for a particular purpose. Oracle specifically disclaims any liability with
respect to this document and no contractual obligations are formed either directly or indirectly by this
document. This document may not be reproduced or transmitted in any form or by any means, electronic or
mechanical, for any purpose, without the prior written permission of Oracle.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=17dd3hec44_377&id=469339.1 16/16