PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

Home | Sign in | English US
  • Overview
  • Printing a bar code from a report
  • Printing a bar code in WLanguage
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Overview
WINDEV, WEBDEV and WINDEV Mobile allow you to print bar codes. You can use:
  • a "Bar code" control in a report.
  • iPrintBarCode in a print performed in WLanguage.
Versions 18 and later
iPhone/iPad This feature is now available for the iPhone/iPad applications.
New in version 18
iPhone/iPad This feature is now available for the iPhone/iPad applications.
iPhone/iPad This feature is now available for the iPhone/iPad applications.
Printing a bar code from a report
The report editor proposes a "Bar code" control. The Bar Code control can be directly linked to an item found in the data source of the report.
The configuration of a "Bar code" control is performed in its description window ("Description" option of its popup menu).
Different characteristics can be managed according to the type of the bar code:
  • bar codes with check: the last character of the bar code corresponds to a control character.
  • extended bar code: the value of the bar code can contain the 128 characters found in the ASCII code.
  • displaying (or not) the value of the bar code.
  • management of formatting.
  • management of control characters and management of character set.
Regardless the type of bar code, you also have the ability to:
  • configure the size of the bar code.
  • configure the characteristics of the border.
  • manage the orientation of the bar code.
To print the bar code, all you have to do is assign the Bar Code control with its value.
Versions 16 and later
WINDEVWEBDEV - Server codeReports and QueriesiPhone/iPad Special case: QR Code bar code: the types proposed by default
In a report, you have the ability to print a QR Code bar code. Then, this QR will be decoded by an application that will propose a specific action according to the type of the QR Code.
The assignment mode of the Bar Code control depends on its type.
By default, the description window of the control in the report editor proposes 4 simple types:
  • a Text QR Code: This type of QR Code is used to associate a text with the bar code. To initialize this type of QR Code, all you have to do is assign it with a character string. For example:
    BCOD_QRCode = "I am a simple text"
  • a Web Link QR Code: This type of QR Code is used to directly open a site. To initialize this type of QR Code, all you have to do is assign it with a site address. For example:
    BCOD_QRCode = "http://www.WINDEV.com"
  • a Phone Number QR Code: This type of QR Code is used to directly call a phone number. To initialize this type of QR Code, all you have to do is assign it with a phone number. For example:
    BCOD_QRCode = "010203040506"
  • an Email Address QR Code: This type of QR Code is used to get the email address of a contact. To initialize this type of QR Code, all you have to do is assign it with an email address. For example:
    BCOD_QRCode = "doc@pcsoft.fr"
New in version 16
WINDEVWEBDEV - Server codeReports and QueriesiPhone/iPad Special case: QR Code bar code: the types proposed by default
In a report, you have the ability to print a QR Code bar code. Then, this QR will be decoded by an application that will propose a specific action according to the type of the QR Code.
The assignment mode of the Bar Code control depends on its type.
By default, the description window of the control in the report editor proposes 4 simple types:
  • a Text QR Code: This type of QR Code is used to associate a text with the bar code. To initialize this type of QR Code, all you have to do is assign it with a character string. For example:
    BCOD_QRCode = "I am a simple text"
  • a Web Link QR Code: This type of QR Code is used to directly open a site. To initialize this type of QR Code, all you have to do is assign it with a site address. For example:
    BCOD_QRCode = "http://www.WINDEV.com"
  • a Phone Number QR Code: This type of QR Code is used to directly call a phone number. To initialize this type of QR Code, all you have to do is assign it with a phone number. For example:
    BCOD_QRCode = "010203040506"
  • an Email Address QR Code: This type of QR Code is used to get the email address of a contact. To initialize this type of QR Code, all you have to do is assign it with an email address. For example:
    BCOD_QRCode = "doc@pcsoft.fr"
WINDEVWEBDEV - Server codeReports and QueriesiPhone/iPad Special case: QR Code bar code: the types proposed by default
In a report, you have the ability to print a QR Code bar code. Then, this QR will be decoded by an application that will propose a specific action according to the type of the QR Code.
The assignment mode of the Bar Code control depends on its type.
By default, the description window of the control in the report editor proposes 4 simple types:
  • a Text QR Code: This type of QR Code is used to associate a text with the bar code. To initialize this type of QR Code, all you have to do is assign it with a character string. For example:
    BCOD_QRCode = "I am a simple text"
  • a Web Link QR Code: This type of QR Code is used to directly open a site. To initialize this type of QR Code, all you have to do is assign it with a site address. For example:
    BCOD_QRCode = "http://www.WINDEV.com"
  • a Phone Number QR Code: This type of QR Code is used to directly call a phone number. To initialize this type of QR Code, all you have to do is assign it with a phone number. For example:
    BCOD_QRCode = "010203040506"
  • an Email Address QR Code: This type of QR Code is used to get the email address of a contact. To initialize this type of QR Code, all you have to do is assign it with an email address. For example:
    BCOD_QRCode = "doc@pcsoft.fr"
Versions 16 and later
WINDEVWEBDEV - Server codeReports and QueriesiPhone/iPad Special case: QR Code bar code: the specific types
You also have the ability to print specific QR Code bar codes (SMS, contact, geographical position, ...). In this case, the assignment of the Bar Code control must be performed by the BarCodes type.
You must:
  1. Define a BarCodes variable:
    MyBarCode is BarCodes
  2. In the BarCodes variable, specify the type of QR Code bar code (for example, for an SMS bar code):
    MyBarCode..TypeBarCode = BC_QRCODE
    MyBarCode..TypeContent = bcTypeSMS
  3. Depending on the type of bar code, fill the corresponding element (see table below):
    Type of contentType of value (..Content)Note
    bcTypeTextCharacter stringExample: "WINDEV is great!"
    bcTypePhoneCharacter stringExample: "0612345678"
    bcTypeSMSCharacter string in the following format:
    <Number> + CR + <Message>
    If they are specified, the members of the SMS structure (SMS.Message and SMS.Number) will be automatically taken into account.
    Example: "0612345678<CR>Text to send"
    bcTypeURLCharacter stringExample: "http://www.google.com"
    bcTypeEmailCharacter stringExample: "name@email.com"
    bcTypeContactEmpty. The members of the mContact structure will be automatically taken into account.
    bcTypeLocationgeoPosition variable.
    The ..Latitude and ..Longitude properties of the variable will be automatically taken into account.
New in version 16
WINDEVWEBDEV - Server codeReports and QueriesiPhone/iPad Special case: QR Code bar code: the specific types
You also have the ability to print specific QR Code bar codes (SMS, contact, geographical position, ...). In this case, the assignment of the Bar Code control must be performed by the BarCodes type.
You must:
  1. Define a BarCodes variable:
    MyBarCode is BarCodes
  2. In the BarCodes variable, specify the type of QR Code bar code (for example, for an SMS bar code):
    MyBarCode..TypeBarCode = BC_QRCODE
    MyBarCode..TypeContent = bcTypeSMS
  3. Depending on the type of bar code, fill the corresponding element (see table below):
    Type of contentType of value (..Content)Note
    bcTypeTextCharacter stringExample: "WINDEV is great!"
    bcTypePhoneCharacter stringExample: "0612345678"
    bcTypeSMSCharacter string in the following format:
    <Number> + CR + <Message>
    If they are specified, the members of the SMS structure (SMS.Message and SMS.Number) will be automatically taken into account.
    Example: "0612345678<CR>Text to send"
    bcTypeURLCharacter stringExample: "http://www.google.com"
    bcTypeEmailCharacter stringExample: "name@email.com"
    bcTypeContactEmpty. The members of the mContact structure will be automatically taken into account.
    bcTypeLocationgeoPosition variable.
    The ..Latitude and ..Longitude properties of the variable will be automatically taken into account.
WINDEVWEBDEV - Server codeReports and QueriesiPhone/iPad Special case: QR Code bar code: the specific types
You also have the ability to print specific QR Code bar codes (SMS, contact, geographical position, ...). In this case, the assignment of the Bar Code control must be performed by the BarCodes type.
You must:
  1. Define a BarCodes variable:
    MyBarCode is BarCodes
  2. In the BarCodes variable, specify the type of QR Code bar code (for example, for an SMS bar code):
    MyBarCode..TypeBarCode = BC_QRCODE
    MyBarCode..TypeContent = bcTypeSMS
  3. Depending on the type of bar code, fill the corresponding element (see table below):
    Type of contentType of value (..Content)Note
    bcTypeTextCharacter stringExample: "WINDEV is great!"
    bcTypePhoneCharacter stringExample: "0612345678"
    bcTypeSMSCharacter string in the following format:
    <Number> + CR + <Message>
    If they are specified, the members of the SMS structure (SMS.Message and SMS.Number) will be automatically taken into account.
    Example: "0612345678<CR>Text to send"
    bcTypeURLCharacter stringExample: "http://www.google.com"
    bcTypeEmailCharacter stringExample: "name@email.com"
    bcTypeContactEmpty. The members of the mContact structure will be automatically taken into account.
    bcTypeLocationgeoPosition variable.
    The ..Latitude and ..Longitude properties of the variable will be automatically taken into account.
Printing a bar code in WLanguage
To print a bar code in WLanguage, you must use iPrintBarCode.
iPrintBarCode proposes two syntaxes:
  • syntax used to print a bar code directly (this syntax does not support the QR Code bar codes):
    iPrintBarCode(<Value>, <Type>, <Coordinates of Rectangle>, <Characteristics>)

    The parameters are as follows:
    • the value of the bar code. This value can be printed below the bar code.
    • the type of the bar code to print.
    • the coordinates (in pixels) of the rectangle in which the bar code will be printed.
    • the characteristics of the bar code (if necessary).
  • Versions 16 and later
    syntax used to print a bar code found in a BarCodes variable (this syntax supports the QR Code bar codes):
    iPrintBarCode(<BarCodes Variable>, <Coordinates of Rectangle>)

    All the parameters of the bar code to print are specified in the BarCodes variable.
    New in version 16
    syntax used to print a bar code found in a BarCodes variable (this syntax supports the QR Code bar codes):
    iPrintBarCode(<BarCodes Variable>, <Coordinates of Rectangle>)

    All the parameters of the bar code to print are specified in the BarCodes variable.
    syntax used to print a bar code found in a BarCodes variable (this syntax supports the QR Code bar codes):
    iPrintBarCode(<BarCodes Variable>, <Coordinates of Rectangle>)

    All the parameters of the bar code to print are specified in the BarCodes variable.
Regardless of the syntax used:
  • The bar code is printed in an invisible rectangle. This rectangle is used to specify the position and size of the bar code to print.
  • For the "EAN" and "UPC" bar codes, the height of the bar code is proportional to its width. To increase the size of these bar codes, both the height and width must be increased.
  • iEndPrinting must be used to start the actual print. This function must be the last print function used.
The following example presents the click code of a button used to print a EAN 13 bar code. The value of the bar code is retrieved in the edit control named "EDT_EditBC".
iPrintWord("EAN 13 bar code:")
iPrintBarCode(EDT_EditBC, BC_EAN13, 10, 10, 50, 100)
iEndPrinting()
Versions 16 and later
The following example is used to print a QR Code bar code:
MyQRCode is BarCodes
MyQRCode..Content = "http://www.WINDEV.com"
MyQRCode..TypeContent = bcTypeURL
MyQRCode..TypeBarCode = BC_QRCODE
iPrintBarCode(MyQRCode, 10, 20, 50, 60)
iEndPrinting()
New in version 16
The following example is used to print a QR Code bar code:
MyQRCode is BarCodes
MyQRCode..Content = "http://www.WINDEV.com"
MyQRCode..TypeContent = bcTypeURL
MyQRCode..TypeBarCode = BC_QRCODE
iPrintBarCode(MyQRCode, 10, 20, 50, 60)
iEndPrinting()
The following example is used to print a QR Code bar code:
MyQRCode is BarCodes
MyQRCode..Content = "http://www.WINDEV.com"
MyQRCode..TypeContent = bcTypeURL
MyQRCode..TypeBarCode = BC_QRCODE
iPrintBarCode(MyQRCode, 10, 20, 50, 60)
iEndPrinting()
Related Examples:
The Bar Code control Unit examples (WINDEV): The Bar Code control
[ + ] Using a Bar Code control
WD Reports Training (WINDEV): WD Reports
[ + ] This example presents the different methods for creating a report:

- prints based on different data sources (queries, variables, ...)
- prints based on controls (Table, Spreadsheet, PVT, ...)
- printing composite reports
- specific prints (portrait/landscape, report with watermark, report with bar code, ...)
Minimum required version
  • Version 16
This page is also available for…
Comments
Click [Add] to post a comment