Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 33 Next »


General

It can be useful for the Warehouse worker to view an Image of the Item to handle.

These functions can display images

  • Locate Item (Thumbnail)
    • Show Image (Full view)

  • Order Lines (Thumbnail)
    • Show Image (Full view)

  • Any custom List

Supported versions

  • Mobile WMS for Android App version 1.3.0 
  • NAV 2013
  • NAV 2015
  • NAV 2016
  • NAV 2017
  • NAV 2018


Please note

  • Images are cached by the app to reduced bandwidth requirements
    • But still, do keep in mind the image file size


Steps to perform

  1. Import images in Items
  2. Import NAV objects
  3. Enable in NAV code
  4. Configure the Mobile App (Optional)


Step 1 - Import images in Items


Import Picture on the relevant Items.



Step 2 - Import NAV objects


The following two objects will be create

  • Codeunit 6181391 - MOB WMS Media
  • Codeunit 50011- RunMe Setup MOB WMS Media

  1. Re-Compile the object (Important)
  2. Run the object "RunMe Setup MOB WMS Media"
    1. This will set up Image support, by creating a Mobile Document Type called "GetMedia" pointing to Codeunit 6181391



Step 3 - Enable in NAV code

Enable for Warehouse Pick, Put-away and Move


In Codeunit 6181388 - MOB WMS Toolbox and function CreateWhseActLinesResponse


  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet
// MEDIA
MOBWMSMedia.AddItemImageToRequest(WhseActLineTake."Item No.",XMLOrderLine,NS_BASE_DATA_MODEL);
// MEDIA


Enable for Warehouse Receipt


In Codeunit 6181372 - MOB WMS Receive and function CreateOrderLinesResponse


  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet
// MEDIA
MOBWMSMedia.AddItemImageToRequest(WhseReceiptLine."Item No.",XMLOrderLine,BaseDataModelNS);
// MEDIA


Enable for Purchase Order Receipt


In Codeunit 6181372 - MOB WMS Receive and function CreatePurchaseLinesResponse


  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet
// MEDIA
MOBWMSMedia.AddItemImageToRequest(PurchaseLine."No.",XMLOrderLine,BaseDataModelNS);
// MEDIA



Enable for Transfer Order Receipt


In Codeunit 6181372 - MOB WMS Receive and function CreateTransferLine


  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet
// MEDIA
MOBWMSMedia.AddItemImageToRequest(Transferline."Item No.",XMLOrderLine,BaseDataModelNS);
// MEDIA



Enable for Locate Item 

There are two modifications to be made.


1st modification

In Codeunit 6181382 - MOB WMS Lookup and function LookupLocateItem

  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet


// MEDIA
MOBWMSMedia.AddItemImageToRequest("Item No.",XMLLookupResponse,MobXMLMgt.GetNodeNSURI(XMLResponseData));
// MEDIA


2nd modification

In Codeunit 6181382 - MOB WMS Lookup and function AddLookupResponse

  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet


// MEDIA
MOBWMSMedia.AddItemImageToRequest(ItemNo,XMLLookupResponse,Namespace);
// MEDIA







Enable for Planned Count


In Codeunit 6181376 - MOB WMS Count and function PhysCreateOrderLinesResponse

  1. Create a Global variable for Codeunit "MOB WMS Media"
  2. Insert the following snippet


// MEDIA
MOBWMSMedia.AddItemImageToRequest(ItemJnlLine."Item No.",XMLOrderLine,BaseDataModelNS);
// MEDIA





Step 4 - Configure the Mobile App (Optional)

Perform the following modifcations to application.cfg


Please note

  • Version 1.3.0.0 Images are already supported
  • For existing systems Tasklet Factory Support will assist you with this part


1st modification

Lookup Item

Add the following snippet marked with "<!-- MEDIA -->


<!-- Lookup With Registrations -->
<listConfiguration id="LookupWithRegistrations">
  <columns>
    <column width="65%" xAlign="left" yAlign="top">
      <elements>
        <textElement fontId="headlineFont" text="{DisplayLine1}"/>
        <textElement fontId="contentFont" text="{DisplayLine2}" />
        <textElement fontId="contentFont" text="{DisplayLine3}" />
        <textElement fontId="contentFont" text="{DisplayLine4}"/>
        <textElement fontId="contentFont" text="{DisplayLotNumber} {DisplaySerialNumber} {DisplayExpirationDate}"/>
      </elements>
    </column>
    <column width="35%" xAlign="right" yAlign="top">
      <elements>
        <textElement fontId="headlineFont" text="{Quantity}/{ExtraInfo1}" horizontalAlignment="right" />


        <!-- MEDIA -->
        <imageElement height="25%" sourceId="{ItemImage}" horizontalAlignment="right" ></imageElement>
        <!-- MEDIA -->

      </elements>
    </column>
  </columns>
</listConfiguration>


2nd modification

Order Lines (Pick / Receive / Put-away)

Step 1

Add this entire snippet. This will add an entirely new List with support for images.

<!-- MEDIA -->
<!-- Order lines With Image-->
<listConfiguration id="OrderLinesWImages" displayStatus="true">
  <columns>
    <column xAlign="left" yAlign="top" width="82%" >
      <elements>
        <textElement fontId="headlineFont" text="{DisplayLine1}" verticalAlignment="top"/>
        <textElement fontId="contentFont" text="{DisplayLine2}" />
        <textElement fontId="contentFont" text="{DisplayLine3}" />
        <textElement fontId="contentFont" text="{DisplayLine4}" />
      </elements>
    </column>
    <column xAlign="right" yAlign="top" width="18%" >
      <elements>
        <textElement fontId="headlineFont" horizontalAlignment="right" verticalAlignment="top" text="{ActionDefinedQuantity}/{Quantity}"/>
        <textElement verticalAlignment="top" fontId="contentFont" horizontalAlignment="right" text="{UnitOfMeasure}"/>
        <imageElement height="25%" sourceId="{ItemImage}" horizontalAlignment="right" >
        </imageElement>
      </elements>
    </column>
  </columns>
</listConfiguration>
<!-- MEDIA -->

Step 2

Change where the  "OrderLines" list is used to instead use "OrderLinesWIMages".


Pick

Put-away
Receive



3nd modification

Add Order Line Action "View Image"

Add the following snippet marked with "<!-- MEDIA -->


<!-- MEDIA -->
<actions>
  <showImage id="ShowImage" enabled="true" title="Show Image"  imageProperty="ItemImage" />
</actions>
<!-- MEDIA -->


Pick



A functional description

How Images are technically requested from the back-end.


Images on Order lines


  1. A sourceID XML tag appears in the App Configuration file, application.cfg.
    1. This is named "ItemImage".
  2. When the Mobile Request Document Type "GetXXXOrderLines" is reponded to, an Image tag is included.
    1. This is also named "ItemImage".
    2. The value of the tag is a combination of Item No. and the date and time when the Item / Image was modified.
      This way, whenever an Item is modified, the App will know by the value changing and request the Image again, now receiving an updated image.

  1. When the sourceID matches with the answer to the request, additional requests are made for the images needed. 
    1. One request after the next. These will have the Document Type "GetMedia".



Order lines


"Show Image" action


Shown Image

  • No labels