Versions Compared

Key

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

Description

ExcerptCreate multilingual customizations using Mobile Messages.


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 added by code as we will do in this example.


Step 1 - Adding mobile

message

messages

Using event OnAddMessages.

  • Adding a Mobile Message and its translationtranslations for English and Danish
  • The _LanguageCode corresponds to Mobile Language

    [EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Language", 'OnAddMessages', '', true, true)]
    localprocedureMyOnAddMessages(_LanguageCode: Code[10]; var_Messages: Record"MOB Message")
    begin
        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='ENUDAN'then
            _Messages.Create('ENUDAN', 'MYSIGNATUREHELPLABEL', 'Make sure to verify the picked itemsKontollér de plukkede varer.'); // Create Danish translation for my custom mobile message
    end;


Step 2 - Using the mobile message as "label" for a header step on posting picks

Using event OnPostPickOrder_OnAddStepsToAnyHeader.


    [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;

Step 3 - Trigger "OnAddMessages"-event 

With the above event subscribers active, go to Business Central

  1. Open the Mobile Language-page
  2. Select the language
  3. Select action "Mobile Message"
  4. Select action "Create Messages"
  5. 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 Edit Mobile Messages manually from the WebClient.

See also

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
sorttitle
reversetrue
excerptTypesimple
cqllabel = "bc" and label = "onaddmessages"


Before


After

English


Image Added

Dansih