Zebra Picking Plus User Guide

Enterprise Browser 3.7

Overview

Zebra Picking Plus (ZPP) is an Enterprise Browser-based app for Zebra devices that can execute use cases for SAP Enterprise Warehouse Manager (SAP EWM). It connects directly with the SAP S/4HANA enterprise resource planning system. SAP EWM is an Android app that runs on Zebra mobile devices and executes EWM use cases from S/4HANA. Zebra Picking Plus (ZPP) interfaces with EWM to help companies manage the many tasks involved in running a warehouse.

This guide is covers ZPP setup and usage on Zebra devices. For information about EWM server setup, please refer to SAP S/4HANA documentation.

Zebra Picking Plus support notes:

Main ZPP Functions

This app implements eight workflows for warehouse management and five for inventory management.

  • Warehouse Management Workflows:
    • Bin-to-bin Planned
    • Bin-to-bin Unplanned
    • Outbound Planned
    • Outbound Unplanned
    • Inbound Receiving
    • Cycle Count
    • Cycle Count List
    • Item Inquiry
  • Inventory Management Workflows:
    • Material transfer > One-step Transfer
    • Material transfer > Remove from Storage
    • Material transfer > Place in Storage
    • Cycle Count
    • Stock Overview

This guide uses the terms "workflow" and "use case" interchangeably.

Languages

  • English (default)
  • German

Click image to enlarge; ESC to exit.


Requirements

  • One or more Zebra SDM660-based devices running Android 11 with internet connectivity
  • Enterprise Browser 3.4 (or later) installed and licensed on device(s)
  • A development host computer running Windows or macOS, with USB connectivity to device(s)
  • A valid S/4HANA cloud instance reachable by devices
  • A login and password for the SAP EMW app running on the S/4HAHA instance

Device Set-up

Zebra Picking Plus is delivered as an Android package (.apk) and installed in the same way as any other version of Enterprise Browser. For installation details, see one of the links below:

Set-up Summary

After the EWM version of EB is installed on the device, the following steps are required to configure it for communication with the SAP S/4HAHA server and continue its configuration for the organization. Details for the process follow.

  1. After EB is installed on the device, copy the default Config.xml file from the device to a PC
  2. Modify the Config.xml for running SAP EWM (details below)
  3. Push the modified Config.xml to its original location on the device
  4. Start the EB app to apply the new settings and connect to S/4HAHA
  5. Continue configuration and customization for the organization

Set-up Details

  1. After pushing the EB file to the device, navigate to the .apk and double-tap it. If needed, the path to all EB app files on the device is shown in Step 3.
    If EB is installed correctly, an image similar to the following should appear: Click image to enlarge; ESC to exit.

  2. Tap the "Return to OS" button to exit EB for now.

  3. From the development host (PC or Mac), use a file explorer to navigate to the EB app folder on the connected Zebra device. The path is shown in the image below: Click image to enlarge; ESC to exit.

  4. Locate the Config.xml file and copy it to the development host.

  5. Using a text editor, open the Config.xml file and perform the edits in Steps 6–12.

  6. Under the <Configuration><Navigation> tag, set "Cookies" and "ThirdPartyCookies" to the following:

        
        <Navigation>
            <Cookies value="1"/>
            <ThirdPartyCookies value="1"/>
        </Navigation>
    
  7. Under the <Configuration><Screen> tag, set "EnableZoom" to the following:

        
        <Screen>
           <EnableZoom value="0"/>
        </Screen>
    
  8. In the <Configuration> node, add the following tags (which are not present by default). Substitute the contents and the [brackets] below with values of the organization's SAP server instance.
    Field usage:
    IdleTimer: Time (in minutes) of inactivity before user is automatically logged off
    SapPreferredLanguage: Accepts English (default), German
    SapDeveloperOption: See below for details

    
    <SapEwm>
        <SapUrl value="[sap url] "/>
        <Warehouse value="[Warehouse]"/>
        <Resource value = "[Resource]"/>
        <Plant value = "[Plant]"/>
        <IdleTimer value=[number]/>
        <SapPreferredLanguage value = [string]/>        
        <SapDeveloperOption value= [string]/>
    </SapEwm>
    
  9. After being populated with real values, the <SapEwm> tag settings should look similar to the following:

    
    <SapEwm>
        <SapUrl value="https://my123456-api.s4hana.ondemand.com"/>
        <Warehouse value="Z254"/>
        <Resource value = "MOBILE 2"/>
        <Plant value = "1710"/>
        <IdleTimer value="10"/>
        <SapPreferredLanguage value = "English"/>
        <SapDeveloperOption value="01000"/>
    </SapEwm>
    
  10. Under the <Applications><Application><IntentReceiver> tag:
        a. Add a "DWProfileName" tag (which is not present by default) as shown below.
        This setting allows the app to receive scan data through Zebra DataWedge, a service present on all Zebra devices.
        b. Enter values for the intent tags. The values shown below should apply to most conditions:

    
    <IntentReceiver>
        <EnableReceiver value="1"/>
        <IntentAction value="com.zebra.action.DEFAULT"/>
        <IntentCategory value="com.zebra.category.MAIN"/>
        <DWProfileName value="ewmProfile"/>
    </IntentReceiver>
    
  11. Under the <Applications><Application><General> tag, set the "StartPage" to the following:

    
    <General>
        <StartPage value="file:///run_sap_ewm_app" name="Menu"/>
    </General>
    
  12. Under the <Applications><Application><ViewPort> tag set the values as follows:

    
    <ViewPort>
    <UseWideViewPort value="1"/>
    <ViewPortWidth value=”480”/>
    <ViewPortInitialScale value="1.0"/>
    </ViewPort>
    

    // For EC30 devices, use the following in ViewPort tag:

    <ViewPort>
    <UseWideViewPort value="1"/>
    <ViewPortWidth value=”480”/>
    <ViewPortInitialScale value="1.0", user-scalable=no/>
    </ViewPort>
    
    <ViewPortInitialScale value="1.0, user-scalable=no"/>
    
  13. Under the <Applications<>Application<<SIP> tag, set the "ResizeOnButtonbar" to the following:

    
    <SIP>
        <ResizeOnButtonbar value="1"/>
    </SIP>
    
  14. Save the Config.xml file and transfer it back to the device, replacing the original.

  15. Restart the EB app (as in Step 1) to apply the new settings.
    If successfully configured, a screen appears similar to the one shown below:
    Click image to enlarge; ESC to exit.

    Notes:

       • The URL shown in the "SAP server" field (above) was entered in Step 8/9.
       • Optionally, the device user can modify the SAP server URL depending on the value specified in the <SapDeveloperOption> tag in the Config.xml file. Learn more.
       • Manual changes to this field are automatically saved to the Config.xml file for future use, overwriting the previous value.

  16. After successful log-in, a screen similar to the image below is displayed.
    Click image to enlarge; ESC to exit.

  17. If one or more menus is inaccessible, tap "App Configuration" to display the config screen (as below).
    Depending on values contained in the <SapDeveloperOption> tag (see below), the user can modify the Warehouse, Resource and/or Plant values as required and tap "Confirm" button to try again.
    Modified values are automatically saved to the Config.xml file (in <SapEwm> node tags entered in Step 8/9) for future use. Click image to enlarge; ESC to exit.

SapDeveloperOption tag

The <SapDeveloperOption> tag is used to control whether the device user can change values in the <SapEwm> node for the app, and which values can be changed. The tag takes a five-digit numerical value of all 0s (no changes allowed), all 1s (changes allowed to all fields), or a combination corresponding to the fields allowed to be changed.

  • Field-index Positions:
    • Index 0: SAP server URL
    • Index 1: Warehouse
    • Index 2: Resource
    • Index 3: Plant
    • Index 4: Language

For example, if "00001" is entered for the <SapDeveloperOption> tag value, then only "Language" can be modified since the index 4 value is 1. Similarly, if "01111" is entered, then Warehouse, Resource, Plant and Language can be modified, but the SAP server URL cannot.

Upon successful configuration, the app is ready to begin implementing workflows.


Warehouse Management Workflows

Upon selection of Warehouse Management Workflows, the following image appears to prompt selection of a workflow:

Click image to enlarge; ESC to exit.

General SAP EWM Operation:

  • The user selects one of the established workflows from the menu
  • The app queries the server for the current list of workflow tasks
  • The app displays the task list with expected values, as applicable
  • The user performs the tasks to acquire values etc.
  • After all values are collected, user confirms with server to complete the process

Notes:

  • Most inputs are expected to come from the device scanner
  • When user-entered inputs are required (e.g. quantity), a soft keyboard is displayed
  • Scanned input also can be edited manually using the soft keyboard
  • Tap on any field to invoke the soft keyboard

Click image to enlarge; ESC to exit.


Bin-to-Bin Planned

Click image to enlarge; ESC to exit.

Workflow:

  • User selects Bin-to-Bin Planned
  • App queries the server to fetch the list of tasks created for the workflow
  • On receiving data from server, app displays tasks to user
  • User chooses a task to perform
  • App shows required inputs and corresponding values expected:
    • Product number
    • Source Bin
    • Batch
    • Quantity
    • Destination Bin
  • User provides values one by one and app matches the values provided. On mismatch, app shows error and asks to provide value again. If all values match, app requests confirmation
  • Once user confirms, the app sends information to the server and task is confirmed by user
  • Upon confirmation, a screen appears like the image below: Click image to enlarge; ESC to exit.

Bin-to-Bin Unplanned

Click image to enlarge; ESC to exit.

Unplanned workflows differ from planned workflows in that there are no expected values; app requests input only.

Workflow:

  • User selects Bin-to-Bin Unplanned
  • App displays the following required inputs:
    • Product number
    • Source Bin
    • Batch (optional; displayed only if product requires batch management)
    • Quantity
    • Destination Bin
  • Once all data is acquired, app sends to server

Outbound Planned

Click image to enlarge; ESC to exit.

Workflow:

  • User selects Outbound Planned workflow
  • App queries server to fetch the list of tasks created for the workflow
  • On receiving data from server, app displays tasks to user
  • App shows required inputs and corresponding values expected:
    • Product ID
    • Source bin
    • Quantity predefined
  • User chooses task to perform
  • App asks for inputs sequentially and matches values with those set by the server
  • Once all input is received, app sends confirmation to server

Outbound Unplanned

Delivery item created in server but not planned. User executes the tasks.

Click image to enlarge; ESC to exit.

Workflow:

  • User selects Outbound Unplanned workflow
  • App queries the server to fetch the list of tasks created for Outbound Planned workflow
  • App shows data to user for task selection
  • When user chooses a task, app prompts sequentially for the following:
    • Product ID
    • Source bin
    • Quantity
  • App asks for inputs sequentially and matches values with those set by the server
  • Once all input is received, app sends confirmation to server

Inbound Receiving

Delivery item created in server but not planned. User must execute the tasks.

Click image to enlarge; ESC to exit.

Workflow:

  • User selects Inbound Receiving workflow
  • App queries the server to fetch the list of tasks created for workflow
  • On receipt, app shows data to user for task selection
  • When user chooses a task, app prompts sequentially for matching with the values set by the server:
    • Product ID
    • Source bin
    • Batch (optional; displayed only if product requires batch management)
    • Quantity
    • Destination Bin
  • Once all input is received, app sends confirmation to server

Cycle Count

Shows cycle count based on physical inventory.

Click image to enlarge; ESC to exit.

Workflow:

  • App asks for physical inventory numbers
  • App shows product list based on the input
  • User selects the desire Product Number
  • App asks for:
    • Product number
    • Source Bin
    • Batch (optional; displayed only if product requires batch management)
    • Quantity
  • Once all input is received, user sends confirmation to server

Cycle Count List

Get a physical inventory list of Cycle Count from warehouse, then execute workflow as Cycle Count. If the user selects any of the physical inventory from the list, all the products that belong to that physical inventory is listed with status as "counted" and "uncounted." The user can select any of the products, and if the user selects a product that was already counted, a pop-up informs the user and asks if the unit should be recounted. It then executes the Cycle Count workflow.

Click image to enlarge; ESC to exit.

Workflow:

  • App asks for physical inventory numbers
  • App shows list based on the input
  • App asks for:
    • Product number
    • Source Bin
    • Batch (optional; displayed only if product requires batch management)
    • Quantity
  • Once all input is received, user sends confirmation to server

Item Inquiry

Shows item based on user filtration criteria.

Click image to enlarge; ESC to exit.

Workflow:

  • App asks for the material number and queries server for material details
  • App ask user for filtration criteria (source bin, batch, stock type)
  • App shows result based user selection
  • Other than material, all fields are optional
  • Tap once to select a field for scanner input
  • Tap to manually enter value using keyboard

Inventory Management Workflows

General SAP EWM Operation:

  • The user selects one of the established workflows from the menu
  • The app queries the server for the current list of workflow tasks
  • The app displays the task list with expected values, as applicable
  • The user performs the tasks, acquires values etc.
  • After all values are collected, user confirms with server to complete the process

Notes:

  • Most inputs are expected to come from the device scanner
  • When user-entered inputs are required (e.g. quantity), a soft keyboard is displayed
  • Scanned input also can be edited manually using the soft keyboard
  • Tap on any field to invoke the soft keyboard

Material Transfer

The image below shows the One-step transfer process. In all cases, execution flow is similar to that shown below.

In material transfer, there are three use cases:
a) 311-One Step Transfer
b) 313-Remove From Storage
c) 315-Place in storage

Click image to enlarge; ESC to exit.

Workflow:

  • App asks for product from user
  • Product is validated with the server
  • App asks for inputs:
    • Location
    • Batch Number
    • Quantity
    • 'To' Location
    • Plant
  • Once all information is collected, user sends confirmation to server

Cycle Count

Shows that a count for one product is completed.

Click image to enlarge; ESC to exit.

Workflow:

  • App collects all physical inventory items with a count pending and displays a list
  • User selects one item from the list
  • App displays all products under the chosen item and whether it is counted
  • User selects on product for which to provide counting
  • App asks for inputs:
    • Product Number
    • Batch
    • Quantity
  • Once all information is received, app sends count values to server

Once confirmed, the corresponding product shows the completed status: Click image to enlarge; ESC to exit.


Stock Overview

Click image to enlarge; ESC to exit.

Workflow:

  • App takes the Material Number as a mandatory input
  • Warehouse, Source Bin, Stock Type and Batch are optional inputs
  • Once user searches, app queries server with values provided by user
  • App shows details of the Material Number such as Warehouse, Source Bin, Stock Type and Batch, depending upon the input provided

Login Issues

If a user enters incorrect credentials when logging in, one or more of the pop-up screens below might appear.

Click image to enlarge; ESC to exit.

If the screen above appears:

  • Tap outside the "React App" pop-up screen to dismiss it. DO NOT enter credentials.
    After a moment, the normal ZPP log-in screen should reappear
  • Enter credentials in the ZPP log-in screen

Click image to enlarge; ESC to exit.

The screen above could appear when unsuccessfully logging into a resource or if one or more values in the Config.xml file are incorrect or invalid. Such a condition also could cause one or more workflows to be disabled.

If the screen above appears:

  • Go to the "App configuration" section of the app
  • Locate and correct the invalid value(s)
  • Save changes and log in again

Also See