IBM Support

Printing a Bar Code using ILE COBOL

Troubleshooting


Problem

This document provides an example of a printer file and ILE COBOL program that uses Barcodes.
 

Resolving The Problem

The following printer file and COBOL program are an example of using Barcodes in a COBOL program. The printer file is compiled with DEVTYPE(*AFPDS):

Printer file BARCODE2:
     A          R NEWPAG                    SKIPB(2) SKIPA(4)
     A            PREFIX        24A  O     3
     A          R PRTLBL                    SKIPB(2) SKIPA(4)
     A            PDES1         24A  O     3SPACEB(3)
                                            FONT(038)
     A            PDES2         24A  O    32FONT(038)
     A            PDES3         24A  O    623FONT(038)

     A            PITM1         12S 0O     6BARCODE(INTERL2OF5 2 X'01')
     A            PITM2         12S 0O    34BARCODE(INTERL2OF5 2 X'01')
     A            PITM3         12S 0O    62BARCODE(INTERL2OF5 2 X'01')
                                           1' '
                                            SPACEB(1) SPACEA(1)  
Compile using  CRTPRTF   FILE(<yourlib>/BARCODE2)   SRCFILE(<yourlib>/QDDSSRC)  
SRCMBR(BARCODE2) DEVTYPE(*AFPDS) 

COBOL code BARCBL2:
       PROCESS OPTIONS.
       IDENTIFICATION DIVISION.
       PROGRAM-ID.  BARCBL2.
       AUTHOR.  TESTER.
         INSTALLATION.
         DATE-WRITTEN.  TODAY.
         DATE-COMPILED.  TODAY.
         SECURITY.  NONE.
      *
         ENVIRONMENT DIVISION.
         CONFIGURATION SECTION.
         SOURCE-COMPUTER.  IBM-AS400.
         OBJECT-COMPUTER. IBM-AS400.
      *
         INPUT-OUTPUT SECTION.
        FILE-CONTROL.
      *
             SELECT BARPRTF ASSIGN TO FORMATFILE-BARCODE2.
      *
         DATA DIVISION.
          FILE SECTION.
      *
         FD BARPRTF
             LABEL RECORDS ARE OMITTED.
         01 BARPRTF-REC.
             COPY DDS-ALL-FORMATS-O OF BARCODE2.
      *
         WORKING-STORAGE SECTION.
         01 WORKING-STORAGE-VARIABLES.
             03 RECORD-COUNTER            PIC 99 VALUE ZERO.
      *
         PROCEDURE DIVISION.
         000-MAIN-LINE SECTION.
         000-SELECT-DATA.
             OPEN OUTPUT BARPRTF.
             MOVE 'TESTING' TO PDES1, PDES2, PDES3.
             MOVE 1234567890 to PITM1, PITM2, PITM3.
             WRITE BARPRTF-REC FORMAT "PRTLBL".
            CLOSE BARPRTF.
             STOP RUN.
      * 
Compile using 
CRTBNDCBL  PGM(<yourlib>/BARCBL2) SRCFILE(<yourlib>/QCBLLESRC) SRCMBR(BARCBL2)
CALL from command line and a BARCODE2 spoolfile will be generated.
Transfer the spoolfile to your PC as PDF to view.


image-20250418161658-1

 

[{"Product":{"code":"SWG60","label":"IBM i"},"Business Unit":{"code":"BU070","label":"IBM Infrastructure"},"Component":"Programming (Languages- compilers- tools)","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"Version Independent","Edition":"","Line of Business":{"code":"LOB68","label":"Power HW"}}]

Historical Number

25313418

Document Information

More support for:
IBM i

Software version:
Version Independent

Operating system(s):
IBM i

Document number:
640767

Modified date:
18 April 2025

UID

nas8N1017160

Manage My Notification Subscriptions