Description
Excerpt |
---|
Create multilingual customizations using Mobile Messages. |
Use cases
- Modify existing translations
- Support multiple languages with your customization
Behavior on the device
The field "Language Code" on Mobile Users, determines what Mobile Messages are used.
Mobile Messages can be modified by code as we will do in this example.
Step 1 - Adding mobile message
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Language", 'OnAddMessages', '', true, true)]
localprocedureMyOnAddMessages(_LanguageCode: Code[10]; var_Messages: Record"MOB Message") begin
if_LanguageCode='ENU'then _Messages.Create('ENU', 'MYSIGNATUREHELPLABEL', 'Make sure to verify the picked items.'); // Create translation for my custom mobile message
end;
Step 2 - Using the mobile message as "label" on a step
- Changing the "label" on Signature Step to use the new mobile message.
- See also Step Configuration Matrix
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnPostPickOrder_OnAddStepsToAnyHeader', '', true, true)]
localprocedureMyOnPostPickOrder_OnAddStepsToAnyHeader(var_OrderValues: Record"MOB Common Element"; _RecRef: RecordRef; var_StepsElement: Record"MOB Steps Element") var
MobWmsLanguage: Codeunit"MOB WMS Language"; begin
// Break if new step is already collected to prevent infinite loop
if_OrderValues.HasValue('MySignatureStep') then exit;
// Create a new Signature step
_StepsElement.Create_SignatureStep(10000, 'MySignatureStep');
_StepsElement.Set_helpLabel(MobWmsLanguage.GetMessage('MYSIGNATUREHELPLABEL')); // Set HelpLabel to use my custom mobile message
end;