1844204 Members
2079 Online
110229 Solutions
New Discussion

Label Modification

 
Doug_85
Regular Advisor

Label Modification

The following script prints labels in a single column. I'm trying to get this script to print the output 3 columns across instead of one. The application is dos based.

Thanks,
Doug




CLEAR

DO BUILD_DOWNLD
DO LOAD_DB
DO PRT_LBLS

PROCEDURE BUILD_DownLd
!DEL MYDOWNLD.DBF
!DEL MYDOWNLD.NTX
c := {}
AADD (c,{"ord_no","C",6,0})
AADD (c,{"ssn","C",9,0})
AADD (c,{"name","C",27,0})
AADD (c,{"Junk1","C",16,0})
AADD (c,{"DOV","C",6,0})
AADD (c,{"Junk2","C",27,0})
AADD (c,{"Chk_No","C",7,0})
AADD (c,{"Junk3","C",81,0})
AADD (c,{"Chk_Dt","C",6,0})
DBCREATE("MYDOWNLD.DBF",c)
RELEASE c
USE MYDOWNLD
INDEX ON DOV TO MYDOWNLD
RETURN


PROCEDURE LOAD_DB
USE MYDOWNLD
APPEND FROM DOWNLOAD.DAT SDF
GO TOP
DO WHILE .NOT. EOF()
IF SUBSTR(ord_no,1,5) = '*****'
DELETE
ENDIF
SKIP
ENDDO
PACK
INDEX ON DOV TO MYDOWNLD
GO TOP
RETURN


PROCEDURE PRT_LBLS
SET DEVICE TO PRINT
ROW = 7
DO WHILE .NOT. EOF()
@ ROW, 8 SAY 'DOV'
@ ROW,20 SAY DOV
ROW = ROW + 1
@ ROW, 8 SAY 'SSN'
@ ROW,20 SAY SSN
ROW = ROW + 1
@ ROW, 8 SAY 'NAME'
@ ROW,20 SAY NAME
ROW = ROW + 1
@ ROW, 8 SAY 'ORDER #'
@ ROW,20 SAY ORD_NO
ROW = ROW + 1
@ ROW, 8 SAY 'CHECK #'
@ ROW,20 SAY CHK_NO
ROW = ROW + 1
@ ROW, 8 SAY 'CHECK DATE'
@ ROW,20 SAY CHK_DT
ROW = ROW + 4
IF ROW > 54
ROW = 7
ENDIF
SKIP
ENDDO
EJECT
SET DEVICE TO SCREEN
RETURN
1 REPLY 1
Alzhy
Honored Contributor

Re: Label Modification

Try using UNIX to do this formatting. You can use the command "pr".
Hakuna Matata.