Description
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 added by code as we will do in this example.
Step 1 - Adding mobile messages
Using event OnAddMessages.
- Adding a Mobile Message and translations for English and Danish
- The _LanguageCode corresponds to Mobile Language
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Language", 'OnAddMessages', '', true, true)]
local procedure MyOnAddMessages(_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 English translation for my custom mobile message
if _LanguageCode = 'DAN' then
_Messages.Create('DAN', 'MYSIGNATUREHELPLABEL', 'Kontollér de plukkede varer.'); // Create Danish translation for my custom mobile message
end;
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnPostPickOrder_OnAddStepsToAnyHeader', '', true, true)]
local procedure MyOnPostPickOrder_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;
Step 3 - Trigger "OnAddMessages"-event
With the above event subscribers active, go to Business Central
- Open the Mobile Language-page
- Select the language
- Select action "Mobile Message"
- Select action "Create Messages"
- Repeat step 1-4 for each language, in this case ENU and DAN
Alternatively, you can write an Installation Codeunit that uses Codeunit "MOB WMS Language" to create the message in Step 1.
Editing Mobile Messages manually
You can always Edit Mobile Messages manually from the WebClient.
See also