--- alias: user-guide-printing-integration tags: - printing integration description: "Critical Manufacturing MES facilitates printing label and report generation through configurable integrations" --- # Printing Integration :lock: PrintingIntegration.**Show** ## Overview Critical Manufacturing MES offers an out-of-the-box printing mechanism that allows you to effortlessly create labels or reports using the **Printable Document** entity, which can be found in the **Business Data** menu. This feature includes the ability to configure both the layout and respective contexts, which are dynamically applied at runtime using an internal layout creator and editor. Moreover, the **Printing Integration** entity, which can be found in the **Administration** menu, works with the **Printable Document** entity to offer out-of-the-box integration with two popular printing solutions, **NiceLabel** and **BarTender**, as well as provides easy extensibility for integration with other vendors. Additionally, the integration methods supported by Critical Manufacturing MES with **NiceLabel** and **BarTender** are **File** and **Web Service** based. You can learn more about how to use Printing Integrations in our tutorial: [[tutorials-thirdpartylabelprintingintegrationindex]]. ## Tying Everything Together ```mermaid graph LR C1[Printer Type Printers Context] -.- Main[Printing Integration] Main --- L1[Printable Document] classDef mermaid_title color:#000, fill:#fafafa, stroke:#fafafa, stroke-width:0x, font-size:100%, font-weight:200; classDef mermaid_start color:#000, fill:#fafafa, stroke:#fafafa, color:#fafafa, stroke-width:0x, font-size:100%, visibility: hidden; classDef mermaid_businessdata color:#000, fill:#65CDE8, stroke:#65CDE8, stroke-width:0px, font-size:100%; classDef mermaid_nonbusinessdata color:#000, fill:#B7DEE8, stroke:#B7DEE8, stroke-width:0px, font-size:100%; classDef mermaid_entity color:#000, fill:#FB9F53, stroke:#FB9F53, stroke-width:0px, font-size:100%; classDef mermaid_entitylinked color:#000, fill:#FCD5B5, stroke:#FCD5B5, stroke-width:0px, font-size:100%; classDef mermaid_context color:#000, fill:#B9CDE5, stroke:#B9CDE5, stroke-width:0px, font-size:100%; classDef mermaid_optional color:#000, fill:#B7DEE8, stroke:#65CDE8, stroke-width:1px, font-size:100%, stroke-dasharray: 5 5; class Main mermaid_entity class A1,A2,A3,A4,A5,A6,A7,A8,A9,A10 mermaid_businessdata class L1,L2,L3,L4,L5,L6 mermaid_entitylinked class C1,C2,C3,C4,C5,C6 mermaid_context class N1,N2,N3,N4,N5,N6 mermaid_nonbusinessdata click L1 "../../business-data/printable-document" click C1 "../../administration/tables/smart-tables/printertypeprinterscontext" click Main "../../administration/printing-integration" ``` The summary of a Printing Operation workflow can be seen in the following diagram: ```mermaid flowchart TD A[Print Operation] -->|Resolve PrinterTypePrintersContext| C{Has Printer Integration?} C -->|No| D[Use default logic] C -->|Yes| E[Format Data Context Items
Use Printing Integration
InputFormatterRule
and
Printable Document External Layout
if exists] E -..->|Default DEE Rules| G{Print
System?} subgraph DEE G -->|BarTender| PS{Integration
Type?} G -->|NiceLabel| PS2{Integration
Type?} PS -->|File| H1[PrintingIntegration
BarTender
FileInput] PS -->|WebService| H2[PrintingIntegration
BarTender
WebServiceInput] PS2 -->|File| J1[PrintingIntegration
NiceLabel
FileInput] PS2 -->|WebService| J2[PrintingIntegration
NiceLabel
WebServiceInput] end E --> IM{Integration
Method?} IM -->|File|Call1[Call PrintingIntegrationFile
NameGenerator] IM -->|WebService|Call2[Call WebService

Use Authentication Method
defined in Printing Integration Service body
=Result from Printing Integration
InputFormatterRule] Call2 --> SCM{Web Service Call Mode
Synchronous?} SCM -->|Yes| FWSR{OutputFormatter
defined?} SCM -->|No| RIE[Run Integration Entry] FWSR -->|Yes| OFYES[Parse the response] FWSR -->|No| OFNO[Keep response as-is] RIE --> End[End] Call1 --> End[End] OFYES --> End OFNO --> End Call2 -.->|Default Authentication Methods| G2{Print
System?} subgraph DAM G2 -->|BarTender| PIAM[Basic Authentication
None

Printing Integration Authentication Method
Generic Table] G2 -->|NiceLabel| PIAM end classDef mermaid_title color:#000, fill:#fafafa, stroke:#fafafa, stroke-width:0x, font-size:100%, font-weight:200; classDef mermaid_start color:#000, fill:#fafafa, stroke:#fafafa, color:#fafafa, stroke-width:0x, font-size:100%, visibility: hidden; classDef mermaid_businessdata color:#000, fill:#65CDE8, stroke:#65CDE8, stroke-width:0px, font-size:100%; classDef mermaid_nonbusinessdata color:#000, fill:#B7DEE8, stroke:#B7DEE8, stroke-width:0px, font-size:100%; classDef mermaid_entity color:#000, fill:#FB9F53, stroke:#FB9F53, stroke-width:0px, font-size:100%; classDef mermaid_entitylinked color:#000, fill:#FCD5B5, stroke:#FCD5B5, stroke-width:0px, font-size:100%; classDef mermaid_context color:#000, fill:#B9CDE5, stroke:#B9CDE5, stroke-width:0px, font-size:100%; classDef mermaid_optional color:#000, fill:#B7DEE8, stroke:#65CDE8, stroke-width:1px, font-size:100%, stroke-dasharray: 5 5; classDef mermaid_state color:#000, fill:#d7e4bd, stroke:#000, stroke-width:1px, font-size:100%, font-weight:300; class Entity mermaid_entity class Version1,Version2,Version3,Version4,Version5,Version6,Version7,Version8,Version9,Version10,Version11 mermaid_businessdata class RevisionA,RevisionB,RevisionC mermaid_entitylinked ``` {{ generate_index() }}