xtrareports-11930-feature-guide-to-devexpress-reports-use-report-controls-use-bar-codes-msi-plessey.md
MSI is based on the Plessey Code symbology. MSI , also known as Modified Plessey , is used primarily to mark retail shelves for inventory control.
Refer to the following topic for more details: MSI Barcode.
Drag the XRBarCode item from the DX.25.2: Report Controls tab and drop it onto the report.
Set the XRBarCode control’s Symbology property to CodeMSI (an object of the CodeMSIGenerator type).
Specify common barcode properties and properties specific to MSI.
Use the barcode’s MSICheckSum property to get or set the checksum type for the barcode.
The following code creates the MSI - Plessey barcode and specifies its properties.
View Example: How to add a bar code to a report
using System;
using System.Collections.Generic;
using System.Drawing.Printing;
using System.Windows.Forms;
using DevExpress.XtraPrinting.BarCode;
using DevExpress.XtraReports.UI;
// ...
public XRBarCode CreateCodeMSIBarCode(string BarCodeText) {
// Create a barcode control.
XRBarCode barCode = new XRBarCode();
// Set the barcode's type to MSI.
barCode.Symbology = new CodeMSIGenerator();
// Adjust the barcode's main properties.
barCode.Text = BarCodeText;
barCode.Width = 400;
barCode.Height = 100;
// Adjust the properties specific to the barcode type.
((CodeMSIGenerator)barCode.Symbology).MSICheckSum = MSICheckSum.DoubleModulo10;
return barCode;
}
Imports System
Imports System.Collections.Generic
Imports System.Drawing.Printing
Imports System.Windows.Forms
Imports DevExpress.XtraPrinting.BarCode
Imports DevExpress.XtraReports.UI
' ...
Public Function CreateCodeMSIBarCode(ByVal BarCodeText As String) As XRBarCode
' Create a barcode control.
Dim barCode As New XRBarCode()
' Set the barcode's type to MSI.
barCode.Symbology = New CodeMSIGenerator()
' Adjust the barcode's main properties.
barCode.Text = BarCodeText
barCode.Width = 400
barCode.Height = 100
' Adjust the properties specific to the barcode type.
CType(barCode.Symbology, CodeMSIGenerator).MSICheckSum = MSICheckSum.DoubleModulo10
Return barCode
End Function
The code example below shows how to create a report with the MSI - Plessey barcode:
using DevExpress.XtraPrinting.BarCode;
using DevExpress.XtraReports.UI;
//...
var barCode = CreateCodeMSIBarCode("012345678");
var report = new XtraReport() {
Bands = {
new DetailBand() {
Controls = { barCode }
}
}
};
Imports DevExpress.XtraPrinting.BarCode
Imports DevExpress.XtraReports.UI
'...
Private barCode = CreateCodeMSIBarCode("012345678")
Dim report As New XtraReport()
Dim band = New DetailBand()
band.Controls.Add(barCode)