Info | ||
---|---|---|
| ||
|
...
Excerpt |
---|
Interrupts posting in Pick and adds an extra Header (ImageCapture) Step. |
- Adds an extra ImageCapture step during posting .
- The collected image is then saved in Mob Wms Media Queue.
- of a pick
- In the Mobile Document Queue List, a PostMedia Request will will appear after adding the Header Steps - for these examplesin this case, after PostPickOrder or PostAdHocRegistration.
...
- The collected image is then saved in Mob Wms Media Queue
Behavior on the device
To collect an Image in the step, the user will need to use the the plus sign (+) to take a picture and add an optional note before posting.
Examples
This document contains two examples.
The following examples are made for an unplanned (Adjust Quantity) and a planned step (Pick), respectively.
Example 1: Add header ImageCapture step for Planned function (Pick)
...
Step 1: Create an header step
Use OnPostPickOrder_OnAddStepsToWarehouseActivityHeader to add an ImageCapture step:
// Create an ImageCapture header step that interrupts the posting of a pick.
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnPostPickOrder_OnAddStepsToWarehouseActivityHeader', '', true, true)]
localprocedure MyOnPostPickOrder_OnAddStepsToWarehouseActivityHeader(var _OrderValues: Record"MOB Common Element"; _WhseActivityHeader: Record"Warehouse Activity Header"; var _StepsElement: Record"MOB Steps Element")
begin
//Already collected, break to avoid adding the same new step indefinitely
if _OrderValues.HasValue('ImageCapture') then
exit;
_StepsElement.Create_ImageCaptureStep(50, 'ImageCapture');
_StepsElement.Set_helpLabel('Take a picture of the item');
end;
Step
...
2
...
: Handle the header step
Use OnPostPickOrder_OnBeforePostWarehouseActivityOrder to handle the steps:
//Step 2: Handle the step, saving the values in the Mob Wms Media queue.
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnPostPickOrder_OnBeforePostWarehouseActivityOrder', '', true, true)]
localprocedure OnPostPickOrder MyOnPostPickOrder_OnBeforePostWarehouseActivityOrder(var _OrderValues: Record"MOB Common Element"; var _WhseActivityHeader: Record"Warehouse Activity Header")
var
MobWmsLanguage: Codeunit"MOB WMS Language";
MobMedia: Codeunit"MOB WMS Media";
ImageIdsAndNotes: Text;
begin
ImageIdsAndNotes:=if _OrderValues.GetValue('ImageCapture', true);
if ImageIdsAndNotes =''then
Error(MobWmsLanguage.GetMessage('NO_PICTURE_TO_ATTACH'));
MobMedia.AddImageToMediaQueue(ImageIdsAndNotes);
end;
Example 1: ImageCapture Step in Pick
Example 1: The picture and note were saved in Mob Wms Media Queue
Example 2: Add header ImageCapture step for Unplanned function (Adjust Quantity)
Step 2.1 - Create an adhoc header step
//Step 1: Create a simple ImageCapture header step
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Adhoc Registr.", 'OnPostAdhocRegistration_OnAddSteps', '', true, true)]
localprocedure MyOnPostAdhocRegistration_OnAddSteps(_RegistrationType: Text; var _RequestValues: Record"MOB NS Request Element"; var _Steps: Record"MOB Steps Element"; var _RegistrationTypeTracking: Text)
var
MobWmsToolbox: Codeunit"MOB WMS Toolbox";
begin
if _RegistrationType <> MobWmsToolbox."CONST::AdjustQuantity"() then
exit; //Already collected, break to avoid adding the same new step indefinitely
if _RequestValues.HasValue('ImageCapture') then
exit;
_Steps.Create_ImageCaptureStep(10000, 'ImageCapture') ;
_Steps.Set_helpLabel('Take a picture of the item');
end;
Step 2.2 - Handle the header step
//Step 2: Handle the ImageCapture step. The picture taken will be saved in the MOB Wms Media Queue
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Adhoc Registr.", 'OnPostAdhocRegistration_OnAfterPost', '', true, true)]
localprocedure MyOnPostAdhocRegistration_OnAfterPost(_MessageId: Guid; _RegistrationType: Text; var _RequestValues: Record"MOB NS Request Element"; var _XmlResponseDoc: XmlDocument; var _RegistrationTypeTracking: Text)
var
MobMedia: Codeunit"MOB WMS Media";
MobWmsToolbox: Codeunit"MOB WMS Toolbox";
Image: Text;
begin
if _RegistrationType <> MobWmsToolbox."CONST::AdjustQuantity"() then
exit;
if _RequestValues.HasValue('ImageCapture') thenbegin
ImageImageIdsAndNotes:=_RequestValuesOrderValues.GetValue('ImageCapture', true);
// Set the tracking value displayed in the document queue
_RegistrationTypeTracking:= ('Saved image: '+ Image);
MobMedia.AddImageToMediaQueue(ImageImageIdsAndNotes);
end;
end;
Example 2: ImageCapture Step in Adjust Quantity
Example 2: The
ImageCapture Step in Pick
Go to Business Central > "Mobile WMS Media Queue" -page
The picture and note were saved in Mob Wms Media Queue
...
Filter by label (Content by label) | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|