Package Labels#
general#
The "Label Interface" module (Label Interface - LIF) allows you to capture a data structure consisting of several pieces of information linked to the item. This data structure can be used as a basis for dynamic generation of labels in the software solutions "Loftware NiceLabel Cloud" (edition "Business" or higher), "Loftware NiceLabel On-Premise" (edition "LMS Enterprise" or higher) or "Seagull Scientific BarTender" (edition "Automation" or higher). Here, the data structures are individually filled from the Microsoft Dynamics 365 Business Central processes at runtime and transferred to the label programs via web service call.
Label templates are usually designed in the label programs and linked to the received data structures via integration/automation scenarios and output on printers.
general functionality#
The label programs themselves usually consist of various components, whereby two areas are particularly important for the integration of the label interface:
Label Designer
- NiceLabel Designer - Pro
- BarTender Designer
Automation Builder / Integration Builder
- NiceLabel Automation Builder - Pro
- NiceLabel Automation Builder
- BarTender Integration Builder
While the Label Designer is used to create the different label designs and define the graphical layout of the labels, the Automation / Integration Builder is used to define the workflow from receiving the data ("trigger"), through the different steps of opening the correct label template, assigning variables and print settings, to creating and reporting back to the source system. For more details, refer to the respective sections "Additional Setup of NiceLabel Cloud", "Additional Setup of NiceLabel On-Premise" and "Additional setup of BarTender".
components#
The "Label Interface" (Label Interface - LIF) Work Clearance Module consists of a base, which contains the basic table structures, views and logics, as well as an interface deployment for the integration of various output scenarios.
In the standard of the label interface here are the interface implementations
"KUMAVISION Label Interface - NiceLabel Cloud"
"KUMAVISION Label Interface - NiceLabel On-Premise Webservice"
"KUMAVISION Label Interface - BarTender Webservice"
are included.
In addition, the interface implementation "KUMAVISION Label Interface File Extension" is available as a separate app, which enables file export within an on-premise environment. Since access to the file system is not possible for a SaaS environment, this interface implementation had to be outsourced to a separate app.
general setup#
In order for Microsoft Dynamics 365 Business Central to successfully transfer data to the label programs, a basic setup is required. Furthermore, various optional settings are possible. These are described in the following subchapters.
general activation of the label interface#
The label interface is an enabling module for the KUMAVISION base / BOOSTER and can be activated via the "KUMAVISION Module Setup" page, provided that this module has been licensed.
labels position code overview#
The data structures used for the transfer to the label programs consist of so-called "key-value pairs", i.e. a list of values, each of which has a unique identifier. These identifiers are stored uniquely across the various labels, regardless of how they are used. To create and maintain these identifiers, open the "Label position code overview" page.
Define the list of unique identifiers to be used in the label data structures here.
field | use |
---|---|
Code | Unique code for the identifier. The code can contain a maximum of 20 characters. In the label structures, the codes to be used are selected at a later point and linked to the respective data. |
Description | Description of the identifier to clarify the content. The maximum length of the description is limited to 80 characters. |
label interface setup#
The Labels Interface Setup is the central starting point for the basic setup of the label interface.
Basic setup parameters are set here and, among other things, the interface implementation to be used is selected. Depending on the "Output Interface" selected, additional content may appear at this point. Special features of the integrated interface implementations can be found in the sections "Additional setup of NiceLabel Cloud", "Additional Setup of NiceLabel On-Premise" and "Additional Setup of BarTender".
inforegister general#
field | use |
---|---|
Position code printer | Defines the position code to be used for specifying the selected printer. If a value is stored here, this value will automatically be taken over into the label structure lines when a new label structure is created. |
Position code print quantity | Defines the position code to be used for specifying the number of labels to be created. The label programs basically offer the possibility that the number of labels to be printed is transferred and evaluated via a variable. The "Position code print quantity" is provided for this purpose. If the "Position code print quantity" is used, this variable must be evaluated/set up in the label programs. The depositing of the "Position code print quantity" in the label interface equipment has here for the production of the data structure the following effect: a) "Position code print quantity" is not stored Per unit of measure from the document line, for which labels are to be printed, a line is created in the transfer file (e.g. document quantity = 100 for which labels are to be printed => 100 lines in the transfer file). b) "Position code print quantity" is stored For articles without article tracking, a line is created in the transfer structure. For the variable "Position code print quantity", the corresponding quantity from the document line is transferred. For articles with batch tracking, per batch from the document line (article tracking) a line with the corresponding quantity in the transfer structure is created. For articles with serial number tracking, per serial number in the transfer structure a line with the quantity 1 is transferred. . |
Log label printing | Use this field to specify whether the creation of labels should be logged. If this switch is activated, an archiving entry is automatically created in the "Label printing archive" table when a label is created. The list of archived print jobs can be viewed via the "Label printing archive overview" page |
Output Interface | This selection field can be used to specify which interface implementation is to be used for creating labels. In the standard label interface, the interface implementations "KUMAVISION Label Interface - NiceLabel Cloud", "KUMAVISION Label Interface - NiceLabel On-Premise Webservice" and "KUMAVISION Label Interface - BarTender Webservice" can be selected here. In addition, the interface implementation "KUMAVISION Label Interface File Extension" is available as a separate app. Further implementations are individually possible. |
Inforegister File Export#
The Inforegister is available after installing the "KUMAVISION Label Interface File Extension " app.
field | use |
---|---|
Structure file export path | Target directory of the structure file, which is accessed by the external label programs. |
Label file export path | Destination directory of the label file, which is accessed by the external label programs. |
Delimiter | Delimiter must be used in the export function for the label file. |
Text Encoding | Specifies the character encoding for the label file (Windows, UTF8, UTF16, MSDOS) |
Pictogram Export Path | Specifies the export path of the pictograms stored in KUMAVISION for the access of the label programs. |
Pictogram file type | Indication of the file type of the pictograms, either .jpg or .bmp. KUMAVISION cannot distinguish which file type is stored in the database, therefore this entry must be set here accordingly, so that the external label programs can work without error. |
Label printer#
Via the action "Label printer" of the page "Label interface setup" the page "Label printer setup" is opened.
In this list, a printer can be stored per label code and user for the output of the label. This ensures that when the data structures are output, the label can be passed on by the label program to the correct printer of the respective user.
The following sequence is taken into account when assigning a printer in the transfer process:
- an assignment is available for the selected label structure code and the selected user.
- an assignment exists for the selected label structure code and all users (user name = "" (empty))
- an assignment exists for all label structure codes (label code = "" (empty)) and the selected user
- an assignment exists for all label structure codes (label code = "" (empty)) and all users (user name = "" (empty)).
labels pictograms (legacy)#
Using the Labels Pictograms, images (pictograms) can be managed in the BC database and assigned to individual labels. This functionality is no longer used in connection with the "NiceLabel Cloud" and "BarTender Webservice" integration and is only included for legacy reasons. To add pictograms to labels, they should instead be used in the label programs themselves and assigned to the labels. Via parameter switches (exemplary "PAR_*" codes in the label position code overview) it can be switched out of BC if necessary whether symbols should be displayed on the respective label or not.
Label structure#
The label structures basically map the data structures that are to be used for the respective label. Here it comes to the assignment of the position codes to the respective data records and fields of the Business Central entities. The label structure lines define which data is to be displayed in the label and where this information comes from.
The label structure is created independently of a specific item and can therefore be used for multiple items.
field | use |
---|---|
Code | Defines the unique code for this label structure. The field can be assigned a code with a maximum length of 20 digits. |
Name | The name can be used to store a short description of the label structure. The maximum length of the name is 50 characters. |
Label type | The label type can be used to classify labels. The field is only used for assignment and does not contain any process logic. The following label types are available for selection: - Empty - Warehouse - Product - Shipping - Goods receipt |
Status | Indicates the status of the current label structure. A label can only be created from a label structure that is in the "Certified" status. The following statuses are available for selection here: - New - Certified - In development - Expired |
Version numbers | Defines the number series to be used for assigning the version numbers. Specifying a version number series is optional |
Active Version | Displays the currently active version at the label structure. This refers to the version that has the status "Certified" and is between the "From date" and "To date" from the date range of the current working date. |
From Date | Indicates from which date the respective label structure is valid and used. |
To Date | Indicates until which date the respective label structure is valid and used. If this field remains empty, the label structure will be used until it is replaced by another active version. |
Label structure lines#
The label structure lines map the individual positions within the label structure that are to be output in the data structure for the respective label. Here the position codes are linked to the individual origin types of the data.
Fields of the label structure lines:
field | use |
---|---|
Position code | Defines a unique position code that stands for a value in the label. For example, a position code "ART_NR" can be selected here to assign the article number from the article master record to it. At this point you can select from the list of created position codes or enter new position codes in the list. |
Position description | Indicates the description of the position code. This is taken from the "Position code labels" table, but can also be changed individually at this point. |
Origin type | The origin type defines from which data source the data for the corresponding position code comes. For example, the "Text" origin type can be used to specify that the value from the "Origin value" column is to be used, or to obtain data from the article master and linked tables. The selection of origin types and their subspecies is listed separately in the "Possible combinations - Origin type / Origin subspecies"section. |
Origin subspecies | The origin subspecies details the specification from the "Origin type" field. Here, for example, it is possible to specify that for the origin type "Item" the description of a field or its content (value) from the item master should be used. The selection of origin types and their subspecies is listed separately in the "Possible combinations - origin type / origin subspecies" section. |
Origin Field No. | The "Origin Field No." can only be specified for origin types that refer to a given table in the "Origin Type" field. The field number uniquely identifies the field whose value or description is used. For the possible table data, see the listing of origin types and origin subtypes in the "Possible combinations - origin type / origin subtype" section. |
Origin code | The field "Origin code" can only be used in three cases: Case 1: This is the origin type "Pictogram" and the origin subtype "Database". Here, the code of a pictogram can be selected from the master data of the labels pictograms. This possibility is only available for legacy reasons and is only used in combination with the extension "KUMAVISION Label Interface File Extension" which has to be installed separately. Case 2: This is the origin type "Article tracking" and the origin subtype "Expiration date" or "Manufacturing date". In these cases, it is possible to specify at this point how the date should be formatted. Formatting Year: <YYYY>: By this code, the year is output with four digits. <YY>: By this code, the year is output with two digits. Formatting Month: <MM>: By this code, the month is output as a number. <MONTH>: By this code the month is written out with its name. Formatting day: <DD>: By this code the day is written out as a number. Example 1: <MONTH> <YYYY> equals December 2022 Example 2: <YYYY>-<MM>-<DD> equals 2022-07-09 Case 3: This is the origin type "Item attribute". For both origin type "Designation" and origin type "Value", this field must be used to define which unique attribute to use. Select the LookUp button to select the appropriate attribute for mapping. |
Origin value | The Origin value field is automatically calculated with the origin subtype "Path" except for the origin types "Text" and "Pictogram". For origin type "Text", the text to be statically output for the respective position code is stored in this field. For origin type "Pictogram" with origin subtype "Path", the file path for the pictogram is specified here. (This option is used if the pictograms are not managed in the database, but are stored in a file directory.) This option is only available for legacy reasons and is only used in combination with the separately installed extension "KUMAVISION Label Interface File Extension". For other origin types, the origin value is calculated automatically. See the listing of origin types and origin subtypes in section "Possible combinations - origin type / origin subtype". |
LanguageCode | Defines the language code to be used for the translation. The value stored here is only used for the "Origin types" "Article translation", "Eudamed UDI DI" and "Eudamed Legacy" in combination with the "Origin subspecies" "Value" as well as for the origin type "Article attribute" with the origin subspecies "Designation" and "Value". This makes it possible to integrate different translations into the label structure with different item codes. |
possible-combinations-type-of-origin/subspecies-of-origin#
The following table lists the possible combinations between "origin-type" and "origin-subspecies" with the corresponding result (origin value).
origin type | origin subspecies | origin value |
---|---|---|
Text | " " (empty) | Manual input of a text to be output for the position code. |
Pictogram | Path | Manual input of a file path to the pictogram to be used for the position code. This option is only available for legacy reasons and is only used in combination with the separately installed extension "KUMAVISION Label Interface File Extension". |
Pictogram | Database | Automatic calculation. Shows the name of the pictogram from the database that will be used for the position code. This option is only available for legacy reasons and is only used in combination with the separately installed extension "KUMAVISION Label Interface File Extension". |
Article | Description | Automatic calculation. Returns the field description of the field selected via "Origin field no." from the table "Article". |
Article | Value | Automatic calculation. Returns the field content of the field selected via "Origin field no." from the "Article" table. Returns the field description of the field selected via "Origin field no." from the "Article" table. |
Article Attribute | Description | Automatic Calculation. Returns the field description of the field selected via "Origin field no." from the "Item attribute value" table. If the specified field is the "Attribute name" field and a code has been specified in the "Language code" field, the value of this field is obtained on the basis of the associated entry of the Article attribute translation table. If no translation for the specified language exists here, the output will be with the default value. |
Article Attribute | Value | Automatic Calculation. Returns the field content of the field selected via "Origin field no." from the table "Article attribute value". If the specified field is the "Value" field and a code has been specified in the "Language code" field, the value of this field is obtained on the basis of the associated entry in the Article attribute value translation table. If no translation for the specified language exists here, the output will be with the default value. |
Article variant | Description | Automatic calculation. Returns the field description of the, over "Origin field no." selected, field from the table "Article variant". |
Article variant | Value | Automatic calculation. Returns the field content of the field selected via "Origin field no." from the "Item variant" table. |
Article translation | Description | Automatic calculation. Returns the field description of the field selected via "Origin field no." from the table "Article translation". |
Article translation | Value | Automatic calculation. Returns the field content of the field selected via "Origin field no." from the table "Article translation". The field "Language code" can be used to define for which language the article translation should be filtered. |
Article unit | Description | Automatic calculation. Returns the field description of the field selected via "Origin field no." from the table "Article unit". |
Article Tracking | Value | Automatic calculation. Returns the field content of the field selected via "Origin field no." from the table "Item unit". |
Article Tracking | Serial No. | Automatic Calculation. Returns the serial number entered for the item code for the item. |
Article Tracking | Batch No. | Automatic Calculation. Returns the batch number entered for the item for the position code. |
Article tracking | Ext. batch no. | Automatic calculation. Returns the external batch number entered for the article for the position code. |
Article Tracking | Expiration Date | Automatic Calculation. Returns the expiration date entered for the item code for the item.The formatting of the value can be influenced via the "Origin Code" field. |
Item Tracking | Date of Manufacture | Automatic Calculation. Returns the manufacturing date entered for the item code. The formatting of the value can be influenced by the field "Origin code". |
Debitor | Description | Automatic calculation. Returns the field description of the field selected via "Origin field no." from the table "Customer". |
Customer | Value | Automatic calculation. Returns the field content of the field selected with "Origin field no." from the table "Customer". |
Vendor | Description | Automatic calculation. Returns the field description of the field selected with "Origin field no." from the table "Vendor". |
Vendor | Value | Automatic calculation Returns the field content of the field selected via "Origin field no." from the "Vendor" table. |
Vendor | Description | Automatic calculation Returns the field description of the field selected via "Origin field no." from the table "Item reference items". This table is pre-filtered for customers.Returns the field content of the field selected with "Origin field no." from the table "Item reference items". This table will be pre-filtered on accounts receivable. |
Vendors Ref. | Description | Automatic calculation. Returns the field description of the field selected with "Origin field no." from the table "Item reference items". This table will be pre-filtered on creditors. |
Vendors Ref. | Value | Automatic calculation. Returns the field content of the field selected with "Origin field no." from the table "Item reference items". This table will be pre-filtered on vendors. |
Company data | Description | Automatic calculation. Returns the field description of the field selected with "Origin field no." from the table "Company data". |
Company data | Value | Automatic calculation. Returns the field content of the field selected with "Origin field no." from the table "Company data". |
Barcode Reference | Barcode | Automatic Calculation. Returns the article reference number based on the article number, the variant code, the article unit and the reference type "Barcode". |
Barcode reference | Text | Automatic calculation. Returns the article reference number based on the article number, the variant code, the article unit and the reference type "Barcode". |
Printer | " " (empty) | Automatic calculation. Returns the printer to be used for the combination of label structure and user ID. |
Print quantity | " " (empty) | Automatic calculation. Gives the calculated number of the required label quantity. |
Document no. | " " (empty) | Automatic calculation. Indicates the document number of the original document in case of a print process triggered by a document process. If label printing is triggered from a document (e.g. goods receipt, production order), the document number can be output via this.<br |
Posting code | Value | Automatic calculation. Returns the content of the posting code from the transaction. If label printing is triggered from a document (e.g. goods receipt, production order), the posting code can be output via this. |
Storage location code | Value | Automatic calculation. Returns the content of the storage location code from the transaction. If label printing is triggered from a document (e.g. goods receipt, production order), the storage location code can be output via this. |
Storage location code | Value | Automatic calculation. Returns the content of the storage location code from the transaction. If the label printing is triggered from a document (e.g. goods receipt, production order), the bin code can be output via this. |
Eudamed UDI-DI | Description | Automatic calculation. Returns the field description of the field from the UDI-DI data selected via "Origin field no.". |
Eudamed UDI-DI | Value | Automatic Calculation. Returns the field content of the field selected via "Origin Field No." from the UDI-DI data. |
Eudamed Legacy | Description | Automatic Calculation. Returns the field description of the field selected via "Origin Field No." from the UDI-DI data. |
Eudamed Legacy | Value | Automatic Calculation. Returns the field content of the field selected via "Origin Field No." from the UDI-DI data. |
copy label structures#
If a new label structure is to be created based on an existing label structure, this process can be supported by copying the existing label structure.
To do this, a new label structure is created first and then a processing for copying an existing structure is called up via the "Copy structure" action.
In this processing, the code of the existing label structure whose lines are to be copied into the new structure must be specified in the "Copy from label code" field.
The "Copy with values" button can be used to specify whether the manually entered origin values (origin type "Text" and origin type "Pictogram" with sub-type "Path") are also to be copied. If the check box is activated, the values are copied. If, on the other hand, the check box is deactivated, the origin values for the corresponding items remain empty after copying and must be entered manually.
After processing has been started via the "OK" button, the lines from the selected label structure are copied to the new label structure.
Note
This functionality can also be used to revise existing label structures by first copying lines from another label structure and then revising them. If lines already exist in a label structure and the "Copy structure" functionality is executed, the currently existing lines are deleted before the new (copied) lines are entered.
label structure versions#
Versions can be created for the label structures. This gives you, among other things, the option of creating new / changed versions that are to be used by the system from a specific start date. The currently valid version of a label structure is displayed in the "Active version" field. Data from previous versions that have already expired are still available. The validity of a label structure can also be controlled by a start and end date.
In the "Version numbers" field, you can assign an individual number series to be used for determining the version numbers for the selected label structure.
In the "Active version" field, the currently valid version number for the label structure is displayed. The calculation date for this is the current date.
The "Active version" is determined as follows:
- The calculation date is the current date.
- It is checked whether there are label structure versions that have the status "Certified" and lie within the period "From date" and "To date" on the version map.
- If several label structure versions are found, the label structure version with the highest version number is used as the "Active version".
Tip
If you work with versions, then the version numbers should be entered with leading zeros, because the field version number is a code field and a sorting is done alphanumerically.
creating a new label structure version#
To create a new version of a label structure, select the action "Versions" within the desired label structure.
Then select the action "New" in the following window "Label structure version overview".
If a number series for "Version numbers" has been stored in the underlying label structure, a new number can be entered automatically on the basis of the number series by confirming the empty "Version code". If no number series has been stored, the version code must be filled in manually. When creating the new label structure version, the "From date" field is automatically suggested with the current date and can be adjusted if necessary.
You can now enter the required data in the label structure lines either manually or from an existing label structure / label structure version by calling the action "Copy structure.
version matrix#
If you work with different versions of the label structures, you can display the differences between the versions by means of a version matrix.
After selecting the action "Version matrix" from the label structure, the filter view is opened.
By means of the action "Show matrix" in this window, the version matrix with the comparison values is displayed.
change log#
If required, changes to the label structures and versions can be tracked and adjustments are directly visible from the label structure views by calling the "Change Log" action. The standard functionality of change logging is used here. In order for this logging to take label structures into account, the following tables must be set up in Change Logging according to the standard Admin documentation see Microsoft Dynamics 365 Business Central Online Help.
- Table 5488108 - "KVSKBALabelStructureHeader"
- Table 5488109 - "KVSKBALabelStructureLine"
- Table 5488116 - "KVSKBALabelStructureVersion"
article / label link#
The label structure itself basically provides a framework for a label that decides which items (item codes) a label should contain and how the values for these items are calculated. The structure is generally valid and can be used for several articles. The assignment of label structures to articles is done via "Article / Label links".
The call of the "Article / label link" is possible thereby both from the label structure, and from the article or the article variant.
In the article / label links, it is stored which article is linked to which label structure. In addition, when using a label structure, additional parameters such as article units, language codes, customer numbers and vendor numbers can be specified for an article. These parameters are used when selecting the correct label structure and are applied when calculating the label for the corresponding article.
As an example, by specifying the item unit and the customer number, an OEM label can be defined for a specific customer.
field | use |
---|---|
Article no. | Number of the article to which a label structure will be linked. |
Variant code | Variant code of an article to which a label structure is linked. |
Label code | Code of the label structure to be used. |
Article Description | Description 1 of the article to be linked to a label structure. |
Label Name | Name of the label structure to be linked to an item. |
Article unit | Specification of the article unit with which the label data (label content) is to be calculated. |
Language code | Preset of the language code with which the label data (label content) should be calculated. |
Customer no. | Specify the customer number with which the label data (label contents) are to be calculated. |
Vendor no. | Specify the vendor number with which the label data (label contents) are to be calculated. |
Print in goods receipt | If the label should be printed at the goods receipt, the checkbox must be activated. |
Print in production order | If the article linked to a label structure is a production article, this checkbox must be activated so that a corresponding label can be printed from the production order. |
Print at goods issue | If the label is to be printed at the goods issue, this checkbox must be activated. |
Quantity outer packaging | This field only has an effect if a label is printed at goods receipt (i.e. the "Print at goods receipt" field is activated) and the "Print quantity item code" = "Empty" in the label interface setup. |
Quantity sample label | If additional labels are to be printed, e.g. as reserve samples of an article, the desired quantity of the additional labels can be entered here. In these cases, the print quantity is increased by the "Sample label quantity". |
calculation logic for "quantity repackaging"#
Note
The field "Quantity repackaging" has only an effect, if "Print in goods receipt" of the "Article / label link" is activated and "Position code print quantity" in the "Label interface setup" does not contain a value.
If both conditions are met, the "Quantity repackaging" will be used to calculate the print quantity as follows:
Example without item tracking:
Order quantity = 100, unit = pieces, quantity repackaging = 1 => 100 labels (100 / 1)
Order quantity = 100, unit = pieces, quantity outer packaging = 2 => 50 labels (100 / 2).
Example with item tracking "serial number":
Order quantity = 100, unit = pieces, quantity outer packaging = 1 => 100 labels (100 / 1)
Order quantity = 100, unit = pieces, quantity of repackaging = 2 => 50 labels (100 / 2)
Label content / label preview#
The process for generating labels is fundamentally a process-automated path in which the data structures from Microsoft Dynamics 365 Business Central are generated automatically in the background at various points in the application and transferred to the automation interfaces of the label programs. There, the respective set-up process steps are executed and the print data is generated and transferred to the respective printer. Manual intervention should not be necessary here.
In order to nevertheless be able to trace the generation of the label content in Microsoft Dynamics 365 Business Central™ and to see a preview of the generated label for checking purposes, the "Label content" view has been created, which can be called up from the "Label structure" or from the "Article / Label link" via the "Display content" action.
If the call was started from the "Article/label link", the data stored in the link will already be transferred to the "Label content" view.
In the case of the call from the label structure, only the label code can be preset.
In the header information of the "Label content" view, entries can be made manually, e.g. to preassign a serial number or an expiration date.
In the editable fields in the content header, sample data for the calculation of the label data can be entered. These values are then used for the calculation of the individual position codes of the label layout.
There are the following mandatory entries:
field | use |
---|---|
Article no. | Number of the article for which the label is to be created. This number is also used when determining the content data for the origin types article, article variant, article unit, article translation, debtors ref., creditors ref. as well as for the barcode origin types and is passed on as a filter or parameter for calculating the corresponding data. |
Variant Code | Code of the article variant for which the label is to be created. This code will also be used when determining the content data for the origin types article variant, article translation, debtors ref., creditors ref. origin types and will be passed as a filter or parameter for calculating the corresponding data. |
Label Code | Indication of the label code on the basis of which the label content is to be calculated. |
The following fields can be filled with additional parameters for label generation:
field | use |
---|---|
Article unit | Indication of the article unit with which the label will be calculated from the label structure. This code is also used when determining content data for the origin types Article Unit, Accounts Receivable Ref, Accounts Payable Ref and the Barcode Origin Types. |
Language Code | The language code is used to calculate content data for the origin type Item Translation. |
Serial No. | Dient used as content value for the item codes with the origin type Item Tracking and the subtype Serial No. . |
Batch no. | Dient as content value for the item codes with the origin type item tracking and the subtype batch no. . |
Ext. batch no. | Dient as content value for the item codes with the origin type item tracking and the subtype ext. batch no. . |
Expiration Date | Dient as content value for the item codes with the origin type Item Tracking and the subtype Expiration Date . |
Date of manufacture | Dient as content value for the item codes with the origin type item tracking and the subtype date of manufacture. |
Customer No. | Used when determining content data for the origin types "Customer" and "Customer Ref. |
Vendor No. | is used when determining content data for the origin types "Vendor" and "Vendor Ref. |
Label Printer Name | Indication of the "Label Printer", will be filled automatically depending on the setup. |
Document No. | Indication of the document number. |
Booking code | Indication of the booking code |
Storage location code | Indication of the storage location code |
Storage bin code | Storage bin code specification |
NiceLabel Cloud API identifier (only for "Output Interface" "KUMAVISION Label Interface - NiceLabel Cloud") |
Indication of the unique trigger ID for the NiceLabel Cloud connection. Will be filled automatically based on the label structure . |
calculate content#
By calling the action "Calculate content" you can now trigger the process in Microsoft Dynamics 365 Business Central that calculates the row values based on the stored label structure.
label preview#
For the "NiceLabel Cloud" and "BarTender Webservice" interface implementations, the possibilities to display an online preview of the generated label in Microsoft Dynamics 365 Business Central have been generally created. For this purpose, the "normal" printing process is simulated in the label program and redirected to a PDF file. This is in turn sent back by the label program as a response to Microsoft Dynamics 365 Business Central and displayed.
Info
In order to be able to distinguish this preview functionality in the label programs from the print process itself, an additional variable parameter "PreviewFormat" is therefore passed to the label program with the value "true" for each preview action. In a normal print action, this parameter is assigned the value "false". This allows the label program to react differently depending on the value of this parameter.
After selecting the action "Preview label" the label will be displayed in the FastTab "Preview label".
create structure file for label program#
It is possible to create a structure file via the label interface, which holds all defined position codes and their example values in a file, to use them for the design of the label as a basis for the data structure. To create a local structure file, select the action "Create structure file".
The data structure is then generated and downloaded to the local download directory. A feedback message indicates whether the generation was successful.
The generated file is then located in your local "Download" directory and contains your user ID, the label code and the date and time of creation as file names. When using the "Output interfaces" "KUMAVISION Label Interface - NiceLabel Cloud" or "KUMAVISION Label Interface - BarTender Webservice", the result consists of a Json file that lists the variables and their value. In case of "Output interface“ “KUMAVISION Label Interface - NiceLabel On-Premise Webservice”, a XML file containing the variables and values will be created.
The structure of the data structure corresponds 1:1 to the structure that is also used for sending to the label program.
manual transfer to label program#
After the label content has been calculated with the article-specific data, the label data can be created and transferred to the external label program. To do this, the data is transferred to the respective interfaces of the label programs and a response is awaited. To create a label manually, select the action "Create label file".
The data structure is then generated and transferred to the label program. A feedback message indicates whether the generation was successful.
creation of labels (automated process)#
Example: Goods receipt posting#
If the checkbox "Print in goods receipt" is activated in the article/label link, a label is automatically created for an article when the goods receipt is posted.
The article used in the following example has been created accordingly and ordered in advance. Furthermore, the goods receipt has been created for this purpose, since the following is only about the automated creation of the labels.
Post the goods receipt. A success message appears after the transfer to the label program.
In this example, the PDF file created by the labeling program contains 3 pages for three items that are mentioned in the "Quantity current delivery" of the goods receipt.
Software NiceLabel On-Premise#
General information about NiceLabel On-Premise#
Required Version / Edition#
In order to use the „NiceLabel WebService“ connection, „Loftware NiceLabel On-Premise“ version „LMS Enterprise“ or higher is required.
Additional setup of NiceLabel On-Premise#
Label Interface Setup#
The "Labels Interface Setup" is exactly the same as the default setup when using the "Output Interface" "KUMAVISION Label Interface - NiceLabel On-Premise Webservice". No separate settings need to be made here.
Label Structure#
To allow data to be passed to NiceLabel via WebService, an additional field information named "NiceLabel On-Premise WebService URI" has been added to the label structure. This field is only visible if the "Output Interface" is set to "NiceLabel On-Premise Webservice".
Feld | Verwendung |
---|---|
NiceLabel On-Premise WebService URI | Defines the unique URL of the NiceLabel Automation Builder that will be used to transfer the data to NiceLabel. |
Using NiceLabel On-Premise#
The following sections present basic setup steps in NiceLabel On-Premise label software that can be used to perform integration.
Note
The steps presented here are only examples and do not replace the NiceLabel documentation, nor any training that may be required!
NiceLabel Automation Builder#
NiceLabel Automation Builder is the central interface application for creating and managing integrations. Creating a new configuration in NiceLabel Automation Builder is basically divided into two parts: "Data Filter" and "Trigger" creation. The following summary can be used to create a basic configuration.
XML Data Filter#
Since the data from Microsoft Dynamics 365 Business Central is passed to the NiceLabel On-Premise integration in XML format, it is necessary to create a "XML Data Filter". Therefore, add a new "XML data filter" to your configuration.
Name the data structure and then use the "Import data structure" action to open a structure file from Business Central see "Create structure file for label program".
After selecting the file, the data structure should be generated automatically.
To use the XML nodes as variables in NiceLabel, set the "Element property" "Usage" to the value "Variable value" for each element in the structure.
Create trigger#
Next, you need to create a unique trigger that contains the individual action steps. To do this, select the "Configuration Items" tab and then select the "Webservice" action in the "Insert Trigger" area.
Set the according port for http communication and keep it in mind as this will be used as a part of the URI in the further course and will be stored in Microsoft Dynamics 365 Business Central for the label structure.
Normally, the label program is set to read variables from a label. Since in this example an integration is created across labels and the label to be used is transferred as a parameter via the data structure, the variables for the integration must be created manually. This is done in the "Variables" tab via the action "Add variable".
Tip
Use in each case as variable name the identical designation of the parameter from the BC label structure line, then in the further process an automatic mapping of the information is possible.
So that the response to BC can be designed dynamically depending on the label preview or label printing, the variable "ResponseData" is also inserted. It is used and assigned in the later actions for the return!
Use Data Filter#
First of all, in the integration you need to assign the parameters received from NiceLabel to the variables within the label management.
To do this, add the action "Use data filter" in the "Actions" tab.
Then, in the "Filter" area, select as "Name" the XML data structure you have already created. If you have named the variables identically to the position codes from Microsoft Dynamics 365 Business Central, you can start the automatic mapping of the data structure information to the variables via the button "Automatically map" in the area "Data mapping". If the variables have been named differently, a manual mapping is required here.
Open label#
The next step is to open the correct label. Since the name of the label template from BC is given as a structure line, a variable can be referenced here. Insert the action "Open label", activate the checkbox "Data source" in the Settings area and select the variable containing the label name as "Label name".
Preview: Print Redirection to PDF#
In order for us to redirect the print data to a PDF file in the case of the label preview, we need to add the "Print redirection to PDF" action. In the settings of this action, a file name is specified and the option "Overwrite file" is activated. Since this action step should only be performed if it is a label preview, the condition that the [PreviewFormat] variable must have the value "true" is added in the "Show options for execution and error handling" area!
Print label#
The next action is to print the label. For this the action "Print label" is inserted. It is specified via the properties that the quantity of labels to be printed is defined via a variable.
Preview: Read data from file#
In the case of a label preview, the content of the generated PDF file must be read at this point and transferred to the "ResponseData" variable. For this purpose, a new action "Read data from file" is inserted. In the properties the "File name" is set to the same value as in section "Preview: Print redirection to PDF". Furthermore, in this scenario the "retries" are set to 20. In addition, this action should only be performed if it is a label preview. Therefore, the "condition" for execution is set to "[PreviewFormat] = "true"".
Set response data of the configuration#
The last step is to specify in the general trigger settings that the variable value of "ResponseData" is to be used as "Response Data" information.
For this purpose, the response data must be set to the value "[ResponseData]" in the "Settings" menu item of the trigger in the "Communication" section.
NiceLabel Cloud Software#
general information about nicelabel cloud#
Required Version / Edition#
"NiceLabel Cloud" version "Business" or higher is required to use the "NiceLabel Cloud" connection.
Additional setup of NiceLabel Cloud#
Using NiceLabel Cloud APIs#
To use NiceLabel APIs you need to log in to the "API Developer Portal", create a subscription and connect it to your Control Center. For more information on how to create an account for the developer portal and connect it to the NiceLabel subscription, see the "NiceLabel" page.
labels interface setup#
When using the "Output Interface" "NiceLabel Cloud", within the "Labels Interface Setup", in addition to the standard information, you need to provide a "NiceLabel Cloud API Subscription Key".
field | use |
---|---|
NiceLabel Cloud API Subscription Key | Defines the "Primary Key" from the Developer Portal profile details. This key information is used as an authentication component for API usage. In detail this key is used in the header information of the http request as "Ocp-Apim-Subscription-Key" |
label printer#
In NiceLabel Cloud it is possible to store "cloud printers" among others. These printers are not connected to the current Microsoft Dynamics 365 Business Central system and therefore are not available there as printers. To be able to add these printers as printers in the BC processes, it is necessary to retrieve the information about the added printers from NiceLabel Cloud using the API.
For this purpose, a new action "NiceLabel Printer" has been added.
Within the opened page you can connect to the NiceLabel Cloud API using the action "Refresh Printer List" and get the list of cloud printers stored there.
These printers will also be displayed for selection in places where printers can be assigned or deposited.
label structure#
In NiceLabel it is possible to define any number of automation flows. These flows are used to control the respective functions and execution steps. Basically, it is possible to run the NiceLabel interface with a unique automation and handle all setting parameters through variables and their consideration in the NiceLabel Automation Builder.
Each automation in NiceLabel Cloud is named by a so-called unique "trigger ID". In order to send the label data structure from BC to the correct unique trigger, it is necessary to assign the "NiceLabel Cloud API identifier".
field | use |
---|---|
NiceLabel Cloud API Identifier | Defines the unique "Trigger Name" from NiceLabel automation to be used for this label structure. |
This must match the "Trigger Name" of the automation from NiceLabel Control Center.
using nicelabel cloud#
The following sections present basic setup steps in NiceLabel Cloud label software that can be used to perform integration.
Note
The steps presented here are only examples and do not replace the NiceLabel documentation, nor any training that may be required!
nicelabel automation builder#
NiceLabel Automation Builder is the central interface application for creating and managing integrations. Creating a new configuration in NiceLabel Automation Builder is basically divided into two parts: "Data Filter" and "Trigger" creation. The following summary can be used to create a basic configuration.
json data filter#
Since the data from Microsoft Dynamics 365 Business Central is passed to the NiceLabel cloud integration in JSON format, it is necessary to create a "JSON Data Filter". Therefore, add a new "JSON data filter" to your configuration.
Name the data structure and then use the "Import data structure" action to open a structure file from Business Central see "Create structure file for label program".
After selecting the file, the data structure should be generated automatically.
To use the JSON parameters as variables in NiceLabel, set the "Element property" "Usage" to the value "Variable value" for each element in the structure.
Create trigger#
Next, you need to create a unique trigger that contains the individual action steps. To do this, select the "Configuration Items" tab and then select the "Cloud" action in the "Insert Trigger" area.
Assign a unique name and a "Unique identifier". This identifier will be used as a "Cloud Trigger" in the further course and will be stored in Microsoft Dynamics 365 Business Central for the label structure.
Normally, the label program is set to read variables from a label. Since in this example an integration is created across labels and the label to be used is transferred as a parameter via the data structure, the variables for the integration must be created manually. This is done in the "Variables" tab via the action "Add variable".
Tip
Use in each case as variable name the identical designation of the parameter from the BC label structure line, then in the further process an automatic mapping of the information is possible.
So that the response to BC can be designed dynamically depending on the label preview or label printing, the two variables "ResponseData" and "ResponseType" are also inserted. These are used and assigned in the later actions for the return!
use data filter#
First of all, in the integration you need to assign the parameters received from NiceLabel to the variables within the label management.
To do this, add the action "Use data filter" in the "Actions" tab.
Then, in the "Filter" area, select as "Name" the JSON data structure you have already created. If you have named the variables identically to the position codes from Microsoft Dynamics 365 Business Central, you can start the automatic mapping of the data structure information to the variables via the button "Automatically map" in the area "Data mapping". If the variables have been named differently, a manual mapping is required here.
label open#
The next step is to open the correct label. Since the name of the label template from BC is given as a structure line, a variable can be referenced here. Insert the action "Open label", activate the checkbox "Data source" in the Settings area and select the variable containing the label name as "Label name".
initialization of the "responseType" variable#
At this point the variable "ResponseType" is set to the default value "application/json". To do this, a new action "Set Variable" is added, in the properties of the action the "Name" of the variable is set to "ResponseType" and the value is set to "application/json".
initialization of the "responseData" variable#
At this point the variable "ResponseData" is set to the default value "{}". To do this, a new action "Set Variable" is added, in the properties of the action the "Name" of the variable is set to "ResponseData" and the value is set to "{}".
preview: print redirection to pdf#
In order for us to redirect the print data to a PDF file in the case of the label preview, we need to add the "Print redirection to PDF" action. In the settings of this action, a file name is specified and the option "Overwrite file" is activated. Since this action step should only be performed if it is a label preview, the condition that the [PreviewFormat] variable must have the value "True" is added in the "Show options for execution and error handling" area!
print label#
The next action is to print the label. For this the action "Print label" is inserted. It is specified via the properties that the quantity of labels to be printed is defined via a variable.
preview: read data from file#
In the case of a label preview, the content of the generated PDF file must be read at this point and transferred to the "ResponseData" variable. For this purpose, a new action "Read data from file" is inserted. In the properties the "File name" is set to the same value as in section "Preview: Print redirection to PDF". Furthermore, in this scenario the "retries" are set to 20. In addition, this action should only be performed if it is a label preview. Therefore, the "condition" for execution is set to "[PreviewFormat] = "true"".
preview: set responseType "pdf"#
Since the return value for a label preview consists of the PDF document, the ResponseType must also be converted. For this purpose, another action is inserted which sets the "ResponseType" variable to the value "application/pdf" in the case of a label preview.
set response type and response data of the configuration#
The last step is to specify in the trigger settings that the variable values are to be used as "response type" and "response data" of the cloud trigger.
For this purpose, the response type must be set to the variable "ResponseType" and the response data must be set to the value "[ResponseData]" in the "Settings" menu item of the trigger in the "Communication" section.
seagull scientific bartender#
general information about bartender#
required version / edition#
To use the "BarTender WebService" connection, "Seagull Scientific BarTender" version "Automation" or higher is required.
Additional BarTender setup#
labels interface setup#
The "Labels Interface Setup" is exactly the same as the default setup when using the "Output Interface" "BarTender Webservice". No separate settings need to be made here.
label structure#
To allow data to be passed to BarTender via WebServices, additional field information has been added to the label structure. These fields are only visible if the "Output Interface" is the BarTender integration.
field | use |
---|---|
BarTender Webservice URL | Defines the unique URL from the BarTender Integration Builder that will be used to transfer the data to BarTender. |
BarTender Authentication | If set, defines how to authenticate to the BarTender service. Possible selections here are: - "None" => Do not use authentication - "Basic" => Use a Basic Authentication |
BarTender Username | Defines the username for login, if "BarTender Authentication" is set to authentication type "Basic". |
BarTender Password | Defines the password for logging in, if "BarTender Authentication" is set to the authentication type "Basic". |
using bartender#
The following sections present basic setup steps in the BarTender label software that can be used to perform an integration.
Note
The steps presented here are to be understood as examples only and do not replace the BarTender documentation, nor any training that may be required!
bartender integration builder#
The BarTender Integration Builder is the central interface application for creating and managing integrations.
When a new integration is created, the "trigger" for the integration method can be selected. For the BC integration, the option "Web Service" should be selected here.
service#
The name of the integration, which can be changed via the menu item "Integration", is used by default as the service name for the web service.
input data#
In the menu item "Input data" the option value "JSON variables" can be selected as "Input format". Then use the action call "New example" to select the structure file created from the BC label structure, see "Create structure file for label program".
Thus, the variable content from Microsoft Dynamics 365 Business Central is read in and provided as sample input data.
Response#
In the menu item "Reply" it is possible to specify in which format and with which content a reply is to be sent back to Microsoft Dynamics 365 Business Central. Since the return of the encoded PDF stream is required at this point with regard to a label preview, the response should be specified to a new variable to be stored. This ensures that the content of the variable is filled independently by an action.
variables#
In the menu item "Variables" generally predefined integration variables can be changed or new user-defined integration variables can be added.
In this example no integration variables are presupposed, so that at this point no data must be changed or entered.
actions#
Using the menu item "Actions" it is possible to store various processing steps similar to a workflow system, which are to be executed on the basis of the data received. The actions offered here are subdivided into the areas:
- Convert
- Input
- Output
- Execute
- File
- database
and provide a large number of substeps that can be linked together as desired. For details and further examples please refer to the BarTender documentation.
task#
In the current example it should be made possible that based on the label data in case of a label preview the label is printed as a local PDF and the content of the PDF is returned to BC as a response stream. If it is not a label preview, the printer named in the label data is to be selected and the label is to be printed on this printer.
realization#
-
distinction on label preview First of all, a "Select Case" action is necessary to be able to check whether the action at hand is a label preview. Within this action it is therefore determined that in case the variable "PreviewFormat" has the value "true", a different further processing is to take place.
-
label preview In this example, the label template to be printed is passed from the BC label structure by means of the variable "ETI_DOKUMENT", so that the document to be opened must branch to this variable in this action step. By means of this variable handling of label templates, it is possible to reduce the number of integrations, since the data structure designates the label to be used.
In the print options, it is specified that a redirection of the print to a PDF should take place. Furthermore, the "Advanced Print Options" is used to specify the location of the PDF.
In the "Named Data Sources" tab, the assignment of variables that are transferred with the data integration to the named data sources that are used within the Label Designer is done.
In the next step, the generated PDF must be converted to a Base64-encoded form and stored in a variable for the integration's response. For this purpose a new action "Power Shell command" is inserted. This action gets as "Source" the value "Embedded Commands" and as command the following powershell command:
[convert]::ToBase64String((Get-Content -path "< Dateiname aus den erweiterten Druckoptionen>" -Encoding byte))
Furthermore, this specifies that the field "Save issued commands and errors in variable" should be the variable from section "Reply"
- no label preview => print
For the second distinction case, where there is no preview but the document is to be printed, a "Print document" action is added. Here also the document is given by the label structure from BC.
In the print options, both the print to be used and the print quantity can be specified variably via the label structure data from BC. For this the use of the variables is necessary. These are always defined in BarTender via "%< name of variable >%" (e.g. %ART_NR% or %ETI_DRUCKER%).
In the tab "Named data sources" the assignment of variables, which are transferred with the data integration, to the named data sources, which are used within the label designer, is done.