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 3 Next »


Generic Order Service

As something new it is now possible to create an arbitrary number of services; one is no longer forced to choose from the predefined pick, receive, etc services but can e.g. create a pick_extra_validation service and enable extra validation for new employees.

Service Configuration

The following configuration example shows how to convert the pick service and tasklets into using the new generic versions. It could just as well be an entirely new service type. The change has to be applied to the whole chain: service, filter, order list, order lines and registration tasklets.

To setup the service add the new ServiceManager service in app.config and move the pick service configuration into the list of <services> provided by the manager.

Service Manager
<add type="TaskletFactory.WMS.Services.ServiceManager, TaskletFactory.WMS.Services.Base"
           factory="TaskletFactory.WMS.Services.ServiceManagerFactory, TaskletFactory.WMS.Services.Base"
           startup="true">
  <configuration xmlns="http://schemas.taskletfactory.com/MDMF/MobileWMS/Services/2015/01/ServiceManagerConfiguration.xsd">
    <services>
      <add id="Pick">
        <configuration xmlns="http://schemas.taskletfactory.com/MDMF/MobileWMS/Services/2009/01/ServiceConfiguration.xsd">
          <DatabaseName>AppDatabase</DatabaseName>
          <PostOrderRequestDocumentName>PostPickOrder</PostOrderRequestDocumentName>
          <GetOrdersRequestDocumentName>GetPickOrders</GetOrdersRequestDocumentName>
          <GetFilteredOrdersRequestDocumentName>GetFilteredPickOrders</GetFilteredOrdersRequestDocumentName>
          <GetOrderLinesRequestDocumentName>GetPickOrderLines</GetOrderLinesRequestDocumentName>
          <GetBackendInfoRequestDocumentName>GetBackendInfo</GetBackendInfoRequestDocumentName>
          <LockOrderRequestDocumentName>LockOrder</LockOrderRequestDocumentName>
          <UnlockOrderRequestDocumentName>UnlockOrder</UnlockOrderRequestDocumentName>
          <UseOrderLocking>true</UseOrderLocking>
          <ScanBehaviourWhenRegisteringQuantity>SCAN_NEXT_ITEM</ScanBehaviourWhenRegisteringQuantity>
          <DataSource>ONLINE</DataSource>
          <ExpirationDateSeparator>,</ExpirationDateSeparator>
          <BarcodeSeparator>;</BarcodeSeparator>
          <AddOrderLineRequestDocumentName>AddOrderLine</AddOrderLineRequestDocumentName>
          <AutoPostWhenAllLinesComplete>true</AutoPostWhenAllLinesComplete>
          <ServiceType>Pick</ServiceType>
        </configuration>
      </add>
    </services>
  </configuration>
</add>

To add a service simply use the <add id="serviceName"> syntax and the service is referenced through its id. Copy the <configuration> section from the existing pick service.

Finally remove the existing pick service configuration.

Tasklet Configuration

The next step is to convert the accompanying tasklets from using the specific PickFilterPickOrderList, etc. types to the GenericFilterGenericOrderList, etc. versions instead by modifying the UserRole.xml configuration file.

Generic Pick Filter
<tasklet name="PickFilter" text="Pick filter"
         type="TaskletFactory.WMS.Tasklets.GenericFilter, TaskletFactory.WMS.Tasklets.Filter">
  <configuration>
    <appSettings>
      <add key="okMenuItem" value="filterMenuOk"/>
    </appSettings>
    <filterConfiguration>
      <service id="Pick" />
    </filterConfiguration>
  </configuration>
  <actions>
    <open name="filterMenuOk" tasklet="PickList" priority="110" text="OK_" context=""></open>
    <exitTasklet name="unplanRegMenuBack" text="Back" priority="1" icon="Arrow Left.bmp" context="The text on the softkey that goes back to the previous tasklet"></exitTasklet>
  </actions>
</tasklet>

The important bits here are type="TaskletFactory.WMS.Tasklets.GenericFilter, TaskletFactory.WMS.Tasklets.Filter" and the <filterConfiguration> element containing the service reference.

Below follows the configuration for the order list, order lines and registration tasklets. For all of these it is a matter of instantiating the correct generic type and referencing the service by id.

Generic Order List
<tasklet name="PickList"  text="Pick orders" icon="pick.bmp"
         type="TaskletFactory.WMS.Tasklets.GenericOrderList, TaskletFactory.WMS.Tasklets.OrderList">
  <configuration>
    <appSettings>
      ...
    </appSettings>
    <orderListConfiguration xmlns="http://schemas.taskletfactory.com/MDMF/MobileWMS/Tasklets/2013/08/OrderListConfigurationSection.xsd">
      <service id="Pick" />
    </orderListConfiguration>
    <listConfiguration xmlns="http://Schemas.TaskletFactory.com/MDMF/Platform/Controls/2008/10/CustomizableList.xsd">
      ...
    </listConfiguration>
  </configuration>
  <actions>
    ...
  </actions>
</tasklet>
Generic Order Lines
<tasklet name="PickOrderLines" text="Pick order lines" icon="pick.bmp"
         type="TaskletFactory.WMS.Tasklets.GenericOrderLines, TaskletFactory.WMS.Tasklets.OrderLines">
  <configuration>
    <appSettings>
      ...
    </appSettings>
    <shortcut enabled="true">
      ...
    </shortcut>
    <orderLineConfiguration xmlns="http://Schemas.TaskletFactory.com/MDMF/Platform/Tasklets/2009/01/OrderLineConfiguration.xsd">
      <service id="Pick" />
      ...
    </orderLineConfiguration>
    <listConfiguration xmlns="http://Schemas.TaskletFactory.com/MDMF/Platform/Controls/2008/10/CustomizableList.xsd">
      ...
    </listConfiguration>
  </configuration>
  <actions>
    ...
  </actions>
  <outputMappings>
    ...
  </outputMappings>
</tasklet>
Generic Registration
<tasklet name="Registrations_Pick" text="Registrations" icon="Notepad.bmp"
         type="TaskletFactory.WMS.Tasklets.GenericRegistration, TaskletFactory.WMS.Tasklets.RegistrationTasklet">
  <configuration>
    <appSettings>
      ...
    </appSettings>
    <registrationConfiguration xmlns="http://Schemas.TaskletFactory.com/MDMF/MobileWMS/Tasklets/2015/01/RegistrationConfiguration.xsd">
      <service id="Pick"/>
    </registrationConfiguration>
    <listConfiguration xmlns="http://Schemas.TaskletFactory.com/MDMF/Platform/Controls/2008/10/CustomizableList.xsd">
      ...
    </listConfiguration>
  </configuration>
  <actions>
    ...
  </actions>
</tasklet>
  • No labels