Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

Children Display
depth2
styleh4
pageBusiness Central
first99


A Shared Block
hiddentrue
shared-block-keyAllPlanned

This describes one function, but the information applies to all "Planned" functions, including:


See more: Planned Functions


A Shared Block
hiddentrue
shared-block-keyParam_OnAfterSetFromHeader
  • _[SourceTable]
    • The source table from where the data is read.
      • This parameter is only for reference.
      • It is not to be modified and filters does not have any effect.

  • _BaseOrderElement

    • Helper functions to identify and manipulate the Order-element
    • Get:
      • Get_Value
        • Get any value already set on the element
      • Get_BackendID
        • Get Order No.
      • Get_RecRefFromReferenceID
        • Get RecordRef to the Order
    • Set:


A Shared Block
hiddentrue
shared-block-keyParam_OnAfterSetFrom
  • _[SourceTable]
    • The source table from where the data is read
      • This parameter is only for reference
      • It is not to be modified and filters do not have any effect

  • _BaseOrderLineElement
    • Helper functions to identify and manipulate the Line-element
    • Get:
      • Get_Value
        • Get any value already set on the element
      • Get_BackendID
        • Get Order No.
      • Get_RecRefFromReferenceID
        • Get RecordRef to the Order
    • Set:



A Shared Block
hiddentrue
shared-block-keyEventFlowOrderLines

Event flow of both getting Orders and getting Order Lines


  1. ...OnSetFilter-events

    • Reads data from source tables
      • Add Filters
      • Modify Filters


  2. ...OnAfterSetFrom-events

    • Data goes into accessor table "BaseOrderLineElement"
      • Add Data
      • Modify Data
      • Set Sorting Key Fields (Custom fields)


  3. ...OnAfterSetCurrentKey-events

    • Data is sorted
      • Set Sorting Key Fields (ONLY standard fields)
      • Set Sorting Direction


  4. (XML Response is transmitted to the Mobile Device)

See more: Planned Functions


A Shared Block
hiddentrue
shared-block-keyTwoFilterMethods

There are two methods for filtering order lines:

  1. Using OnSetFilter-events
    • Basic record filtering.

  2. Exclude Lines based on complex conditions via
    • Complex conditions that cannot be solved by filtering, can be performed via OnInclude-event.
    • OnInclude-events will only iterate Lines that is included in OnSetFilter.
    • So elements cannot be "re-included" once excluded via OnSetFilter-events.


A Shared Block
hiddentrue
shared-block-keyOnAddRegistrationCollectorConfigurations
  • _Steps
    • Accessor table "MOB Steps Element"
      • Use this to create at new Reference Data "ConfigurationKey" that holds a number of steps.
      • Add the steps using "Create_..."-functions. 
      • Change/Set step-properties using "Set_..."-functions

Create Step Example

  • Add the steps using "Create_..."-functions. 
    • Create_TextStep = Create a new step to collect Text
    • Create_TextStep_ItemNumber = Create a new Text step prepared to collect an Item No.
       
    • Create_DateStep = Create a new step to collect Date
    • Create_DateStep_ExpirationDate = Create a new Date step prepared to collect an expiration date
    • Create_ListStep_Variant = Create a new List step prepared to display available Variants of an Item
    • Create_ListStep_UoM = Create a new List step prepared to display available Units of Measure of an Item
    • And many more. Use the VS Code to explore all the options

Set Step Properties Example

  • Set_header('Text header')
  • Set_label('Text label');
  • Set_helpLabel('Text helpLabel');
  • Set_optional(false);
  • Set_defaultValue(1);
  • And many more. Use the VS Code to explore all the options


A Shared Block
hiddentrue
shared-block-keyLine_ OnAddStepsTo

_BaseOrderLineElement


_RecRef

  • RecordRef pointing to the source line being processed.  I.e. Warehouse Activity Line, Purchase Line, Sales Line etc.
  • You can use the SetTable function to make your own Record refer to that of the RecordRef



A Shared Block
hiddentrue
shared-block-keyItemTracking

There are two levels of Item Tracking

First level: SN/Lot-specific tracking

If you want to track specific items or specific lots throughout their lifetime, you must choose the SN Specific Tracking and Lot Specific Tracking fields, respectively.

As a result, when handling an outbound unit of an item with this item tracking code, you must always specify which existing serial number or which existing lot number to handle.

This means that when selling a unit of the item, it must be applied against a specific pool of serial numbers or a specific lot number in inventory.

Or in other words, a serial number or lot number assigned to the item when entering into inventory must follow that item type out of inventory.


Info

Orders handle Items as a pool.

The warehouse worker can Pick/Put-away/Move/Count whichever piece of the correct Item.

Tracking information is not stored on Warehouse Entries.


The system knows:

  • An Item is in Inventory with 100 pcs. with 100 serial numbers. 
  • They are stored in four different Bins.

The system does not know:

  • Which Serial Numbers are in which Bins.


Second Level: SN/Lot Warehouse Tracking

Select only Warehouse Tracking if you have a need to know how each specific Serial/Lot is stored or handled all the way through the warehouse.

Example:

  • Was the Goods stored in refrigerated Bin?
  • Are we Picking the exact Item the Customer wants?
  • You want to enable "Pick According to FEFO" (First Expired First Out) on the location.


Info

Orders handle Items individually.

The warehouse worker must Pick/Put-away/Move/Count the exact piece of the correct Item.

Tracking information is stored on Warehouse Entries.

Note: It is VERY cumbersome to use Full warehouse Tracking with Serial Numbers - you will have to scan each Serial for every warehouse activity.


The system knows:

  • An Item is in Inventory with 100 pcs. with 100 serial numbers. 
  • They are stored in four different Bins.
  • Which Serial Numbers are in which Bins.




A Shared Block
hiddentrue
shared-block-keyDocTypes

Document types define the interface towards the mobile devices. Think of the document type as a function being called from the mobile device.

  • Document types point to a "Processing Codeunit" that contains the code to run, however Events are also used to control the flow. See the Handling-section.

Standard types

Standard document types are created automatically during the installation.

Custom types

You can create custom document types when handling standard types are not sufficient. 

Handling planned functions

By subscribing to events you can modify and overwrite the the behavior of Planned Functions.


To completely change standard functionality, you can change the "Processing Codeunit" (consider it a last resort option).  

Handling unplanned functions etc.

By subscribing to events you can overwrite these types of functions: