Versions Compared

Key

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

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Use this event to

Excerpt

Modify

...

Description

Should you want to modify the data of a label template (standard or custom) you can do it with this event.

...

label data before transfer to the Cloud Print Service


  • Make sure you are only handling the desired template

...

  • Use GetValue/SetValue to modify the dataset

...

Please inspect the Label Templates for available fields and labels to modify.

 
Template

...


See also:

Customize Labels

Standard Label Template Designs


Template

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB Print"'OnPrintLabel_OnAfterPopulateDataset''', true, true)]
    local procedure OnPrintLabel_OnAfterPopulateDataset(_TemplateName: Text[50]_SourceRecRefRecordRefvar _DatasetRecord "MOB Common Element"

...

)
    begin
    end;

...

Example 02: Modify labels

...


Expand
titleClick here for parameters...
  • _TemplateName
    • Name of the template to handle
  • _RequestValues
    • Mobile the context the print is called from. E.g. header fields like Location, Item or ReferenceID.
  • _SourceRecRef
    • A RecordRef to the context the print is called from.
    • I.e. Sales Order Line, Warehouse Receipt Line, Purchase Order Return Line, Warehouse Activity(Pick, Put-away) etc.
  • _Dataset
    • The Print Dataset . Use the dataset and determine which steps you want to collect


Example 1: Modify labels on Item Label

    // Read the Item No. from Dataset and change it 

    [EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB Print", 'OnPrintLabel_OnAfterPopulateDataset', '', true, true)]
    localprocedureonPrintLabel_OnAfterPopulateDataset(_TemplateName: Text[50]; var_RequestValues: Record"MOB NS Request Element"; _SourceRecRef: RecordRef; var_Dataset: Record"MOB Common Element")
    var

        // Making sure we only handle our own Label-Template
        if _TemplateName <> 'My custom Label-Template' then
            exit;

        // Read the Item No. from Dataset and change it 
        // Item No. could have been collected or transferred from "context"/source table, where the print action was selected by the user 
        if _Dataset.GetValue('ItemNumber''ItemA' then
            _Dataset.SetValue('ItemNumber''ItemB');
    end;

Example 2: Included Default Bin as Extrainfo

Standard Label Template Designs has extrainfo fields you can use to include new information.


    [EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB Print", 'OnPrintLabel_OnAfterPopulateDataset', '', true, true)]
    localprocedureonPrintLabel_OnAfterPopulateDataset(_TemplateName: Text[50]; var_RequestValues: Record"MOB NS Request Element"; _SourceRecRef: RecordRef; var_Dataset: Record"MOB Common Element")
    var
        Item: RecordItem;
        BinContent: Record"Bin Content";
    begin
        // Item labels are always called with an Item. Else exit
       ifnot Item.Get(_Dataset.GetValue('ItemNumber')) then
            exit;

        BinContent.SetRange("Location Code", _RequestValues.Get_Location());
        BinContent.SetRange("Item No.", Item."No.");
        BinContent.SetRange(Default, true);

        if BinContent.FindFirst() thenbegin
            _Dataset.SetValue('ExtraInfo01', BinContent."Bin Code");
            _Dataset.SetValue('ExtraInfo01_Label', BinContent.FieldCaption(Default));
        end;
    end;

Example 3: Set ExtraInfo fields and their labels

Standard Label Template Designs has extrainfo fields you can use to include new information.


    // Read Source record
    // Set ExtraInfo fields, their labels in dataset

    [EventSubscriber(ObjectType::Codeunit,

...

Codeunit::"

...

MOB Print",

...

'OnPrintLabel_OnAfterPopulateDataset',

...

'',

...

true,

...

true)]

...

    localprocedure

...

onPrintLabel_OnAfterPopulateDataset(_TemplateName:

...

Example 03: Set extra info fields and their labels

...

Text[

...

50]; var_RequestValues: Record"MOB NS Request Element"; _SourceRecRef: RecordRef; var_Dataset: Record"MOB Common Element")
    var
        Item: Record Item;
        Vendor: Record Vendor;
    begin


        // Making sure we only handle our own Label-Template
        if _TemplateName <> 'Item Label 4x6' then
            exit;

        // If source is "Item" = Get record from RecordRef
        if _SourceRecRef.Number = database::Item then
            _SourceRecRef.SetTable(Item);

        // Set extrainfo fields and their labels in the Dataset
        _Dataset.SetValue('ExtraInfo01_Label''Desc.');
        _Dataset.SetValue('ExtraInfo01', Item.Description);

        _Dataset.SetValue('

...

ExtraInfo02_Label'

...

'GTIN');
        _Dataset.SetValue('ExtraInfo02', Item.GTIN);

        _Dataset.SetValue('

...

ExtraInfo03_Label''

...

Purchasing Unit');
        _Dataset.SetValue('

...

ExtraInfo03',

...

 Item."Purch. Unit of Measure");

        _Dataset.SetValue('

...

ExtraInfo04_Label''

...

Vendor');
        

...

if Vendor.

...

Get(item."Vendor No."then
            _Dataset.SetValue('

...

ExtraInfo04',

...

 Vendor.Name);

        // Additional custom values can also be used on the label
        _Dataset.SetValue('

...

CustomValueA''

...

A');
        _Dataset.SetValue('

...

CustomValueB''

...

B');

    end;



Filter by label (Content by label)
showLabelsfalse
showSpacefalse
sorttitle
titleMore examples
excerptTypesimple
cqllabel = "bc" and label = "print" and label = "example"

  

Version History

VersionChanges
MOB5.16Introduced

...

Label Templates

Child pages (Children Display)
pageLabel Templates

Templates Handlers

...